# Feferman–Vaught theorem

The Feferman–Vaught theorem in model theory is a theorem by Solomon Feferman and Robert Lawson Vaught that shows how to reduce, in an algorithmic way, the first-order theory of a product of structures to the first-order theory of elements of the structure.
The theorem is considered to be one of the standard results in model theory. The theorem extends the previous result of Andrzej Mostowski on direct products of theories. It generalizes (to formulas with arbitrary quantifiers) the property in universal algebra that equalities (identities) carry over to direct products of algebraic structures (which is a consequence of one direction of Birkhoff's theorem).

## Direct product of structures

Consider a first-order logic signature L. The definition of product structures takes a family of L-structures $\mathbf {A} _{i}$ for $i\in I$ for some index set I and defines the product structure $\mathbf {A} =\prod _{i\in I}\mathbf {A} _{i}$, which is also an L-structure, with all functions and relations defined pointwise.
The definition generalizes the direct product in universal algebra to structures for languages that contain not only function symbols but also relation symbols.
If $r(a_{1},\ldots ,a_{p})$ is a relation symbol with $p$ arguments in L and $a_{1},\ldots ,a_{n}\in \Pi _{i\in I}\mathbf {A} _{i}$ are elements of the cartesian product, we define the interpretation of $r$ in $\mathbf {A}$ by
    $\mathbf {A} \models r(a_{1},\ldots ,a_{p})\iff \forall i\in I,\ \mathbf {A} _{i}\models r(a_{1}(i),\ldots ,a_{p}(i))$
When $r$ is a functional relation, this definition reduces to the definition of direct product in universal algebra.

## Statement of the theorem for direct products

For a first-order formula $\phi ({\bar {x}})$ in signature L with free variables a subset of ${\bar {x}}$, and for an interpretation ${\bar {a}}$ of the variables ${\bar {x}}$, we define the set of indices $i$ for which $\phi ({\bar {a}})$ holds in $\mathbf {A} _{i}$
    $||\phi ({\bar {a}})||=\{i\mid \mathbf {A} _{i}\models \phi ({\bar {a}}(i))\}$
Given a first-order formula with free variables $\phi ({\bar {x}})$, there is an algorithm to compute its equivalent game normal form, which is a finite disjunction $\bigvee _{i=1}^{k}\theta _{i}({\bar {x}})$ of mutually contradictory formulas.
The Feferman–Vaught theorem gives an algorithm that takes a first-order formula $\phi ({\bar {x}})$ and constructs a formula $\phi ^{*}$ that reduces the condition that $\phi ({\bar {a}})$ holds in the product to the condition that $\phi ^{*}$ holds in the interpretation of $k+1$ sets of indices:
    $I,||\theta _{i}({\bar {a}})||,\ldots ,||\theta _{k}({\bar {a}})||$
The formula $\phi ^{*}$ is thus a formula with $k+1$ free set variables, for example, in the first-order theory of fields of sets.

### Proof idea

The formula $\phi ^{*}$ can be constructed following the structure of the starting formula $\phi$. When $\phi$ is quantifier free then, by definition of direct product above it follows
    ${\begin{array}{rl}\mathbf {A} \models \phi ({\bar {a}})&\iff \forall i\in I.\ \mathbf {A} _{i}\models \phi ({\bar {a}}(i))\\&\iff \{i\mid \mathbf {A} _{i}\models \phi ({\bar {a}}(i))\}=I\\&\iff ||\phi ({\bar {a}})||=I\end{array}}$
Consequently, we can take $\phi ^{*}(U,X_{1})$ to be the equality $U=X_{1}$ in the language of fields of sets.
Extending the condition to quantified formulas can be viewed as a form of quantifier elimination, where quantification over product elements ${\bar {a}}$ in $\phi$ is reduced to quantification over subsets of $I$.

## Generalized products

It is often of interest to consider substructure of the direct product structure. If the restriction that defines product elements that belong to the substructure can be expressed as a condition on the sets of index elements, then the results can be generalized.
An example is the substructure of product elements that are constant at all but finitely many indices. Assume that the language L contains a constant symbol $c$ and consider the substructure containing only those product elements $a$ for which the set
    $\{i\mid {\textbf {A}}_{i}\models a(i)\neq c\}$
is finite. The theorem then reduces the truth value in such substructure to a formula $\phi ^{*}$ in the field of sets, where certain sets are restricted to be finite.
One way to define generalized products is to consider those substructures where the sets $||\phi (a)||$ belong to some field $B$ of sets $X\subseteq I$ of indices (a subset of the powerset set algebra $2^{I}$), and where the product substructure admits gluing. Here admitting gluing refers to the following closure condition: if $a,b$ are two product elements and $X\in B$ is the element of the field of sets, then so is the element $c$ defined by "gluing" $a$ and $b$ according to $X$:
    $c(i)=\left\{{\begin{array}{rl}a(i),&{\mbox{ if }}i\in X\\b(i),&{\mbox{ if }}i\in (I\setminus X)\end{array}}\right.$

## Consequences

The Feferman–Vaught theorem implies the decidability of Skolem arithmetic by viewing, via the fundamental theorem of arithmetic, the structure of natural numbers with multiplication as a generalized product (power) of Presburger arithmetic structures.
Given an ultrafilter on the set of indices $I$, we can define a quotient structure on product elements, leading to the theorem of Jerzy Łoś that can be used to construct hyperreal numbers.