Herbrand structure

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 symbol strings 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.

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

Example
Let $L^{σ}$, be a first-order language with the vocabulary 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)), ...}.
 * constant symbols: c
 * function symbols: f(·), g(·)

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

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

Definition
Let S be a structure, with vocabulary σ and universe U. Let W be the set of all terms over σ and W0 be the subset of all variable-free terms. S is said to be a Herbrand structure iff
 * 1) $U = W_{0}$ for every n-ary function symbol $f(t_{1}, ..., t_{n}) = f(t_{1}, ..., t_{n})$ and $f ∈ σ$
 * 2) c$σ$ = c for every constant c in σ
 * 1) c$L^{σ}$ = c for every constant c in σ

Remarks

 * 1) $L^{σ}$ is the Herbrand universe of $σ$.
 * 2) A Herbrand structure that is a model of a theory T is called a Herbrand model of T.

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

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

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

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