let j, k be natural number ; for R being good Ring
for I being Instruction of (SCM R)
for s being State of (SCM R) st IC s = il. (SCM R),(j + k) holds
Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) = (Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))
let R be good Ring; for I being Instruction of (SCM R)
for s being State of (SCM R) st IC s = il. (SCM R),(j + k) holds
Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) = (Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))
let I be Instruction of (SCM R); for s being State of (SCM R) st IC s = il. (SCM R),(j + k) holds
Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) = (Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))
let s be State of (SCM R); ( IC s = il. (SCM R),(j + k) implies Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) = (Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R)) )
A1:
now let d be
Element of
NAT ;
(Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . d = ((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . dthus (Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . d =
(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) . d
by AMI_1:def 13
.=
s . d
by AMI_1:112
.=
(Exec (IncAddr I,k),s) . d
by AMI_1:def 13
.=
((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . d
by AMI_1:112
;
verum end;
assume A2:
IC s = il. (SCM R),(j + k)
; Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) = (Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))
then A3: succ ((IC s) -' k,(SCM R)) =
succ (((il. (SCM R),j) + k,(SCM R)) -' k,(SCM R))
by AMISTD_1:def 13
.=
succ (il. (SCM R),j)
by AMISTD_1:61
.=
il. (SCM R),(j + 1)
by SCMRING3:67
.=
((il. (SCM R),(j + 1)) + k,(SCM R)) -' k,(SCM R)
by AMISTD_1:61
.=
(il. (SCM R),((j + 1) + k)) -' k,(SCM R)
by AMISTD_1:def 13
.=
(il. (SCM R),((j + k) + 1)) -' k,(SCM R)
.=
(succ (IC s)) -' k,(SCM R)
by A2, SCMRING3:67
;
per cases
( InsCode I = 0 or InsCode I = 1 or InsCode I = 2 or InsCode I = 3 or InsCode I = 4 or InsCode I = 5 or InsCode I = 6 or InsCode I = 7 )
by NAT_1:32, SCMRING3:71;
suppose
InsCode I = 0
;
Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) = (Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))then A4:
I = halt (SCM R)
by SCMRING3:16;
hence Exec I,
(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) =
s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))
by AMI_1:def 8
.=
s +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))
by A4, AMI_1:def 8
.=
(Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))
by A4, AMI_1:def 8
;
verum end; suppose
InsCode I = 1
;
Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) = (Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))then consider da,
db being
Data-Location of
R such that A5:
I = da := db
by SCMRING3:17;
A6:
IncAddr I,
k = da := db
by A5, AMISTD_2:29;
then A7:
(Exec (IncAddr I,k),s) . (IC (SCM R)) = succ (IC s)
by SCMRING2:13;
A8:
now let d be
Data-Location of
R;
(Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . b1 = ((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . b1per cases
( da = d or da <> d )
;
suppose A9:
da = d
;
(Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . b1 = ((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . b1hence (Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . d =
(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) . db
by A5, SCMRING2:13
.=
s . db
by Th20
.=
(Exec (IncAddr I,k),s) . d
by A6, A9, SCMRING2:13
.=
((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . d
by Th20
;
verum end; suppose A10:
da <> d
;
(Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . b1 = ((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . b1hence (Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . d =
(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) . d
by A5, SCMRING2:13
.=
s . d
by Th20
.=
(Exec (IncAddr I,k),s) . d
by A6, A10, SCMRING2:13
.=
((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . d
by Th20
;
verum end; end; end; IC (Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) =
succ (IC (s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))))
by A5, SCMRING2:13
.=
(IC (Exec (IncAddr I,k),s)) -' k,
(SCM R)
by A3, A7, AMI_1:111
.=
IC ((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R)))
by AMI_1:111
;
hence
Exec I,
(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) = (Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))
by A1, A8, Th21;
verum end; suppose
InsCode I = 2
;
Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) = (Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))then consider da,
db being
Data-Location of
R such that A11:
I = AddTo da,
db
by SCMRING3:18;
A12:
IncAddr I,
k = AddTo da,
db
by A11, AMISTD_2:29;
then A13:
(Exec (IncAddr I,k),s) . (IC (SCM R)) = succ (IC s)
by SCMRING2:14;
A14:
now let d be
Data-Location of
R;
(Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . b1 = ((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . b1per cases
( da = d or da <> d )
;
suppose A15:
da = d
;
(Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . b1 = ((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . b1hence (Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . d =
((s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) . da) + ((s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) . db)
by A11, SCMRING2:14
.=
(s . da) + ((s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) . db)
by Th20
.=
(s . da) + (s . db)
by Th20
.=
(Exec (IncAddr I,k),s) . d
by A12, A15, SCMRING2:14
.=
((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . d
by Th20
;
verum end; suppose A16:
da <> d
;
(Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . b1 = ((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . b1hence (Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . d =
(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) . d
by A11, SCMRING2:14
.=
s . d
by Th20
.=
(Exec (IncAddr I,k),s) . d
by A12, A16, SCMRING2:14
.=
((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . d
by Th20
;
verum end; end; end; IC (Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) =
succ (IC (s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))))
by A11, SCMRING2:14
.=
(IC (Exec (IncAddr I,k),s)) -' k,
(SCM R)
by A3, A13, AMI_1:111
.=
IC ((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R)))
by AMI_1:111
;
hence
Exec I,
(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) = (Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))
by A1, A14, Th21;
verum end; suppose
InsCode I = 3
;
Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) = (Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))then consider da,
db being
Data-Location of
R such that A17:
I = SubFrom da,
db
by SCMRING3:19;
A18:
IncAddr I,
k = SubFrom da,
db
by A17, AMISTD_2:29;
then A19:
(Exec (IncAddr I,k),s) . (IC (SCM R)) = succ (IC s)
by SCMRING2:15;
A20:
now let d be
Data-Location of
R;
(Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . b1 = ((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . b1per cases
( da = d or da <> d )
;
suppose A21:
da = d
;
(Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . b1 = ((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . b1hence (Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . d =
((s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) . da) - ((s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) . db)
by A17, SCMRING2:15
.=
(s . da) - ((s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) . db)
by Th20
.=
(s . da) - (s . db)
by Th20
.=
(Exec (IncAddr I,k),s) . d
by A18, A21, SCMRING2:15
.=
((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . d
by Th20
;
verum end; suppose A22:
da <> d
;
(Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . b1 = ((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . b1hence (Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . d =
(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) . d
by A17, SCMRING2:15
.=
s . d
by Th20
.=
(Exec (IncAddr I,k),s) . d
by A18, A22, SCMRING2:15
.=
((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . d
by Th20
;
verum end; end; end; IC (Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) =
succ (IC (s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))))
by A17, SCMRING2:15
.=
(IC (Exec (IncAddr I,k),s)) -' k,
(SCM R)
by A3, A19, AMI_1:111
.=
IC ((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R)))
by AMI_1:111
;
hence
Exec I,
(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) = (Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))
by A1, A20, Th21;
verum end; suppose
InsCode I = 4
;
Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) = (Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))then consider da,
db being
Data-Location of
R such that A23:
I = MultBy da,
db
by SCMRING3:20;
A24:
IncAddr I,
k = MultBy da,
db
by A23, AMISTD_2:29;
then A25:
(Exec (IncAddr I,k),s) . (IC (SCM R)) = succ (IC s)
by SCMRING2:16;
A26:
now let d be
Data-Location of
R;
(Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . b1 = ((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . b1per cases
( da = d or da <> d )
;
suppose A27:
da = d
;
(Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . b1 = ((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . b1hence (Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . d =
((s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) . da) * ((s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) . db)
by A23, SCMRING2:16
.=
(s . da) * ((s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) . db)
by Th20
.=
(s . da) * (s . db)
by Th20
.=
(Exec (IncAddr I,k),s) . d
by A24, A27, SCMRING2:16
.=
((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . d
by Th20
;
verum end; suppose A28:
da <> d
;
(Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . b1 = ((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . b1hence (Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . d =
(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) . d
by A23, SCMRING2:16
.=
s . d
by Th20
.=
(Exec (IncAddr I,k),s) . d
by A24, A28, SCMRING2:16
.=
((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . d
by Th20
;
verum end; end; end; IC (Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) =
succ (IC (s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))))
by A23, SCMRING2:16
.=
(IC (Exec (IncAddr I,k),s)) -' k,
(SCM R)
by A3, A25, AMI_1:111
.=
IC ((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R)))
by AMI_1:111
;
hence
Exec I,
(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) = (Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))
by A1, A26, Th21;
verum end; suppose
InsCode I = 5
;
Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) = (Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))then consider da being
Data-Location of
R,
r being
Element of
R such that A29:
I = da := r
by SCMRING3:21;
A30:
IncAddr I,
k = da := r
by A29, AMISTD_2:29;
then A31:
(Exec (IncAddr I,k),s) . (IC (SCM R)) = succ (IC s)
by SCMRING2:19;
A32:
now let d be
Data-Location of
R;
(Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . b1 = ((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . b1per cases
( da = d or da <> d )
;
suppose A33:
da = d
;
(Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . b1 = ((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . b1hence (Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . d =
r
by A29, SCMRING2:19
.=
(Exec (IncAddr I,k),s) . d
by A30, A33, SCMRING2:19
.=
((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . d
by Th20
;
verum end; suppose A34:
da <> d
;
(Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . b1 = ((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . b1hence (Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . d =
(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) . d
by A29, SCMRING2:19
.=
s . d
by Th20
.=
(Exec (IncAddr I,k),s) . d
by A30, A34, SCMRING2:19
.=
((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . d
by Th20
;
verum end; end; end; IC (Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) =
succ (IC (s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))))
by A29, SCMRING2:19
.=
(IC (Exec (IncAddr I,k),s)) -' k,
(SCM R)
by A3, A31, AMI_1:111
.=
IC ((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R)))
by AMI_1:111
;
hence
Exec I,
(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) = (Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))
by A1, A32, Th21;
verum end; suppose
InsCode I = 6
;
Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) = (Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))then consider loc being
Element of
NAT such that A35:
I = goto loc,
R
by SCMRING3:22;
A36:
IncAddr I,
k = goto (loc + k,(SCM R)),
R
by A35, SCMRING3:69;
then A37:
IC (Exec (IncAddr I,k),s) = loc + k,
(SCM R)
by SCMRING2:17;
A38:
now let d be
Data-Location of
R;
(Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . d = ((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . dthus (Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . d =
(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) . d
by A35, SCMRING2:17
.=
s . d
by Th20
.=
(Exec (IncAddr I,k),s) . d
by A36, SCMRING2:17
.=
((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . d
by Th20
;
verum end; IC (Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) =
loc
by A35, SCMRING2:17
.=
(IC (Exec (IncAddr I,k),s)) -' k,
(SCM R)
by A37, AMISTD_1:61
.=
IC ((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R)))
by AMI_1:111
;
hence
Exec I,
(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) = (Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))
by A1, A38, Th21;
verum end; suppose
InsCode I = 7
;
Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) = (Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))then consider da being
Data-Location of
R,
loc being
Element of
NAT such that A39:
I = da =0_goto loc
by SCMRING3:23;
A40:
IncAddr I,
k = da =0_goto (loc + k,(SCM R))
by A39, SCMRING3:70;
A41:
now per cases
( s . da = 0. R or s . da <> 0. R )
;
suppose A42:
s . da = 0. R
;
IC (Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) = IC ((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R)))then A43:
IC (Exec (IncAddr I,k),s) = loc + k,
(SCM R)
by A40, SCMRING2:18;
(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) . da = 0. R
by A42, Th20;
then IC (Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) =
loc
by A39, SCMRING2:18
.=
(IC (Exec (IncAddr I,k),s)) -' k,
(SCM R)
by A43, AMISTD_1:61
.=
IC ((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R)))
by AMI_1:111
;
hence
IC (Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) = IC ((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R)))
;
verum end; suppose A44:
s . da <> 0. R
;
IC (Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) = IC ((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R)))then A45:
(Exec (IncAddr I,k),s) . (IC (SCM R)) = succ (IC s)
by A40, SCMRING2:18;
(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) . da <> 0. R
by A44, Th20;
then IC (Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) =
succ (IC (s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))))
by A39, SCMRING2:18
.=
(IC (Exec (IncAddr I,k),s)) -' k,
(SCM R)
by A3, A45, AMI_1:111
.=
IC ((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R)))
by AMI_1:111
;
hence
IC (Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) = IC ((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R)))
;
verum end; end; end; now let d be
Data-Location of
R;
(Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . d = ((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . dthus (Exec I,(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R)))) . d =
(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) . d
by A39, SCMRING2:18
.=
s . d
by Th20
.=
(Exec (IncAddr I,k),s) . d
by A40, SCMRING2:18
.=
((Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))) . d
by Th20
;
verum end; hence
Exec I,
(s +* (Start-At ((IC s) -' k,(SCM R)),(SCM R))) = (Exec (IncAddr I,k),s) +* (Start-At ((IC (Exec (IncAddr I,k),s)) -' k,(SCM R)),(SCM R))
by A1, A41, Th21;
verum end; end;