let s be State of ; :: thesis: for I, J being Program of st I is_pseudo-closed_on s holds
for k being Element of NAT st k <= pseudo-LifeSpan s,I holds
Computation (s +* (I +* (Start-At (insloc 0 )))),k, Computation (s +* ((I ';' J) +* (Start-At (insloc 0 )))),k equal_outside NAT

let I, J be Program of ; :: thesis: ( I is_pseudo-closed_on s implies for k being Element of NAT st k <= pseudo-LifeSpan s,I holds
Computation (s +* (I +* (Start-At (insloc 0 )))),k, Computation (s +* ((I ';' J) +* (Start-At (insloc 0 )))),k equal_outside NAT )

set s1 = s +* (I +* (Start-At (insloc 0 )));
set s2 = s +* ((I ';' J) +* (Start-At (insloc 0 )));
set I1 = I +* (Start-At (insloc 0 ));
set I2 = (I ';' J) +* (Start-At (insloc 0 ));
defpred S1[ Element of NAT ] means ( $1 <= pseudo-LifeSpan s,I implies Computation (s +* (I +* (Start-At (insloc 0 )))),$1, Computation (s +* ((I ';' J) +* (Start-At (insloc 0 )))),$1 equal_outside NAT );
assume A1: I is_pseudo-closed_on s ; :: thesis: for k being Element of NAT st k <= pseudo-LifeSpan s,I holds
Computation (s +* (I +* (Start-At (insloc 0 )))),k, Computation (s +* ((I ';' J) +* (Start-At (insloc 0 )))),k equal_outside NAT

A2: now
let k be Element of NAT ; :: thesis: ( S1[k] implies S1[k + 1] )
assume A3: S1[k] ; :: thesis: S1[k + 1]
thus S1[k + 1] :: thesis: verum
proof
A4: Computation (s +* ((I ';' J) +* (Start-At (insloc 0 )))),(k + 1) = Following (Computation (s +* ((I ';' J) +* (Start-At (insloc 0 )))),k) by AMI_1:14
.= Exec (CurInstr (Computation (s +* ((I ';' J) +* (Start-At (insloc 0 )))),k)),(Computation (s +* ((I ';' J) +* (Start-At (insloc 0 )))),k) ;
A5: Computation (s +* (I +* (Start-At (insloc 0 )))),(k + 1) = Following (Computation (s +* (I +* (Start-At (insloc 0 )))),k) by AMI_1:14
.= Exec (CurInstr (Computation (s +* (I +* (Start-At (insloc 0 )))),k)),(Computation (s +* (I +* (Start-At (insloc 0 )))),k) ;
A6: dom I c= dom (I ';' J) by SCMFSA6A:56;
( I ';' J c= (I ';' J) +* (Start-At (insloc 0 )) & (I ';' J) +* (Start-At (insloc 0 )) c= s +* ((I ';' J) +* (Start-At (insloc 0 ))) ) by Th9, FUNCT_4:26;
then I ';' J c= s +* ((I ';' J) +* (Start-At (insloc 0 ))) by XBOOLE_1:1;
then A7: I ';' J c= Computation (s +* ((I ';' J) +* (Start-At (insloc 0 )))),k by AMI_1:81;
A8: k + 0 < k + 1 by XREAL_1:8;
assume A9: k + 1 <= pseudo-LifeSpan s,I ; :: thesis: Computation (s +* (I +* (Start-At (insloc 0 )))),(k + 1), Computation (s +* ((I ';' J) +* (Start-At (insloc 0 )))),(k + 1) equal_outside NAT
then A10: k < pseudo-LifeSpan s,I by A8, XXREAL_0:2;
then A11: IC (Computation (s +* (I +* (Start-At (insloc 0 )))),k) in dom I by A1, Th31;
( I c= I +* (Start-At (insloc 0 )) & I +* (Start-At (insloc 0 )) c= s +* (I +* (Start-At (insloc 0 ))) ) by Th9, FUNCT_4:26;
then I c= s +* (I +* (Start-At (insloc 0 ))) by XBOOLE_1:1;
then I c= Computation (s +* (I +* (Start-At (insloc 0 )))),k by AMI_1:81;
then A12: CurInstr (Computation (s +* (I +* (Start-At (insloc 0 )))),k) = I . (IC (Computation (s +* (I +* (Start-At (insloc 0 )))),k)) by A11, GRFUNC_1:8;
then I . (IC (Computation (s +* (I +* (Start-At (insloc 0 )))),k)) <> halt SCM+FSA by A1, A10, Th31;
then CurInstr (Computation (s +* (I +* (Start-At (insloc 0 )))),k) = (I ';' J) . (IC (Computation (s +* (I +* (Start-At (insloc 0 )))),k)) by A11, A12, SCMFSA6A:54
.= (Computation (s +* ((I ';' J) +* (Start-At (insloc 0 )))),k) . (IC (Computation (s +* (I +* (Start-At (insloc 0 )))),k)) by A7, A11, A6, GRFUNC_1:8
.= CurInstr (Computation (s +* ((I ';' J) +* (Start-At (insloc 0 )))),k) by A3, A9, A8, AMI_1:121, XXREAL_0:2 ;
hence Computation (s +* (I +* (Start-At (insloc 0 )))),(k + 1), Computation (s +* ((I ';' J) +* (Start-At (insloc 0 )))),(k + 1) equal_outside NAT by A3, A9, A8, A5, A4, SCMFSA6A:32, XXREAL_0:2; :: thesis: verum
end;
end;
A13: S1[ 0 ]
proof end;
thus for k being Element of NAT holds S1[k] from NAT_1:sch 1(A13, A2); :: thesis: verum