reserve Y for non empty set,
  G for Subset of PARTITIONS(Y),
  a,b,c,u for Function of Y,BOOLEAN,
  PA for a_partition of Y;

theorem
  (a 'xor' b) '<' ('not' (Ex('not' a,PA,G) 'xor' Ex(b,PA,G)) 'or' 'not'
  (Ex(a,PA,G) 'xor' Ex( 'not' b,PA,G)))
proof
A1: Ex('not' a,PA,G) = B_SUP('not' a,CompF(PA,G)) by BVFUNC_2:def 10;
  let z be Element of Y;
A2: Ex('not' b,PA,G) = B_SUP('not' b,CompF(PA,G)) by BVFUNC_2:def 10;
A3: (a.z '&' 'not' b.z)=TRUE or (a.z '&' 'not' b.z)=FALSE by XBOOLEAN:def 3;
A4: (a 'xor' b).z =a.z 'xor' b.z by BVFUNC_1:def 5
    .=('not' a.z '&' b.z) 'or' (a.z '&' 'not' b.z);
A5: z in EqClass(z,CompF(PA,G)) by EQREL_1:def 6;
A6: FALSE '&' TRUE =FALSE by MARGREL1:13;
  assume
A7: (a 'xor' b).z=TRUE;
  per cases by A7,A4,A3,BINARITH:3;
  suppose
A8: ('not' a.z '&' b.z)=TRUE;
    then 'not' a.z=TRUE by MARGREL1:12;
    then ('not' a).z=TRUE by MARGREL1:def 19;
    then
A9: B_SUP('not' a,CompF(PA,G)).z = TRUE by A5,BVFUNC_1:def 17;
A10: ('not' (Ex(a,PA,G) 'xor' Ex('not' b,PA,G))).z ='not' (Ex(a,PA,G)
    'xor' Ex('not' b,PA,G)).z by MARGREL1:def 19;
    b.z=TRUE by A8,MARGREL1:12;
    then B_SUP(b,CompF(PA,G)).z = TRUE by A5,BVFUNC_1:def 17;
    then
A11: Ex(b,PA,G).z=TRUE by BVFUNC_2:def 10;
A12: (Ex('not' a,PA,G) 'xor' Ex(b,PA,G)).z =Ex('not' a,PA,G).z 'xor' Ex(b,
    PA,G).z by BVFUNC_1:def 5
      .=FALSE by A1,A6,A9,A11,MARGREL1:11;
    thus ('not' (Ex('not' a,PA,G) 'xor' Ex(b,PA,G)) 'or' 'not' (Ex(a,PA,G)
'xor' Ex('not' b,PA,G))).z =('not' (Ex('not' a,PA,G) 'xor' Ex(b,PA,G))).z 'or'
    ('not' (Ex(a,PA,G) 'xor' Ex('not' b,PA,G))).z by BVFUNC_1:def 4
      .='not' FALSE 'or' 'not' ((Ex(a,PA,G) 'xor' Ex('not' b,PA,G))).z by A12
,A10,MARGREL1:def 19
      .=TRUE 'or' 'not' (Ex(a,PA,G) 'xor' Ex('not' b,PA,G)).z by MARGREL1:11
      .=TRUE by BINARITH:10;
  end;
  suppose
A13: (a.z '&' 'not' b.z)=TRUE;
    then a.z=TRUE by MARGREL1:12;
    then B_SUP(a,CompF(PA,G)).z = TRUE by A5,BVFUNC_1:def 17;
    then
A14: Ex(a,PA,G).z=TRUE by BVFUNC_2:def 10;
A15: ('not' (Ex(a,PA,G) 'xor' Ex('not' b,PA,G))).z ='not' ((Ex(a,PA,G)
    'xor' Ex('not' b,PA,G))).z by MARGREL1:def 19;
    'not' b.z=TRUE by A13,MARGREL1:12;
    then ('not' b).z=TRUE by MARGREL1:def 19;
    then
A16: B_SUP('not' b,CompF(PA,G)).z = TRUE by A5,BVFUNC_1:def 17;
A17: (Ex(a,PA,G) 'xor' Ex('not' b,PA,G)).z =Ex(a,PA,G).z 'xor' Ex('not' b,
    PA,G).z by BVFUNC_1:def 5
      .=FALSE by A2,A6,A16,A14,MARGREL1:11;
    thus ('not' (Ex('not' a,PA,G) 'xor' Ex(b,PA,G)) 'or' 'not' (Ex(a,PA,G)
'xor' Ex('not' b,PA,G))).z =('not' (Ex('not' a,PA,G) 'xor' Ex(b,PA,G))).z 'or'
    ('not' (Ex(a,PA,G) 'xor' Ex('not' b,PA,G))).z by BVFUNC_1:def 4
      .='not' ((Ex('not' a,PA,G) 'xor' Ex(b,PA,G))).z 'or' 'not' FALSE by A17
,A15,MARGREL1:def 19
      .='not' ((Ex('not' a,PA,G) 'xor' Ex(b,PA,G))).z 'or' TRUE by MARGREL1:11
      .=TRUE by BINARITH:10;
  end;
end;
