reserve m,n for Nat,
  a for Int_position,
  i,j for Instruction of SCMPDS,
  s,s1,s2 for State of SCMPDS,
  k1 for Integer,
  loc for Nat,
  I,J,K for Program of SCMPDS;
reserve P,P1,P2 for Instruction-Sequence of SCMPDS;

theorem Th12:
  for I being Program of SCMPDS holds I is parahalting iff
   for s being State of SCMPDS,P holds I is_halting_on s,P
proof
  let I be Program of SCMPDS;
  thus I is parahalting implies for s be State of SCMPDS, P holds
  I is_halting_on s,P by FUNCT_4:25;
  assume
A1: for s being State of SCMPDS, P holds I is_halting_on s,P;
    let s be 0-started State of SCMPDS, P;
A2:  Initialize s = s by MEMSTR_0:44;
    assume stop I c= P;
    then
A3: P = P +* stop I by FUNCT_4:98;
    I is_halting_on s,P by A1;
    hence P halts_on s by A3,A2;
end;
