let P be Instruction-Sequence of SCMPDS; ( GCD-Algorithm c= P implies for s being 0 -started State of SCMPDS holds
( IC (Comput (P,s,4)) = 5 & (Comput (P,s,4)) . GBP = 0 & (Comput (P,s,4)) . SBP = 7 & (Comput (P,s,4)) . (intpos (7 + RetIC)) = 2 & (Comput (P,s,4)) . (intpos 9) = s . (intpos 9) & (Comput (P,s,4)) . (intpos 10) = s . (intpos 10) ) )
assume A1:
GCD-Algorithm c= P
; for s being 0 -started State of SCMPDS holds
( IC (Comput (P,s,4)) = 5 & (Comput (P,s,4)) . GBP = 0 & (Comput (P,s,4)) . SBP = 7 & (Comput (P,s,4)) . (intpos (7 + RetIC)) = 2 & (Comput (P,s,4)) . (intpos 9) = s . (intpos 9) & (Comput (P,s,4)) . (intpos 10) = s . (intpos 10) )
let s be 0 -started State of SCMPDS; ( IC (Comput (P,s,4)) = 5 & (Comput (P,s,4)) . GBP = 0 & (Comput (P,s,4)) . SBP = 7 & (Comput (P,s,4)) . (intpos (7 + RetIC)) = 2 & (Comput (P,s,4)) . (intpos 9) = s . (intpos 9) & (Comput (P,s,4)) . (intpos 10) = s . (intpos 10) )
set GA = GCD-Algorithm ;
A2:
IC s = 0
by MEMSTR_0:def 12;
A3:
P /. (IC s) = P . (IC s)
by PBOOLE:143;
A4:
P /. (IC (Comput (P,s,1))) = P . (IC (Comput (P,s,1)))
by PBOOLE:143;
A5: Comput (P,s,(0 + 1)) =
Following (P,(Comput (P,s,0)))
by EXTPRO_1:3
.=
Following (P,s)
by EXTPRO_1:2
.=
Exec ((GBP := 0),s)
by A2, Lm1, A3, A1
;
then A6: IC (Comput (P,s,1)) =
(IC s) + 1
by SCMPDS_2:45
.=
0 + 1
by A2
;
then A7: CurInstr (P,(Comput (P,s,1))) =
P . 1
by A4
.=
SBP := 7
by Lm1, A1
;
A8: Comput (P,s,(1 + 1)) =
Following (P,(Comput (P,s,1)))
by EXTPRO_1:3
.=
Exec ((SBP := 7),(Comput (P,s,1)))
by A7
;
A9:
(Comput (P,s,1)) . GBP = 0
by A5, SCMPDS_2:45;
A10:
(Comput (P,s,1)) . (intpos 9) = s . (intpos 9)
by A5, AMI_3:10, SCMPDS_2:45;
A11:
(Comput (P,s,1)) . (intpos 10) = s . (intpos 10)
by A5, AMI_3:10, SCMPDS_2:45;
A12:
P /. (IC (Comput (P,s,2))) = P . (IC (Comput (P,s,2)))
by PBOOLE:143;
A13: IC (Comput (P,s,2)) =
(IC (Comput (P,s,1))) + 1
by A8, SCMPDS_2:45
.=
1 + 1
by A6
;
then A14: CurInstr (P,(Comput (P,s,2))) =
P . 2
by A12
.=
saveIC (SBP,RetIC)
by Lm1, A1
;
A15: Comput (P,s,(2 + 1)) =
Following (P,(Comput (P,s,2)))
by EXTPRO_1:3
.=
Exec ((saveIC (SBP,RetIC)),(Comput (P,s,2)))
by A14
;
A16:
(Comput (P,s,2)) . GBP = 0
by A8, A9, AMI_3:10, SCMPDS_2:45;
A17:
(Comput (P,s,2)) . SBP = 7
by A8, SCMPDS_2:45;
A18:
(Comput (P,s,2)) . (intpos 9) = s . (intpos 9)
by A8, A10, AMI_3:10, SCMPDS_2:45;
A19:
(Comput (P,s,2)) . (intpos 10) = s . (intpos 10)
by A8, A11, AMI_3:10, SCMPDS_2:45;
A20:
P /. (IC (Comput (P,s,3))) = P . (IC (Comput (P,s,3)))
by PBOOLE:143;
A21: IC (Comput (P,s,3)) =
(IC (Comput (P,s,2))) + 1
by A15, SCMPDS_2:59
.=
2 + 1
by A13
;
then A22: CurInstr (P,(Comput (P,s,3))) =
P . 3
by A20
.=
goto 2
by Lm1, A1
;
A23: Comput (P,s,(3 + 1)) =
Following (P,(Comput (P,s,3)))
by EXTPRO_1:3
.=
Exec ((goto 2),(Comput (P,s,3)))
by A22
;
A24:
DataLoc (((Comput (P,s,2)) . SBP),RetIC) = intpos (7 + 1)
by A17, Th1, SCMPDS_I:def 14;
then A25:
(Comput (P,s,3)) . GBP = 0
by A15, A16, AMI_3:10, SCMPDS_2:59;
A26:
(Comput (P,s,3)) . SBP = 7
by A15, A17, A24, AMI_3:10, SCMPDS_2:59;
A27:
(Comput (P,s,3)) . (intpos 8) = 2
by A13, A15, A24, SCMPDS_2:59;
A28:
(Comput (P,s,3)) . (intpos 9) = s . (intpos 9)
by A15, A18, A24, AMI_3:10, SCMPDS_2:59;
A29:
(Comput (P,s,3)) . (intpos 10) = s . (intpos 10)
by A15, A19, A24, AMI_3:10, SCMPDS_2:59;
thus IC (Comput (P,s,4)) =
ICplusConst ((Comput (P,s,3)),2)
by A23, SCMPDS_2:54
.=
3 + 2
by A21, SCMPDS_6:12
.=
5
; ( (Comput (P,s,4)) . GBP = 0 & (Comput (P,s,4)) . SBP = 7 & (Comput (P,s,4)) . (intpos (7 + RetIC)) = 2 & (Comput (P,s,4)) . (intpos 9) = s . (intpos 9) & (Comput (P,s,4)) . (intpos 10) = s . (intpos 10) )
thus
(Comput (P,s,4)) . GBP = 0
by A23, A25, SCMPDS_2:54; ( (Comput (P,s,4)) . SBP = 7 & (Comput (P,s,4)) . (intpos (7 + RetIC)) = 2 & (Comput (P,s,4)) . (intpos 9) = s . (intpos 9) & (Comput (P,s,4)) . (intpos 10) = s . (intpos 10) )
thus
(Comput (P,s,4)) . SBP = 7
by A23, A26, SCMPDS_2:54; ( (Comput (P,s,4)) . (intpos (7 + RetIC)) = 2 & (Comput (P,s,4)) . (intpos 9) = s . (intpos 9) & (Comput (P,s,4)) . (intpos 10) = s . (intpos 10) )
thus
(Comput (P,s,4)) . (intpos (7 + RetIC)) = 2
by A23, A27, SCMPDS_2:54, SCMPDS_I:def 14; ( (Comput (P,s,4)) . (intpos 9) = s . (intpos 9) & (Comput (P,s,4)) . (intpos 10) = s . (intpos 10) )
thus
(Comput (P,s,4)) . (intpos 9) = s . (intpos 9)
by A23, A28, SCMPDS_2:54; (Comput (P,s,4)) . (intpos 10) = s . (intpos 10)
thus
(Comput (P,s,4)) . (intpos 10) = s . (intpos 10)
by A23, A29, SCMPDS_2:54; verum