reserve j, k, m, n for Nat,
  a,b for Int_position,
  k1,k2 for Integer;
reserve P,P1,P2 for Instruction-Sequence of SCMPDS;

theorem
  for q be non halt-free finite
   (the InstructionsF of SCMPDS)-valued NAT-defined Function
  for p being q-autonomic non empty FinPartState of SCMPDS, s1, s2
being State of SCMPDS st  p c= s1 &  p c= s2  &
 q c= P1 & q c= P2
for i being Nat,k1,k2 be Integer,a,b be Int_position st CurInstr(P1,
Comput(P1,s1,i)) = AddTo(a,k1,b,k2)
& a in dom p & DataLoc(Comput(P1,s1,i).a,k1) in dom p holds Comput
(P1,s1,i)
.DataLoc(Comput(P1,s1,i).b,k2) = Comput(P2,s2,i).
DataLoc(Comput(P2,s2,i).
  b,k2)
proof
   let q be non halt-free finite
    (the InstructionsF of SCMPDS)-valued NAT-defined Function;
  let p be q-autonomic non empty FinPartState of SCMPDS,
      s1, s2 be State
  of SCMPDS such that
A1:  p c= s1 &  p c= s2 and
A2: q c= P1 & q c= P2;
A3:  p c= s1 &  p c= s2 by A1;
  let i be Nat,k1,k2 be Integer,a,b be Int_position;
  set I = CurInstr(P1,Comput(P1,s1,i));
  set Cs1i = Comput(P1,s1,i);
  set Cs2i = Comput(P2,s2,i);
  assume that
A4: I = AddTo(a,k1,b,k2) and
A5: a in dom p and
A6: DataLoc(Cs1i.a,k1) in dom p;
  a in dom  p implies
   (Cs1i|dom  p).a = Cs1i.a & (Cs2i|dom  p).a = Cs2i.a by FUNCT_1:49;
  then
A7: Cs1i.a=Cs2i.a by A5,A2,A3,EXTPRO_1:def 10;
  set Cs2i1 = Comput(P2,s2,i+1);
  set Cs1i1 = Comput(P1,s1,i+1);
  set D11=Cs1i1.DataLoc(Cs1i.a,k1), D21=Cs2i1.DataLoc(Cs2i.a,k1), C11=Cs1i.
  DataLoc(Cs1i.a,k1), C12=Cs1i.DataLoc(Cs1i.b,k2), C21=Cs2i.DataLoc(Cs2i.a,k1),
  C22=Cs2i.DataLoc(Cs2i.b,k2);
A8: Cs2i1 = Following(P2,Cs2i) by EXTPRO_1:3
    .= Exec (CurInstr(P2,Cs2i), Cs2i);
  DataLoc(Cs1i.a,k1) in dom  p implies
   (Cs1i1|dom  p).DataLoc(Cs1i.a,k1) =
  Cs1i1.DataLoc(Cs1i.a,k1) &
   (Cs2i1|dom  p).DataLoc(Cs1i.a,k1) = Cs2i1.DataLoc(
  Cs1i.a,k1) by FUNCT_1:49;
  then
A9: D11 = D21 by A6,A7,A2,A3,EXTPRO_1:def 10;
  Cs1i1 = Following(P1,Cs1i) by EXTPRO_1:3
    .= Exec (CurInstr(P1,Cs1i), Cs1i);
  then
A10: D11 = C11+ C12 by A4,SCMPDS_2:49;
  DataLoc(Cs1i.a,k1) in dom  p
   implies (Cs1i|dom  p).DataLoc(Cs1i.a,k1) =
Cs1i.DataLoc(Cs1i.a,k1) &
 (Cs2i|dom  p).DataLoc(Cs1i.a,k1) = Cs2i.DataLoc(Cs1i.a
  ,k1) by FUNCT_1:49;
  then
A11: C11=C21 by A6,A7,A2,A3,EXTPRO_1:def 10;
  I = CurInstr(P2,Comput(P2,s2,i))
   by A1,A2,AMISTD_5:7;
  then D21 = C21 + C22 by A8,A4,SCMPDS_2:49;
  hence thesis by A11,A9,A10;
end;
