natural deduction metalanguage, practical foundations
type theory (dependent, intensional, observational type theory, homotopy type theory)
computational trinitarianism = propositions as types +programs as proofs +relation type theory/category theory
basic constructions:
strong axioms
Second-order arithmetic is a theory dealing with natural numbers and, what makes it “second-order”, sets of natural numbers^{1}. SOA, or $Z_2$ as it is often denoted, is proof-theoretically weak in comparison with ZFC, but still strong enough to derive “almost all of undergraduate mathematics” (Friedman).
The language of SOA consists of two sorts, here denoted $N$ and $P N$, together with
A constant $0$ of type $N$,
An unary function symbol $s \colon N \to N$,
Binary function symbols $+, \cdot \colon N \times N \to N$,
A binary relation symbol $\lt$ of type $N \times N$.
A binary relation symbol $\in$ of type $N \times P N$.
The axioms of SOA may be divided into two parts: the first part comprises the “first-order axioms” that deal only with the sort $N$, and defines which is known as Robinson arithmetic. The second part comprises induction and comprehension schemes that involve the symbol $\in$.
Omitting the sort $P N$ and the symbol $\in$ from the language, the axioms in this section give Robinson arithmetic. The logic throughout is standard first-order (predicate) logic with equality.
For all the formulas in this section, it is tacitly understood that there are universal quantifiers at the heads of formulas, binding all variables which appear freely.
$s(m) = 0 \rightarrow \bot$.
$s(m) = s(n) \rightarrow m = n$.
$(0 = n) \vee (\exists_m s(m) = n)$.
$m + 0 = m$.
$m + s(n) = s(m+n)$.
$m \cdot 0 = 0$.
$m \cdot s(n) = (m\cdot n)+m]$.
$m \lt 0 \rightarrow \bot$.
$m \lt s(n) \leftrightarrow ((m \lt n) \vee (m=n))$.
$(0 = n) \vee (0 \lt n)$.
$((s(m) \lt n) \vee (s(m) = n)) \leftrightarrow m \lt n$.
Note: according to convention, lower-case letters refer to terms of type $N$, and upper-case letters to terms of type $P N$.
Comprehension scheme: for any formula? $\varphi$ in the language of SOA with free variables $\vec{m} = m_1, \ldots, m_j$ and $\vec{X} = X_1, \ldots, X_k$,
provided that the variable $Z$ does not appear in $\varphi$.
Full induction scheme: for $\varphi$ any formula with a free variable $n$ and possible remaining free variables $\vec{m} = m_1, \ldots, m_j$ and $\vec{X} = X_1, \ldots, X_k$,
The instance in the full induction scheme where $\varphi$ is the formula $n \in X$ is called simply the induction axiom. The induction axiom together with the comprehension scheme implies the full induction scheme.
The theory described above gives full second-order arithmetic. However, in reverse mathematics?, one often studies subsystems of weaker proof-theoretic strength than SOA, by limiting in some way the comprehension scheme (often also beefing up the single induction axiom with more instances of the induction scheme, to offset the weakening). The main examples are given in Wikipedia; a standard reference is Simpson.
Wikipedia Second order arithmetic
Harvey Friedman’s Home Page
Stephen G. Simpson, Subsystems of second order arithmetic, Perspectives in Logic (2nd ed.), Cambridge University Press (2009).
The logic that governs the language and theory of $Z_2$ is ordinary (first-order) predicate logic. The “second-order” aspect is really in the models, where one interprets the symbol $\in$ as membership in a background set theory, i.e., terms of type $P N$ are interpreted as subsets of the set that interprets the type $N$, and an extensionality axiom is in force. A full model is where $P N$ is interpreted as the full power set of $N$. When one sees absoluteness assertions such as “there is only one (full) model of SOA up to isomorphism,” it should be clear that this is meant with regard to a given background set theory. Cf. the fact that while there is, up to isomorphism, at most one natural numbers object $\mathbb{N}$ in a given topos, the set of global elements $\Gamma(\mathbb{N})$ might contain “non-standard elements” as viewed against the background $Set$. ↩