let i1 be Element of NAT ; for k being natural number
for a being Int-Location holds IncAddr (a >0_goto i1),k = a >0_goto (il. SCM+FSA ,((locnum i1,SCM+FSA ) + k))
let k be natural number ; for a being Int-Location holds IncAddr (a >0_goto i1),k = a >0_goto (il. SCM+FSA ,((locnum i1,SCM+FSA ) + k))
let a be Int-Location ; IncAddr (a >0_goto i1),k = a >0_goto (il. SCM+FSA ,((locnum i1,SCM+FSA ) + k))
A1: InsCode (IncAddr (a >0_goto i1),k) =
InsCode (a >0_goto i1)
by AMISTD_2:def 14
.=
8
by SCMFSA_2:49
.=
InsCode (a >0_goto (il. SCM+FSA ,((locnum i1,SCM+FSA ) + k)))
by SCMFSA_2:49
;
A2:
dom (AddressPart (IncAddr (a >0_goto i1),k)) = dom (AddressPart (a >0_goto i1))
by AMISTD_2:def 14;
A3:
for x being set st x in dom (AddressPart (a >0_goto i1)) holds
(AddressPart (IncAddr (a >0_goto i1),k)) . x = (AddressPart (a >0_goto (il. SCM+FSA ,((locnum i1,SCM+FSA ) + k)))) . x
proof
let x be
set ;
( x in dom (AddressPart (a >0_goto i1)) implies (AddressPart (IncAddr (a >0_goto i1),k)) . x = (AddressPart (a >0_goto (il. SCM+FSA ,((locnum i1,SCM+FSA ) + k)))) . x )
assume A4:
x in dom (AddressPart (a >0_goto i1))
;
(AddressPart (IncAddr (a >0_goto i1),k)) . x = (AddressPart (a >0_goto (il. SCM+FSA ,((locnum i1,SCM+FSA ) + k)))) . x
then A5:
x in dom <*i1,a*>
by Th25;
per cases
( x = 1 or x = 2 )
by A5, Lm2;
suppose A6:
x = 1
;
(AddressPart (IncAddr (a >0_goto i1),k)) . x = (AddressPart (a >0_goto (il. SCM+FSA ,((locnum i1,SCM+FSA ) + k)))) . xthen
(product" (AddressParts (InsCode (a >0_goto i1)))) . x = NAT
by Th56;
then consider f being
Element of
NAT such that A7:
f = (AddressPart (a >0_goto i1)) . x
and A8:
(AddressPart (IncAddr (a >0_goto i1),k)) . x = il. SCM+FSA ,
(k + (locnum f,SCM+FSA ))
by A4, AMISTD_2:def 14;
f =
<*i1,a*> . x
by A7, Th25
.=
i1
by A6, FINSEQ_1:61
;
hence (AddressPart (IncAddr (a >0_goto i1),k)) . x =
<*(il. SCM+FSA ,((locnum i1,SCM+FSA ) + k)),a*> . x
by A6, A8, FINSEQ_1:61
.=
(AddressPart (a >0_goto (il. SCM+FSA ,((locnum i1,SCM+FSA ) + k)))) . x
by Th25
;
verum end; suppose A9:
x = 2
;
(AddressPart (IncAddr (a >0_goto i1),k)) . x = (AddressPart (a >0_goto (il. SCM+FSA ,((locnum i1,SCM+FSA ) + k)))) . xthen
(product" (AddressParts (InsCode (a >0_goto i1)))) . x <> NAT
by Th5, Th57;
hence (AddressPart (IncAddr (a >0_goto i1),k)) . x =
(AddressPart (a >0_goto i1)) . x
by A4, AMISTD_2:def 14
.=
<*i1,a*> . x
by Th25
.=
a
by A9, FINSEQ_1:61
.=
<*(il. SCM+FSA ,((locnum i1,SCM+FSA ) + k)),a*> . x
by A9, FINSEQ_1:61
.=
(AddressPart (a >0_goto (il. SCM+FSA ,((locnum i1,SCM+FSA ) + k)))) . x
by Th25
;
verum end; end;
end;
dom (AddressPart (a >0_goto (il. SCM+FSA ,((locnum i1,SCM+FSA ) + k)))) =
dom <*(il. SCM+FSA ,((locnum i1,SCM+FSA ) + k)),a*>
by Th25
.=
Seg 2
by FINSEQ_3:29
.=
dom <*i1,a*>
by FINSEQ_3:29
.=
dom (AddressPart (a >0_goto i1))
by Th25
;
hence
IncAddr (a >0_goto i1),k = a >0_goto (il. SCM+FSA ,((locnum i1,SCM+FSA ) + k))
by A1, A2, A3, FUNCT_1:9, MCART_1:95; verum