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;
reserve Y for non empty set;

theorem
  for a,b,c being Function of Y,BOOLEAN holds (a 'imp' b) '&' (b
  'imp' c) '&' (c 'imp' a) '&' (a 'or' b 'or' c)= (a '&' b '&' c)
proof
  let a,b,c be Function of Y,BOOLEAN;
  (a 'imp' b) '&' (b 'imp' c) '&' (c 'imp' a) '&' (a 'or' b 'or' c) =(
  'not' a 'or' b) '&' (b 'imp' c) '&' (c 'imp' a) '&' (a 'or' b 'or' c) by
BVFUNC_4:8
    .=('not' a 'or' b) '&' ('not' b 'or' c) '&' (c 'imp' a) '&' (a 'or' b
  'or' c) by BVFUNC_4:8
    .=('not' a 'or' b) '&' ('not' b 'or' c) '&' ('not' c 'or' a) '&' (a 'or'
  b 'or' c) by BVFUNC_4:8
    .=('not' a 'or' b) '&' ('not' b 'or' c) '&' (('not' c 'or' a) '&' (a
  'or' b 'or' c)) by BVFUNC_1:4
    .=('not' a 'or' b) '&' ('not' b 'or' c) '&' (('not' c 'or' a) '&' (a
  'or' b) 'or' ('not' c 'or' a) '&' c) by BVFUNC_1:12
    .=('not' a 'or' b) '&' ('not' b 'or' c) '&' (('not' c 'or' a) '&' (a
  'or' b) 'or' ('not' c '&' c 'or' a '&' c)) by BVFUNC_1:12
    .=('not' a 'or' b) '&' ('not' b 'or' c) '&' (('not' c 'or' a) '&' (a
  'or' b) 'or' (O_el(Y) 'or' a '&' c)) by BVFUNC_4:5
    .=('not' a 'or' b) '&' ('not' b 'or' c) '&' (('not' c 'or' a) '&' (a
  'or' b) 'or' (a '&' c)) by BVFUNC_1:9
    .=('not' a 'or' b) '&' ('not' b 'or' c) '&' (a 'or' ('not' c '&' b) 'or'
  (a '&' c)) by BVFUNC_1:11
    .=('not' a 'or' b) '&' ('not' b 'or' c) '&' (a 'or' (a '&' c) 'or' (
  'not' c '&' b)) by BVFUNC_1:8
    .=('not' a 'or' b) '&' ('not' b 'or' c) '&' ((a '&' I_el(Y)) 'or' (a '&'
  c) 'or' ('not' c '&' b)) by BVFUNC_1:6
    .=('not' a 'or' b) '&' ('not' b 'or' c) '&' ((a '&' (I_el(Y) 'or' c))
  'or' ('not' c '&' b)) by BVFUNC_1:12
    .=('not' a 'or' b) '&' ('not' b 'or' c) '&' ((a '&' I_el(Y)) 'or' ('not'
  c '&' b)) by BVFUNC_1:10
    .=('not' a 'or' b) '&' ('not' b 'or' c) '&' (a 'or' ('not' c '&' b)) by
BVFUNC_1:6
    .=('not' a 'or' b) '&' ('not' b 'or' c) '&' ((a 'or' 'not' c) '&' (a
  'or' b)) by BVFUNC_1:11
    .=(a 'or' b) '&' (('not' a 'or' b) '&' ('not' b 'or' c)) '&' (a 'or'
  'not' c) by BVFUNC_1:4
    .=(a 'or' b) '&' ('not' a 'or' b) '&' ('not' b 'or' c) '&' (a 'or' 'not'
  c) by BVFUNC_1:4
    .=((a '&' 'not' a) 'or' b) '&' ('not' b 'or' c) '&' (a 'or' 'not' c) by
BVFUNC_1:11
    .=(O_el(Y) 'or' b) '&' ('not' b 'or' c) '&' (a 'or' 'not' c) by BVFUNC_4:5
    .=b '&' ('not' b 'or' c) '&' (a 'or' 'not' c) by BVFUNC_1:9
    .=(b '&' 'not' b 'or' b '&' c) '&' (a 'or' 'not' c) by BVFUNC_1:12
    .=(O_el(Y) 'or' b '&' c) '&' (a 'or' 'not' c) by BVFUNC_4:5
    .=(b '&' c) '&' (a 'or' 'not' c) by BVFUNC_1:9
    .=(b '&' c) '&' a 'or' (b '&' c) '&' 'not' c by BVFUNC_1:12
    .=(b '&' c) '&' a 'or' b '&' (c '&' 'not' c) by BVFUNC_1:4
    .=(b '&' c) '&' a 'or' b '&' O_el(Y) by BVFUNC_4:5
    .=(b '&' c) '&' a 'or' O_el(Y) by BVFUNC_1:5
    .=(b '&' c) '&' a by BVFUNC_1:9
    .=(a '&' b '&' c) by BVFUNC_1:4;
  hence thesis;
end;
