let P be Instruction-Sequence of SCM+FSA; for s being State of SCM+FSA
for I, J being Program of SCM+FSA
for a being read-write Int-Location st s . a <= 0 & Directed J is_pseudo-closed_on s,P holds
( if>0 (a,I,J) is_halting_on s,P & if>0 (a,I,J) is_closed_on s,P & LifeSpan ((P +* (if>0 (a,I,J))),(s +* (Start-At (0,SCM+FSA)))) = (LifeSpan ((P +* (J ";" (Stop SCM+FSA))),(Initialize s))) + 3 )
let s be State of SCM+FSA; for I, J being Program of SCM+FSA
for a being read-write Int-Location st s . a <= 0 & Directed J is_pseudo-closed_on s,P holds
( if>0 (a,I,J) is_halting_on s,P & if>0 (a,I,J) is_closed_on s,P & LifeSpan ((P +* (if>0 (a,I,J))),(s +* (Start-At (0,SCM+FSA)))) = (LifeSpan ((P +* (J ";" (Stop SCM+FSA))),(Initialize s))) + 3 )
set D = Data-Locations ;
let I, J be Program of SCM+FSA; for a being read-write Int-Location st s . a <= 0 & Directed J is_pseudo-closed_on s,P holds
( if>0 (a,I,J) is_halting_on s,P & if>0 (a,I,J) is_closed_on s,P & LifeSpan ((P +* (if>0 (a,I,J))),(s +* (Start-At (0,SCM+FSA)))) = (LifeSpan ((P +* (J ";" (Stop SCM+FSA))),(Initialize s))) + 3 )
let a be read-write Int-Location; ( s . a <= 0 & Directed J is_pseudo-closed_on s,P implies ( if>0 (a,I,J) is_halting_on s,P & if>0 (a,I,J) is_closed_on s,P & LifeSpan ((P +* (if>0 (a,I,J))),(s +* (Start-At (0,SCM+FSA)))) = (LifeSpan ((P +* (J ";" (Stop SCM+FSA))),(Initialize s))) + 3 ) )
set J0 = Directed J;
set s0 = Initialized s;
set J9 = J ";" ((Goto ((card I) + 1)) ";" (I ";" (Stop SCM+FSA)));
set s00 = Initialize s;
set P00 = P +* (Directed J);
set s3 = Initialize s;
set P3 = P +* (if>0 (a,I,J));
A1:
if>0 (a,I,J) c= P +* (if>0 (a,I,J))
by FUNCT_4:25;
set s4 = Comput ((P +* (if>0 (a,I,J))),(Initialize s),1);
set s5 = Comput ((P +* (if>0 (a,I,J))),(Initialize s),2);
set i = a >0_goto ((card J) + 3);
A2:
Directed J c= P +* (Directed J)
by FUNCT_4:25;
if>0 (a,I,J) = ((((a >0_goto ((card J) + 3)) ";" J) ";" (Goto ((card I) + 1))) ";" I) ";" (Stop SCM+FSA)
by SCMFSA8B:def 2;
then
if>0 (a,I,J) = (((Macro (a >0_goto ((card J) + 3))) ";" J) ";" (Goto ((card I) + 1))) ";" (I ";" (Stop SCM+FSA))
by SCMFSA6A:25;
then
if>0 (a,I,J) = ((Macro (a >0_goto ((card J) + 3))) ";" J) ";" ((Goto ((card I) + 1)) ";" (I ";" (Stop SCM+FSA)))
by SCMFSA6A:25;
then A3:
if>0 (a,I,J) = (Macro (a >0_goto ((card J) + 3))) ";" (J ";" ((Goto ((card I) + 1)) ";" (I ";" (Stop SCM+FSA))))
by SCMFSA6A:25;
card (Macro (a >0_goto ((card J) + 3))) = 2
by COMPOS_1:56;
then A4:
Reloc ((J ";" ((Goto ((card I) + 1)) ";" (I ";" (Stop SCM+FSA)))),2) c= if>0 (a,I,J)
by A3, FUNCT_4:25;
A5:
0 in dom (if>0 (a,I,J))
by Th25;
A6: (P +* (if>0 (a,I,J))) . 0 =
(if>0 (a,I,J)) . 0
by A5, FUNCT_4:13
.=
a >0_goto ((card J) + 3)
by Th26
;
card (if>0 (a,I,J)) =
((card I) + (card J)) + (2 + 2)
by SCMFSA8B:12
.=
((card J) + 2) + ((card I) + 2)
;
then A7:
((card J) + 2) + 0 < card (if>0 (a,I,J))
by XREAL_1:8;
then A8:
(card J) + 2 in dom (if>0 (a,I,J))
by AFINSQ_1:66;
A9:
IC in dom (Start-At (0,SCM+FSA))
by MEMSTR_0:15;
A10: IC (Initialize s) =
IC (Initialize s)
.=
IC (Start-At (0,SCM+FSA))
by A9, FUNCT_4:13
.=
0
by FUNCOP_1:72
;
set ss = Comput ((P +* (if>0 (a,I,J))),(Initialize s),((pseudo-LifeSpan ((Initialize s),(P +* (Directed J)),(Directed J))) + 2));
set PP = P +* (if>0 (a,I,J));
if>0 (a,I,J) c= P +* (if>0 (a,I,J))
by FUNCT_4:25;
then A11:
Reloc ((J ";" ((Goto ((card I) + 1)) ";" (I ";" (Stop SCM+FSA)))),2) c= P +* (if>0 (a,I,J))
by A4, XBOOLE_1:1;
Reloc ((Directed J),2) c= Reloc ((J ";" ((Goto ((card I) + 1)) ";" (I ";" (Stop SCM+FSA)))),2)
by COMPOS_1:44, SCMFSA6A:16;
then A12:
Reloc ((Directed J),2) c= P +* (if>0 (a,I,J))
by A11, XBOOLE_1:1;
card (if>0 (a,I,J)) =
((card I) + (card J)) + (3 + 1)
by SCMFSA8B:12
.=
(((card I) + (card J)) + 3) + 1
;
then
((card I) + (card J)) + 3 < card (if>0 (a,I,J))
by NAT_1:13;
then A13:
((card I) + (card J)) + 3 in dom (if>0 (a,I,J))
by AFINSQ_1:66;
assume
s . a <= 0
; ( not Directed J is_pseudo-closed_on s,P or ( if>0 (a,I,J) is_halting_on s,P & if>0 (a,I,J) is_closed_on s,P & LifeSpan ((P +* (if>0 (a,I,J))),(s +* (Start-At (0,SCM+FSA)))) = (LifeSpan ((P +* (J ";" (Stop SCM+FSA))),(Initialize s))) + 3 ) )
then A14:
(Initialized s) . a <= 0
by SCMFSA_M:37;
A15:
1 in dom (if>0 (a,I,J))
by Th25;
assume A16:
Directed J is_pseudo-closed_on s,P
; ( if>0 (a,I,J) is_halting_on s,P & if>0 (a,I,J) is_closed_on s,P & LifeSpan ((P +* (if>0 (a,I,J))),(s +* (Start-At (0,SCM+FSA)))) = (LifeSpan ((P +* (J ";" (Stop SCM+FSA))),(Initialize s))) + 3 )
then A17:
pseudo-LifeSpan (s,P,(Directed J)) = LifeSpan ((P +* (J ";" (Stop SCM+FSA))),(Initialize s))
by Th29;
A18: (P +* (if>0 (a,I,J))) . 1 =
(if>0 (a,I,J)) . 1
by A15, FUNCT_4:13
.=
goto 2
by Th26
;
DataPart s = DataPart (Initialize s)
by MEMSTR_0:79;
then A19:
Directed J is_pseudo-closed_on Initialize s,P +* (Directed J)
by A16, Th23;
A20: Comput ((P +* (if>0 (a,I,J))),(Initialize s),(0 + 1)) =
Following ((P +* (if>0 (a,I,J))),(Comput ((P +* (if>0 (a,I,J))),(Initialize s),0)))
by EXTPRO_1:3
.=
Following ((P +* (if>0 (a,I,J))),(Initialize s))
.=
Exec ((a >0_goto ((card J) + 3)),(Initialize s))
by A10, A6, PBOOLE:143
;
A21:
a <> IC
by SCMFSA_2:56;
dom (Start-At (0,SCM+FSA)) = {(IC )}
by FUNCOP_1:13;
then
not a in dom (Start-At (0,SCM+FSA))
by A21, TARSKI:def 1;
then
not a in dom (Start-At (0,SCM+FSA))
;
then (Initialize s) . a =
s . a
by FUNCT_4:11
.=
(Initialized s) . a
by SCMFSA_M:37
;
then A22: IC (Comput ((P +* (if>0 (a,I,J))),(Initialize s),1)) =
succ (IC (Initialize s))
by A14, A20, SCMFSA_2:71
.=
0 + 1
by A10
;
A23: Comput ((P +* (if>0 (a,I,J))),(Initialize s),(1 + 1)) =
Following ((P +* (if>0 (a,I,J))),(Comput ((P +* (if>0 (a,I,J))),(Initialize s),1)))
by EXTPRO_1:3
.=
Exec ((goto 2),(Comput ((P +* (if>0 (a,I,J))),(Initialize s),1)))
by A22, A18, PBOOLE:143
;
then A24:
IC (Comput ((P +* (if>0 (a,I,J))),(Initialize s),2)) = 2
by SCMFSA_2:69;
A25:
now for f being FinSeq-Location holds (Initialize s) . f = (Comput ((P +* (if>0 (a,I,J))),(Initialize s),2)) . flet f be
FinSeq-Location ;
(Initialize s) . f = (Comput ((P +* (if>0 (a,I,J))),(Initialize s),2)) . fthus (Initialize s) . f =
(Comput ((P +* (if>0 (a,I,J))),(Initialize s),1)) . f
by A20, SCMFSA_2:71
.=
(Comput ((P +* (if>0 (a,I,J))),(Initialize s),2)) . f
by A23, SCMFSA_2:69
;
verum end;
now for a being Int-Location holds (Initialize s) . a = (Comput ((P +* (if>0 (a,I,J))),(Initialize s),2)) . alet a be
Int-Location;
(Initialize s) . a = (Comput ((P +* (if>0 (a,I,J))),(Initialize s),2)) . athus (Initialize s) . a =
(Comput ((P +* (if>0 (a,I,J))),(Initialize s),1)) . a
by A20, SCMFSA_2:71
.=
(Comput ((P +* (if>0 (a,I,J))),(Initialize s),2)) . a
by A23, SCMFSA_2:69
;
verum end;
then A26:
DataPart (Initialize s) = DataPart (Comput ((P +* (if>0 (a,I,J))),(Initialize s),2))
by A25, SCMFSA_M:2;
A27: IC (Comput ((P +* (if>0 (a,I,J))),(Initialize s),((pseudo-LifeSpan ((Initialize s),(P +* (Directed J)),(Directed J))) + 2))) =
IC (Comput ((P +* (if>0 (a,I,J))),(Comput ((P +* (if>0 (a,I,J))),(Initialize s),2)),(pseudo-LifeSpan ((Initialize s),(P +* (Directed J)),(Directed J)))))
by EXTPRO_1:4
.=
(IC (Comput ((P +* (Directed J)),(Initialize s),(pseudo-LifeSpan ((Initialize s),(P +* (Directed J)),(Directed J)))))) + 2
by A19, A12, A24, A26, Th22, A2
.=
(IC (Comput ((P +* (Directed J)),(Initialize s),(pseudo-LifeSpan (s,P,(Directed J)))))) + 2
by A16, Th21
.=
(card (Directed J)) + 2
by A16, SCMFSA8A:def 4
.=
(card J) + 2
by SCMFSA8A:20
;
then A28: CurInstr ((P +* (if>0 (a,I,J))),(Comput ((P +* (if>0 (a,I,J))),(Initialize s),((pseudo-LifeSpan ((Initialize s),(P +* (Directed J)),(Directed J))) + 2)))) =
(P +* (if>0 (a,I,J))) . ((card J) + 2)
by PBOOLE:143
.=
(if>0 (a,I,J)) . ((card J) + 2)
by A8, A1, GRFUNC_1:2
.=
goto (((card I) + (card J)) + 3)
by Th35
;
A29: IC (Comput ((P +* (if>0 (a,I,J))),(Initialize s),(((pseudo-LifeSpan ((Initialize s),(P +* (Directed J)),(Directed J))) + 2) + 1))) =
IC (Following ((P +* (if>0 (a,I,J))),(Comput ((P +* (if>0 (a,I,J))),(Initialize s),((pseudo-LifeSpan ((Initialize s),(P +* (Directed J)),(Directed J))) + 2)))))
by EXTPRO_1:3
.=
((card I) + (card J)) + 3
by A28, SCMFSA_2:69
;
then A30: CurInstr ((P +* (if>0 (a,I,J))),(Comput ((P +* (if>0 (a,I,J))),(Initialize s),(((pseudo-LifeSpan ((Initialize s),(P +* (Directed J)),(Directed J))) + 2) + 1)))) =
(P +* (if>0 (a,I,J))) . (((card I) + (card J)) + 3)
by PBOOLE:143
.=
(if>0 (a,I,J)) . (((card I) + (card J)) + 3)
by A13, A1, GRFUNC_1:2
.=
halt SCM+FSA
by Th33
;
then A31:
P +* (if>0 (a,I,J)) halts_on Initialize s
by EXTPRO_1:29;
hence
if>0 (a,I,J) is_halting_on s,P
by SCMFSA7B:def 7; ( if>0 (a,I,J) is_closed_on s,P & LifeSpan ((P +* (if>0 (a,I,J))),(s +* (Start-At (0,SCM+FSA)))) = (LifeSpan ((P +* (J ";" (Stop SCM+FSA))),(Initialize s))) + 3 )
now for k being Element of NAT holds IC (Comput ((P +* (if>0 (a,I,J))),(Initialize s),k)) in dom (if>0 (a,I,J))let k be
Element of
NAT ;
IC (Comput ((P +* (if>0 (a,I,J))),(Initialize s),b1)) in dom (if>0 (a,I,J))per cases
( k = 0 or ( 0 < k & k = 1 ) or ( 0 < k & k <> 1 & k < (pseudo-LifeSpan ((Initialize s),(P +* (Directed J)),(Directed J))) + 2 ) or ( 0 < k & k <> 1 & (pseudo-LifeSpan ((Initialize s),(P +* (Directed J)),(Directed J))) + 2 <= k ) )
;
suppose
k = 0
;
IC (Comput ((P +* (if>0 (a,I,J))),(Initialize s),b1)) in dom (if>0 (a,I,J))then
Comput (
(P +* (if>0 (a,I,J))),
(Initialize s),
k)
= Initialize s
by EXTPRO_1:2;
then
IC (Comput ((P +* (if>0 (a,I,J))),(Initialize s),k)) = 0
by MEMSTR_0:16;
hence
IC (Comput ((P +* (if>0 (a,I,J))),(Initialize s),k)) in dom (if>0 (a,I,J))
by Th25;
verum end; suppose A32:
(
0 < k &
k <> 1 &
k < (pseudo-LifeSpan ((Initialize s),(P +* (Directed J)),(Directed J))) + 2 )
;
IC (Comput ((P +* (if>0 (a,I,J))),(Initialize s),b1)) in dom (if>0 (a,I,J))then
0 + 1
<= k
by INT_1:7;
then
1
< k
by A32, XXREAL_0:1;
then
0 + (1 + 1) <= k
by INT_1:7;
then consider k2 being
Nat such that A33:
2
+ k2 = k
by NAT_1:10;
card (if>0 (a,I,J)) =
((card I) + (card J)) + (2 + 2)
by SCMFSA8B:12
.=
((card J) + 2) + ((card I) + 2)
;
then A34:
(card J) + 2
<= card (if>0 (a,I,J))
by NAT_1:12;
reconsider k2 =
k2 as
Element of
NAT by ORDINAL1:def 12;
reconsider n =
IC (Comput ((P +* (Directed J)),(Initialize s),k2)) as
Element of
NAT ;
A35:
k2 < pseudo-LifeSpan (
(Initialize s),
(P +* (Directed J)),
(Directed J))
by A32, A33, XREAL_1:6;
then
k2 < pseudo-LifeSpan (
s,
P,
(Directed J))
by A16, Th21;
then
n in dom (Directed J)
by A16, SCMFSA8A:17;
then
n < card (Directed J)
by AFINSQ_1:66;
then
n + 2
< (card (Directed J)) + 2
by XREAL_1:6;
then
n + 2
< (card J) + 2
by SCMFSA8A:20;
then A36:
n + 2
< card (if>0 (a,I,J))
by A34, XXREAL_0:2;
IC (Comput ((P +* (if>0 (a,I,J))),(Initialize s),k)) =
IC (Comput ((P +* (if>0 (a,I,J))),(Comput ((P +* (if>0 (a,I,J))),(Initialize s),2)),k2))
by A33, EXTPRO_1:4
.=
(IC (Comput ((P +* (Directed J)),(Initialize s),k2))) + 2
by A19, A12, A24, A26, A35, Th22, A2
;
hence
IC (Comput ((P +* (if>0 (a,I,J))),(Initialize s),k)) in dom (if>0 (a,I,J))
by A36, AFINSQ_1:66;
verum end; suppose A37:
(
0 < k &
k <> 1 &
(pseudo-LifeSpan ((Initialize s),(P +* (Directed J)),(Directed J))) + 2
<= k )
;
IC (Comput ((P +* (if>0 (a,I,J))),(Initialize s),b1)) in dom (if>0 (a,I,J))hereby verum
per cases
( (pseudo-LifeSpan ((Initialize s),(P +* (Directed J)),(Directed J))) + 2 = k or (pseudo-LifeSpan ((Initialize s),(P +* (Directed J)),(Directed J))) + 2 < k )
by A37, XXREAL_0:1;
suppose
(pseudo-LifeSpan ((Initialize s),(P +* (Directed J)),(Directed J))) + 2
< k
;
IC (Comput ((P +* (if>0 (a,I,J))),(Initialize s),k)) in dom (if>0 (a,I,J))then
((pseudo-LifeSpan ((Initialize s),(P +* (Directed J)),(Directed J))) + 2) + 1
<= k
by INT_1:7;
hence
IC (Comput ((P +* (if>0 (a,I,J))),(Initialize s),k)) in dom (if>0 (a,I,J))
by A13, A29, A30, EXTPRO_1:5;
verum end; end;
end; end; end; end;
hence
if>0 (a,I,J) is_closed_on s,P
by SCMFSA7B:def 6; LifeSpan ((P +* (if>0 (a,I,J))),(s +* (Start-At (0,SCM+FSA)))) = (LifeSpan ((P +* (J ";" (Stop SCM+FSA))),(Initialize s))) + 3
A38:
CurInstr ((P +* (if>0 (a,I,J))),(Initialize s)) = a >0_goto ((card J) + 3)
by A10, A6, PBOOLE:143;
now for k being Element of NAT st CurInstr ((P +* (if>0 (a,I,J))),(Comput ((P +* (if>0 (a,I,J))),(Initialize s),k))) = halt SCM+FSA holds
(pseudo-LifeSpan ((Initialize s),(P +* (Directed J)),(Directed J))) + (1 + 2) <= kA39:
0 + 2
< ((card I) + (card J)) + 3
by XREAL_1:8;
then A40:
2
in dom (if>0 (a,I,J))
by Th28;
A41:
CurInstr (
(P +* (if>0 (a,I,J))),
(Comput ((P +* (if>0 (a,I,J))),(Initialize s),2))) =
(P +* (if>0 (a,I,J))) . 2
by A24, PBOOLE:143
.=
(if>0 (a,I,J)) . 2
by A40, A1, GRFUNC_1:2
;
let k be
Element of
NAT ;
( CurInstr ((P +* (if>0 (a,I,J))),(Comput ((P +* (if>0 (a,I,J))),(Initialize s),k))) = halt SCM+FSA implies (pseudo-LifeSpan ((Initialize s),(P +* (Directed J)),(Directed J))) + (1 + 2) <= k )assume A42:
CurInstr (
(P +* (if>0 (a,I,J))),
(Comput ((P +* (if>0 (a,I,J))),(Initialize s),k)))
= halt SCM+FSA
;
(pseudo-LifeSpan ((Initialize s),(P +* (Directed J)),(Directed J))) + (1 + 2) <= kA43:
k <> 0
by A42, A38, EXTPRO_1:2;
A44:
k <> 1
by A22, A42, A18, PBOOLE:143;
2
<> k
by A42, A39, Th28, A41;
then
2
< k
by A43, A44, NAT_1:26;
then consider k2 being
Nat such that A45:
2
+ k2 = k
by NAT_1:10;
reconsider k2 =
k2 as
Element of
NAT by ORDINAL1:def 12;
reconsider n =
IC (Comput ((P +* (Directed J)),(Initialize s),k2)) as
Element of
NAT ;
assume
not
(pseudo-LifeSpan ((Initialize s),(P +* (Directed J)),(Directed J))) + (1 + 2) <= k
;
contradictionthen
k < ((pseudo-LifeSpan ((Initialize s),(P +* (Directed J)),(Directed J))) + 1) + 2
;
then
k2 < (pseudo-LifeSpan ((Initialize s),(P +* (Directed J)),(Directed J))) + 1
by A45, XREAL_1:6;
then A46:
k2 <= pseudo-LifeSpan (
(Initialize s),
(P +* (Directed J)),
(Directed J))
by NAT_1:13;
then A47:
k2 <= pseudo-LifeSpan (
s,
P,
(Directed J))
by A16, Th21;
then A52:
n + 2
in dom (if>0 (a,I,J))
by Th28;
A53:
IC (Comput ((P +* (if>0 (a,I,J))),(Initialize s),k)) =
IC (Comput ((P +* (if>0 (a,I,J))),(Comput ((P +* (if>0 (a,I,J))),(Initialize s),2)),k2))
by A45, EXTPRO_1:4
.=
n + 2
by A19, A12, A24, A26, A46, Th22, A2
;
CurInstr (
(P +* (if>0 (a,I,J))),
(Comput ((P +* (if>0 (a,I,J))),(Initialize s),k))) =
(P +* (if>0 (a,I,J))) . (IC (Comput ((P +* (if>0 (a,I,J))),(Initialize s),k)))
by PBOOLE:143
.=
(if>0 (a,I,J)) . (IC (Comput ((P +* (if>0 (a,I,J))),(Initialize s),k)))
by A53, A52, A1, GRFUNC_1:2
;
hence
contradiction
by A42, A53, A48, Th28;
verum end;
then
LifeSpan ((P +* (if>0 (a,I,J))),(Initialize s)) = (pseudo-LifeSpan ((Initialize s),(P +* (Directed J)),(Directed J))) + 3
by A30, A31, EXTPRO_1:def 15;
hence
LifeSpan ((P +* (if>0 (a,I,J))),(s +* (Start-At (0,SCM+FSA)))) = (LifeSpan ((P +* (J ";" (Stop SCM+FSA))),(Initialize s))) + 3
by A16, A17, Th21; verum