This article includes a list of references, but its sources remain unclear because it has insufficient inline citations. (April 2010) (Learn how and when to remove this template message) 
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 with no relation symbols.^{[1]}
Model theory has a different scope that encompasses more arbitrary theories, including foundational structures such as models of set theory. From the modeltheoretic point of view, structures are the objects used to define the semantics of firstorder logic. 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.^{[2]}
In database theory, structures with no functions are studied as models for relational databases, in the form of relational models.
Formally, a structure can be defined as a triple consisting of a domain A, a signature ?, 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 ? one can refer to it as a ?structure.
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), or its universe (especially in model theory). In classical firstorder logic, the definition of a structure prohibits the empty domain.^{[3]}
Sometimes the notation or is used for the domain of , but often no notational distinction is made between a structure and its domain. (I.e. the same symbol refers both to the structure and its domain.)^{[4]}
The signature of a structure consists of a set of function symbols and relation symbols along with a function that ascribes to each symbol s a natural number which 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.
The interpretation function I of assigns functions and relations to the symbols of the signature. Each function symbol f of arity n is assigned an nary function on the domain. Each relation symbol R of arity n is assigned an nary relation on the domain. A nullary 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 , one simply writes rather than .
The standard signature ?_{f} for fields consists of two binary function symbols + and ×, where additional symbols can be derived, such as a unary function symbol  (uniquely determined by +) and the two constant symbols 0 and 1 (uniquely determined by + and × 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 Q, the real numbers R and the complex numbers C, like any other field, can be regarded as ?structures in an obvious way:
In all three cases we have the standard signature given by
with
Interpretation functions:
and and are similarly defined.^{[5]}
But the ring Z of integers, which is not a field, is also a ?_{f}structure in the same way. In fact, there is no requirement that any of the field axioms hold in a ?_{f}structure.
A signature for ordered fields needs an additional binary relation such as < or algebraic structures in the usual, loose sense of the word.
The ordinary signature for set theory includes a single binary relation ?. A structure for this signature consists of a set of elements and an interpretation of the ? relation as a binary relation on these elements.
is called an (induced) substructure of if
The usual notation for this relation is .
A subset of the domain of a structure is called closed if it is closed under the functions of , i.e. if the following condition is satisfied: for every natural number n, every nary function symbol f (in the signature of ) and all elements , the result of applying f to the ntuple is again an element of B: .
For every subset there is a smallest closed subset of that contains B. It is called the closed subset generated by B, or the hull of B, and denoted by or . The operator is a finitary closure operator on the set of subsets of .
If and is a closed subset, then is an induced substructure of , where assigns to every symbol of ? the restriction to B of its interpretation in . 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.
Let ? = {+, ×, , 0, 1} be again the standard signature for fields. When regarded as ?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 ? 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, 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.
Given two structures and of the same signature ?, a (?)homomorphism from to is a map that preserves the functions and relations. More precisely:
The notation for a homomorphism h from to is .
For every signature ? there is a concrete category ?Hom which has ?structures as objects and ?homomorphisms as morphisms.
A homomorphism is sometimes called strong if for every nary relation symbol R and any elements such that , there are such that and ^{[]} The strong homomorphisms give rise to a subcategory of ?Hom.
A (?)homomorphism is called a (?)embedding if it is onetoone and
Thus an embedding is the same thing as a strong homomorphism which is onetoone. 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.
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.
The following problem is known as the homomorphism problem:
Every constraint satisfaction problem (CSP) has a translation into the homomorphism problem.^{[6]} 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 are sometimes referred to as "firstorder 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 firstorder logic such as that used in universal algebra, and for secondorder logic. In connection with firstorder logic and model theory, structures are often called models, even when the question "models of what?" has no obvious answer.
Each firstorder structure has a satisfaction relation defined for all formulas in the language consisting of the language of together with a constant symbol for each element of M, which is interpreted as that element. This relation is defined inductively using Tarski's Tschema.
A structure is said to be a model of a theory T if the language of is the same as the language of T and every sentence in T is satisfied by . 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.
An nary relation R on the universe M of a structure is said to be definable (or explicitly definable, or definable) if there is a formula ?(x_{1},...,x_{n}) such that
In other words, R is definable if and only if there is a formula ? such that
is correct.
An important special case is the definability of specific elements. An element m of M is definable in if and only if there is a formula ?(x) such that
A relation R is said to be definable with parameters (or definable) if there is a formula ? with parameters from such that R is definable using ?. 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.
Recall from above that an nary relation R on the universe M of a structure is explicitly definable if there is a formula ?(x_{1},...,x_{n}) such that
Here the formula ? used to define a relation R must be over the signature of and so ? may not mention R itself, since R is not in the signature of . If there is a formula ? in the extended language containing the language of and a new symbol R, and the relation R is the only relation on such that , then R is said to be implicitly definable over .
By Beth's theorem, every implicitly definable relation is explicitly definable.
Structures as defined above are sometimes called onesorted structures to distinguish them from the more general manysorted structures. A manysorted 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. Manysorted signatures also prescribe on which sorts the functions and relations of a manysorted structure are defined. 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 twosorted structures in the following way. The twosorted signature of vector spaces consists of two sorts V (for vectors) and S (for scalars) and the following function symbols:



If V is a vector space over a field F, the corresponding twosorted structure consists of the vector domain , the scalar domain , and the obvious functions, such as the vector zero , the scalar zero , or scalar multiplication .
Manysorted 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 manysorted 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.^{[7]}
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 firstorder sentences. The formalism of universal algebra is much more restrictive; essentially it only allows firstorder sentences that have the form of universally quantified equations between terms, e.g. x 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.
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 firstorder 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.
There is more than one possible semantics for higherorder logic, as discussed in the article on secondorder logic. When using full higherorder semantics, a structure need only have a universe for objects of type 0, and the Tschema is extended so that a quantifier over a higherorder type is satisfied by the model if and only if it is disquotationally true. When using firstorder semantics, an additional sort is added for each higherorder type, as in the case of a many sorted first order language.
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.