reserve s for State of SCM+FSA,
  a, c for read-write Int-Location,
  aa, bb, cc,
  dd, x for Int-Location,
  f for FinSeq-Location,
  I, J for MacroInstruction of SCM+FSA,
  Ig for good MacroInstruction of SCM+FSA,
  i, k for Nat,
  p for Instruction-Sequence of SCM+FSA;

theorem Th12:
  a <> dd & dd in UsedILoc I implies StepForUp(a,bb,cc,I,p,s).
  0.dd = s.dd
proof
  assume that
A1: a <> dd and
A2: dd in UsedILoc I;
  set aux = 1-stRWNotIn ({a, bb, cc} \/ UsedILoc I);
  dd in {a, bb, cc} \/ UsedILoc I by A2,XBOOLE_0:def 3;
  then
A3: dd <> aux by SCMFSA_M:25;
  set S = s+*(aux, s.cc-s.bb+1)+*(a, s.bb);
  S.dd = (s+*(aux, s.cc-s.bb+1)).dd by A1,FUNCT_7:32
    .= s.dd by A3,FUNCT_7:32;
  hence thesis by SCMFSA_9:def 5;
end;
