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

theorem
  for PA being a_partition of Y st u is_independent_of PA,G holds All(a
  'imp' u,PA,G) = Ex(a,PA,G) 'imp' u
proof
  let PA be a_partition of Y;
  assume
A1: u is_independent_of PA,G;
A2: (Ex(a,PA,G) 'imp' u) '<' All(a 'imp' u,PA,G)
  proof
    let z be Element of Y;
A3: z in EqClass(z,CompF(PA,G)) by EQREL_1:def 6;
    assume (Ex(a,PA,G) 'imp' u).z= TRUE;
    then
A4: ('not' Ex(a,PA,G).z) 'or' u.z = TRUE by BVFUNC_1:def 8;
A5: ('not' Ex(a,PA,G).z)= TRUE or ('not' Ex(a,PA,G).z)= FALSE by XBOOLEAN:def 3
;
    now
      per cases by A4,A5,BINARITH:3,XBOOLEAN:def 3;
      case
A6:     u.z= TRUE;
        for x being Element of Y st x in EqClass(z,CompF(PA,G)) holds (a
        'imp' u).x=TRUE
        proof
          let x be Element of Y;
          assume x in EqClass(z,CompF(PA,G));
          then (a 'imp' u).x=('not' a.x) 'or' u.x & u.x = u.z by A1,A3,
BVFUNC_1:def 8,def 15;
          hence thesis by A6,BINARITH:10;
        end;
        hence thesis by BVFUNC_1:def 16;
      end;
      case
A7:      ('not' Ex(a,PA,G).z)= TRUE & u.z= FALSE;
        for x being Element of Y st x in EqClass(z,CompF(PA,G)) holds (a
        'imp' u).x=TRUE
        proof
          let x be Element of Y;
          assume x in EqClass(z,CompF(PA,G));
          then a.x<>TRUE by A7,BVFUNC_1:def 17,MARGREL1:11;
          then (a 'imp' u).x=('not' a.x) 'or' u.x & a.x=FALSE by BVFUNC_1:def 8
,XBOOLEAN:def 3;
          then (a 'imp' u).x = TRUE 'or' u.x by MARGREL1:11
            .= TRUE by BINARITH:10;
          hence thesis;
        end;
        hence thesis by BVFUNC_1:def 16;
      end;
    end;
    hence thesis;
  end;
  All(a 'imp' u,PA,G) '<' (Ex(a,PA,G) 'imp' u)
  proof
    let z be Element of Y;
    assume
A8: All(a 'imp' u,PA,G).z= TRUE;
A9: (Ex(a,PA,G) 'imp' u).z = ('not' Ex(a,PA,G).z) 'or' u.z by BVFUNC_1:def 8;
    per cases;
    suppose
      for x being Element of Y st x in EqClass(z,CompF(PA,G)) holds u. x=TRUE;
      then (Ex(a,PA,G) 'imp' u).z = ('not' Ex(a,PA,G).z) 'or' TRUE
       by A9,EQREL_1:def 6
        .= TRUE by BINARITH:10;
      hence thesis;
    end;
    suppose
A10:  not (for x being Element of Y st x in EqClass(z,CompF(PA,G))
holds u.x=TRUE) & ex x being Element of Y st x in EqClass(z,CompF(PA,G)) & a.x=
      TRUE;
      then consider x1 being Element of Y such that
A11:  x1 in EqClass(z,CompF(PA,G)) and
A12:  u.x1<>TRUE;
      consider x2 being Element of Y such that
A13:  x2 in EqClass(z,CompF(PA,G)) and
A14:  a.x2=TRUE by A10;
A15:  u.x1 = u.x2 by A1,A11,A13,BVFUNC_1:def 15;
      (a 'imp' u).x2 = ('not' a.x2) 'or' u.x2 by BVFUNC_1:def 8
        .= ('not' TRUE) 'or' FALSE by A12,A14,A15,XBOOLEAN:def 3
        .= FALSE 'or' FALSE by MARGREL1:11
        .= FALSE;
      hence thesis by A8,A13,BVFUNC_1:def 16;
    end;
    suppose
      not (for x being Element of Y st x in EqClass(z,CompF(PA,G))
holds u.x=TRUE) & not (ex x being Element of Y st x in EqClass(z,CompF(PA,G)) &
      a.x=TRUE);
      then (Ex(a,PA,G) 'imp' u).z = ('not' FALSE) 'or' u.z by A9,
BVFUNC_1:def 17
        .= TRUE 'or' u.z by MARGREL1:11
        .= TRUE by BINARITH:10;
      hence thesis;
    end;
  end;
  hence thesis by A2,BVFUNC_1:15;
end;
