let I be Program of SCM+FSA; for a being read-write Int-Location
for s being State of SCM+FSA
for k, n being Element of NAT st IC ((StepWhile>0 (a,s,I)) . k) = 0 & (StepWhile>0 (a,s,I)) . k = Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),n) & ((StepWhile>0 (a,s,I)) . k) . (intloc 0) = 1 holds
( (StepWhile>0 (a,s,I)) . k = ((StepWhile>0 (a,s,I)) . k) +* (Initialized (while>0 (a,I))) & (StepWhile>0 (a,s,I)) . (k + 1) = Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),(n + ((LifeSpan ((ProgramPart (((StepWhile>0 (a,s,I)) . k) +* (Initialized I))),(((StepWhile>0 (a,s,I)) . k) +* (Initialized I)))) + 3))) )
let a be read-write Int-Location ; for s being State of SCM+FSA
for k, n being Element of NAT st IC ((StepWhile>0 (a,s,I)) . k) = 0 & (StepWhile>0 (a,s,I)) . k = Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),n) & ((StepWhile>0 (a,s,I)) . k) . (intloc 0) = 1 holds
( (StepWhile>0 (a,s,I)) . k = ((StepWhile>0 (a,s,I)) . k) +* (Initialized (while>0 (a,I))) & (StepWhile>0 (a,s,I)) . (k + 1) = Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),(n + ((LifeSpan ((ProgramPart (((StepWhile>0 (a,s,I)) . k) +* (Initialized I))),(((StepWhile>0 (a,s,I)) . k) +* (Initialized I)))) + 3))) )
let s be State of SCM+FSA; for k, n being Element of NAT st IC ((StepWhile>0 (a,s,I)) . k) = 0 & (StepWhile>0 (a,s,I)) . k = Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),n) & ((StepWhile>0 (a,s,I)) . k) . (intloc 0) = 1 holds
( (StepWhile>0 (a,s,I)) . k = ((StepWhile>0 (a,s,I)) . k) +* (Initialized (while>0 (a,I))) & (StepWhile>0 (a,s,I)) . (k + 1) = Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),(n + ((LifeSpan ((ProgramPart (((StepWhile>0 (a,s,I)) . k) +* (Initialized I))),(((StepWhile>0 (a,s,I)) . k) +* (Initialized I)))) + 3))) )
let k, n be Element of NAT ; ( IC ((StepWhile>0 (a,s,I)) . k) = 0 & (StepWhile>0 (a,s,I)) . k = Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),n) & ((StepWhile>0 (a,s,I)) . k) . (intloc 0) = 1 implies ( (StepWhile>0 (a,s,I)) . k = ((StepWhile>0 (a,s,I)) . k) +* (Initialized (while>0 (a,I))) & (StepWhile>0 (a,s,I)) . (k + 1) = Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),(n + ((LifeSpan ((ProgramPart (((StepWhile>0 (a,s,I)) . k) +* (Initialized I))),(((StepWhile>0 (a,s,I)) . k) +* (Initialized I)))) + 3))) ) )
set D = Int-Locations \/ FinSeq-Locations;
set s1 = s +* (Initialized (while>0 (a,I)));
set sk = (StepWhile>0 (a,s,I)) . k;
set s0k = Initialized ((StepWhile>0 (a,s,I)) . k);
set At0 = (while>0 (a,I)) +* (Start-At (0,SCM+FSA));
set s2 = (Initialized ((StepWhile>0 (a,s,I)) . k)) +* ((while>0 (a,I)) +* (Start-At (0,SCM+FSA)));
set s3 = ((StepWhile>0 (a,s,I)) . k) +* (Initialized (while>0 (a,I)));
assume A1:
IC ((StepWhile>0 (a,s,I)) . k) = 0
; ( not (StepWhile>0 (a,s,I)) . k = Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),n) or not ((StepWhile>0 (a,s,I)) . k) . (intloc 0) = 1 or ( (StepWhile>0 (a,s,I)) . k = ((StepWhile>0 (a,s,I)) . k) +* (Initialized (while>0 (a,I))) & (StepWhile>0 (a,s,I)) . (k + 1) = Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),(n + ((LifeSpan ((ProgramPart (((StepWhile>0 (a,s,I)) . k) +* (Initialized I))),(((StepWhile>0 (a,s,I)) . k) +* (Initialized I)))) + 3))) ) )
A2:
IC SCM+FSA in dom ((while>0 (a,I)) +* (Start-At (0,SCM+FSA)))
by COMPOS_1:141;
A3: IC (((StepWhile>0 (a,s,I)) . k) +* (Initialized (while>0 (a,I)))) =
((Initialized ((StepWhile>0 (a,s,I)) . k)) +* ((while>0 (a,I)) +* (Start-At (0,SCM+FSA)))) . (IC SCM+FSA)
by SCMFSA8A:13
.=
IC ((while>0 (a,I)) +* (Start-At (0,SCM+FSA)))
by A2, FUNCT_4:14
.=
IC ((StepWhile>0 (a,s,I)) . k)
by A1, COMPOS_1:142
;
assume A4:
(StepWhile>0 (a,s,I)) . k = Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),n)
; ( not ((StepWhile>0 (a,s,I)) . k) . (intloc 0) = 1 or ( (StepWhile>0 (a,s,I)) . k = ((StepWhile>0 (a,s,I)) . k) +* (Initialized (while>0 (a,I))) & (StepWhile>0 (a,s,I)) . (k + 1) = Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),(n + ((LifeSpan ((ProgramPart (((StepWhile>0 (a,s,I)) . k) +* (Initialized I))),(((StepWhile>0 (a,s,I)) . k) +* (Initialized I)))) + 3))) ) )
then
ProgramPart ((StepWhile>0 (a,s,I)) . k) = ProgramPart (s +* (Initialized (while>0 (a,I))))
by AMI_1:123;
then A5:
ProgramPart (((StepWhile>0 (a,s,I)) . k) +* (Initialized (while>0 (a,I)))) = ProgramPart ((StepWhile>0 (a,s,I)) . k)
by FUNCT_4:100;
assume A6:
((StepWhile>0 (a,s,I)) . k) . (intloc 0) = 1
; ( (StepWhile>0 (a,s,I)) . k = ((StepWhile>0 (a,s,I)) . k) +* (Initialized (while>0 (a,I))) & (StepWhile>0 (a,s,I)) . (k + 1) = Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),(n + ((LifeSpan ((ProgramPart (((StepWhile>0 (a,s,I)) . k) +* (Initialized I))),(((StepWhile>0 (a,s,I)) . k) +* (Initialized I)))) + 3))) )
T:
ProgramPart (s +* (Initialized (while>0 (a,I)))) = ProgramPart ((StepWhile>0 (a,s,I)) . k)
by A4, AMI_1:123;
DataPart (((StepWhile>0 (a,s,I)) . k) +* (Initialized (while>0 (a,I)))) =
DataPart ((Initialized ((StepWhile>0 (a,s,I)) . k)) +* ((while>0 (a,I)) +* (Start-At (0,SCM+FSA))))
by SCMFSA8A:13
.=
DataPart (Initialized ((StepWhile>0 (a,s,I)) . k))
by SCMFSA8A:11
.=
DataPart ((StepWhile>0 (a,s,I)) . k)
by A1, A6, SCMFSA8C:14
;
hence
((StepWhile>0 (a,s,I)) . k) +* (Initialized (while>0 (a,I))) = (StepWhile>0 (a,s,I)) . k
by A3, A5, SCMFSA_9:29; (StepWhile>0 (a,s,I)) . (k + 1) = Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),(n + ((LifeSpan ((ProgramPart (((StepWhile>0 (a,s,I)) . k) +* (Initialized I))),(((StepWhile>0 (a,s,I)) . k) +* (Initialized I)))) + 3)))
hence (StepWhile>0 (a,s,I)) . (k + 1) =
Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),((StepWhile>0 (a,s,I)) . k),((LifeSpan ((ProgramPart (((StepWhile>0 (a,s,I)) . k) +* (Initialized I))),(((StepWhile>0 (a,s,I)) . k) +* (Initialized I)))) + 3))
by Def1, T
.=
Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),(n + ((LifeSpan ((ProgramPart (((StepWhile>0 (a,s,I)) . k) +* (Initialized I))),(((StepWhile>0 (a,s,I)) . k) +* (Initialized I)))) + 3)))
by A4, EXTPRO_1:5
;
verum