let p be preProgram of SCM+FSA ; :: thesis: for k being Element of NAT holds UsedIntLoc p = UsedIntLoc (IncAddr p,k)
let k be Element of NAT ; :: thesis: UsedIntLoc p = UsedIntLoc (IncAddr p,k)
set Ip = IncAddr p,k;
consider UIL being Function of the Instructions of SCM+FSA ,(Fin Int-Locations ) such that
A1: for i being Instruction of SCM+FSA holds UIL . i = UsedIntLoc i and
A2: UsedIntLoc p = Union (UIL * p) by Def2;
set g = UIL * p;
set f = UIL * (IncAddr p,k);
consider UIL2 being Function of the Instructions of SCM+FSA ,(Fin Int-Locations ) such that
A3: for i being Instruction of SCM+FSA holds UIL2 . i = UsedIntLoc i and
A4: UsedIntLoc (IncAddr p,k) = Union (UIL2 * (IncAddr p,k)) by Def2;
for c being Element of the Instructions of SCM+FSA holds UIL . c = UIL2 . c
proof
let c be Element of the Instructions of SCM+FSA ; :: thesis: UIL . c = UIL2 . c
reconsider d = c as Instruction of SCM+FSA ;
thus UIL . c = UsedIntLoc d by A1
.= UIL2 . c by A3 ; :: thesis: verum
end;
then A5: UIL = UIL2 by FUNCT_2:113;
now
A6: dom UIL = the Instructions of SCM+FSA by FUNCT_2:def 1;
then A7: rng p c= dom UIL by AMI_1:118;
A8: rng (IncAddr p,k) c= dom UIL by A6, AMI_1:118;
then A9: dom (UIL * (IncAddr p,k)) = dom (IncAddr p,k) by RELAT_1:46;
A10: dom (IncAddr p,k) = dom p by SCMFSA_4:def 6;
hence dom (UIL * (IncAddr p,k)) = dom (UIL * p) by A7, A9, RELAT_1:46; :: thesis: for x being set st x in dom (UIL * (IncAddr p,k)) holds
(UIL * (IncAddr p,k)) . x = (UIL * p) . x

let x be set ; :: thesis: ( x in dom (UIL * (IncAddr p,k)) implies (UIL * (IncAddr p,k)) . x = (UIL * p) . x )
assume A11: x in dom (UIL * (IncAddr p,k)) ; :: thesis: (UIL * (IncAddr p,k)) . x = (UIL * p) . x
then p . x in rng p by A10, A9, FUNCT_1:def 5;
then reconsider px = p . x as Instruction of SCM+FSA by A7, FUNCT_2:def 1;
dom p c= NAT by RELAT_1:def 18;
then reconsider x9 = x as Element of NAT by A10, A9, A11;
reconsider m = x9 as Element of NAT ;
A12: (IncAddr p,k) . x = IncAddr (pi p,m),k by A10, A9, A11, SCMFSA_4:def 6
.= IncAddr px,k by A10, A9, A11, AMI_1:def 47 ;
(IncAddr p,k) . x in rng (IncAddr p,k) by A9, A11, FUNCT_1:def 5;
then reconsider Ipx = (IncAddr p,k) . x as Instruction of SCM+FSA by A8, FUNCT_2:def 1;
thus (UIL * (IncAddr p,k)) . x = UIL . Ipx by A11, FUNCT_1:22
.= UsedIntLoc Ipx by A1
.= UsedIntLoc px by A12, Th27
.= UIL . px by A3, A5
.= (UIL * p) . x by A10, A9, A11, FUNCT_1:23 ; :: thesis: verum
end;
hence UsedIntLoc p = UsedIntLoc (IncAddr p,k) by A2, A4, A5, FUNCT_1:9; :: thesis: verum