reserve T, T1 for Tree,
  P for AntiChain_of_Prefixes of T,
  p1 for FinSequence,
  p, q, r, s, p9 for FinSequence of NAT,
  x, Z for set,
  t for Element of T,
  k, n for Nat;

theorem Th7:
  P <> {} implies tree(T,P,T1) = {t1 where t1 is Element of T :
  for p st p in P holds not p is_a_prefix_of t1}
  \/ { p^s where p is Element of T, s is Element of T1 : p in P }
proof
  assume
A1: P <> {};
then A2: tree(T,P,T1) = {t1 where t1 is Element of T :
  for p st p in P holds not p is_a_proper_prefix_of t1}
  \/ { p^s where p is Element of T, s is Element of T1 : p in P } by Th2;
  thus tree(T,P,T1) c= {t1 where t1 is Element of T :
  for p st p in P holds not p is_a_prefix_of t1}
  \/ { p^s where p is Element of T, s is Element of T1 : p in P }
  proof
    let x be object;
    assume x in tree(T,P,T1);
then A3: x in {t1 where t1 is Element of T :
    for p st p in P holds not p is_a_proper_prefix_of t1}
    \/ { p^s where p is Element of T, s is Element of T1 : p in P } by A1,Th2;
 now per cases;
      suppose
A4:     x in P;
     P c= { p^s where p is Element of T, s is Element of T1 : p in P }
        by Th6;
        hence x in {t1 where t1 is Element of T :
        for p st p in P holds not p is_a_prefix_of t1}
        or x in { p^s where p is Element of T, s is Element of T1 : p in P }
        by A4;
      end;
      suppose
A5:     not x in P;
     now per cases by A3,XBOOLE_0:def 3;
          suppose
A6:        x in {t1 where t1 is Element of T :
            for p st p in P holds not p is_a_proper_prefix_of t1};
        x in {t1 where t1 is Element of T :
            for p st p in P holds not p is_a_prefix_of t1}
            proof
              assume
A7:          not x in {t1 where t1 is Element of T :
              for p st p in P holds not p is_a_prefix_of t1};
          {t1 where t1 is Element of T :
              for p st p in P holds not p is_a_proper_prefix_of t1} \
              {t1 where t1 is Element of T :
              for p st p in P holds not p is_a_prefix_of t1} = P by Th5;
              hence contradiction by A5,A6,A7,XBOOLE_0:def 5;
            end;
            hence x in {t1 where t1 is Element of T :
            for p st p in P holds not p is_a_prefix_of t1} or
            x in { p^s where p is Element of T, s is Element of T1 : p in P };
          end;
          suppose
            x in { p^s where p is Element of T, s is Element of T1 : p in P };
            hence x in {t1 where t1 is Element of T :
            for p st p in P holds not p is_a_prefix_of t1} or
            x in { p^s where p is Element of T, s is Element of T1 : p in P };
          end;
        end;
        hence x in {t1 where t1 is Element of T :
        for p st p in P holds not p is_a_prefix_of t1}
        or x in { p^s where p is Element of T, s is Element of T1 : p in P };
      end;
    end;
    hence thesis by XBOOLE_0:def 3;
  end;
  thus thesis by A2,Th3,XBOOLE_1:9;
end;
