reserve Y for non empty set,
  a,b,c,d for Function of Y,BOOLEAN;

theorem
  (b 'imp' c) 'imp' ((a '&' b) 'imp' c) = I_el(Y)
proof
  thus (b 'imp' c) 'imp' ((a '&' b) 'imp' c) ='not' (b 'imp' c) 'or' ((a '&' b
  ) 'imp' c) by BVFUNC_4:8
    .='not' ('not' b 'or' c) 'or' ((a '&' b) 'imp' c) by BVFUNC_4:8
    .='not' ('not' b 'or' c) 'or' ('not' (a '&' b) 'or' c) by BVFUNC_4:8
    .=('not' 'not' b '&' 'not' c) 'or' ('not' (a '&' b) 'or' c) by BVFUNC_1:13
    .=(b '&' 'not' c) 'or' (('not' a 'or' 'not' b) 'or' c) by BVFUNC_1:14
    .=((b '&' 'not' c) 'or' c) 'or' ('not' a 'or' 'not' b) by BVFUNC_1:8
    .=((b 'or' c) '&' ('not' c 'or' c)) 'or' ('not' a 'or' 'not' b) by
BVFUNC_1:11
    .=((b 'or' c) '&' I_el(Y)) 'or' ('not' a 'or' 'not' b) by BVFUNC_4:6
    .=('not' a 'or' 'not' b) 'or' (b 'or' c) by BVFUNC_1:6
    .=(('not' a 'or' 'not' b) 'or' b) 'or' c by BVFUNC_1:8
    .=('not' a 'or' ('not' b 'or' b)) 'or' c by BVFUNC_1:8
    .=('not' a 'or' I_el(Y)) 'or' c by BVFUNC_4:6
    .=I_el(Y) 'or' c by BVFUNC_1:10
    .=I_el(Y) by BVFUNC_1:10;
end;
