reserve Y for non empty set;

theorem Th22:
  for a,b,c,d being Function of Y,BOOLEAN holds (a 'imp' b)=I_el(Y
  ) & (c 'imp' d)=I_el(Y) implies (a 'or' c) 'imp' (b 'or' d) =I_el(Y)
proof
  let a,b,c,d be Function of Y,BOOLEAN;
  assume that
A1: (a 'imp' b)=I_el(Y) and
A2: (c 'imp' d)=I_el(Y);
  for x being Element of Y holds ((a 'or' c) 'imp' (b 'or' d)).x=TRUE
  proof
    let x be Element of Y;
    (a 'imp' b).x= TRUE by A1,BVFUNC_1:def 11;
    then
A3: 'not' a.x 'or' b.x = TRUE by BVFUNC_1:def 8;
    (c 'imp' d).x= TRUE by A2,BVFUNC_1:def 11;
    then
A4: 'not' c.x 'or' (d).x = TRUE by BVFUNC_1:def 8;
    ((a 'or' c) 'imp' (b 'or' d)).x ='not' (a 'or' c).x 'or' (b 'or' d).x
    by BVFUNC_1:def 8
      .='not'( a.x 'or' c.x) 'or' (b 'or' d).x by BVFUNC_1:def 4
      .=(b.x 'or' (d).x) 'or' ('not' a.x '&' 'not' c.x) by BVFUNC_1:def 4
      .=(((d).x 'or' b.x) 'or' 'not' a.x) '&' ((b.x 'or' (d).x) 'or'
    'not' c.x) by XBOOLEAN:9
      .=((d).x 'or' (b.x 'or' 'not' a.x)) '&' ((b.x 'or' (d).x) 'or'
    'not' c.x)
      .=TRUE '&' (b.x 'or' TRUE) by A3,A4,BINARITH:11
      .=TRUE;
    hence thesis;
  end;
  hence thesis by BVFUNC_1:def 11;
end;
