
theorem Th23:
  for A being Universal_Algebra, B being Subset of A for n being Nat
  for x being set holds x in B|^(n+1) iff x in B or
  ex o being Element of dom the charact of A st
  ex p being Element of (the carrier of A)*
  st x = Den(o,A).p & p in dom Den(o,A) & rng p c= B|^n
proof
  let A be Universal_Algebra;
  let B be Subset of A;
  defpred P[Nat] means for x being set st x in B|^($1+1) holds x in B or
  ex o being Element of dom the charact of A st
  ex p being Element of (the carrier of A)*
  st x = Den(o,A).p & p in dom Den(o,A) & rng p c= B|^$1;
A1: B|^0 = B by Th18;
  then
A2: P[0] by Th20;
A3: now
    let n be Nat such that
A4: P[n];
    thus P[n+1]
    proof
      let x be set;
      assume x in B|^(n+1+1);
      then
A5:   x in B|^(n+1) or ex o being Element of dom the charact of A st
      ex p being Element of (the carrier of A)*
      st x = Den(o,A).p & p in dom Den(o,A) & rng p c= B|^(n+1) by Th20;
      now
        given o being (Element of dom the charact of A),
        p being Element of (the carrier of A)* such that
A6:     x = Den(o,A).p and
A7:     p in dom Den(o,A) and
A8:     rng p c= B|^n;
        take o,p;
        n <= n+1 by NAT_1:13;
        then B|^n c= B|^(n+1) by Th21;
        hence x = Den(o,A).p & p in dom Den(o,A) & rng p c= B|^(n+1)
        by A6,A7,A8;
      end;
      hence thesis by A4,A5;
    end;
  end;
A9: for n being Nat holds P[n] from NAT_1:sch 2(A2,A3);
  let n be Nat;
  let x be set;
  B c= B|^n by A1,Th21;
  hence thesis by A9,Th20;
end;
