let N be non empty with_non-empty_elements set ; for S being non empty IC-Ins-separated AMI-Struct of N
for F being preProgram of S holds
( F is really-closed iff for s being State of S st IC s in dom F holds
for P being Instruction-Sequence of S st F c= P holds
for k being Element of NAT holds IC (Comput (P,s,k)) in dom F )
let S be non empty IC-Ins-separated AMI-Struct of N; for F being preProgram of S holds
( F is really-closed iff for s being State of S st IC s in dom F holds
for P being Instruction-Sequence of S st F c= P holds
for k being Element of NAT holds IC (Comput (P,s,k)) in dom F )
let F be preProgram of S; ( F is really-closed iff for s being State of S st IC s in dom F holds
for P being Instruction-Sequence of S st F c= P holds
for k being Element of NAT holds IC (Comput (P,s,k)) in dom F )
thus
( F is really-closed implies for s being State of S st IC s in dom F holds
for P being Instruction-Sequence of S st F c= P holds
for k being Element of NAT holds IC (Comput (P,s,k)) in dom F )
( ( for s being State of S st IC s in dom F holds
for P being Instruction-Sequence of S st F c= P holds
for k being Element of NAT holds IC (Comput (P,s,k)) in dom F ) implies F is really-closed )proof
assume A1:
F is
really-closed
;
for s being State of S st IC s in dom F holds
for P being Instruction-Sequence of S st F c= P holds
for k being Element of NAT holds IC (Comput (P,s,k)) in dom F
let s be
State of
S;
( IC s in dom F implies for P being Instruction-Sequence of S st F c= P holds
for k being Element of NAT holds IC (Comput (P,s,k)) in dom F )
assume A2:
IC s in dom F
;
for P being Instruction-Sequence of S st F c= P holds
for k being Element of NAT holds IC (Comput (P,s,k)) in dom F
let P be
Instruction-Sequence of
S;
( F c= P implies for k being Element of NAT holds IC (Comput (P,s,k)) in dom F )
assume Z1:
F c= P
;
for k being Element of NAT holds IC (Comput (P,s,k)) in dom F
defpred S1[
Element of
NAT ]
means IC (Comput (P,s,$1)) in dom F;
A3:
now let k be
Element of
NAT ;
( S1[k] implies S1[k + 1] )assume A4:
S1[
k]
;
S1[k + 1]reconsider t =
Comput (
P,
s,
k) as
Element of
product the
Object-Kind of
S by CARD_3:107;
set l =
IC (Comput (P,s,k));
A5:
IC (Following (P,t)) in NIC (
(P /. (IC (Comput (P,s,k)))),
(IC (Comput (P,s,k))))
;
A6:
Comput (
P,
s,
(k + 1))
= Following (
P,
t)
by EXTPRO_1:3;
P /. (IC (Comput (P,s,k))) = F /. (IC (Comput (P,s,k)))
by A4, Z1, PARTFUN2:61;
then
NIC (
(P /. (IC (Comput (P,s,k)))),
(IC (Comput (P,s,k))))
c= dom F
by A1, A4, Def17;
hence
S1[
k + 1]
by A5, A6;
verum end;
A7:
S1[
0 ]
by A2, EXTPRO_1:2;
thus
for
k being
Element of
NAT holds
S1[
k]
from NAT_1:sch 1(A7, A3); verum
end;
assume Z1:
for s being State of S st IC s in dom F holds
for P being Instruction-Sequence of S st F c= P holds
for k being Element of NAT holds IC (Comput (P,s,k)) in dom F
; F is really-closed
for s being State of S st IC s in dom F holds
for k being Element of NAT holds IC (Comput (F,s,k)) in dom F
proof
let s be
State of
S;
( IC s in dom F implies for k being Element of NAT holds IC (Comput (F,s,k)) in dom F )
assume Z2:
IC s in dom F
;
for k being Element of NAT holds IC (Comput (F,s,k)) in dom F
consider P being
Instruction-Sequence of
S such that W1:
F c= P
by PBOOLE:145;
let k be
Element of
NAT ;
IC (Comput (F,s,k)) in dom F
A:
IC (Comput (P,s,k)) in dom F
by Z1, Z2, W1;
defpred S1[
Nat]
means Comput (
P,
s,$1)
= Comput (
F,
s,$1);
Comput (
P,
s,
0) =
s
by EXTPRO_1:2
.=
Comput (
F,
s,
0)
by EXTPRO_1:2
;
then B:
S1[
0 ]
;
C:
for
k being
Nat st
S1[
k] holds
S1[
k + 1]
proof
let k be
Nat;
( S1[k] implies S1[k + 1] )
assume Z:
S1[
k]
;
S1[k + 1]
reconsider kk =
k as
Element of
NAT by ORDINAL1:def 12;
E:
IC (Comput (P,s,kk)) in dom F
by Z1, Z2, W1;
Comput (
P,
s,
(k + 1)) =
Following (
P,
(Comput (F,s,k)))
by EXTPRO_1:3, Z
.=
Following (
F,
(Comput (F,s,k)))
by E, W1, PARTFUN2:61, Z
.=
Comput (
F,
s,
(k + 1))
by EXTPRO_1:3
;
hence
S1[
k + 1]
;
verum
end;
for
k being
Nat holds
S1[
k]
from NAT_1:sch 2(B, C);
hence
IC (Comput (F,s,k)) in dom F
by A;
verum
end;
hence
F is really-closed
by Th45; verum