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

theorem
  a 'imp' b '<' (a 'or' c) 'imp' (b 'or' c)
proof
  let z be Element of Y;
A1: (a 'imp' b).z =('not' a 'or' b).z by BVFUNC_4:8
    .=('not' a).z 'or' b.z by BVFUNC_1:def 4;
  assume
A2: (a 'imp' b).z=TRUE;
  now
    assume
A3: ((a 'or' c) 'imp' (b 'or' c)).z<>TRUE;
    ((a 'or' c) 'imp' (b 'or' c)).z =('not'( a 'or' c) 'or' (b 'or' c)).z
    by BVFUNC_4:8
      .=('not'( a 'or' c)).z 'or' (b 'or' c).z by BVFUNC_1:def 4
      .=('not'( a 'or' c)).z 'or' (b.z 'or' c.z) by BVFUNC_1:def 4
      .=(('not'( a 'or' c)).z 'or' b.z) 'or' c.z
      .=((('not' a '&' 'not' c)).z 'or' b.z) 'or' c.z by BVFUNC_1:13
      .=(b.z 'or' (('not' a).z '&' ('not' c).z)) 'or' c.z by MARGREL1:def 20
      .=((('not' a).z 'or' b.z) '&' (b.z 'or' ('not' c).z)) 'or' c.z by
XBOOLEAN:9
      .=b.z 'or' (('not' c).z 'or' c.z) by A2,A1
      .=b.z 'or' ('not' c.z 'or' c.z) by MARGREL1:def 19
      .=b.z 'or' TRUE by XBOOLEAN:102
      .=TRUE;
    hence contradiction by A3;
  end;
  hence thesis;
end;
