let Y be non empty set ; :: thesis: for a, b, c being Function of Y,BOOLEAN holds a 'imp' (b 'imp' c) = (a 'imp' b) 'imp' (a 'imp' c)
let a, b, c be Function of Y,BOOLEAN; :: thesis: a 'imp' (b 'imp' c) = (a 'imp' b) 'imp' (a 'imp' c)
thus (a 'imp' b) 'imp' (a 'imp' c) = (a 'imp' b) 'imp' (('not' a) 'or' c) by BVFUNC_4:8
.= ('not' (a 'imp' b)) 'or' (('not' a) 'or' c) by BVFUNC_4:8
.= ('not' (('not' a) 'or' b)) 'or' (('not' a) 'or' c) by BVFUNC_4:8
.= (('not' ('not' a)) '&' ('not' b)) 'or' (('not' a) 'or' c) by BVFUNC_1:13
.= ((a '&' ('not' b)) 'or' ('not' a)) 'or' c by BVFUNC_1:8
.= ((a 'or' ('not' a)) '&' (('not' b) 'or' ('not' a))) 'or' c by BVFUNC_1:11
.= ((I_el Y) '&' (('not' b) 'or' ('not' a))) 'or' c by BVFUNC_4:6
.= (('not' a) 'or' ('not' b)) 'or' c by BVFUNC_1:6
.= ('not' a) 'or' (('not' b) 'or' c) by BVFUNC_1:8
.= ('not' a) 'or' (b 'imp' c) by BVFUNC_4:8
.= a 'imp' (b 'imp' c) by BVFUNC_4:8 ; :: thesis: verum