# Structure (mathematical logic)

In universal algebra and in model theory, a structure consists of a set along with a collection of finitary operations and relations that are defined on it.
Universal algebra studies structures that generalize the algebraic structures such as groups, rings, fields and vector spaces. The term universal algebra is used for structures of first-order theories with no relation symbols. Model theory has a different scope that encompasses more arbitrary first-order theories, including foundational structures such as models of set theory.
From the model-theoretic point of view, structures are the objects used to define the semantics of first-order logic, cf. also Tarski's theory of truth or Tarskian semantics.
For a given theory in model theory, a structure is called a model if it satisfies the defining axioms of that theory, although it is sometimes disambiguated as a semantic model when one discusses the notion in the more general setting of mathematical models. Logicians sometimes refer to structures as "interpretations", whereas the term "interpretation" generally has a different (although related) meaning in model theory; see interpretation (model theory).
In database theory, structures with no functions are studied as models for relational databases, in the form of relational models.

## History

In the context of mathematical logic, the term "model" was first applied in 1940 by the philosopher Willard Van Orman Quine, in a reference to mathematician Richard Dedekind (1831 – 1916), a pioneer in the development of set theory. Since the 19th century, one main method for proving the consistency of a set of axioms has been to provide a model for it.

## Definition

Formally, a structure can be defined as a triple ${\mathcal {A}}=(A,\sigma ,I)$ consisting of a domain $A,$ a signature $\sigma ,$ and an interpretation function $I$ that indicates how the signature is to be interpreted on the domain. To indicate that a structure has a particular signature $\sigma$ one can refer to it as a $\sigma$-structure.

### Domain

The domain of a structure is an arbitrary set; it is also called the underlying set of the structure, its carrier (especially in universal algebra), its universe (especially in model theory, cf. universe), or its domain of discourse. In classical first-order logic, the definition of a structure prohibits the empty domain.
Sometimes the notation $\operatorname {dom} ({\mathcal {A}})$ or $|{\mathcal {A}}|$ is used for the domain of ${\mathcal {A}},$ but often no notational distinction is made between a structure and its domain (that is, the same symbol ${\mathcal {A}}$ refers both to the structure and its domain.)

### Signature

The signature $\sigma =(S,\operatorname {ar} )$ of a structure consists of:
* a set $S$ of function symbols and relation symbols, along with
* a function $\operatorname {ar} :\ S\to \mathbb {N} _{0}$ that ascribes to each symbol $s$ a natural number $n=\operatorname {ar} (s).$
The natural number $n=\operatorname {ar} (s)$ of a symbol $s$ is called the arity of $s$ because it is the arity of the interpretation of $s.$
Since the signatures that arise in algebra often contain only function symbols, a signature with no relation symbols is called an algebraic signature. A structure with such a signature is also called an algebra; this should not be confused with the notion of an algebra over a field.

### Interpretation function

The interpretation function $I$ of ${\mathcal {A}}$ assigns functions and relations to the symbols of the signature. To each function symbol $f$ of arity $n$ is assigned an $n$-ary function $f^{\mathcal {A}}=I(f)$ on the domain. Each relation symbol $R$ of arity $n$ is assigned an $n$-ary relation $R^{\mathcal {A}}=I(R)\subseteq A^{\operatorname {ar(R)} }$ on the domain. A nullary ($=\,0$-ary) function symbol $c$ is called a constant symbol, because its interpretation $I(c)$ can be identified with a constant element of the domain.
When a structure (and hence an interpretation function) is given by context, no notational distinction is made between a symbol $s$ and its interpretation $I(s).$ For example, if $f$ is a binary function symbol of ${\mathcal {A}},$ one simply writes $f:{\mathcal {A}}^{2}\to {\mathcal {A}}$ rather than $f^{\mathcal {A}}:|{\mathcal {A}}|^{2}\to |{\mathcal {A}}|.$

### Examples

