theorem
 Macro IncAddr(i,n) = IncAddr(Macro i,n)
 proof
A1: dom Macro IncAddr(i,n) = {0,1} by Th45
          .= dom Macro i by Th45;
  for m being Nat st m in dom Macro i
    holds (Macro IncAddr(i,n)).m = IncAddr((Macro i)/.m,n)
   proof let m be Nat;
    assume m in dom Macro i;
    then per cases by Th44;
    suppose
A2:   m = 0;
     then m in dom Macro i by Th41;
     then
A3:    (Macro i)/.m = (Macro i).m by PARTFUN1: def 6
       .= i by A2,Th42;
    thus (Macro IncAddr(i,n)).m = IncAddr(i,n) by A2,Th42
        .= IncAddr((Macro i)/.m,n) by A3;
    end;
    suppose
A4:   m = 1;
     then m in dom Macro i by Th41;
     then
A5:    (Macro i)/.m = (Macro i).m by PARTFUN1: def 6
       .= halt S by A4,Th43;
    thus (Macro IncAddr(i,n)).m = halt S by Th43,A4
        .= IncAddr(halt S,n) by COMPOS_0:4
        .= IncAddr((Macro i)/.m,n) by A5;
    end;
   end;
  hence thesis by A1,Def9;
 end;
