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

theorem
  a '&' b = (a 'nand' b) 'nand' (a 'nand' b)
proof
  thus (a 'nand' b) 'nand' (a 'nand' b) = 'not' ((a 'nand' b) '&' (a 'nand' b)
  ) by th1
    .= (a '&' b) 'or' 'not' 'not' (a '&' b) by th1
    .= (a '&' b);
end;