The standard signature $\sigma _{f}$ for fields consists of two binary function symbols $\mathbf {+}$ and $\mathbf {\times }$ where additional symbols can be derived, such as a unary function symbol $\mathbf {-}$ (uniquely determined by $\mathbf {+}$) and the two constant symbols $\mathbf {0}$ and $\mathbf {1}$ (uniquely determined by $\mathbf {+}$ and $\mathbf {\times }$ respectively). Thus a structure (algebra) for this signature consists of a set of elements $A$ together with two binary functions, that can be enhanced with a unary function, and two distinguished elements; but there is no requirement that it satisfy any of the field axioms. The rational numbers $\mathbb {Q} ,$ the real numbers $\mathbb {R}$ and the complex numbers $\mathbb {C} ,$ like any other field, can be regarded as $\sigma$-structures in an obvious way: ${\begin{alignedat}{3}{\mathcal {Q}}&=(\mathbb {Q} ,\sigma _{f},I_{\mathcal {Q}})\\{\mathcal {R}}&=(\mathbb {R} ,\sigma _{f},I_{\mathcal {R}})\\{\mathcal {C}}&=(\mathbb {C} ,\sigma _{f},I_{\mathcal {C}})\\\end{alignedat}}$
In all three cases we have the standard signature given by $\sigma _{f}=(S_{f},\operatorname {ar} _{f})$ with $S_{f}=\{+,\times ,-,0,1\}$ and ${\begin{alignedat}{3}\operatorname {ar} _{f}&(+)&&=2,\\\operatorname {ar} _{f}&(\times )&&=2,\\\operatorname {ar} _{f}&(-)&&=1,\\\operatorname {ar} _{f}&(0)&&=0,\\\operatorname {ar} _{f}&(1)&&=0.\\\end{alignedat}}$
The interpretation function $I_{\mathcal {Q}}$ is:
    $I_{\mathcal {Q}}(+):\mathbb {Q} \times \mathbb {Q} \to \mathbb {Q}$ is addition of rational numbers,
    $I_{\mathcal {Q}}(\times ):\mathbb {Q} \times \mathbb {Q} \to \mathbb {Q}$ is multiplication of rational numbers,
    $I_{\mathcal {Q}}(-):\mathbb {Q} \to \mathbb {Q}$ is the function that takes each rational number $x$ to $-x,$ and
    $I_{\mathcal {Q}}(0)\in \mathbb {Q}$ is the number $0,$ and
    $I_{\mathcal {Q}}(1)\in \mathbb {Q}$ is the number $1;$
and $I_{\mathcal {R}}$ and $I_{\mathcal {C}}$ are similarly defined.
But the ring $\mathbb {Z}$ of integers, which is not a field, is also a $\sigma _{f}$-structure in the same way. In fact, there is no requirement that any of the field axioms hold in a $\sigma _{f}$-structure.
A signature for ordered fields needs an additional binary relation such as $\,<\,$ or $\,\leq ,\,$ and therefore structures for such a signature are not algebras, even though they are of course algebraic structures in the usual, loose sense of the word.
The ordinary signature for set theory includes a single binary relation $\in .$ A structure for this signature consists of a set of elements and an interpretation of the $\in$ relation as a binary relation on these elements.

## Induced substructures and closed subsets

