let a be Int-Location ; :: thesis: for I being Program of SCM+FSA
for s being State of SCM+FSA st I is_closed_onInit s & I is_halting_onInit s & IC (Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),(1 + (LifeSpan ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I))))))) = (IC (Comput ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I)),(LifeSpan ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I))))))) + 4 holds
CurInstr ((ProgramPart (Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),(1 + (LifeSpan ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I)))))))),(Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),(1 + (LifeSpan ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I)))))))) = goto ((card I) + 4)

let I be Program of SCM+FSA; :: thesis: for s being State of SCM+FSA st I is_closed_onInit s & I is_halting_onInit s & IC (Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),(1 + (LifeSpan ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I))))))) = (IC (Comput ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I)),(LifeSpan ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I))))))) + 4 holds
CurInstr ((ProgramPart (Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),(1 + (LifeSpan ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I)))))))),(Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),(1 + (LifeSpan ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I)))))))) = goto ((card I) + 4)

let s be State of SCM+FSA; :: thesis: ( I is_closed_onInit s & I is_halting_onInit s & IC (Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),(1 + (LifeSpan ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I))))))) = (IC (Comput ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I)),(LifeSpan ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I))))))) + 4 implies CurInstr ((ProgramPart (Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),(1 + (LifeSpan ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I)))))))),(Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),(1 + (LifeSpan ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I)))))))) = goto ((card I) + 4) )
set s0 = Initialized s;
set sw = s +* (Initialized (while>0 (a,I)));
set sI = s +* (Initialized I);
set s0I = (Initialized s) +* (I +* (Start-At (0,SCM+FSA)));
set s0w = (Initialized s) +* ((while>0 (a,I)) +* (Start-At (0,SCM+FSA)));
A1: s +* (Initialized I) = (Initialized s) +* (I +* (Start-At (0,SCM+FSA))) by SCMFSA8A:13;
A2: s +* (Initialized (while>0 (a,I))) = (Initialized s) +* ((while>0 (a,I)) +* (Start-At (0,SCM+FSA))) by SCMFSA8A:13;
assume I is_closed_onInit s ; :: thesis: ( not I is_halting_onInit s or not IC (Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),(1 + (LifeSpan ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I))))))) = (IC (Comput ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I)),(LifeSpan ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I))))))) + 4 or CurInstr ((ProgramPart (Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),(1 + (LifeSpan ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I)))))))),(Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),(1 + (LifeSpan ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I)))))))) = goto ((card I) + 4) )
then A3: I is_closed_on Initialized s by SCM_HALT:40;
assume I is_halting_onInit s ; :: thesis: ( not IC (Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),(1 + (LifeSpan ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I))))))) = (IC (Comput ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I)),(LifeSpan ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I))))))) + 4 or CurInstr ((ProgramPart (Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),(1 + (LifeSpan ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I)))))))),(Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),(1 + (LifeSpan ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I)))))))) = goto ((card I) + 4) )
then A4: I is_halting_on Initialized s by SCM_HALT:41;
assume IC (Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),(1 + (LifeSpan ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I))))))) = (IC (Comput ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I)),(LifeSpan ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I))))))) + 4 ; :: thesis: CurInstr ((ProgramPart (Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),(1 + (LifeSpan ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I)))))))),(Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),(1 + (LifeSpan ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I)))))))) = goto ((card I) + 4)
hence CurInstr ((ProgramPart (Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),(1 + (LifeSpan ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I)))))))),(Comput ((ProgramPart (s +* (Initialized (while>0 (a,I))))),(s +* (Initialized (while>0 (a,I)))),(1 + (LifeSpan ((ProgramPart (s +* (Initialized I))),(s +* (Initialized I)))))))) = goto ((card I) + 4) by A3, A4, A1, A2, SCMFSA_9:45; :: thesis: verum