let n be Element of NAT ; for R being good Ring
for a, b being Data-Location of R
for s1, s2 being State of (SCM R) st not R is trivial holds
for p being non NAT -defined autonomic FinPartState of st p c= s1 & p c= s2 & CurInstr (ProgramPart (Comput (ProgramPart s1),s1,n)),(Comput (ProgramPart s1),s1,n) = SubFrom a,b & a in dom p holds
((Comput (ProgramPart s1),s1,n) . a) - ((Comput (ProgramPart s1),s1,n) . b) = ((Comput (ProgramPart s2),s2,n) . a) - ((Comput (ProgramPart s2),s2,n) . b)
let R be good Ring; for a, b being Data-Location of R
for s1, s2 being State of (SCM R) st not R is trivial holds
for p being non NAT -defined autonomic FinPartState of st p c= s1 & p c= s2 & CurInstr (ProgramPart (Comput (ProgramPart s1),s1,n)),(Comput (ProgramPart s1),s1,n) = SubFrom a,b & a in dom p holds
((Comput (ProgramPart s1),s1,n) . a) - ((Comput (ProgramPart s1),s1,n) . b) = ((Comput (ProgramPart s2),s2,n) . a) - ((Comput (ProgramPart s2),s2,n) . b)
let a, b be Data-Location of R; for s1, s2 being State of (SCM R) st not R is trivial holds
for p being non NAT -defined autonomic FinPartState of st p c= s1 & p c= s2 & CurInstr (ProgramPart (Comput (ProgramPart s1),s1,n)),(Comput (ProgramPart s1),s1,n) = SubFrom a,b & a in dom p holds
((Comput (ProgramPart s1),s1,n) . a) - ((Comput (ProgramPart s1),s1,n) . b) = ((Comput (ProgramPart s2),s2,n) . a) - ((Comput (ProgramPart s2),s2,n) . b)
let s1, s2 be State of (SCM R); ( not R is trivial implies for p being non NAT -defined autonomic FinPartState of st p c= s1 & p c= s2 & CurInstr (ProgramPart (Comput (ProgramPart s1),s1,n)),(Comput (ProgramPart s1),s1,n) = SubFrom a,b & a in dom p holds
((Comput (ProgramPart s1),s1,n) . a) - ((Comput (ProgramPart s1),s1,n) . b) = ((Comput (ProgramPart s2),s2,n) . a) - ((Comput (ProgramPart s2),s2,n) . b) )
assume A1:
not R is trivial
; for p being non NAT -defined autonomic FinPartState of st p c= s1 & p c= s2 & CurInstr (ProgramPart (Comput (ProgramPart s1),s1,n)),(Comput (ProgramPart s1),s1,n) = SubFrom a,b & a in dom p holds
((Comput (ProgramPart s1),s1,n) . a) - ((Comput (ProgramPart s1),s1,n) . b) = ((Comput (ProgramPart s2),s2,n) . a) - ((Comput (ProgramPart s2),s2,n) . b)
set Cs2i1 = Comput (ProgramPart s2),s2,(n + 1);
set Cs1i1 = Comput (ProgramPart s1),s1,(n + 1);
set Cs2i = Comput (ProgramPart s2),s2,n;
set Cs1i = Comput (ProgramPart s1),s1,n;
set I = CurInstr (ProgramPart (Comput (ProgramPart s1),s1,n)),(Comput (ProgramPart s1),s1,n);
let p be non NAT -defined autonomic FinPartState of ; ( p c= s1 & p c= s2 & CurInstr (ProgramPart (Comput (ProgramPart s1),s1,n)),(Comput (ProgramPart s1),s1,n) = SubFrom a,b & a in dom p implies ((Comput (ProgramPart s1),s1,n) . a) - ((Comput (ProgramPart s1),s1,n) . b) = ((Comput (ProgramPart s2),s2,n) . a) - ((Comput (ProgramPart s2),s2,n) . b) )
assume A2:
( p c= s1 & p c= s2 )
; ( not CurInstr (ProgramPart (Comput (ProgramPart s1),s1,n)),(Comput (ProgramPart s1),s1,n) = SubFrom a,b or not a in dom p or ((Comput (ProgramPart s1),s1,n) . a) - ((Comput (ProgramPart s1),s1,n) . b) = ((Comput (ProgramPart s2),s2,n) . a) - ((Comput (ProgramPart s2),s2,n) . b) )
A3:
( a in dom p implies ( ((Comput (ProgramPart s1),s1,(n + 1)) | (dom p)) . a = (Comput (ProgramPart s1),s1,(n + 1)) . a & ((Comput (ProgramPart s2),s2,(n + 1)) | (dom p)) . a = (Comput (ProgramPart s2),s2,(n + 1)) . a ) )
by FUNCT_1:72;
T:
ProgramPart s2 = ProgramPart (Comput (ProgramPart s2),s2,n)
by AMI_1:144;
A4: Comput (ProgramPart s2),s2,(n + 1) =
Following (ProgramPart s2),(Comput (ProgramPart s2),s2,n)
by AMI_1:14
.=
Exec (CurInstr (ProgramPart (Comput (ProgramPart s2),s2,n)),(Comput (ProgramPart s2),s2,n)),(Comput (ProgramPart s2),s2,n)
by T
;
assume that
A5:
CurInstr (ProgramPart (Comput (ProgramPart s1),s1,n)),(Comput (ProgramPart s1),s1,n) = SubFrom a,b
and
A6:
( a in dom p & ((Comput (ProgramPart s1),s1,n) . a) - ((Comput (ProgramPart s1),s1,n) . b) <> ((Comput (ProgramPart s2),s2,n) . a) - ((Comput (ProgramPart s2),s2,n) . b) )
; contradiction
T:
ProgramPart s1 = ProgramPart (Comput (ProgramPart s1),s1,n)
by AMI_1:144;
Comput (ProgramPart s1),s1,(n + 1) =
Following (ProgramPart s1),(Comput (ProgramPart s1),s1,n)
by AMI_1:14
.=
Exec (CurInstr (ProgramPart (Comput (ProgramPart s1),s1,n)),(Comput (ProgramPart s1),s1,n)),(Comput (ProgramPart s1),s1,n)
by T
;
then A7:
(Comput (ProgramPart s1),s1,(n + 1)) . a = ((Comput (ProgramPart s1),s1,n) . a) - ((Comput (ProgramPart s1),s1,n) . b)
by A5, SCMRING2:15;
CurInstr (ProgramPart (Comput (ProgramPart s1),s1,n)),(Comput (ProgramPart s1),s1,n) = CurInstr (ProgramPart (Comput (ProgramPart s2),s2,n)),(Comput (ProgramPart s2),s2,n)
by A1, A2, Th28;
then
(Comput (ProgramPart s2),s2,(n + 1)) . a = ((Comput (ProgramPart s2),s2,n) . a) - ((Comput (ProgramPart s2),s2,n) . b)
by A4, A5, SCMRING2:15;
hence
contradiction
by A2, A3, A6, A7, AMI_1:def 25; verum