${\mathcal {A}}$ is called an (induced) substructure of ${\mathcal {B}}$ if
* ${\mathcal {A}}$ and ${\mathcal {B}}$ have the same signature $\sigma ({\mathcal {A}})=\sigma ({\mathcal {B}});$
* the domain of ${\mathcal {A}}$ is contained in the domain of ${\mathcal {B}}:$ $|{\mathcal {A}}|\subseteq |{\mathcal {B}}|;$ and
* the interpretations of all function and relation symbols agree on $|{\mathcal {A}}|.$
The usual notation for this relation is ${\mathcal {A}}\subseteq {\mathcal {B}}.$
A subset $B\subseteq |{\mathcal {A}}|$ of the domain of a structure ${\mathcal {A}}$ is called closed if it is closed under the functions of ${\mathcal {A}},$ that is, if the following condition is satisfied: for every natural number $n,$ every $n$-ary function symbol $f$ (in the signature of ${\mathcal {A}}$) and all elements $b_{1},b_{2},\dots ,b_{n}\in B,$ the result of applying $f$ to the $n$-tuple $b_{1}b_{2}\dots b_{n}$ is again an element of $B:$ $f(b_{1},b_{2},\dots ,b_{n})\in B.$
For every subset $B\subseteq |{\mathcal {A}}|$ there is a smallest closed subset of $|{\mathcal {A}}|$ that contains $B.$ It is called the closed subset generated by $B,$ or the hull of $B,$ and denoted by $\langle B\rangle$ or $\langle B\rangle _{\mathcal {A}}$. The operator $\langle \rangle$ is a finitary closure operator on the set of subsets of $|{\mathcal {A}}|$.
If ${\mathcal {A}}=(A,\sigma ,I)$ and $B\subseteq A$ is a closed subset, then $(B,\sigma ,I')$ is an induced substructure of ${\mathcal {A}},$ where $I'$ assigns to every symbol of σ the restriction to $B$ of its interpretation in ${\mathcal {A}}.$ Conversely, the domain of an induced substructure is a closed subset.
The closed subsets (or induced substructures) of a structure form a lattice. The meet of two subsets is their intersection. The join of two subsets is the closed subset generated by their union. Universal algebra studies the lattice of substructures of a structure in detail.

### Examples

Let $\sigma =\{+,\times ,-,0,1\}$ be again the standard signature for fields. When regarded as $\sigma$-structures in the natural way, the rational numbers form a substructure of the real numbers, and the real numbers form a substructure of the complex numbers. The rational numbers are the smallest substructure of the real (or complex) numbers that also satisfies the field axioms.
The set of integers gives an even smaller substructure of the real numbers which is not a field. Indeed, the integers are the substructure of the real numbers generated by the empty set, using this signature. The notion in abstract algebra that corresponds to a substructure of a field, in this signature, is that of a subring, rather than that of a subfield.
The most obvious way to define a graph is a structure with a signature $\sigma$ consisting of a single binary relation symbol $E.$ The vertices of the graph form the domain of the structure, and for two vertices $a$ and $b,$ $(a,b)\!\in {\text{E}}$ means that $a$ and $b$ are connected by an edge. In this encoding, the notion of induced substructure is more restrictive than the notion of subgraph. For example, let $G$ be a graph consisting of two vertices connected by an edge, and let $H$ be the graph consisting of the same vertices but no edges. $H$ is a subgraph of $G,$ but not an induced substructure. The notion in graph theory that corresponds to induced substructures is that of induced subgraphs.

## Homomorphisms and embeddings
### Homomorphisms

Given two structures ${\mathcal {A}}$ and ${\mathcal {B}}$ of the same signature σ, a (σ-)homomorphism from ${\mathcal {A}}$ to ${\mathcal {B}}$ is a map $h:|{\mathcal {A}}|\rightarrow |{\mathcal {B}}|$ that preserves the functions and relations. More precisely:
* For every n-ary function symbol f of σ and any elements $a_{1},a_{2},\dots ,a_{n}\in |{\mathcal {A}}|$, the following equation holds:
       $h(f(a_{1},a_{2},\dots ,a_{n}))=f(h(a_{1}),h(a_{2}),\dots ,h(a_{n}))$.
* For every n-ary relation symbol R of σ and any elements $a_{1},a_{2},\dots ,a_{n}\in |{\mathcal {A}}|$, the following implication holds:
       $(a_{1},a_{2},\dots ,a_{n})\in R^{\mathcal {A}}\implies (h(a_{1}),h(a_{2}),\dots ,h(a_{n}))\in R^{\mathcal {B}}$
where $R^{\mathcal {A}}$, $R^{\mathcal {B}}$ is the interpretation of the relation symbol $R$ of the object theory in the structure ${\mathcal {A}}$, ${\mathcal {B}}$ respectively.
A homomorphism h from ${\mathcal {A}}$ to ${\mathcal {B}}$ is typically denoted as $h:{\mathcal {A}}\rightarrow {\mathcal {B}}$, although technically the function h is between the domains $|{\mathcal {A}}|$, $|{\mathcal {B}}|$ of the two structures ${\mathcal {A}}$, ${\mathcal {B}}$.
For every signature σ there is a concrete category σ-Hom which has σ-structures as objects and σ-homomorphisms as morphisms.
A homomorphism $h:{\mathcal {A}}\rightarrow {\mathcal {B}}$ is sometimes called strong if:
* For every n-ary relation symbol R of the object theory and any elements $b_{1},b_{2},\dots ,b_{n}\in |{\mathcal {B}}|$ such that $(b_{1},b_{2},\dots ,b_{n})\in R^{\mathcal {B}}$, there are $a_{1},a_{2},\dots ,a_{n}\in |{\mathcal {A}}|$ such that $(a_{1},a_{2},\dots ,a_{n})\in R^{\mathcal {A}}$ and $b_{1}=h(a_{1}),\,b_{2}=h(a_{2}),\,\dots ,\,b_{n}=h(a_{n}).$
The strong homomorphisms give rise to a subcategory of the category σ-Hom that was defined above.

### Embeddings

A (σ-)homomorphism $h:{\mathcal {A}}\rightarrow {\mathcal {B}}$ is called a (σ-)embedding if it is one-to-one and
* for every n-ary relation symbol R of σ and any elements $a_{1},a_{2},\dots ,a_{n}$, the following equivalence holds:
       $(a_{1},a_{2},\dots ,a_{n})\in R^{\mathcal {A}}\iff (h(a_{1}),h(a_{2}),\dots ,h(a_{n}))\in R^{\mathcal {B}}$
(where as before $R^{\mathcal {A}}$, $R^{\mathcal {B}}$ refers to the interpretation of the relation symbol R of the object theory σ in the structure ${\mathcal {A}}$, ${\mathcal {B}}$ respectively).
Thus an embedding is the same thing as a strong homomorphism which is one-to-one. The category σ-Emb of σ-structures and σ-embeddings is a concrete subcategory of σ-Hom.
Induced substructures correspond to subobjects in σ-Emb. If σ has only function symbols, σ-Emb is the subcategory of monomorphisms of σ-Hom. In this case induced substructures also correspond to subobjects in σ-Hom.

### Example

As seen above, in the standard encoding of graphs as structures the induced substructures are precisely the induced subgraphs. However, a homomorphism between graphs is the same thing as a homomorphism between the two structures coding the graph. In the example of the previous section, even though the subgraph H of G is not induced, the identity map id: H → G is a homomorphism. This map is in fact a monomorphism in the category σ-Hom, and therefore H is a subobject of G which is not an induced substructure.

### Homomorphism problem

The following problem is known as the homomorphism problem:
    Given two finite structures ${\mathcal {A}}$ and ${\mathcal {B}}$ of a finite relational signature, find a homomorphism $h:{\mathcal {A}}\rightarrow {\mathcal {B}}$ or show that no such homomorphism exists.
Every constraint satisfaction problem (CSP) has a translation into the homomorphism problem. Therefore, the complexity of CSP can be studied using the methods of finite model theory.
Another application is in database theory, where a relational model of a database is essentially the same thing as a relational structure. It turns out that a conjunctive query on a database can be described by another structure in the same signature as the database model. A homomorphism from the relational model to the structure representing the query is the same thing as a solution to the query. This shows that the conjunctive query problem is also equivalent to the homomorphism problem.

## Structures and first-order logic

Structures are sometimes referred to as "first-order structures". This is misleading, as nothing in their definition ties them to any specific logic, and in fact they are suitable as semantic objects both for very restricted fragments of first-order logic such as that used in universal algebra, and for second-order logic. In connection with first-order logic and model theory, structures are often called models, even when the question "models of what?" has no obvious answer.

### Satisfaction relation

Each first-order structure ${\mathcal {M}}=(M,\sigma ,I)$ has a satisfaction relation ${\mathcal {M}}\vDash \phi$ defined for all formulas $\,\phi$ in the language consisting of the language of ${\mathcal {M}}$ together with a constant symbol for each element of $M,$ which is interpreted as that element. This relation is defined inductively using Tarski's T-schema.
A structure ${\mathcal {M}}$ is said to be a model of a theory $T$ if the language of ${\mathcal {M}}$ is the same as the language of $T$ and every sentence in $T$ is satisfied by ${\mathcal {M}}.$ Thus, for example, a "ring" is a structure for the language of rings that satisfies each of the ring axioms, and a model of ZFC set theory is a structure in the language of set theory that satisfies each of the ZFC axioms.

### Definable relations

An $n$-ary relation $R$ on the universe (i.e. domain) $M$ of the structure ${\mathcal {M}}$ is said to be definable (or explicitly definable cf. Beth definability, or $\emptyset$-definable, or definable with parameters from $\emptyset$ cf. below) if there is a formula $\varphi (x_{1},\ldots ,x_{n})$ such that $R=\{(a_{1},\ldots ,a_{n})\in M^{n}:{\mathcal {M}}\vDash \varphi (a_{1},\ldots ,a_{n})\}.$ In other words, $R$ is definable if and only if there is a formula $\varphi$ such that $(a_{1},\ldots ,a_{n})\in R\Leftrightarrow {\mathcal {M}}\vDash \varphi (a_{1},\ldots ,a_{n})$ is correct.
An important special case is the definability of specific elements. An element $m$ of $M$ is definable in ${\mathcal {M}}$ if and only if there is a formula $\varphi (x)$ such that ${\mathcal {M}}\vDash \forall x(x=m\leftrightarrow \varphi (x)).$

#### Definability with parameters

A relation $R$ is said to be definable with parameters (or $|{\mathcal {M}}|$-definable) if there is a formula $\varphi$ with parameters from ${\mathcal {M}}$ such that $R$ is definable using $\varphi .$ Every element of a structure is definable using the element itself as a parameter.
Some authors use definable to mean definable without parameters, while other authors mean definable with parameters. Broadly speaking, the convention that definable means definable without parameters is more common amongst set theorists, while the opposite convention is more common amongst model theorists.

#### Implicit definability

Recall from above that an $n$-ary relation $R$ on the universe $M$ of ${\mathcal {M}}$ is explicitly definable if there is a formula $\varphi (x_{1},\ldots ,x_{n})$ such that $R=\{(a_{1},\ldots ,a_{n})\in M^{n}:{\mathcal {M}}\vDash \varphi (a_{1},\ldots ,a_{n})\}.$
Here the formula $\varphi$ used to define a relation $R$ must be over the signature of ${\mathcal {M}}$ and so $\varphi$ may not mention $R$ itself, since $R$ is not in the signature of ${\mathcal {M}}.$ If there is a formula $\varphi$ in the extended language containing the language of ${\mathcal {M}}$ and a new symbol $R,$ and the relation $R$ is the only relation on ${\mathcal {M}}$ such that ${\mathcal {M}}\vDash \varphi ,$ then $R$ is said to be implicitly definable over ${\mathcal {M}}.$
By Beth's theorem, every implicitly definable relation is explicitly definable.

## Many-sorted structures

Structures as defined above are sometimes called one-sorted structures to distinguish them from the more general many-sorted structures. A many-sorted structure can have an arbitrary number of domains. The sorts are part of the signature, and they play the role of names for the different domains. Many-sorted signatures also prescribe which sorts the functions and relations of a many-sorted structure are defined on. Therefore, the arities of function symbols or relation symbols must be more complicated objects such as tuples of sorts rather than natural numbers.
Vector spaces, for example, can be regarded as two-sorted structures in the following way. The two-sorted signature of vector spaces consists of two sorts V (for vectors) and S (for scalars) and the following function symbols:
| +$_S$ and ×$_S$ of arity (S, S; S). −$_S$ of arity (S; S). 0$_S$ and 1$_S$ of arity (S). | +$_V$ of arity (V, V; V). −$_V$ of arity (V; V). 0$_V$ of arity (V). | × of arity (S, V; V). |
If V is a vector space over a field F, the corresponding two-sorted structure ${\mathcal {V}}$ consists of the vector domain $|{\mathcal {V}}|_{V}=V$, the scalar domain $|{\mathcal {V}}|_{S}=F$, and the obvious functions, such as the vector zero $0_{V}^{\mathcal {V}}=0\in |{\mathcal {V}}|_{V}$, the scalar zero $0_{S}^{\mathcal {V}}=0\in |{\mathcal {V}}|_{S}$, or scalar multiplication $\times ^{\mathcal {V}}:|{\mathcal {V}}|_{S}\times |{\mathcal {V}}|_{V}\rightarrow |{\mathcal {V}}|_{V}$.
Many-sorted structures are often used as a convenient tool even when they could be avoided with a little effort. But they are rarely defined in a rigorous way, because it is straightforward and tedious (hence unrewarding) to carry out the generalization explicitly.
In most mathematical endeavours, not much attention is paid to the sorts. A many-sorted logic however naturally leads to a type theory. As Bart Jacobs puts it: "A logic is always a logic over a type theory." This emphasis in turn leads to categorical logic because a logic over a type theory categorically corresponds to one ("total") category, capturing the logic, being fibred over another ("base") category, capturing the type theory.

## Other generalizations
### Partial algebras

Both universal algebra and model theory study classes of (structures or) algebras that are defined by a signature and a set of axioms. In the case of model theory these axioms have the form of first-order sentences. The formalism of universal algebra is much more restrictive; essentially it only allows first-order sentences that have the form of universally quantified equations between terms, e.g. $\forall$ x $\forall$y (x + y = y + x). One consequence is that the choice of a signature is more significant in universal algebra than it is in model theory. For example, the class of groups, in the signature consisting of the binary function symbol × and the constant symbol 1, is an elementary class, but it is not a variety. Universal algebra solves this problem by adding a unary function symbol $^{−1}$.
In the case of fields this strategy works only for addition. For multiplication it fails because 0 does not have a multiplicative inverse. An ad hoc attempt to deal with this would be to define 0$^{−1}$ = 0. (This attempt fails, essentially because with this definition 0 × 0$^{−1}$ = 1 is not true.) Therefore, one is naturally led to allow partial functions, i.e., functions that are defined only on a subset of their domain. However, there are several obvious ways to generalize notions such as substructure, homomorphism and identity.

### Structures for typed languages

In type theory, there are many sorts of variables, each of which has a type. Types are inductively defined; given two types δ and σ there is also a type σ → δ that represents functions from objects of type σ to objects of type δ. A structure for a typed language (in the ordinary first-order semantics) must include a separate set of objects of each type, and for a function type the structure must have complete information about the function represented by each object of that type.

### Higher-order languages

There is more than one possible semantics for higher-order logic, as discussed in the article on second-order logic. When using full higher-order semantics, a structure need only have a universe for objects of type 0, and the T-schema is extended so that a quantifier over a higher-order type is satisfied by the model if and only if it is disquotationally true. When using first-order semantics, an additional sort is added for each higher-order type, as in the case of a many sorted first order language.

### Structures that are proper classes

In the study of set theory and category theory, it is sometimes useful to consider structures in which the domain of discourse is a proper class instead of a set. These structures are sometimes called class models to distinguish them from the "set models" discussed above. When the domain is a proper class, each function and relation symbol may also be represented by a proper class.
In Bertrand Russell's Principia Mathematica, structures were also allowed to have a proper class as their domain.