let Y be non empty set ; :: thesis: for a, b, c being Function of Y,BOOLEAN st c 'imp' (b 'imp' a) = I_el Y holds
b 'imp' (c 'imp' a) = I_el Y

let a, b, c be Function of Y,BOOLEAN; :: thesis: ( c 'imp' (b 'imp' a) = I_el Y implies b 'imp' (c 'imp' a) = I_el Y )
assume A1: c 'imp' (b 'imp' a) = I_el Y ; :: thesis: b 'imp' (c 'imp' a) = I_el Y
for x being Element of Y holds (b 'imp' (c 'imp' a)) . x = TRUE
proof
let x be Element of Y; :: thesis: (b 'imp' (c 'imp' a)) . x = TRUE
(c 'imp' (b 'imp' a)) . x = TRUE by A1, BVFUNC_1:def 11;
then ('not' (c . x)) 'or' ((b 'imp' a) . x) = TRUE by BVFUNC_1:def 8;
then A2: ('not' (c . x)) 'or' (('not' (b . x)) 'or' (a . x)) = TRUE by BVFUNC_1:def 8;
(b 'imp' (c 'imp' a)) . x = ('not' (b . x)) 'or' ((c 'imp' a) . x) by BVFUNC_1:def 8
.= ('not' (b . x)) 'or' (('not' (c . x)) 'or' (a . x)) by BVFUNC_1:def 8
.= TRUE by A2, BINARITH:11 ;
hence (b 'imp' (c 'imp' a)) . x = TRUE ; :: thesis: verum
end;
hence b 'imp' (c 'imp' a) = I_el Y by BVFUNC_1:def 11; :: thesis: verum