In this section I present a formulation of the head-corner parser as a set of definite clauses. This provides for an abstract, non-deterministic, characterization of the parser. Standard techniques can be used to obtain an implementation of the parser on the basis of this specification. For example, one might use SLD resolution with backtracking, or with memo-ization, or Earley-deduction.