reserve S for with_non_trivial_Instructions COM-Struct;
reserve i,j,k for No-StopCode Instruction of S,
        I,J,K for MacroInstruction of S;
reserve i1,i2,i3,i4,i5,i6 for No-StopCode Instruction of S;
reserve I,J for non empty NAT-defined finite Function;
reserve I,J for MacroInstruction of S;

theorem Th21:
  for I being halt-ending Program of S
 holds CutLastLoc I = CutLastLoc J implies I = J
proof let I be halt-ending Program of S such that
A1: CutLastLoc I = CutLastLoc J;
 card I - 1 = card CutLastLoc J by A1,VALUED_1:38
   .= card J -1 by VALUED_1:38;
  then LastLoc I = card J -' 1 by AFINSQ_1:70
      .= LastLoc J by AFINSQ_1:70;
 hence I = CutLastLoc I +* (LastLoc J .--> halt S) by Th20
   .= J by A1,Th20;
end;
