reserve E, x, y, X for set;
reserve A, B, C for Subset of E^omega;
reserve a, b for Element of E^omega;
reserve i, k, l, kl, m, n, mn for Nat;

theorem
  <%>E in A & m <= n implies A* = A* ^^ (A |^ (m, n))
proof
  assume that
A1: <%>E in A and
A2: m <= n;
A3: ex k st m + k = n by A2,NAT_1:10;
  defpred P[Nat] means A* = A* ^^ (A |^ (m, m + $1));
A4: now
    let i;
    assume
A5: P[i];
    A |^ (m, m + (i + 1)) = A |^ (m, m + i) \/ (A |^ (m + i + 1)) by Th26,
NAT_1:11;
    then
    A* ^^ (A |^ (m, m + (i + 1))) = A* \/ (A* ^^ (A |^ (m + i + 1))) by A5,
FLANG_1:20
      .= A* \/ A* by A1,FLANG_1:55;
    hence P[i + 1];
  end;
  A* = A* ^^ (A |^ m) by A1,FLANG_1:55
    .= A* ^^ (A |^ (m, m + 0)) by Th22;
  then
A6: P[0];
  for i holds P[i] from NAT_1:sch 2(A6, A4);
  hence thesis by A3;
end;
