let Y be non empty set ; :: thesis: for a, b, c being Function of Y,BOOLEAN holds (c 'imp' a) 'imp' ((c 'imp' b) 'imp' (c 'imp' (a '&' b))) = I_el Y
let a, b, c be Function of Y,BOOLEAN; :: thesis: (c 'imp' a) 'imp' ((c 'imp' b) 'imp' (c 'imp' (a '&' b))) = I_el Y
for x being Element of Y holds ((c 'imp' a) 'imp' ((c 'imp' b) 'imp' (c 'imp' (a '&' b)))) . x = TRUE
proof
let x be Element of Y; :: thesis: ((c 'imp' a) 'imp' ((c 'imp' b) 'imp' (c 'imp' (a '&' b)))) . x = TRUE
((c 'imp' a) 'imp' ((c 'imp' b) 'imp' (c 'imp' (a '&' b)))) . x = ('not' ((c 'imp' a) . x)) 'or' (((c 'imp' b) 'imp' (c 'imp' (a '&' b))) . x) by BVFUNC_1:def 8
.= ('not' (('not' (c . x)) 'or' (a . x))) 'or' (((c 'imp' b) 'imp' (c 'imp' (a '&' b))) . x) by BVFUNC_1:def 8
.= ('not' (('not' (c . x)) 'or' (a . x))) 'or' (('not' ((c 'imp' b) . x)) 'or' ((c 'imp' (a '&' b)) . x)) by BVFUNC_1:def 8
.= ('not' (('not' (c . x)) 'or' (a . x))) 'or' (('not' (('not' (c . x)) 'or' (b . x))) 'or' ((c 'imp' (a '&' b)) . x)) by BVFUNC_1:def 8
.= ('not' (('not' (c . x)) 'or' (a . x))) 'or' (('not' (('not' (c . x)) 'or' (b . x))) 'or' (('not' (c . x)) 'or' ((a '&' b) . x))) by BVFUNC_1:def 8
.= ((c . x) '&' ('not' (a . x))) 'or' ((('not' ('not' (c . x))) '&' ('not' (b . x))) 'or' (('not' (c . x)) 'or' ((a . x) '&' (b . x)))) by MARGREL1:def 20
.= ((c . x) '&' ('not' (a . x))) 'or' (((c . x) '&' ('not' (b . x))) 'or' ((('not' (c . x)) 'or' (a . x)) '&' (('not' (c . x)) 'or' (b . x)))) by XBOOLEAN:9
.= ((c . x) '&' ('not' (a . x))) 'or' ((((c . x) '&' ('not' (b . x))) 'or' (('not' (c . x)) 'or' (a . x))) '&' (((c . x) '&' ('not' (b . x))) 'or' (('not' (c . x)) 'or' ('not' ('not' (b . x)))))) by XBOOLEAN:9
.= ((c . x) '&' ('not' (a . x))) 'or' (TRUE '&' (((c . x) '&' ('not' (b . x))) 'or' (('not' (c . x)) 'or' (a . x)))) by XBOOLEAN:102
.= (((c . x) '&' ('not' (a . x))) 'or' ('not' ((c . x) '&' ('not' (a . x))))) 'or' ((c . x) '&' ('not' (b . x)))
.= TRUE 'or' ((c . x) '&' ('not' (b . x))) by XBOOLEAN:102
.= TRUE ;
hence ((c 'imp' a) 'imp' ((c 'imp' b) 'imp' (c 'imp' (a '&' b)))) . x = TRUE ; :: thesis: verum
end;
hence (c 'imp' a) 'imp' ((c 'imp' b) 'imp' (c 'imp' (a '&' b))) = I_el Y by BVFUNC_1:def 11; :: thesis: verum