Herbrand structure

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

In first-order logic, a Herbrand structure S is a structure over a vocabulary σ that is defined solely by the syntactical properties of σ. The idea is to take the symbols of terms as their values, e.g. the denotation of a constant symbol c is just "c" (the symbol). It is named after Jacques Herbrand.

Herbrand structures play an important role in the foundations of logic programming.[1]

Herbrand universe[edit]


The Herbrand universe serves as the universe in the Herbrand structure.

(1) The Herbrand universe of a first-order language Lσ, is the set of all ground terms of Lσ. If the language has no constants, then the language is extended by adding an arbitrary new constant.

  • The Herbrand universe is countably infinite if σ is countable and a function symbol of arity greater than 0 exists.
  • In the context of first-order languages we also speak simply of the Herbrand universe of the vocabulary σ.

(2) The Herbrand universe of a closed formula in Skolem normal form F, is the set of all terms without variables, that can be constructed using the function symbols and constants of F. If F has no constants, then F is extended by adding an arbitrary new constant.


Let Lσ be a first-order language with the vocabulary

  • constant symbols: c
  • function symbols: f(.), g(.)

then the Herbrand universe of Lσ (or σ) is {c, f(c), g(c), f(f(c)), f(g(c)), g(f(c)), g(g(c)), ...}.

Notice that the relation symbols are not relevant for a Herbrand universe.

Herbrand structure[edit]

A Herbrand structure interprets terms on top of a Herbrand universe.


Let S be a structure, with vocabulary σ and universe U. Let T be the set of all terms over σ and T0 be the subset of all variable-free terms. S is said to be a Herbrand structure iff

  1. U = T0
  2. fS(t1, ..., tn) = f(t1, ..., tn) for every n-ary function symbol f ∈ σ and t1, ..., tnT0
  3. cS = c for every constant c in σ


  1. U is the Herbrand universe of σ.
  2. A Herbrand structure that is a model of a theory T, is called the Herbrand model of T.


For a constant symbol c and a unary function symbol f(.) we have the following interpretation:

  • U = {c, fc, ffc, fffc, ...}
  • fcfc, ffcffc, ...
  • cc

Herbrand base[edit]

In addition to the universe, defined in Herbrand universe, and the term denotations, defined in Herbrand structure, the Herbrand base completes the interpretation by denoting the relation symbols.


A Herbrand base is the set of all ground atoms of whose argument terms are the Herbrand universe.


For a binary relation symbol R, we get with the terms from above:

{R(c, c), R(fc, c), R(c, fc), R(fc, fc), R(ffc, c), ...}

See also[edit]



  • Ebbinghaus, Heinz-Dieter; Flum, Jörg; Thomas, Wolfgang (1996). Mathematical Logic. Springer. ISBN 978-0387942582. CS1 maint: discouraged parameter (link)