reserve f, g, h for Function;
reserve x, y, z, u, X for set,
  A for non empty set,
  n for Element of NAT,
  f for Function of X, X;
reserve f for c=-monotone Function of bool X, bool X,
  S for Subset of X;
reserve X, Y for non empty set,
  f for Function of X, Y,
  g for Function of Y, X;
reserve L for Lattice,
  f for Function of the carrier of L, the carrier of L,
  x for Element of L,
  O, O1, O2, O3, O4 for Ordinal,
  T for Sequence;

theorem Th15:
  (f, succ O)+.x = f.(f, O)+.x
proof
  deffunc C(Ordinal,set)=f.$2;
  deffunc D(Ordinal,Sequence)="\/"(rng $2, L);
  deffunc F(Ordinal)=(f, $1)+.x;
A1: for O being Ordinal, y being object holds y = F(O) iff ex L0 being
Sequence st y = last L0 & dom L0 = succ O & L0.0 = x & (for C being Ordinal
st succ C in succ O holds L0.succ C = C(C,L0.C)) & for C being Ordinal st C in
  succ O & C <> 0 & C is limit_ordinal holds L0.C = D(C,L0|C) by Def4;
  for O being Ordinal holds F(succ O) = C(O,F(O)) from ORDINAL2:sch 9( A1);
  hence thesis;
end;
