set D = Int-Locations \/ FinSeq-Locations ;
let s be State of SCM+FSA ; :: thesis: for I being good InitHalting Program of SCM+FSA
for f being FinSeq-Location
for a being read-write Int-Location st s . a > 0 & while>0 a,I is InitHalting holds
(IExec (while>0 a,I),s) . f = (IExec (while>0 a,I),(IExec I,s)) . f

let I be good InitHalting Program of SCM+FSA ; :: thesis: for f being FinSeq-Location
for a being read-write Int-Location st s . a > 0 & while>0 a,I is InitHalting holds
(IExec (while>0 a,I),s) . f = (IExec (while>0 a,I),(IExec I,s)) . f

let f be FinSeq-Location ; :: thesis: for a being read-write Int-Location st s . a > 0 & while>0 a,I is InitHalting holds
(IExec (while>0 a,I),s) . f = (IExec (while>0 a,I),(IExec I,s)) . f

let a be read-write Int-Location ; :: thesis: ( s . a > 0 & while>0 a,I is InitHalting implies (IExec (while>0 a,I),s) . f = (IExec (while>0 a,I),(IExec I,s)) . f )
assume A1: ( s . a > 0 & while>0 a,I is InitHalting ) ; :: thesis: (IExec (while>0 a,I),s) . f = (IExec (while>0 a,I),(IExec I,s)) . f
f in FinSeq-Locations by SCMFSA_2:10;
then A2: f in Int-Locations \/ FinSeq-Locations by XBOOLE_0:def 3;
then (IExec (while>0 a,I),s) . f = (DataPart (IExec (while>0 a,I),s)) . f by FUNCT_1:72, SCMFSA_2:127
.= (DataPart (IExec (while>0 a,I),(IExec I,s))) . f by A1, Th33 ;
hence (IExec (while>0 a,I),s) . f = (IExec (while>0 a,I),(IExec I,s)) . f by A2, FUNCT_1:72, SCMFSA_2:127; :: thesis: verum