reserve Y for non empty set;
reserve Y for non empty set;
reserve Y for non empty set;

theorem
  for a,b,c,d being Function of Y,BOOLEAN holds a 'imp' (b 'or' c
  'or' d) = (a 'imp' b) 'or' (a 'imp' c) 'or' (a 'imp' d)
proof
  let a,b,c,d be Function of Y,BOOLEAN;
    let x be Element of Y;
    ((a 'imp' b) 'or' (a 'imp' c) 'or' (a 'imp' d)).x =((a 'imp' b) 'or' (
    a 'imp' c)).x 'or' (a 'imp' d).x by BVFUNC_1:def 4
      .=(a 'imp' b).x 'or' (a 'imp' c).x 'or' (a 'imp' d).x by BVFUNC_1:def 4
      .=('not' a.x 'or' b.x) 'or' (a 'imp' c).x 'or' (a 'imp' d).x by
BVFUNC_1:def 8
      .=('not' a.x 'or' b.x) 'or' ('not' a.x 'or' c.x) 'or' (a 'imp'
    d).x by BVFUNC_1:def 8
      .=('not' a.x 'or' b.x) 'or' ('not' a.x 'or' c.x) 'or' ('not' (
    a).x 'or' (d).x) by BVFUNC_1:def 8
      .=(('not' a.x 'or' ('not' a.x 'or' b.x)) 'or' c.x) 'or' ('not'
    a.x 'or' (d).x) 
      .=((('not' a.x 'or' 'not' a.x) 'or' b.x) 'or' c.x) 'or' ('not'
    a.x 'or' (d).x) by BINARITH:11
      .=('not' a.x 'or' (b.x 'or' c.x)) 'or' ('not' a.x 'or' (d).x)
      .=('not' a.x 'or' (b 'or' c).x) 'or' ('not' a.x 'or' (d).x) by
BVFUNC_1:def 4
      .=('not' a.x 'or' ('not' a.x 'or' (b 'or' c).x)) 'or' (d).x 
      .=(('not' a.x 'or' 'not' a.x) 'or' (b 'or' c).x) 'or' (d).x by
BINARITH:11
      .='not' a.x 'or' ((b 'or' c).x 'or' (d).x)
      .='not' a.x 'or' (b 'or' c 'or' d).x by BVFUNC_1:def 4
      .=(a 'imp' (b 'or' c 'or' d)).x by BVFUNC_1:def 8;
    hence thesis;
end;
