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