let s1, s2 be State of SCM+FSA ; :: thesis: for I being InitHalting Program of SCM+FSA st Initialized I c= s1 & Initialized I c= s2 & s1,s2 equal_outside NAT holds
for k being Element of NAT holds
( Comput (ProgramPart s1),s1,k, Comput (ProgramPart s2),s2,k equal_outside NAT & CurInstr (ProgramPart s1),(Comput (ProgramPart s1),s1,k) = CurInstr (ProgramPart s2),(Comput (ProgramPart s2),s2,k) )

let I be InitHalting Program of SCM+FSA ; :: thesis: ( Initialized I c= s1 & Initialized I c= s2 & s1,s2 equal_outside NAT implies for k being Element of NAT holds
( Comput (ProgramPart s1),s1,k, Comput (ProgramPart s2),s2,k equal_outside NAT & CurInstr (ProgramPart s1),(Comput (ProgramPart s1),s1,k) = CurInstr (ProgramPart s2),(Comput (ProgramPart s2),s2,k) ) )

assume that
A1: Initialized I c= s1 and
A2: Initialized I c= s2 and
A3: s1,s2 equal_outside NAT ; :: thesis: for k being Element of NAT holds
( Comput (ProgramPart s1),s1,k, Comput (ProgramPart s2),s2,k equal_outside NAT & CurInstr (ProgramPart s1),(Comput (ProgramPart s1),s1,k) = CurInstr (ProgramPart s2),(Comput (ProgramPart s2),s2,k) )

A4: I c= s2 by A2, SCM_HALT:13;
A5: I c= s1 by A1, SCM_HALT:13;
hereby :: thesis: verum
let k be Element of NAT ; :: thesis: ( Comput (ProgramPart s1),s1,k, Comput (ProgramPart s2),s2,k equal_outside NAT & CurInstr (ProgramPart s2),(Comput (ProgramPart s2),s2,k) = CurInstr (ProgramPart s1),(Comput (ProgramPart s1),s1,k) )
A6: IC (Comput (ProgramPart s1),s1,k) in dom I by A1, SCM_HALT:def 1;
A7: IC (Comput (ProgramPart s2),s2,k) in dom I by A2, SCM_HALT:def 1;
for m being Element of NAT st m < k holds
IC (Comput (ProgramPart s2),s2,m) in dom I by A2, SCM_HALT:def 1;
hence Comput (ProgramPart s1),s1,k, Comput (ProgramPart s2),s2,k equal_outside NAT by A3, A5, A4, SCMFSA6B:21; :: thesis: CurInstr (ProgramPart s2),(Comput (ProgramPart s2),s2,k) = CurInstr (ProgramPart s1),(Comput (ProgramPart s1),s1,k)
then A8: IC (Comput (ProgramPart s1),s1,k) = IC (Comput (ProgramPart s2),s2,k) by COMPOS_1:24;
Y: (ProgramPart (Comput (ProgramPart s2),s2,k)) /. (IC (Comput (ProgramPart s2),s2,k)) = (Comput (ProgramPart s2),s2,k) . (IC (Comput (ProgramPart s2),s2,k)) by COMPOS_1:38;
Z: (ProgramPart (Comput (ProgramPart s1),s1,k)) /. (IC (Comput (ProgramPart s1),s1,k)) = (Comput (ProgramPart s1),s1,k) . (IC (Comput (ProgramPart s1),s1,k)) by COMPOS_1:38;
TX2: ProgramPart s2 = ProgramPart (Comput (ProgramPart s2),s2,k) by AMI_1:123;
TX1: ProgramPart s1 = ProgramPart (Comput (ProgramPart s1),s1,k) by AMI_1:123;
thus CurInstr (ProgramPart s2),(Comput (ProgramPart s2),s2,k) = s2 . (IC (Comput (ProgramPart s2),s2,k)) by Y, TX2, AMI_1:54
.= I . (IC (Comput (ProgramPart s2),s2,k)) by A4, A7, GRFUNC_1:8
.= s1 . (IC (Comput (ProgramPart s1),s1,k)) by A5, A8, A6, GRFUNC_1:8
.= CurInstr (ProgramPart s1),(Comput (ProgramPart s1),s1,k) by Z, TX1, AMI_1:54 ; :: thesis: verum
end;