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

for I being really-closed Program of

for a being Int-Location st not I destroys a holds

for k being Nat holds (Comput ((P +* I),(Initialize s),k)) . a = s . a

let P be Instruction-Sequence of SCM+FSA; :: thesis: for I being really-closed Program of

for a being Int-Location st not I destroys a holds

for k being Nat holds (Comput ((P +* I),(Initialize s),k)) . a = s . a

let I be really-closed Program of ; :: thesis: for a being Int-Location st not I destroys a holds

for k being Nat holds (Comput ((P +* I),(Initialize s),k)) . a = s . a

let a be Int-Location; :: thesis: ( not I destroys a implies for k being Nat holds (Comput ((P +* I),(Initialize s),k)) . a = s . a )

assume A1: not I destroys a ; :: thesis: for k being Nat holds (Comput ((P +* I),(Initialize s),k)) . a = s . a

defpred S_{1}[ Nat] means (Comput ((P +* I),(Initialize s),$1)) . a = s . a;

A2: I c= P +* I by FUNCT_4:25;

(Comput ((P +* I),(Initialize s),0)) . a = (Initialize s) . a

.= s . a by A8, FUNCT_4:11 ;

then A9: S_{1}[ 0 ]
;

thus for k being Nat holds S_{1}[k]
from NAT_1:sch 2(A9, A3); :: thesis: verum

for I being really-closed Program of

for a being Int-Location st not I destroys a holds

for k being Nat holds (Comput ((P +* I),(Initialize s),k)) . a = s . a

let P be Instruction-Sequence of SCM+FSA; :: thesis: for I being really-closed Program of

for a being Int-Location st not I destroys a holds

for k being Nat holds (Comput ((P +* I),(Initialize s),k)) . a = s . a

let I be really-closed Program of ; :: thesis: for a being Int-Location st not I destroys a holds

for k being Nat holds (Comput ((P +* I),(Initialize s),k)) . a = s . a

let a be Int-Location; :: thesis: ( not I destroys a implies for k being Nat holds (Comput ((P +* I),(Initialize s),k)) . a = s . a )

assume A1: not I destroys a ; :: thesis: for k being Nat holds (Comput ((P +* I),(Initialize s),k)) . a = s . a

defpred S

A2: I c= P +* I by FUNCT_4:25;

A3: now :: thesis: for k being Nat st S_{1}[k] holds

S_{1}[k + 1]

A8:
not a in dom (Start-At (0,SCM+FSA))
by SCMFSA_2:102;S

let k be Nat; :: thesis: ( S_{1}[k] implies S_{1}[k + 1] )

assume A4: S_{1}[k]
; :: thesis: S_{1}[k + 1]

set l = IC (Comput ((P +* I),(Initialize s),k));

IC (Initialize s) = 0 by MEMSTR_0:47;

then IC (Initialize s) in dom I by AFINSQ_1:65;

then A5: IC (Comput ((P +* I),(Initialize s),k)) in dom I by A2, AMISTD_1:21;

then (P +* I) . (IC (Comput ((P +* I),(Initialize s),k))) = I . (IC (Comput ((P +* I),(Initialize s),k))) by A2, GRFUNC_1:2;

then (P +* I) . (IC (Comput ((P +* I),(Initialize s),k))) in rng I by A5, FUNCT_1:def 3;

then A6: not (P +* I) . (IC (Comput ((P +* I),(Initialize s),k))) destroys a by A1;

A7: dom (P +* I) = NAT by PARTFUN1:def 2;

(Comput ((P +* I),(Initialize s),(k + 1))) . a = (Following ((P +* I),(Comput ((P +* I),(Initialize s),k)))) . a by EXTPRO_1:3

.= (Exec (((P +* I) . (IC (Comput ((P +* I),(Initialize s),k)))),(Comput ((P +* I),(Initialize s),k)))) . a by A7, PARTFUN1:def 6

.= (Comput ((P +* I),(s +* (Start-At (0,SCM+FSA))),k)) . a by A6, Th19

.= s . a by A4 ;

hence S_{1}[k + 1]
; :: thesis: verum

end;assume A4: S

set l = IC (Comput ((P +* I),(Initialize s),k));

IC (Initialize s) = 0 by MEMSTR_0:47;

then IC (Initialize s) in dom I by AFINSQ_1:65;

then A5: IC (Comput ((P +* I),(Initialize s),k)) in dom I by A2, AMISTD_1:21;

then (P +* I) . (IC (Comput ((P +* I),(Initialize s),k))) = I . (IC (Comput ((P +* I),(Initialize s),k))) by A2, GRFUNC_1:2;

then (P +* I) . (IC (Comput ((P +* I),(Initialize s),k))) in rng I by A5, FUNCT_1:def 3;

then A6: not (P +* I) . (IC (Comput ((P +* I),(Initialize s),k))) destroys a by A1;

A7: dom (P +* I) = NAT by PARTFUN1:def 2;

(Comput ((P +* I),(Initialize s),(k + 1))) . a = (Following ((P +* I),(Comput ((P +* I),(Initialize s),k)))) . a by EXTPRO_1:3

.= (Exec (((P +* I) . (IC (Comput ((P +* I),(Initialize s),k)))),(Comput ((P +* I),(Initialize s),k)))) . a by A7, PARTFUN1:def 6

.= (Comput ((P +* I),(s +* (Start-At (0,SCM+FSA))),k)) . a by A6, Th19

.= s . a by A4 ;

hence S

(Comput ((P +* I),(Initialize s),0)) . a = (Initialize s) . a

.= s . a by A8, FUNCT_4:11 ;

then A9: S

thus for k being Nat holds S