Many forms of reasoning about actions and planning can be reduced to regression, the computation of the weakest precondition a state has to satisfy to guarantee the satisfaction of another condition in the successor state. In this work we formalize a general syntactic regression operation for ground PDDL operators, show its correctness, and define a composition operation based on regression. As applications we present a very simple yet powerful algorithm for computing invariants, as well as a generalization of the hn heuristic of Haslum and Geffner to PDDL.