classical predicate logic