A Logical Semantics for PDDL+