Term algebra
In universal algebra and mathematical logic, a term algebra is a freely generated algebraic structure over a given signature. For example, in a signature consisting of a single binary operation, the term algebra over a set "X" of variables is exactly the free magma generated by "X". Other synonyms for the notion include absolutely free algebra and anarchic algebra.

From a category theory perspective, a term algebra is the initial object for the category of all "X"-generated algebras of the same signature, and this object, unique up to isomorphism, is called an initial algebra; it generates by homomorphic projection all algebras in the category.

A similar notion is that of a Herbrand universe in logic, usually used under this name in logic programming, which is (absolutely freely) defined starting from the set of constants and function symbols in a set of clauses. That is, the Herbrand universe consists of all ground terms: terms that have no variables in them.

An atomic formula or atom is commonly defined as a predicate applied to a tuple of terms; a ground atom is then a predicate in which only ground terms appear. The Herbrand base is the set of all ground atoms that can be formed from predicate symbols in the original set of clauses and terms in its Herbrand universe. These two concepts are named after Jacques Herbrand.

Term algebras also play a role in the semantics of abstract data types, where an abstract data type declaration provides the signature of a multi-sorted algebraic structure and the term algebra is a concrete model of the abstract declaration.
Q1636734
universal algebra
Concept
Q1166618
mathematical logic
Concept
Q205464
algebraic structure
Concept
Q741810
signature
Concept
Q741810
signature
Concept
Q164307
binary operation
Concept
Q679903
free magma
Concept
Q217413
category theory
Concept
Q529752
initial object
Concept
Q1386213
category of all "X"-generated algebras of the same signature
Concept
Q189112
isomorphism
Concept
Q6034125
initial algebra
Concept
Q215111
homomorphic
Concept
Q8078
logic
Concept
Q275603
logic programming
Concept
Q1228746
clauses
Concept
Q431411
ground term
UNK
Q2328174
atomic formula
Concept
Q1144319
predicate
Concept
Q431411
ground atom
UNK
Q448086
Jacques Herbrand
PER
Q796212
semantics
UNK
Q827335
abstract data type
Concept
Q21998744
Term algebra
Concept
subclass of
instance of
studies
subclass of