
theorem
  for a being Int-Location, I being MacroInstruction of SCM+FSA holds
  while=0(a,I).(card I +4) = halt SCM+FSA
proof
  set J = Stop SCM+FSA;
  let a be Int-Location;
  let I be MacroInstruction of SCM+FSA;
  set I1= I ';' goto  0;
  set i = a =0_goto 3;
  set c5 = card I + 4;
A1: c5 = card I + 1 + 3
    .= card I1 + 3 by COMPOS_2:11;
  set Mi= Macro i ";" Goto  (card I1 + 1) ";" I1;
   0 + c5 in { il+c5 where il is Nat: il in dom J} by Lm3;
  then
A2:  c5 in dom Shift(J,c5) by VALUED_1:def 12;
  then
A3: Shift(J,c5)/.c5 = Shift(J,c5).(0 +c5) by PARTFUN1:def 6
    .= halt SCM+FSA by Lm2,Lm3,VALUED_1:def 12;
A4: c5 in dom while=0(a,I) & dom while=0(a,I) = dom if=0(a,I1)
  by Th6,FUNCT_7:30;
  card if=0(a, I1) = card Mi + card J by SCMFSA6A:21;
  then
A5: card Mi = card if=0(a,I1)-card J
    .= card I1 + 4 - 1 by Th1,Lm1
    .= c5 by A1;
  then
A6: not c5 in dom Mi;
 dom if=0(a,I1) = dom Mi \/ dom Reloc(J, c5) by A5,SCMFSA6A:39;
  then
A7: c5 in dom Reloc(J, c5) by A4,A6,XBOOLE_0:def 3;
A8: Reloc(J,c5) = IncAddr(Shift(J,c5),c5) by COMPOS_1:34;
A9: c5 <> card I + 2;
  thus while=0(a,I).(card I + 4)
     = (Mi ";" J).c5 by FUNCT_7:32,A9
    .= (Reloc(J,c5)).c5 by A5,A7,SCMFSA6A:40
    .= IncAddr( halt SCM+FSA, c5 ) by A2,A3,A8,COMPOS_1:def 21
    .= halt SCM+FSA by COMPOS_0:4;
end;
