let Y be non empty set ; :: thesis: for a, b, c being Element of Funcs Y,BOOLEAN holds a 'imp' (b 'imp' c) = (a 'imp' b) 'imp' (a 'imp' c)
let a, b, c be Element of Funcs 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:16
.= ((a '&' ('not' b)) 'or' ('not' a)) 'or' c by BVFUNC_1:11
.= ((a 'or' ('not' a)) '&' (('not' b) 'or' ('not' a))) 'or' c by BVFUNC_1:14
.= ((I_el Y) '&' (('not' b) 'or' ('not' a))) 'or' c by BVFUNC_4:6
.= (('not' a) 'or' ('not' b)) 'or' c by BVFUNC_1:9
.= ('not' a) 'or' (('not' b) 'or' c) by BVFUNC_1:11
.= ('not' a) 'or' (b 'imp' c) by BVFUNC_4:8
.= a 'imp' (b 'imp' c) by BVFUNC_4:8 ; :: thesis: verum