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