Structures and Languages

First-order languages, signatures, and how we build mathematical worlds

Structures and Languages

Model theory begins with a deceptively simple question: how do we describe a mathematical world? The answer involves two layers. First, we fix a signature (or language) -- a collection of constant symbols, function symbols, and relation symbols, each with a specified arity. Then we build a structure: a nonempty domain of elements together with an interpretation that assigns a concrete meaning to every symbol in the signature.

This separation of syntax (the signature) from semantics (the structure) is the engine that drives all of model theory. The same signature can be interpreted in wildly different domains, and the same domain can carry many different signatures. A substructure arises when we restrict to a subset of the domain that is "self-contained" -- closed under all the operations and inheriting all the relations of the parent structure.

Building a Structure from Scratch

Define a signature by declaring relation symbols with arities, then populate a domain and specify which tuples belong to each relation. The graph visualization shows your structure as elements connected by directed edges.

Structure Builder

Build a first-order structure by defining a domain of elements, declaring relation symbols with arities, and specifying which tuples belong to each relation.

abc
R (arity 2)
R(a, b)R(b, c)
RRabc
Formal Notation

M = ({a, b, c}; Rᴹ = {(a,b), (b,c)})

Key insight: A structure is more than just a set of elements -- it is a set together with specific interpretations of every symbol in the signature. Two structures with the same domain but different relation interpretations are genuinely different mathematical objects, even though they share the same underlying set.

One Domain, Many Signatures

The same finite set can be viewed as a group, a ring, a linear order, or a graph depending on which signature we impose. Compare familiar structures side by side to see how the choice of language shapes the mathematics.

Signature Comparison

The same underlying set can carry completely different mathematical structures depending on which signature we impose. Select up to three structures to compare side by side.

Group (Z/3Z, +)

The integers modulo 3 under addition

Domain
012
Constants
e = 0
Function Symbols
+ (arity 2) -- addition mod 3
Relation Symbols
none

Linear Order ({0,1,2}, <)

The natural ordering on three elements

Domain
012
Constants
none
Function Symbols
none
Relation Symbols
< (arity 2)
(0,1)(0,2)(1,2)

Graph ({0,1,2}, E)

A simple undirected graph (cycle)

Domain
012
Constants
none
Function Symbols
none
Relation Symbols
E (arity 2)
(0,1)(1,0)(1,2)(2,1)(2,0)(0,2)

Shared domain elements: {0, 1, 2} -- the same set, but the mathematical structure is entirely determined by which symbols we interpret on it.

Signature Summary

Group: sigma = ({e}, {+}, empty)

Linear Order: sigma = (empty, empty, {<})

Graph: sigma = (empty, empty, {E})

Key insight: The signature determines what questions you can even ask about a structure. In the language of groups you can ask "is every element its own inverse?" but in the language of graphs that question is meaningless. Model theory studies what is expressible in a given language and what properties are preserved across different interpretations.

Finding Substructures

Select elements from a group to see whether they form a substructure. A subset is a substructure if and only if it is closed under all the operations of the parent structure. Click elements to toggle them and watch the closure check update in real time.

Substructure Explorer

Select a subset of elements by clicking on them. The explorer checks whether your subset is closed under the group operation and thus forms a substructure (subgroup).

012345SelectedNot selected
{0, 2, 4}|S| = 3

This IS a substructure (subgroup).

The subset {0, 2, 4} contains the identity, is closed under +, and every element has its inverse in the subset.

Hint: In Z/6Z, the subgroups are exactly the cyclic subgroups generated by the divisors of 6. Try selecting {0, 3} or {0, 2, 4}.

Key insight: Substructures preserve the "shape" of the parent structure on a smaller scale. In a group, the substructures are exactly the subgroups. In Z/nZ, Lagrange's theorem tells us the size of every subgroup must divide n -- try to find subsets whose size does not divide the group order, and you will see the closure check fail every time.

Key Takeaways

  • A signature is a menu -- it lists the constant, function, and relation symbols (with arities) that structures in this language must interpret
  • A structure is a realization -- it provides a domain and concrete interpretations for every symbol, turning abstract syntax into living mathematics
  • Same domain, different structures -- the set { 0, 1, 2 } can be a group, a ring, an ordered set, or a graph depending on the signature
  • Substructures inherit everything -- a subset forms a substructure when it is closed under all operations and naturally inherits the parent's relations, preserving the algebraic structure on a smaller scale