reserve Y for non empty set;

theorem
  for a,u being Function of Y,BOOLEAN, G being Subset of
  PARTITIONS(Y), PA being a_partition of Y holds All(a,PA,G) 'imp' u '<' Ex(a
  'imp' u,PA,G)
proof
  let a,u be Function of Y,BOOLEAN;
  let G be Subset of PARTITIONS(Y);
  let PA be a_partition of Y;
  let z be Element of Y;
A1: z in EqClass(z,CompF(PA,G)) by EQREL_1:def 6;
  assume (All(a,PA,G) 'imp' u).z=TRUE;
  then
A2: 'not' All(a,PA,G).z 'or' u.z=TRUE by BVFUNC_1:def 8;
A3: ('not' All(a,PA,G).z)=TRUE or ('not' All(a,PA,G).z)=FALSE by XBOOLEAN:def 3
;
  now
    per cases by A2,A3;
    case
      'not' All(a,PA,G).z=TRUE;
      then consider x1 being Element of Y such that
A4:   x1 in EqClass(z,CompF(PA,G)) and
A5:   a.x1<>TRUE by BVFUNC_1:def 16;
      now
        assume not (ex x being Element of Y st x in EqClass(z,CompF(PA,G)) &
        (a 'imp' u).x=TRUE);
        then (a 'imp' u).x1<>TRUE by A4;
        then (a 'imp' u).x1=FALSE by XBOOLEAN:def 3;
        then
A6:     ('not' a.x1) 'or' u.x1=FALSE by BVFUNC_1:def 8;
        'not' a.x1=TRUE or 'not' a.x1=FALSE by XBOOLEAN:def 3;
        hence contradiction by A5,A6;
      end;
      hence thesis by BVFUNC_1:def 17;
    end;
    case
A7:   u.z=TRUE;
      now
        assume not (ex x being Element of Y st x in EqClass(z,CompF(PA,G)) &
        (a 'imp' u).x=TRUE);
        then (a 'imp' u).z<>TRUE by A1;
        then (a 'imp' u).z=FALSE by XBOOLEAN:def 3;
        then ('not' a.z) 'or' u.z=FALSE by BVFUNC_1:def 8;
        hence contradiction by A7;
      end;
      hence thesis by BVFUNC_1:def 17;
    end;
  end;
  hence thesis;
end;
