let Y be non empty set ; :: thesis: for G being Subset of ()
for a, b being Function of Y,BOOLEAN
for PA being a_partition of Y holds (All (a,PA,G)) 'imp' (Ex (b,PA,G)) = Ex ((a 'imp' b),PA,G)

let G be Subset of (); :: thesis: for a, b being Function of Y,BOOLEAN
for PA being a_partition of Y holds (All (a,PA,G)) 'imp' (Ex (b,PA,G)) = Ex ((a 'imp' b),PA,G)

let a, b be Function of Y,BOOLEAN; :: thesis: for PA being a_partition of Y holds (All (a,PA,G)) 'imp' (Ex (b,PA,G)) = Ex ((a 'imp' b),PA,G)
let PA be a_partition of Y; :: thesis: (All (a,PA,G)) 'imp' (Ex (b,PA,G)) = Ex ((a 'imp' b),PA,G)
A1: All (a,PA,G) = B_INF (a,(CompF (PA,G))) by BVFUNC_2:def 9;
A2: (All (a,PA,G)) 'imp' (Ex (b,PA,G)) '<' Ex ((a 'imp' b),PA,G)
proof
let z be Element of Y; :: according to BVFUNC_1:def 12 :: thesis: ( not ((All (a,PA,G)) 'imp' (Ex (b,PA,G))) . z = TRUE or (Ex ((a 'imp' b),PA,G)) . z = TRUE )
A3: ( 'not' ((All (a,PA,G)) . z) = TRUE or 'not' ((All (a,PA,G)) . z) = FALSE ) by XBOOLEAN:def 3;
assume ((All (a,PA,G)) 'imp' (Ex (b,PA,G))) . z = TRUE ; :: thesis: (Ex ((a 'imp' b),PA,G)) . z = TRUE
then A4: ('not' ((All (a,PA,G)) . z)) 'or' ((Ex (b,PA,G)) . z) = TRUE by BVFUNC_1:def 8;
per cases ( 'not' ((All (a,PA,G)) . z) = TRUE or (Ex (b,PA,G)) . z = TRUE ) by ;
suppose 'not' ((All (a,PA,G)) . z) = TRUE ; :: thesis: (Ex ((a 'imp' b),PA,G)) . z = TRUE
then (All (a,PA,G)) . z = FALSE by MARGREL1:11;
then consider x1 being Element of Y such that
A5: x1 in EqClass (z,(CompF (PA,G))) and
A6: a . x1 <> TRUE by ;
(a 'imp' b) . x1 = ('not' (a . x1)) 'or' (b . x1) by BVFUNC_1:def 8
.= () 'or' (b . x1) by
.= TRUE 'or' (b . x1) by MARGREL1:11
.= TRUE by BINARITH:10 ;
then (B_SUP ((a 'imp' b),(CompF (PA,G)))) . z = TRUE by ;
hence (Ex ((a 'imp' b),PA,G)) . z = TRUE by BVFUNC_2:def 10; :: thesis: verum
end;
suppose A7: (Ex (b,PA,G)) . z = TRUE ; :: thesis: (Ex ((a 'imp' b),PA,G)) . z = TRUE
now :: thesis: ex x being Element of Y st
( x in EqClass (z,(CompF (PA,G))) & b . x = TRUE )
assume for x being Element of Y holds
( not x in EqClass (z,(CompF (PA,G))) or not b . x = TRUE ) ; :: thesis: contradiction
then (B_SUP (b,(CompF (PA,G)))) . z = FALSE by BVFUNC_1:def 17;
hence contradiction by A7, BVFUNC_2:def 10; :: thesis: verum
end;
then consider x1 being Element of Y such that
A8: x1 in EqClass (z,(CompF (PA,G))) and
A9: b . x1 = TRUE ;
(a 'imp' b) . x1 = ('not' (a . x1)) 'or' TRUE by
.= TRUE by BINARITH:10 ;
then (B_SUP ((a 'imp' b),(CompF (PA,G)))) . z = TRUE by ;
hence (Ex ((a 'imp' b),PA,G)) . z = TRUE by BVFUNC_2:def 10; :: thesis: verum
end;
end;
end;
Ex ((a 'imp' b),PA,G) '<' (All (a,PA,G)) 'imp' (Ex (b,PA,G))
proof
let z be Element of Y; :: according to BVFUNC_1:def 12 :: thesis: ( not (Ex ((a 'imp' b),PA,G)) . z = TRUE or ((All (a,PA,G)) 'imp' (Ex (b,PA,G))) . z = TRUE )
assume A10: (Ex ((a 'imp' b),PA,G)) . z = TRUE ; :: thesis: ((All (a,PA,G)) 'imp' (Ex (b,PA,G))) . z = TRUE
now :: thesis: ex x being Element of Y st
( x in EqClass (z,(CompF (PA,G))) & (a 'imp' b) . x = TRUE )
assume for x being Element of Y holds
( not x in EqClass (z,(CompF (PA,G))) or not (a 'imp' b) . x = TRUE ) ; :: thesis: contradiction
then (B_SUP ((a 'imp' b),(CompF (PA,G)))) . z = FALSE by BVFUNC_1:def 17;
hence contradiction by A10, BVFUNC_2:def 10; :: thesis: verum
end;
then consider x1 being Element of Y such that
A11: x1 in EqClass (z,(CompF (PA,G))) and
A12: (a 'imp' b) . x1 = TRUE ;
A13: ('not' (a . x1)) 'or' (b . x1) = TRUE by ;
A14: ( 'not' (a . x1) = TRUE or 'not' (a . x1) = FALSE ) by XBOOLEAN:def 3;
per cases ( 'not' (a . x1) = TRUE or b . x1 = TRUE ) by ;
suppose 'not' (a . x1) = TRUE ; :: thesis: ((All (a,PA,G)) 'imp' (Ex (b,PA,G))) . z = TRUE
then a . x1 = FALSE by MARGREL1:11;
then (B_INF (a,(CompF (PA,G)))) . z = FALSE by ;
hence ((All (a,PA,G)) 'imp' (Ex (b,PA,G))) . z = () 'or' ((Ex (b,PA,G)) . z) by
.= TRUE 'or' ((Ex (b,PA,G)) . z) by MARGREL1:11
.= TRUE by BINARITH:10 ;
:: thesis: verum
end;
suppose b . x1 = TRUE ; :: thesis: ((All (a,PA,G)) 'imp' (Ex (b,PA,G))) . z = TRUE
then (B_SUP (b,(CompF (PA,G)))) . z = TRUE by ;
then (Ex (b,PA,G)) . z = TRUE by BVFUNC_2:def 10;
hence ((All (a,PA,G)) 'imp' (Ex (b,PA,G))) . z = ('not' ((All (a,PA,G)) . z)) 'or' TRUE by BVFUNC_1:def 8
.= TRUE by BINARITH:10 ;
:: thesis: verum
end;
end;
end;
hence (All (a,PA,G)) 'imp' (Ex (b,PA,G)) = Ex ((a 'imp' b),PA,G) by ; :: thesis: verum