let p be non NAT -defined autonomic FinPartState of ; for s1, s2 being State of SCM st p c= s1 & p c= s2 holds
for i being Element of NAT
for I being Instruction of SCM st I = CurInstr ((ProgramPart s1),(Comput ((ProgramPart s1),s1,i))) holds
( IC (Comput ((ProgramPart s1),s1,i)) = IC (Comput ((ProgramPart s2),s2,i)) & I = CurInstr ((ProgramPart s2),(Comput ((ProgramPart s2),s2,i))) )
let s1, s2 be State of SCM; ( p c= s1 & p c= s2 implies for i being Element of NAT
for I being Instruction of SCM st I = CurInstr ((ProgramPart s1),(Comput ((ProgramPart s1),s1,i))) holds
( IC (Comput ((ProgramPart s1),s1,i)) = IC (Comput ((ProgramPart s2),s2,i)) & I = CurInstr ((ProgramPart s2),(Comput ((ProgramPart s2),s2,i))) ) )
assume that
A1:
p c= s1
and
A2:
p c= s2
; for i being Element of NAT
for I being Instruction of SCM st I = CurInstr ((ProgramPart s1),(Comput ((ProgramPart s1),s1,i))) holds
( IC (Comput ((ProgramPart s1),s1,i)) = IC (Comput ((ProgramPart s2),s2,i)) & I = CurInstr ((ProgramPart s2),(Comput ((ProgramPart s2),s2,i))) )
let i be Element of NAT ; for I being Instruction of SCM st I = CurInstr ((ProgramPart s1),(Comput ((ProgramPart s1),s1,i))) holds
( IC (Comput ((ProgramPart s1),s1,i)) = IC (Comput ((ProgramPart s2),s2,i)) & I = CurInstr ((ProgramPart s2),(Comput ((ProgramPart s2),s2,i))) )
let I be Instruction of SCM; ( I = CurInstr ((ProgramPart s1),(Comput ((ProgramPart s1),s1,i))) implies ( IC (Comput ((ProgramPart s1),s1,i)) = IC (Comput ((ProgramPart s2),s2,i)) & I = CurInstr ((ProgramPart s2),(Comput ((ProgramPart s2),s2,i))) ) )
assume A3:
I = CurInstr ((ProgramPart s1),(Comput ((ProgramPart s1),s1,i)))
; ( IC (Comput ((ProgramPart s1),s1,i)) = IC (Comput ((ProgramPart s2),s2,i)) & I = CurInstr ((ProgramPart s2),(Comput ((ProgramPart s2),s2,i))) )
set Cs2i = Comput ((ProgramPart s2),s2,i);
set Cs1i = Comput ((ProgramPart s1),s1,i);
thus A4:
IC (Comput ((ProgramPart s1),s1,i)) = IC (Comput ((ProgramPart s2),s2,i))
I = CurInstr ((ProgramPart s2),(Comput ((ProgramPart s2),s2,i)))proof
assume A5:
IC (Comput ((ProgramPart s1),s1,i)) <> IC (Comput ((ProgramPart s2),s2,i))
;
contradiction
(
((Comput ((ProgramPart s1),s1,i)) | (dom p)) . (IC SCM) = (Comput ((ProgramPart s1),s1,i)) . (IC SCM) &
((Comput ((ProgramPart s2),s2,i)) | (dom p)) . (IC SCM) = (Comput ((ProgramPart s2),s2,i)) . (IC SCM) )
by Th84, FUNCT_1:72;
hence
contradiction
by A1, A2, A5, EXTPRO_1:def 9;
verum
end;
thus
I = CurInstr ((ProgramPart s2),(Comput ((ProgramPart s2),s2,i)))
verumproof
ProgramPart p c= p
by RELAT_1:88;
then A6:
dom (ProgramPart p) c= dom p
by GRFUNC_1:8;
IC (Comput ((ProgramPart s2),s2,i)) in dom (ProgramPart p)
by A2, Th86;
then A7:
((Comput ((ProgramPart s2),s2,i)) | (dom p)) . (IC (Comput ((ProgramPart s2),s2,i))) = (Comput ((ProgramPart s2),s2,i)) . (IC (Comput ((ProgramPart s2),s2,i)))
by A6, FUNCT_1:72;
IC (Comput ((ProgramPart s1),s1,i)) in dom (ProgramPart p)
by A1, Th86;
then A8:
((Comput ((ProgramPart s1),s1,i)) | (dom p)) . (IC (Comput ((ProgramPart s1),s1,i))) = (Comput ((ProgramPart s1),s1,i)) . (IC (Comput ((ProgramPart s1),s1,i)))
by A6, FUNCT_1:72;
TX:
ProgramPart s1 = ProgramPart (Comput ((ProgramPart s1),s1,i))
by AMI_1:123;
TY:
ProgramPart s2 = ProgramPart (Comput ((ProgramPart s2),s2,i))
by AMI_1:123;
Y:
(ProgramPart s2) /. (IC (Comput ((ProgramPart s2),s2,i))) = (Comput ((ProgramPart s2),s2,i)) . (IC (Comput ((ProgramPart s2),s2,i)))
by TY, COMPOS_1:38;
Z:
(ProgramPart s1) /. (IC (Comput ((ProgramPart s1),s1,i))) = (Comput ((ProgramPart s1),s1,i)) . (IC (Comput ((ProgramPart s1),s1,i)))
by TX, COMPOS_1:38;
assume ZZ:
I <> CurInstr (
(ProgramPart s2),
(Comput ((ProgramPart s2),s2,i)))
;
contradiction
(Comput ((ProgramPart s1),s1,i)) | (dom p) = (Comput ((ProgramPart s2),s2,i)) | (dom p)
by A1, A2, EXTPRO_1:def 9;
then
((Comput ((ProgramPart s1),s1,i)) | (dom p)) . (IC (Comput ((ProgramPart s1),s1,i))) = (Comput ((ProgramPart s2),s2,i)) . (IC (Comput ((ProgramPart s1),s1,i)))
by A7, A4;
hence
contradiction
by A3, A4, A8, Y, ZZ, Z;
verum
end;