let s be State of SCM+FSA; :: thesis: for I being InitHalting good 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 InitHalting good 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 )
set D = Int-Locations \/ FinSeq-Locations;
assume that
A1: s . a > 0 and
A2: 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 A3: 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, A2, Th33 ;
hence (IExec ((while>0 (a,I)),s)) . f = (IExec ((while>0 (a,I)),(IExec (I,s)))) . f by A3, FUNCT_1:72, SCMFSA_2:127; :: thesis: verum