reserve A for preIfWhileAlgebra,
  C,I,J for Element of A;
reserve S for non empty set,
  T for Subset of S,
  s for Element of S;
reserve f for ExecutionFunction of A,S,T;

theorem Th90:
  for A being free preIfWhileAlgebra for C,I being Element of A
  for n being Nat st while(C,I) in (ElementaryInstructions A)|^n
  ex i being Nat st n = i+1 &
  C in (ElementaryInstructions A)|^i & I in (ElementaryInstructions A)|^i
proof
  let A be free preIfWhileAlgebra;
  set B = ElementaryInstructions A;
A1: B is GeneratorSet of A by Def25;
  let C,I be Element of A;
  while(C,I) nin B by Th52;
  then
A2: while(C,I) nin B|^0 by Th18;
  let n be Nat;
  assume
A3: while(C,I) in B|^n;
  then consider i being Nat such that
A4: n = i+1 by A2,NAT_1:6;
  take i;
  thus n = i+1 by A4;
A5: dom Den(In(4, dom the charact of A), A) = 2-tuples_on the carrier of A
  by Th48;
A6: for o being OperSymbol of A, p being FinSequence st p in dom Den(o,A)
  holds Den(o,A).p in B implies o <> In(4, dom the charact of A)
  proof
    let o be OperSymbol of A;
    let p be FinSequence;
    assume that
A7: p in dom Den(o,A) and
A8: Den(o,A).p in B and
A9: o = In(4, dom the charact of A);
    consider a,b being object such that
A10: a in the carrier of A and
A11: b in the carrier of A and
A12: p = <*a,b*> by A5,A7,A9,FINSEQ_2:137;
    reconsider a,b as Element of A by A10,A11;
    Den(o,A).p = while(a,b) by A9,A12;
    hence contradiction by A8,Th52;
  end;
  <*C,I*> in dom Den(In(4, dom the charact of A),A) by A5,FINSEQ_2:137;
  then rng <*C,I*> c= B|^i by A1,A3,A4,A6,Th39;
  then {C,I} c= B|^i by FINSEQ_2:127;
  hence thesis by ZFMISC_1:32;
end;
