(VAR x y ) (RULES and(x,false) -> false and(x,not(false)) -> x not(not(x)) -> x implies(false,y) -> not(false) implies(x,false) -> not(x) implies(not(x),not(y)) -> implies(y,and(x,y)) )