let Y be non empty set ; for a, b, c being Function of Y,BOOLEAN holds (a 'imp' b) 'imp' ((b 'imp' c) 'imp' (a 'imp' c)) = I_el Y
let a, b, c be Function of Y,BOOLEAN; (a 'imp' b) 'imp' ((b 'imp' c) 'imp' (a 'imp' c)) = I_el Y
let x be Element of Y; FUNCT_2:def 8 ((a 'imp' b) 'imp' ((b 'imp' c) 'imp' (a 'imp' c))) . x = (I_el Y) . x
A1: ((a 'imp' b) 'imp' ((b 'imp' c) 'imp' (a 'imp' c))) . x =
('not' ((a 'imp' b) . x)) 'or' (((b 'imp' c) 'imp' (a 'imp' c)) . x)
by BVFUNC_1:def 8
.=
('not' ((a 'imp' b) . x)) 'or' (('not' ((b 'imp' c) . x)) 'or' ((a 'imp' c) . x))
by BVFUNC_1:def 8
;
A2: 'not' ((b 'imp' c) . x) =
'not' (('not' (b . x)) 'or' (c . x))
by BVFUNC_1:def 8
.=
(b . x) '&' ('not' (c . x))
;
A4:
(a 'imp' c) . x = ('not' (a . x)) 'or' (c . x)
by BVFUNC_1:def 8;
'not' ((a 'imp' b) . x) =
'not' (('not' (a . x)) 'or' (b . x))
by BVFUNC_1:def 8
.=
(a . x) '&' ('not' (b . x))
;
then ('not' ((a 'imp' b) . x)) 'or' (('not' ((b 'imp' c) . x)) 'or' ((a 'imp' c) . x)) =
((((b . x) '&' ('not' (c . x))) 'or' (('not' (a . x)) 'or' (c . x))) 'or' (a . x)) '&' ((((b . x) '&' ('not' (c . x))) 'or' (('not' (a . x)) 'or' (c . x))) 'or' ('not' (b . x)))
by A2, A4, XBOOLEAN:9
.=
(((b . x) '&' ('not' (c . x))) 'or' (((c . x) 'or' ('not' (a . x))) 'or' (a . x))) '&' ((((b . x) '&' ('not' (c . x))) 'or' (('not' (a . x)) 'or' (c . x))) 'or' ('not' (b . x)))
by BINARITH:11
.=
(((b . x) '&' ('not' (c . x))) 'or' ((c . x) 'or' (('not' (a . x)) 'or' (a . x)))) '&' (((('not' (a . x)) 'or' (c . x)) 'or' ((b . x) '&' ('not' (c . x)))) 'or' ('not' (b . x)))
by BINARITH:11
.=
(((b . x) '&' ('not' (c . x))) 'or' ((c . x) 'or' (('not' (a . x)) 'or' (a . x)))) '&' ((('not' (a . x)) 'or' (c . x)) 'or' ((('not' (c . x)) '&' (b . x)) 'or' ('not' (b . x))))
by BINARITH:11
.=
(((b . x) '&' ('not' (c . x))) 'or' ((c . x) 'or' (('not' (a . x)) 'or' (a . x)))) '&' ((('not' (a . x)) 'or' (c . x)) 'or' ((('not' (b . x)) 'or' ('not' (c . x))) '&' (('not' (b . x)) 'or' (b . x))))
by XBOOLEAN:9
.=
(((b . x) '&' ('not' (c . x))) 'or' TRUE) '&' ((('not' (a . x)) 'or' (c . x)) 'or' ((('not' (b . x)) 'or' ('not' (c . x))) '&' TRUE))
by A3, A6, BINARITH:10
.=
TRUE '&' ((('not' (a . x)) 'or' (c . x)) 'or' ((('not' (b . x)) 'or' ('not' (c . x))) '&' TRUE))
by BINARITH:10
.=
(('not' (a . x)) 'or' (c . x)) 'or' (TRUE '&' (('not' (b . x)) 'or' ('not' (c . x))))
by MARGREL1:14
.=
(('not' (a . x)) 'or' (c . x)) 'or' (('not' (c . x)) 'or' ('not' (b . x)))
by MARGREL1:14
.=
((('not' (a . x)) 'or' (c . x)) 'or' ('not' (c . x))) 'or' ('not' (b . x))
by BINARITH:11
.=
(('not' (a . x)) 'or' TRUE) 'or' ('not' (b . x))
by A5, BINARITH:11
.=
TRUE 'or' ('not' (b . x))
by BINARITH:10
.=
TRUE
by BINARITH:10
;
hence
((a 'imp' b) 'imp' ((b 'imp' c) 'imp' (a 'imp' c))) . x = (I_el Y) . x
by A1, BVFUNC_1:def 11; verum