reserve a, b, d1, d2, d3, d4 for Int-Location,
  A, B for Data-Location,
  f, f1, f2, f3 for FinSeq-Location,
  il, i1, i2 for Nat,
  L for Nat,
  I for Instruction of SCM+FSA,
  s,s1,s2 for State of SCM+FSA,
  T for InsType of the InstructionsF of SCM+FSA,
  k for Nat;
reserve J,K for Element of Segm 13,
  b,b1,c,c1 for Element of SCM-Data-Loc,
  f,f1 for Element of SCM+FSA-Data*-Loc;
reserve a, b, d1, d2, d3, d4 for Int-Location,
  A, B for Data-Location,
  f, f1,
  f2, f3 for FinSeq-Location;

theorem Th43:
  IncAddr(a>0_goto i1,k) = a>0_goto (i1+k)
proof
A1: InsCode IncAddr(a>0_goto i1,k) = InsCode (a>0_goto i1) by COMPOS_0:def 9
    .= 8 by SCMFSA_2:25
    .= InsCode (a>0_goto (i1+k)) by SCMFSA_2:25;
A2: a>0_goto i1 = [8, <* i1*>,<*a *>] by Th8;
A3: a>0_goto(i1+k) = [8, <* i1+k*>,<*a *>] by Th8;
A4: AddressPart IncAddr(a>0_goto i1,k)
     = AddressPart (a>0_goto i1) by COMPOS_0:def 9
    .= <*a*> by A2
    .= AddressPart (a>0_goto (i1+k)) by A3;
A5:  JumpPart IncAddr(a>0_goto i1,k) = k + JumpPart (a>0_goto i1)
  by COMPOS_0:def 9;
  then
A6: dom JumpPart IncAddr(a>0_goto i1,k) = dom JumpPart (a>0_goto i1)
  by VALUED_1:def 2;
A7: for x being object st x in dom JumpPart (a>0_goto i1) holds (JumpPart
IncAddr(a>0_goto i1,k)).x = (JumpPart (a>0_goto (i1+k))).x
  proof
    let x be object;
    assume
A8: x in dom JumpPart (a>0_goto i1);
    then x in dom <*i1*> by Th16;
     then
A9:   x = 1 by FINSEQ_1:90;
    set f = (JumpPart (a>0_goto i1)).1;
A10:   (JumpPart IncAddr(a>0_goto i1,k)).1 = k+f by A9,A6,A5,A8,VALUED_1:def 2;
      f = <*i1*>.x by Th16,A9
        .= i1 by A9;
      hence
      (JumpPart IncAddr(a>0_goto i1,k)).x
       = <*(i1+k)*>.x by A9,A10
        .= (JumpPart (a>0_goto (i1+k))).x by Th16;
  end;
  dom JumpPart (a>0_goto (i1+k)) =
   dom <*(i1+k)*> by Th16
    .= Seg 1 by FINSEQ_1:38
    .= dom <*i1*> by FINSEQ_1:38
    .= dom JumpPart (a>0_goto i1) by Th16;
   then JumpPart IncAddr(a>0_goto i1,k) = JumpPart (a>0_goto (i1+k))
     by A6,A7,FUNCT_1:2;
  hence thesis by A1,A4,COMPOS_0:1;
end;
