let P be Instruction-Sequence of SCM+FSA; :: thesis: for s being State of SCM+FSA

for I being MacroInstruction of SCM+FSA

for f being FinSeq-Location

for a being read-write Int-Location st s . a <= 0 holds

(IExec ((while>0 (a,I)),P,s)) . f = s . f

let s be State of SCM+FSA; :: thesis: for I being MacroInstruction of SCM+FSA

for f being FinSeq-Location

for a being read-write Int-Location st s . a <= 0 holds

(IExec ((while>0 (a,I)),P,s)) . f = s . f

let I be MacroInstruction of SCM+FSA ; :: thesis: for f being FinSeq-Location

for a being read-write Int-Location st s . a <= 0 holds

(IExec ((while>0 (a,I)),P,s)) . f = s . f

let f be FinSeq-Location ; :: thesis: for a being read-write Int-Location st s . a <= 0 holds

(IExec ((while>0 (a,I)),P,s)) . f = s . f

let a be read-write Int-Location; :: thesis: ( s . a <= 0 implies (IExec ((while>0 (a,I)),P,s)) . f = s . f )

set D = Data-Locations ;

assume A1: s . a <= 0 ; :: thesis: (IExec ((while>0 (a,I)),P,s)) . f = s . f

f in FinSeq-Locations by SCMFSA_2:def 5;

then A2: f in Data-Locations by SCMFSA_2:100, XBOOLE_0:def 3;

hence (IExec ((while>0 (a,I)),P,s)) . f = (DataPart (IExec ((while>0 (a,I)),P,s))) . f by FUNCT_1:49

.= (DataPart (Initialized s)) . f by A1, Th13

.= (Initialized s) . f by A2, FUNCT_1:49

.= s . f by SCMFSA_M:37 ;

:: thesis: verum

for I being MacroInstruction of SCM+FSA

for f being FinSeq-Location

for a being read-write Int-Location st s . a <= 0 holds

(IExec ((while>0 (a,I)),P,s)) . f = s . f

let s be State of SCM+FSA; :: thesis: for I being MacroInstruction of SCM+FSA

for f being FinSeq-Location

for a being read-write Int-Location st s . a <= 0 holds

(IExec ((while>0 (a,I)),P,s)) . f = s . f

let I be MacroInstruction of SCM+FSA ; :: thesis: for f being FinSeq-Location

for a being read-write Int-Location st s . a <= 0 holds

(IExec ((while>0 (a,I)),P,s)) . f = s . f

let f be FinSeq-Location ; :: thesis: for a being read-write Int-Location st s . a <= 0 holds

(IExec ((while>0 (a,I)),P,s)) . f = s . f

let a be read-write Int-Location; :: thesis: ( s . a <= 0 implies (IExec ((while>0 (a,I)),P,s)) . f = s . f )

set D = Data-Locations ;

assume A1: s . a <= 0 ; :: thesis: (IExec ((while>0 (a,I)),P,s)) . f = s . f

f in FinSeq-Locations by SCMFSA_2:def 5;

then A2: f in Data-Locations by SCMFSA_2:100, XBOOLE_0:def 3;

hence (IExec ((while>0 (a,I)),P,s)) . f = (DataPart (IExec ((while>0 (a,I)),P,s))) . f by FUNCT_1:49

.= (DataPart (Initialized s)) . f by A1, Th13

.= (Initialized s) . f by A2, FUNCT_1:49

.= s . f by SCMFSA_M:37 ;

:: thesis: verum