reserve x,y,x1,x2,z for set,
  n,m,k for Nat,
  t1 for (DecoratedTree of [: NAT,NAT :]),
  w,s,t,u for FinSequence of NAT,
  D for non empty set;
reserve s9,w9,v9 for Element of NAT*;
reserve p,q for MP-variable;
reserve A,A1,B,B1,C,C1 for MP-wff;

theorem Th32:
  card dom A >= 2 implies (ex B st A = 'not' B or A = (#)B) or ex
  B,C st A = B '&' C
proof
  set b = branchdeg (Root dom A);
  set a = Root dom A;
  assume
A1: card dom A >= 2;
A2: now
    assume b = 0;
    then card dom A = 1 by Th12;
    hence contradiction by A1;
  end;
A3: b <= 2 by Def5;
  now
    b = 0 or ... or b = 2 by A3,NAT_1:60;
    then per cases by A2;
    case
A4:   b = 1;
      then card succ a = 1 by TREES_2:def 12;
      then consider x being object such that
A5:   succ a = {x} by CARD_2:42;
      x in succ a by A5,TARSKI:def 1;
      then reconsider x9 = x as Element of dom A;
      take B = A|x9;
      now
        per cases by A4,Def5;
        suppose
          A.a = [1,0];
          then Root A = [1,0];
          hence A = 'not' B or A = (#) B by A5,Th18;
        end;
        suppose
          A.a = [1,1];
          then Root A = [1,1];
          hence A = 'not' B or A = (#) B by A5,Th18;
        end;
      end;
      hence thesis;
    end;
    case
A6:   b = 2;
      then
A7:   succ a = { <*0*>,<*1*> } by Th14;
      then <*0*> in succ a & <*1*> in succ a by TARSKI:def 2;
      then reconsider x = <*0*>, y = <*1*> as Element of dom A;
      take B = A|x;
      take C = A|y;
      Root A = [2,0] by A6,Def5;
      then A = B '&' C by A7,Th20;
      hence thesis;
    end;
  end;
  hence thesis;
end;
