reserve m for Nat;
reserve P,PP,P1,P2 for Instruction-Sequence of SCM+FSA;

theorem Th15:
  for s1,s2 being State of SCM+FSA, I being Program of SCM+FSA st
  DataPart s1 = DataPart s2 holds I is_pseudo-closed_on s1,P1 implies I
  is_pseudo-closed_on s2,P2
proof
  let s1,s2 be State of SCM+FSA;
  set D = Data-Locations SCM+FSA;
  let I be Program of SCM+FSA;
  set S1 = Initialize s1,
      Q1 = P1 +* I,
      S2 = Initialize s2,
      Q2 = P2 +* I;
A1: I c= Q1 by FUNCT_4:25;
A2: Reloc(I,0)= I;
A3: IC (Initialize s2)
     = IC (s2 +* Start-At(0,SCM+FSA))
    .=  0 by FUNCT_4:113;
A4:   I c= Q2 by FUNCT_4:25;
  assume DataPart s1 = DataPart s2;
  then
A5: DataPart  S1 = DataPart s2 by MEMSTR_0:79
    .= DataPart S2 by MEMSTR_0:79;
  assume
A6: I is_pseudo-closed_on s1,P1;
  then
A7: IC Comput(Q1,S1,pseudo-LifeSpan(s1,P1,I)) = card I
by SCMFSA8A:def 4;
A8: I is_pseudo-closed_on S1,Q1 by A6;
A9: now
    let k be Nat;
    assume
A10: k < pseudo-LifeSpan(s1,P1,I);
    then
   k <= pseudo-LifeSpan(Initialize s1,P1+*I,I)
    by A6,Th13;
    then
    IC Comput(Q2,S2,k) = IC Comput(Q1,S1,k) + 0
          by A5,A8,A4,A3,Th14,A1,A2
      .= IC Comput(Q1,S1,k);
    hence IC Comput(Q2,S2,k) in dom I by A6,A10,SCMFSA8A:def 4;
  end;
  IC Comput(Q2,S2,pseudo-LifeSpan(s1,P1,I)) = IC
Comput(Q2,S2,
  pseudo-LifeSpan(Initialize s1,P1+*I,I)) by A6,Th13
    .= IC Comput(Q1,S1,pseudo-LifeSpan(
    Initialize s1,P1+*I,I))
  + 0 by A5,A8,A4,A3,Th14,A1,A2
    .= IC Comput(Q1,S1,pseudo-LifeSpan(s1,P1,I)) by A6,Th13;
  hence thesis by A7,A9;
end;
