1 Introduction

An occurrence of a symbol in a formula \(\varphi \) is strictly positive if the occurrence is not inside an antecedent of an implication in \(\varphi \). Given a parameter predicate P we can thus form all formulae which have only strictly positive occurrences of P, referred to as the strictly positive operator forms. Given such an operator form \( \Phi (P;x) \) with free variable x and writing \( \Phi (\varphi ;x) \) for the result of substituting \( \varphi \) for P in \( \Phi \), a predicate \({{\,\textrm{I}\,}}_{\Phi }\) satisfying

$$\begin{aligned} \forall x ( {{\,\textrm{I}\,}}_{\Phi }(x) \leftrightarrow \Phi ({{\,\textrm{I}\,}}_{\Phi };x) ) \end{aligned}$$
(1)

is then a fixpoint of the operator form \(\Phi \). The theory \(\widehat{{\textrm{ID}}}_{1}{}\) is Peano arithmetic (\({\textrm{PA}}\)) extended with a new symbol \({{\,\textrm{I}\,}}_{\Phi }\) and axiom (1) for all strictly positive operator forms \(\Phi \), and \(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{}\) is the corresponding extension of Heyting arithmetic (\({\textrm{HA}}\)). Inductively, \(\widehat{{\textrm{ID}}}_{n + 1}{}\) and \(\widehat{{\textrm{ID}}}{}_{n + 1}^{{\textrm{i}}}{}\) are the corresponding extensions of \(\widehat{{\textrm{ID}}}_{n}{}\) and \(\widehat{{\textrm{ID}}}{}_{n}^{{\textrm{i}}}{}\) respectively. \(\widehat{{\textrm{ID}}}_{1}{}\) is not conservative over \({\textrm{PA}}\), since already \(\widehat{{\textrm{ID}}}_{1}{}(\Pi _2)\), in which (1) holds only for strictly positive \(\Pi _2\) operator forms \(\Phi \), proves the consistency of \({\textrm{PA}}\). On the contrary, \(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{}\) is known to be conservative over \({\textrm{HA}}\).

In the 1997 paper [1], Wilfried Buchholz proved that the theory of fixpoints for strongly positive operator forms, that is where (1) holds for operator forms \(\Phi \) which contain no implications whatsoever, is conservative over \({\textrm{HA}}\) for almost negative sentences. The result was soon improved to full conservativity by Toshiyasu Arai in [2]. A few years later (2002), Christian Rüede and Thomas Strahm in [3] made an improvement in another direction, by showing that the theory \(\widehat{{\textrm{ID}}}{}_{\alpha }^{{\textrm{i}}}{}\), where \(\alpha \) (\(< \Gamma _0\)) refers to ordinal iterations of the fixpoint construction, is conservative over the theory \({\textrm{ACA}}^{-i}_{\alpha }\) (intuitionistic theory of iterated arithmetical comprehension without set parameters) for negative and \(\Pi ^0_2\) sentences. Their argument makes a realizability interpretation of \(\widehat{{\textrm{ID}}}{}_{\alpha }^{{\textrm{i}}}{}\) in an appropriate fragment, which is subsequently interpreted in the classical theory \({\textrm{ACA}}^{-}_{\alpha }\) via partial truth predicates; finally \({\textrm{ACA}}^{-}_{\alpha }\) is conservative over \({\textrm{ACA}}^{-i}_{\alpha }\) for negative and \(\Pi ^0_2\) sentences. As a corollary, \(\widehat{{\textrm{ID}}}{}_{n}^{{\textrm{i}}}{}\) is conservative over \({\textrm{HA}}\) for such sentences.

A few years after this series of partial results (2011), Arai in [4] finally showed, using cut-elimination of an infinitary derivation system formalised in \({\textrm{HA}}\), that the theory \(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{}\) is fully conservative over \({\textrm{HA}}\) (and the stronger result that all \(\widehat{{\textrm{ID}}}{}_{n}^{{\textrm{i}}}{}\) are conservative over \({\textrm{HA}}\)).

The aim of this paper is to reprove this important result by a new method. For clarity we first outline our argument for conservation of almost negative sentences only. This closely resembles that of Rüede and Strahm outlined above in that it combines two natural translations: a realizability interpretation of \( \widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{} \) in the subtheory with the fixpoint axiom (1) restricted to almost negative operator forms, and a direct interpretation of this subtheory in Heyting arithmetic. As in [3], the first step uses standard Kleene-style realizability in the manner of Buchholz’ [5, \(\S \)6]. The main difference lies in the second reduction, which interprets fixpoint predicates for almost negative operator forms by partial satisfaction predicates definable in Heyting arithmetic and generalises the conservativity of fixpoints for strictly positive \( \Pi _1 \) operator forms over Peano arithmetic. In this way, the detour through classical logic used in [3] can be avoided and conservativity of \(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{}\) over \({\textrm{HA}}\) obtained also for almost negative sentences outside \(\Pi ^0_2\), since, combining the two interpretations, if \( \varphi \) is an arithmetic theorem of \( \widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{} \) we obtain that \( \varphi \) is realizable in \( {\textrm{HA}}\) and thus \( {\textrm{HA}}\vdash \varphi \) if \( \varphi \) is almost negative.

Full conservation can be obtained by the same argument if the theories in question are formulated over Beeson’s logic of partial terms (see [6]) rather than intuitionistic predicate logic. Let \( {\textrm{HAP}}\) and \( \widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{\textrm{P}}{} \) be Heyting arithmetic with partial terms and its extension to fixpoints for strictly positive operator forms respectively. We show that every arithmetic theorem of \( \widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{} \) is realized in \( {\textrm{HAP}}\) via an analogous combination of interpretations. This involves a realizability interpretation of \( \widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{\textrm{P}}{} \) in the subtheory of almost negative fixpoints, which we then show is a conservative extension of \( {\textrm{HAP}}\). This conservativity is likewise witnessed by the definability of partial satisfaction predicates for almost negative formulae involving partial terms. The final step of concluding \( {\textrm{HA}}\vdash \varphi \) from the realizability of \( \varphi \) in \( {\textrm{HAP}}\) is a consequence of a result due to Benno van den Berg and Lotte van Slooten in [7] that for this realizability interpretation, Heyting arithmetic is conservatively extended by \( {\textrm{HAP}}+ \varphi \leftrightarrow \exists x (x \mathbin {\underline{{\textrm{r}}}}\varphi ) \) for arithmetic \(\varphi \), where \( x \mathbin {\underline{{\textrm{r}}}}\varphi \) expresses ‘x realizes \( \varphi \).’

We will start by fixing basic notation and terminology in Sect. 2. Heyting arithmetic with partial terms and the basic realizability interpretation we utilise is introduced in Sect. 3. The main results from [7] which we require are also rehearsed in that section. Section 4 concerns properties of the almost negative formulae. We present a hierarchy of formulae \( ( \Lambda _n )_n \) based on nesting depth of implications which exhausts the almost negative formulae and present for each n a \( \Lambda _n \)-formula that provably in \( {\textrm{HAP}}\) is a satisfaction predicate for \( \Lambda _n \)-formulae. Section 5 overviews three intuitionistic fixpoint theories of import: the theory \( \widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{} \) of strictly positive fixpoints over Heyting arithmetic, the counterpart theory over the logic partial terms, \( \widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{\textrm{P}}{} \), and its subtheory of fixpoints for almost negative operator forms, \( \widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{\textrm{P}}{}(\Lambda ) \), as well as interpretability results among them. The article concludes with proving the main result and a discussion of the methods and potential extensions, in Sect. 6.

This paper constitutes part of the first authors thesis, and the details of the omitted proofs will be presented in the forthcoming dissertation.

2 Preliminaries

Our base languages will be \({\mathcal {L}}_{{\textrm{HA}}}\), \({\mathcal {L}}_{{\textrm{PRA}}}\) and \({\mathcal {L}}_{{\textrm{HAP}}}\), all of which will contain the quantifiers \(\forall \) and \(\exists \), the connectives \(\wedge \), \(\vee \) and \(\rightarrow \), the propositional constant \(\bot \) and the equality relation \(\mathrel {=\!\!\!\!=}\) as logical symbols. \({\mathcal {L}}_{{\textrm{HA}}}\), the language of Heyting arithmetic, in addition contains the constant symbol \({\textsf{0}}\) and the function symbols \(\textsf{S}\), \(+\) and \(\times \). Numerals in \({\mathcal {L}}_{{\textrm{HA}}}\) will be constructed from \({\textsf{0}}\) and \(\textsf{S}\) in the usual way (\({\overline{0}} = {\textsf{0}}\), \({\overline{n + 1}} = \textsf{S}({\overline{n}})\)); the same holds for all languages we will consider. \({\mathcal {L}}_{{\textrm{PRA}}}\), the language of primitive recursive arithmetic, contains the symbols of \({\mathcal {L}}_{{\textrm{HA}}}\) as well as a function symbol for each primitive recursive function (including fresh symbols for addition and multiplication). The final language, \({\mathcal {L}}_{{\textrm{HAP}}}\), of Heyting arithmetic with partial terms extends \({\mathcal {L}}_{{\textrm{HA}}}\) by constant symbols \({\textbf{k}}\), \({\textbf{s}}\), \({\textbf{p}}_{{\textrm{l}}}\), \({\textbf{p}}_{{\textrm{r}}}\), \({\textbf{p}}\), \({\textbf{succ}}\), \({\textbf{r}}\) and the binary function symbol \(\cdot \). Since \( \cdot \) will occur more frequently than \(\times \) we will often abbreviate it by juxtaposition and let \(\times \) be written out. \({\textrm{HA}}\) (\({\textrm{PA}}\)) is the intuitionistic (resp. classical) theory in \({\mathcal {L}}_{{\textrm{HA}}}\) axiomatised by basic axioms for the successor \(\textsf{S}\), defining equations for \(+\) and \(\times \), and induction for \({\mathcal {L}}_{{\textrm{HA}}}\). Heyting arithmetic with partial terms, \({\textrm{HAP}}\), is the theory in \({\mathcal {L}}_{{\textrm{HAP}}}\) presented in [7] which we will return to in Sect. 3. \({\textrm{HA}}({\mathcal {L}})\) and \({\textrm{HAP}}({\mathcal {L}})\) will be \({\textrm{HA}}\) and \({\textrm{HAP}}\) with induction extended (or restricted) to \({\mathcal {L}}\), but with no additional axioms concerning the non-arithmetical symbols. Finally, \({\textrm{HA}}_{{\mathcal {L}}_{{\textrm{PRA}}}}\) is Heyting arithmetic axiomatised in \({\mathcal {L}}_{{\textrm{PRA}}}\) with defining equations for all function symbols as axioms, essentially as in, for example, Troelstra and van Dalen’s [8]. While there is no real difference between \({\textrm{HA}}\) and \({\textrm{HA}}_{{\mathcal {L}}_{{\textrm{PRA}}}}\) (they are mutually interpretable), the small number of symbols and the fact that \({\mathcal {L}}_{{\textrm{HA}}}\subseteq {\mathcal {L}}_{{\textrm{HAP}}}\) will be advantageous from our perspective; at the same time, several formula-classes are less expressive in \({\textrm{HA}}\) than in \({\textrm{HA}}_{{\mathcal {L}}_{{\textrm{PRA}}}}\), which makes \( {\textrm{HA}}_{{\mathcal {L}}_{{\textrm{PRA}}}}\) more desirable to work with in some situations.

We use an infinite sequence of variables, \({\textsf{v}}_0, {\textsf{v}}_1, \dotsc \); metavariables for these will be denoted by \(x,y,z,u,v,w,\dotsc \) etc.. Terms are constructed from variables, constants and function symbols in the usual way; for disambiguation we will consider a variable and the term made up of only that variable as distinct syntactic objects, in particular when it comes to coding. We use \(\tau ,\sigma ,\rho ,\dotsc \) as metavariables for terms. We denote tuples of terms (or variables) with \(\vec {\tau }\), or \(\vec {\tau }^n\) if we want to emphasise the tuple has length n. Symbols \(\Phi , \Psi , \phi ,\varphi ,\psi ,\theta ,\vartheta ,\dotsc \) denotes formulae, where uppercase is used to emphasise that the formula is an operator form, in that it contains a distinguished predicate symbol (denoted by P, Q or R). Formulae are identified up to \(\alpha \)-equivalence, and we define the Gödel code of a formula to be the (numerically) least code of any of the \(\alpha \)-equivalent formulae with no nested bindings, i.e. two nested quantifiers binding the same variable. Regarding substitution: \(\sigma [\vec {u}/\vec {\tau }]\), where \(\sigma \) is a term, \(\vec {u}\) is a finite sequence of distinct variables and \(\vec {\tau }\) is a sequence of terms of the same length, denotes simultaneous substitution of \(\tau _i\) for \(u_i\) in \(\sigma \) for all indices i of the sequences. Similarly \(\varphi (\vec {u}/\vec {\tau })\), where \(\varphi \) is a formula and \(\vec {u}\) and \(\vec {\tau }\) are as above, denotes simultaneous substitution of \(\tau _i\) for the free occurrences of \(u_i\) in \(\varphi \) for all indices i of the sequences after renaming bound variables in \(\varphi \) to avoid conflicts. Since we identify \(\alpha \)-equivalent formulae this is permissible. The simpler expression \(\varphi (\vec {\tau })\) means \(\varphi (\vec {{\textsf{v}}}_{<n}/\vec {\tau })\), where \(\vec {{\textsf{v}}}_{<n}\) is \(\langle {\textsf{v}}_0, \dotsc , {\textsf{v}}_{n - 1}\rangle \), with n the length of \(\vec {\tau }\). When introducing a formula with a formulation of the kind “Let \(\varphi (\vec {x})\) be a formula,” it is tacitly understood that \(\vec {x}^n\) is without repetitions and no variables other than \({\textsf{v}}_0,\dotsc ,{\textsf{v}}_{n - 1}\) occurs free in \(\varphi \), that is all free occurrences of \(\vec {x}\) in \(\varphi (\vec {x})\) are obtained by the substitution; \(\varphi (\vec {\tau })\) is subsequently the same as \(\varphi (\vec {x})(\vec {x}/\vec {\tau })\). We use the corresponding notation for substitution of formulae for relations: \(\Phi (R/\lambda \vec {x}. \vartheta )\), where the length of \(\vec {x}\) is the arity of R, denotes simultaneous substitution in the formula \(\Phi \) of the formula \(\vartheta \) for the relation symbol R, where the ith argument of R is substituted for the free occurrences of \(x_i\) in \(\vartheta \), after renaming bound variables in \(\Phi \) and \(\vartheta \).Footnote 1 Note, we do not require that \(x_i\) is a free variable in \(\vartheta \) or that all free variables of \(\vartheta \) are among \(\vec {x}\). If we omit the ‘\(\lambda \vec {x}\)’ we mean that \(\vec {x}\) is \(\vec {{\textsf{v}}}_{<n}\) and if \(\vartheta \) consists of a single n-ary relation symbol Q we write \(\Phi (R/Q)\) for \(\Phi (R/\lambda \vec {v}_{< n}. Q(\vec {v}_{< n}))\), where we might also omit R if it is clear from the context (as in Sect. 5). Finally, when expressing both relation and term substitution, denoted \( \Phi (\lambda \vec {x}. \vartheta ;\vec {\tau }) \), term substitution takes precedence, namely \(\Phi (\lambda \vec {x}. \vartheta ;\vec {\tau }) = (\Phi (\vec {\tau }))(\lambda \vec {x}. \vartheta )\).Footnote 2 We will abuse notation and write \(\chi \in {\mathcal {L}}\) for any symbol, term or formula \(\chi \) of the language \({\mathcal {L}}\). The Gödel code of an expressions \(\eta \) (in the language under consideration) will be denoted by \(\ulcorner \eta \urcorner \). When using numerals of Gödel codes we suppress the bar, so that in e.g. , \(\ulcorner \eta \urcorner \) refers to the numeral of the number \(\ulcorner \eta \urcorner \).

We finally turn to notations for syntactic formula-classes. \(\Lambda \) will denote the class of almost negative formulae; a formula is almost negative if it contains no disjunctions and existential quantifiers only occur immediately in front of term-equations. Note the unfortunate clash of terminology that some strictly positive operator forms (meaning the distinguished predicate P does not occur in the antecedent of an implication) will at the same time be almost negative formulae. Both of these concepts are standard in their fields, so there is little point in trying to avoid or change them here. Negative formulae are the almost negative formulae which contains no existential quantifiers whatsoever. When concerned with a syntactic formula-class \( \Gamma \) such as \(\Lambda \) or \(\Sigma _n\) (or \(\Lambda _n\) introduced in Sect. 4) we will use the convention that \( \Gamma \) refers to the set of formulae belonging to this class in the language under consideration, while \(\Gamma ({\textrm{HA}})\) refers to the set of formulae which are \({\textrm{HA}}\)-equivalent to formulae from \(\Gamma \) in this language; the same principle applies to other theories like \({\textrm{HAP}}\) and \({\textrm{PA}}\). For example \(\Sigma _1({\textrm{PA}})\) is the set of formulae in \({\mathcal {L}}_{{\textrm{HA}}}\) which are \({\textrm{PA}}\)-equivalent to \(\Sigma _1\)-formulae. Some caution must be used here since \({\mathcal {L}}_{{\textrm{HA}}}\) does not contain the symbol \(<; \Delta _0\)-formulae (and subsequently the rest of the arithmetical hierarchy) are thus defined via the defined inequality: \(x < y\) is \(\exists z (x + \textsf{S}(z) \mathrel {=\!\!\!\!=} y)\). If \({\textrm{HA}}^{\prime }\) is Heyting arithmetic in \({\mathcal {L}}_{{\textrm{HA}}}+ \mathord<\), this yields \({\textrm{HA}}^{\prime }\) as a definitional extension of \({\textrm{HA}}\), with the arithmetical hierarchy in \({\textrm{HA}}\) the image of the one in \({\textrm{HA}}^{\prime }\).

3 \({\textbf{LPT}}\) and \({\textbf{HAP}}\)

For completeness and convenience we will begin by briefly describing the system \({\textrm{LPT}}\) of Beeson’s logic of partial terms (see [6]), followed by \({\textrm{HAP}}\), Heyting arithmetic in partial terms. Both of these presentations will be essentially as those given in [7]. Most proofs will be omitted; we refer the reader to the references for details.

Definition 3.1

(LPT) Logic of Partial Terms, \({\textrm{LPT}}\), is a Hilbert-style deductive system in a language containing at least equality with the following logical rules and axiom schemata, where \(\tau \mathord \downarrow \) abbreviates \(\tau \mathrel {=\!\!\!\!=} \tau \) and expresses that \(\tau \) denotes:

figure a

Rules \({\textrm{LPT}}\)11 and \({\textrm{LPT}}\)13 are called (universal and existential) generalisation, axioms \({\textrm{LPT}}\)12 and \({\textrm{LPT}}\)14 (universal and existential) instantiation and \({\textrm{LPT}}\)20, \({\textrm{LPT}}\)21, \({\textrm{LPT}}\)22 and \({\textrm{LPT}}\)23 are the strictness axioms. An instance of \({\textrm{LPT}}\)22 is \(\tau \mathrel {=\!\!\!\!=} \sigma \rightarrow {\tau \mathord \downarrow } \wedge \sigma \mathord \downarrow \). Axiom \({\textrm{LPT}}\)23 is not explicitly included in the axiomatisation in [7] but is consistent with it, being derivable from the the axioms of \({\textrm{HAP}}\). Since the axiom is present in Beeson’s axiomatisation in [6] and the axiomatisation of Troelstra’s [9], as well as [8] (there called E\({}^+\)-logic), we include it for simplicity. This also makes sense for \(\alpha \)-equivalence, which is built into this system by construction; given \({\textrm{LPT}}\)23 one can also derive it from (more carefully formulated) \({\textrm{LPT}}\)12 and \({\textrm{LPT}}\)14.

Definition 3.2

If \(\Gamma \) is a set of formulae and \(\phi \) a formula then means \({\mathscr {D}}\) is an \({\textrm{LPT}}\)-derivation (sequence of formulae) of \(\phi \) using \(\Gamma \) as additional axioms. We write to express that for some \( {\textrm{LPT}}\)-derivation \({\mathscr {D}}\). If \(\Gamma \) is empty we write .

The notion of derivation introduced above satisfies the deduction theorem. We can also define weak equality and obtain:

Lemma 3.3

(“Leibniz Lemma” of [7]) Defining \(\sigma \simeq \tau \) as \(\sigma \mathord \downarrow \vee \; \tau \mathord \downarrow \rightarrow \sigma \mathrel {=\!\!\!\!=} \tau \) we have and for all function symbols \(\textsf{f}\) and all formulae \(\phi \) of the language.

Definition 3.4

(\({\textrm{HAP}}\)) Heyting arithmetic with partial terms, \({\textrm{HAP}}\), is an \({\textrm{LPT}}\)-theory in the language \({\mathcal {L}}_{{\textrm{HAP}}}\). It is axiomatised by the following formulae for all variables x, y and z and formulae \(\varphi \in {\mathcal {L}}_{{\textrm{HAP}}}\). Recall, juxtaposition of terms abbreviates use of \(\cdot \) (read as application).

figure b

Terms and formulae from the fragment \({\textsf{0}},\textsf{S},+,\times \) will be called arithmetical. A combinator (term) is a closed term without \(\textsf{S}\), \(+\) or \(\times \), making \({\textsf{0}}\) the only arithmetical combinator; the other combinator constants \({\textbf{k}}\), \({\textbf{s}}\), \({\textbf{p}}\), \({\textbf{p}}_{{\textrm{l}}}\), \({\textbf{p}}_{{\textrm{r}}}\), \({\textbf{succ}}\) and \({\textbf{r}}\) are the pure combinators. A combinator \(\tau \) is unary (binary etc.) total if ( etc.). If \({\mathcal {L}}\) is a language extending \({\mathcal {L}}_{{\textrm{HAP}}}\) we will extend \({\textrm{HAP}}\) to an \({\mathcal {L}}\)-theory \({\textrm{HAP}}({\mathcal {L}})\) by letting the induction schema \({\textrm{HAP}}\)8 apply to all formulae of \({\mathcal {L}}\).

Remark 3.5

van den Berg and van Slooten’s [7] used strong equality in the third part of axiom HAP7. Private communication with Benno van den Berg has revealed that this was not intended and that the results of [7] do not depend on it. We therefore use the version with weak equality, which is in line with Beeson’s [6] and Troelstra and van Dalen’s [11].

Not surprisingly \({\textrm{HA}}\) directly embeds into \({\textrm{HAP}}\). The next lemma summarises the key observations for this result.

Lemma 3.6

Let \({\mathcal {L}}_1 \subseteq {\mathcal {L}}_2\) be arbitrary first-order languages and \(\Gamma _1\), \(\Gamma _2\) sets of formulae in the respective language. Let denote derivability in ordinary intuitionistic logic, as captured by the Hilbert-style system \({\textrm{LPT}}\) plus the extra logical axiom \(\tau \mathord \downarrow \) for all terms \(\tau \). Suppose for all terms \(\sigma \) of \({\mathcal {L}}_1\). If for all \(\gamma \in \Gamma _1\) and then , for all \(\varphi \in {\mathcal {L}}_1\).

Proof

Induction on derivations . \(\square \)

Corollary 3.7

\({\textrm{HAP}}\) proves all theorems of \({\textrm{HA}}\).

3.1 Combinatory algebra in \({\textbf{HAP}}\)

This subsection aims to describe how the basic facts of combinatory algebra are derivable in \({\textrm{HAP}}\). In this, we follow [6, VI.2.]. The basic idea is to regard every object of the theory both as a number and as a partial function, where \(\cdot \) denotes function application to an argument. It is in line with this reading we will write \(\tau \vec {\sigma }\) and \(\tau \cdot \vec {\sigma }\) for \(\tau \cdot \sigma _0 \cdot \cdots \cdot \sigma _n\), which in turn is a shorthand for \(((\cdots (\tau \cdot \sigma _0) \cdot \cdots ) \cdot \sigma _n)\); thus association of \(\cdot \) is to the left.

It is well known that combinatory algebra is Turing-complete, and thus defines the same class of functions as the recursive functions or the \(\lambda \)-calculus. Adapted to present purposes we observe that we can define a denoting ‘\(\lambda \)-term’ for any partial term in the language, such that if applied to an argument they are weakly equal.

Proposition 3.8

(\(\lambda \)-terms, Proposition 2.3 of [7]) For each term \(\tau \) and variable x in \({\mathcal {L}}_{{\textrm{HAP}}}\), there is a term \(\lambda x.\tau \) in the fragment without \(\textsf{S}\), \(+\) and \(\times \) such that \({{\,\textrm{FV}\,}}(\lambda x.\tau ) = {{\,\textrm{FV}\,}}(\tau ) {\setminus } \{x\}\), and .

As stated above we will call terms constructed in accordance with this lemma \(\lambda \)-terms. At first sight they might seem rather redundant, but note that a \(\lambda \)-term always denotes, as opposed to the term it was constructed from (though the application of a \(\lambda \)-term to some argument need not denote, of course). Note that this also means that \(\tau \) is not a subterm of \(\lambda x.\tau \) in general. Another consequence of the construction is that \(\lambda \)-terms do not contain any arithmetical function symbols, but only \(\cdot \). We will use the usual notational conventions for stacking \(\lambda \)s, that is \(\lambda x.\lambda y. \tau \) will be written \(\lambda x y.\tau \) etc.

Proposition 3.9

(Primitive recursion in \({\textrm{HAP}}\)) For each function symbol of \({\mathcal {L}}_{{\textrm{PRA}}}\) defined as a primitive recursive function there is a combinator of \({\mathcal {L}}_{{\textrm{HAP}}}\) such that \({\textrm{HAP}}\) proves its defining equations. More precisely there is an interpretation \(\tau \) of these function symbols of \({\mathcal {L}}_{{\textrm{PRA}}}\) into the combinator terms of \({\mathcal {L}}_{{\textrm{HAP}}}\) such that for all such \(\textsf{f}\), \(\textsf{g}\), and \(\textsf{h}_{(j)}\) with arities n, \(k + 2\) and k

$$\begin{aligned} {\text {HAP}}&\vdash \forall x\; \tau _{\textsf {Z}} x \mathrel {=\!\!\!\!=} {\textsf {0}}\text {, }\\ {\text {HAP}}&\vdash \forall x\; \tau _{\textsf {S}} x \mathrel {=\!\!\!\!=} \textsf {S}(x)\text {, }\\ {\text {HAP}}&\vdash \forall \vec {x}\; \tau _{{\pi }^k_i} \vec {x} \mathrel {=\!\!\!\!=} x_i\text {, }\\ {\text {HAP}}&\vdash \forall \vec {x}\; \tau _{\circ ^k_n(\textsf {f},\textsf {h}_0,\dotsc ,\textsf {h}_{n - 1})} \vec {x} \mathrel {=\!\!\!\!=} \tau _{\textsf {f}} (\tau _{\textsf {h}_0} \vec {x}) \cdots (\tau _{\textsf {h}_{n - 1}} \vec {x})\text {, }\\ {\text {HAP}}&\vdash \forall \vec {x}\; \tau _{{{\,\text {rec}\,}}^k(\textsf {g},\textsf {h})} \vec {x}\, {\textsf {0}} \mathrel {=\!\!\!\!=} \tau _{\textsf {h}} \vec {x}\text {, }\\ {\text {HAP}}&\vdash \forall \vec {x} y\; \tau _{{{\,\text {rec}\,}}^k(\textsf {g},\textsf {h})} \vec {x} (\textsf {S}(y)) \mathrel {=\!\!\!\!=} \tau _{\textsf {g}} \vec {x} y (\tau _{{{\,\text {rec}\,}}^k(\textsf {g},\textsf {h})} \vec {x} y)\text {, }\end{aligned}$$

(where the length of \(\vec {x}\) is k) and consequently

$$\begin{aligned} {\textrm{HAP}}&\vdash \tau _{\textsf{f}} {\overline{a}}_0 \cdots {\overline{a}}_{n - 1} \mathrel {=\!\!\!\!=} {\overline{{{\,\textrm{val}\,}}(\textsf{f},\vec {a})}} \end{aligned}$$

for every \(a_0,\dotsc ,a_{n - 1} \in \mathbb {N}\). In particular \({\textrm{HAP}}\vdash \tau _{\textsf{f}}\mathord \downarrow \) for every such \(\textsf{f}\).

Proof

The proof is standard. See e.g. [10, Theorem 1.2.4] and [11, Theorem 9.3.11]. \(\square \)

Fixing \({\mathcal {L}}_{{\textrm{HA}}}\) we can extend this interpretation compositionally to an interpretation \({\mathcal {T}}\) of \({\mathcal {L}}_{{\textrm{PRA}}}\) into \({\mathcal {L}}_{{\textrm{HAP}}}\), yielding the following result.

Proposition 3.10

Recall \({\textrm{HA}}_{{\mathcal {L}}_{{\textrm{PRA}}}}\) is Heyting arithmetic axiomatised in \({\mathcal {L}}_{{\textrm{PRA}}}\). For every formula \(\phi \) of \({\mathcal {L}}_{{\textrm{PRA}}}\),

In particular, if \(\phi \in {\mathcal {L}}_{{\textrm{PRA}}}\) is a true (in \(\mathbb {N}\)) \(\Sigma _1\)-sentence, then .

Proof

Apply Lemma 3.6 to \({\mathcal {T}}[{\textrm{HA}}_{{\mathcal {L}}_{{\textrm{PRA}}}}] \subset {\textrm{HAP}}\). \(\square \)

Proposition 3.11

(Recursion in HAP) Combinatory algebra in \({\textrm{HAP}}\) encompasses all recursive functions: there are combinator terms \({\textbf{d}}\), \({\textbf{fix}}\) and \({\textbf{min}}\) such that

and

Proof

Again standard. See [10, Proposition 1.2.1.], [6, VI.2.6–8] and [11, 9.3.7–11]. \(\square \)

The above thus embeds \({\mathcal {L}}_{{\textrm{PRA}}}\) (and more) into \({\mathcal {L}}_{{\textrm{HAP}}}\). It will, however, be important that \({\mathcal {L}}_{{\textrm{HA}}}\subset {\mathcal {L}}_{{\textrm{PRA}}}\) is embedded in \({\mathcal {L}}_{{\textrm{HAP}}}\) in a way that does not involve \(\cdot \) and the pure combinators; recall that \({\mathcal {L}}_{{\textrm{HA}}}\subset {\mathcal {L}}_{{\textrm{HAP}}}\) by definition as the arithmetical formulae of \({\mathcal {L}}_{{\textrm{HAP}}}\), which are not affected by \({\mathcal {T}}\).

By interpreting \(\cdot \) as Kleene application, we also have a result in the converse direction.

Proposition 3.12

There is an interpretation \({\mathcal {F}}\) of \({\mathcal {L}}_{{\textrm{HAP}}}\) in \({\mathcal {L}}_{{\textrm{HA}}}\) which interprets \(\cdot \) as Kleene application, such that

  1. 1.

    for all \(\phi \in {\mathcal {L}}_{{\textrm{HA}}}\),

  2. 2.

    for all \(\phi \in {\mathcal {L}}_{{\textrm{HAP}}}\).

Corollary 3.13

(Proposition 2.4 of [7]) \({\textrm{HAP}}\) is conservative over \({\textrm{HA}}\).

3.2 Realizability in \({\textbf{HAP}}\)

Realizability in \({\textrm{HAP}}\) is one of the main tools of [7], and we will utilise many of their results, and those of similar systems like in [6, 11]. We present this technical background, mainly without proof, in this subsection, together with some additional machinery.

We will, in fact, extend these definitions of realizability to languages \({\mathcal {L}}\) extending \({\mathcal {L}}_{{\textrm{HAP}}}\) with an unspecified set of relation symbols and parameterise this extension by the clauses for these symbols. We let \({\mathcal {L}}\) be fixed throughout this subsection.

Definition 3.14

(Realizability) For each term \(\tau \) and formula \(\varphi \) we define the formula \(\tau \mathbin {\underline{{\textrm{r}}}}\varphi \) after renaming of bound variables in \(\varphi \) to avoid conflicts with \(\tau \) and nested bindings. The notion of realizability we will use is defined via the following clauses:

$$\begin{aligned} \tau \mathbin {\underline{{\textrm{r}}}}(\sigma _1 \mathrel {=\!\!\!\!=} \sigma _2)&\text { is } \sigma _1 \mathrel {=\!\!\!\!=} \sigma _2\\ \tau \mathbin {\underline{{\textrm{r}}}}\bot&\text { is } \bot \\ \tau \mathbin {\underline{{\textrm{r}}}}(\phi \wedge \psi )&\text { is } ( {\textbf{p}}_{{\textrm{l}}}\tau \mathbin {\underline{{\textrm{r}}}}\phi ) \wedge ( {\textbf{p}}_{{\textrm{r}}}\tau \mathbin {\underline{{\textrm{r}}}}\psi )\\ \tau \mathbin {\underline{{\textrm{r}}}}(\phi \vee \psi )&\text { is } ({\textbf{p}}_{{\textrm{l}}}\tau \mathrel {=\!\!\!\!=} {\textsf{0}} \rightarrow {\textbf{p}}_{{\textrm{r}}}\tau \mathbin {\underline{{\textrm{r}}}}\phi ) \wedge ({\textbf{p}}_{{\textrm{l}}}\tau \mathrel {=\!\!\!\!\not =}{\textsf{0}} \rightarrow {\textbf{p}}_{{\textrm{r}}}\tau \mathbin {\underline{{\textrm{r}}}}\psi ) \\ \tau \mathbin {\underline{{\textrm{r}}}}(\phi \rightarrow \psi )&\text { is } \forall y (y \mathbin {\underline{{\textrm{r}}}}\phi \rightarrow ({\tau y \mathord \downarrow } \wedge \tau y \mathbin {\underline{{\textrm{r}}}}\psi )) \\ \tau \mathbin {\underline{{\textrm{r}}}}\forall x \phi&\text { is } \forall x ({\tau x \mathord \downarrow } \wedge \tau x \mathbin {\underline{{\textrm{r}}}}\phi ) \\ \tau \mathbin {\underline{{\textrm{r}}}}\exists x \phi&\text { is } {\textbf{p}}_{{\textrm{r}}}\tau \mathbin {\underline{{\textrm{r}}}}(\phi (x/{\textbf{p}}_{{\textrm{l}}}\tau )) \\ \tau \mathbin {\underline{{\textrm{r}}}}R(\sigma _0,\dotsc ,\sigma _{n - 1})&\text { is } Q_R(\sigma _0,\dotsc ,\sigma _{n - 1},\tau ) \end{aligned}$$

where y is a fresh variable (which can be chosen in a systematic fashion which we will not specify). Here \(Q_R\) is an as yet unspecified relation symbol whose arity is one greater than that of R.

That this is a well-defined notion, in that it respects \(\alpha \)-equivalence, can be proved by structural induction. Other standard properties of realizability can be proved in the same manner, e.g.

Lemma 3.15

For every formula \(\phi \) and term \(\tau \), \(\tau \mathbin {\underline{{\textrm{r}}}}\phi \) is negative and the free variables of \(\phi \) are among the free variables of \(\tau \mathbin {\underline{{\textrm{r}}}}\phi \), which are among the free variables of \(\phi \) and \(\tau \).

For the rest of this section we will simply let \(\mathbin {\underline{{\textrm{r}}}}R\) denote the unspecified relation \(Q_R\) in the definition of \(\mathbin {\underline{{\textrm{r}}}}\) above, whence the final clause reads

$$\begin{aligned} \tau \mathbin {\underline{{\textrm{r}}}}R(\sigma _0,\dotsc ,\sigma _{n - 1})&\text { is } (\mathbin {\underline{{\textrm{r}}}}R)(\sigma _0,\dotsc ,\sigma _{n - 1},\tau ) \end{aligned}$$

for relations R. We will make some concrete choices for this \(\mathbin {\underline{{\textrm{r}}}}R\) in particular cases in Sect. 5.2. This draws attention to a potential subtlety, in that \(\tau \mathbin {\underline{{\textrm{r}}}}\varphi (\vec {x})\) could a priori mean both \(\tau \mathbin {\underline{{\textrm{r}}}}(\varphi (\vec {x}))\) and \((\tau \mathbin {\underline{{\textrm{r}}}}\varphi )(\vec {x})\). As our choice of notation for the base case indicates, however, these are the same as long as \(\tau \) contains none of the variables substituted for.

Lemma 3.16

(Lemma 4.4.6.(ii) of [8]) Substitution distributes over realizability: Let \(\varphi \) be a formula and \(\tau \) a term. For all equally long finite sequences \(\vec {u}\) and \(\vec {\sigma }\) of distinct variables and terms, respectively, \((\tau \mathbin {\underline{{\textrm{r}}}}\varphi )(\vec {u}/\vec {\sigma }) = (\tau [\vec {u}/\vec {\sigma }]) \mathbin {\underline{{\textrm{r}}}}\, (\varphi (\vec {u}/\vec {\sigma }))\). In particular, \((x \mathbin {\underline{{\textrm{r}}}}\varphi )(x/\tau ) = \tau \mathbin {\underline{{\textrm{r}}}}\varphi \) if x is fresh.

To disambiguate when there is a potential clash we will let \(\tau \mathbin {\underline{{\textrm{r}}}}\varphi (\vec {y})\) mean \(\tau \mathbin {\underline{{\textrm{r}}}}(\varphi (\vec {y}))\) etc., since this seems to be the natural reading when \(\tau \) is a(n explicitly given) single variable.

The relationship between realizability and substitution of formulae for relation symbols is only slightly more involved, since the former might change the relations occurring in a formula.

Lemma 3.17

Let \(n \in \mathbb {N}\), R be an n-ary relation symbol, \(\tau \) be a term and \(\vartheta \) be a formula without free occurrences of \({\textsf{v}}_n\). Suppose \(\mathbin {\underline{{\textrm{r}}}}R\) is not the same as \(\mathbin {\underline{{\textrm{r}}}}Q\) for any other relation symbol Q. Then \(\tau \mathbin {\underline{{\textrm{r}}}}(\varphi (R/\lambda \vec {{\textsf{v}}}_{< n}.\vartheta )) = (\tau \mathbin {\underline{{\textrm{r}}}}\varphi )(\mathbin {\underline{{\textrm{r}}}}R/\lambda \vec {{\textsf{v}}}_{\le n}.{\textsf{v}}_n \mathbin {\underline{{\textrm{r}}}}\vartheta )\) for every \(\varphi \in {\mathcal {L}}\).

Proof

Induction on the construction of \(\varphi \).

  • All base-cases except \(R(\vec {\sigma })\) follow since the substitutions are vacuous. Moreover

    $$\begin{aligned} \tau \mathbin {\underline{{\textrm{r}}}}(R(\vec {\sigma })(R/\lambda \vec {{\textsf{v}}}_{< n}. \vartheta ))&= \tau \mathbin {\underline{{\textrm{r}}}}(\vartheta (\vec {{\textsf{v}}}_{< n}/\vec {\sigma }))\\&= ({\textsf{v}}_n \mathbin {\underline{{\textrm{r}}}}\vartheta )(\vec {{\textsf{v}}}_{\le n}/\vec {\sigma },\tau )\\&= (\mathbin {\underline{{\textrm{r}}}}R(\vec {\sigma },\tau ))(\mathbin {\underline{{\textrm{r}}}}R/\lambda \vec {{\textsf{v}}}_{\le n}. {\textsf{v}}_n \mathbin {\underline{{\textrm{r}}}}\vartheta )\\&= (\tau \mathbin {\underline{{\textrm{r}}}}R(\vec {\sigma }))(\mathbin {\underline{{\textrm{r}}}}R/\lambda \vec {{\textsf{v}}}_{\le n}. {\textsf{v}}_n \mathbin {\underline{{\textrm{r}}}}\vartheta ) \end{aligned}$$

    for all terms \(\tau \) by Lemma 3.16.

  • Assume the statement holds for \(\chi \) and \(\psi \) and let \(\tau \) be a term. Then

    $$\begin{aligned}&\tau \mathbin {\underline{{\textrm{r}}}}((\chi \wedge \psi )(R/\lambda \vec {{\textsf{v}}}_{< n}. \vartheta ))\\&\quad = {\textbf{p}}_{{\textrm{l}}}\tau \mathbin {\underline{{\textrm{r}}}}(\chi (R/\lambda \vec {{\textsf{v}}}_{< n}. \vartheta )) \wedge {\textbf{p}}_{{\textrm{r}}}\tau \mathbin {\underline{{\textrm{r}}}}(\psi (R/\lambda \vec {{\textsf{v}}}_{< n}. \vartheta ))\\&\quad = ({\textbf{p}}_{{\textrm{l}}}\tau \mathbin {\underline{{\textrm{r}}}}\chi )(\mathbin {\underline{{\textrm{r}}}}R/\lambda \vec {{\textsf{v}}}_{\le n}. {\textsf{v}}_n \mathbin {\underline{{\textrm{r}}}}\vartheta ) \wedge ({\textbf{p}}_{{\textrm{r}}}\tau \mathbin {\underline{{\textrm{r}}}}\psi )(\mathbin {\underline{{\textrm{r}}}}R/\lambda \vec {{\textsf{v}}}_{\le n}. {\textsf{v}}_n \mathbin {\underline{{\textrm{r}}}}\vartheta )\\&\quad = (\tau \mathbin {\underline{{\textrm{r}}}}(\chi \wedge \psi ))(\mathbin {\underline{{\textrm{r}}}}R/\lambda \vec {{\textsf{v}}}_{\le n}. {\textsf{v}}_n \mathbin {\underline{{\textrm{r}}}}\vartheta ) \end{aligned}$$

    by induction hypothesis. The disjunctive case is similar.

  • Assume the statement holds for \(\chi \) and \(\psi \) and let \(\tau \) be a term and y a variable without free occurrences in \(\chi \), \(\psi \), \(\vartheta \) or \(\tau \). Then

    $$\begin{aligned} \tau&\mathbin {\underline{{\textrm{r}}}}((\chi \rightarrow \psi )(R/\lambda \vec {{\textsf{v}}}_{< n}. \vartheta ))\\&= \forall y (y \mathbin {\underline{{\textrm{r}}}}(\chi (R/\lambda \vec {{\textsf{v}}}_{< n}. \vartheta )) \rightarrow (\tau y \mathord \downarrow \wedge \tau y \mathbin {\underline{{\textrm{r}}}}(\psi (R/\lambda \vec {{\textsf{v}}}_{< n}. \vartheta ))))\\&= \forall y ((y \mathbin {\underline{{\textrm{r}}}}\chi )(\mathbin {\underline{{\textrm{r}}}}R/\lambda \vec {{\textsf{v}}}_{\le n}. {\textsf{v}}_n \mathbin {\underline{{\textrm{r}}}}\vartheta ) \rightarrow (\tau y \mathord \downarrow \wedge (\tau y \mathbin {\underline{{\textrm{r}}}}\psi )(\mathbin {\underline{{\textrm{r}}}}R/\lambda \vec {{\textsf{v}}}_{\le n}. {\textsf{v}}_n \mathbin {\underline{{\textrm{r}}}}\vartheta )))\\&= (\tau \mathbin {\underline{{\textrm{r}}}}(\chi \rightarrow \psi ))(\mathbin {\underline{{\textrm{r}}}}R/\lambda \vec {{\textsf{v}}}_{\le n}. {\textsf{v}}_n \mathbin {\underline{{\textrm{r}}}}\vartheta ) \end{aligned}$$

    by induction hypothesis and since y is fresh.

  • Assume the statement holds for \(\psi \) and let \(\tau \) be a term. We can without loss of generality assume that x does not occur in \(\tau \) or \(\vartheta \). Then

    $$\begin{aligned} \tau \mathbin {\underline{{\textrm{r}}}}((\forall x \psi )(R/\lambda \vec {{\textsf{v}}}_{< n}. \vartheta ))&= \forall x (\tau x \mathord \downarrow \wedge \tau x \mathbin {\underline{{\textrm{r}}}}(\psi (R/\lambda \vec {{\textsf{v}}}_{< n}. \vartheta )))\\&= \forall x (\tau x \mathord \downarrow \wedge ((\tau x \mathbin {\underline{{\textrm{r}}}}\psi )(\mathbin {\underline{{\textrm{r}}}}R/\lambda \vec {{\textsf{v}}}_{\le n}. {\textsf{v}}_n \mathbin {\underline{{\textrm{r}}}}\vartheta )))\\&= (\tau \mathbin {\underline{{\textrm{r}}}}\forall x \psi )(\mathbin {\underline{{\textrm{r}}}}R/\lambda \vec {{\textsf{v}}}_{\le n}. {\textsf{v}}_n \mathbin {\underline{{\textrm{r}}}}\vartheta ) \end{aligned}$$

    by induction hypothesis.

  • Assume the statement holds of \(\psi \) and let \(\tau \) be a term. We can without loss of generality assume that x does not occur in \(\tau \) or \(\vartheta \). Then

    $$\begin{aligned} \tau \mathbin {\underline{{\textrm{r}}}}((\exists x \psi )(R/\lambda \vec {{\textsf{v}}}_{< n}. \vartheta ))&= {\textbf{p}}_{{\textrm{r}}}\tau \mathbin {\underline{{\textrm{r}}}}(\psi (R/\lambda \vec {{\textsf{v}}}_{< n}. \vartheta )(x/{\textbf{p}}_{{\textrm{l}}}\tau ))\\&= {\textbf{p}}_{{\textrm{r}}}\tau \mathbin {\underline{{\textrm{r}}}}(\psi (x/{\textbf{p}}_{{\textrm{l}}}\tau )(R/\lambda \vec {{\textsf{v}}}_{< n}. \vartheta ))\\&= ({\textbf{p}}_{{\textrm{r}}}\tau \mathbin {\underline{{\textrm{r}}}}(\psi (x/{\textbf{p}}_{{\textrm{l}}}\tau )))(\mathbin {\underline{{\textrm{r}}}}R/\lambda \vec {{\textsf{v}}}_{\le n}. {\textsf{v}}_n \mathbin {\underline{{\textrm{r}}}}\vartheta )\\&= (\tau \mathbin {\underline{{\textrm{r}}}}(\exists x \psi ))(\mathbin {\underline{{\textrm{r}}}}R/\lambda \vec {{\textsf{v}}}_{\le n}. {\textsf{v}}_n \mathbin {\underline{{\textrm{r}}}}\vartheta ) \end{aligned}$$

    by induction hypothesis.

This concludes the induction. \(\square \)

Lemma 3.18

Realizability is closed under derivability in \({\textrm{LPT}}\): Let \(\Delta \) be a set of formulae including the axioms of \({\textrm{HAP}}({\mathcal {L}})\) and \(\Gamma \) be a set of formulae such that for each \(\gamma \in \Gamma \) there is a term \(\sigma \) with free variables among those of \(\gamma \) and . Let \(\varphi \) be a formula and \({\mathscr {D}}\) a derivation with . Then there is a term \(\tau \) with free variables among those of \(\varphi \) such that .

Proof

By induction on the depth of \({\mathscr {D}}\). The proof is similar to [6, VII. Theorem 1.6]. \(\square \)

While we rely heavily on the work in [7], our definitions of realizability are not literally the same, since there disjunction is a defined predicate (\(\varphi \vee \psi \) is \(\exists n ((n \mathrel {=\!\!\!\!=} {\textsf{0}} \rightarrow \varphi ) \wedge (n \mathrel {=\!\!\!\!\not =}{\textsf{0}} \rightarrow \psi ))\)). This difference is immaterial, however, since the notions are equivalent in the following sense. Let \(\mathbin {\underline{\hat{{\textrm{r}}}}}\) denote the notion of realizability from [7].

Lemma 3.19

The realizability notion \(\mathbin {\underline{{\textrm{r}}}}\) is equivalent to \(\mathbin {\underline{\hat{{\textrm{r}}}}}\): for every formula \(\varphi \in {\mathcal {L}}_{{\textrm{HAP}}}\) there are unary total combinators \(\mu \) and \(\nu \) such that and . Consequently .

Since we can thus identify the two notions of realizability we get the following as a consequence of Corollary 3.6 from [7]:

Proposition 3.20

\({\textrm{HAP}}\) plus the schema \(\varphi \leftrightarrow \exists x (x \mathbin {\underline{{\textrm{r}}}}\varphi )\) for \(\varphi \in {\mathcal {L}}_{{\textrm{HA}}}\) is conservative over \({\textrm{HA}}\). In particular, for every formula \( \varphi \in {\mathcal {L}}_{{\textrm{HA}}}\), if \( {\textrm{HAP}}\vdash \exists x (x \mathbin {\underline{{\textrm{r}}}}\varphi ) \) then \( {\textrm{HA}}\vdash \varphi \).

It is important for the above proposition that \({\mathcal {L}}_{{\textrm{HA}}}\) is a subset of \({\mathcal {L}}_{{\textrm{HAP}}}\), instead of being embedded into it in a way involving the (pure) combinators or the application function symbol specific to the language \( {\mathcal {L}}_{{\textrm{HAP}}}\) (like the inclusion of the rest of \({\mathcal {L}}_{{\textrm{PRA}}}\) in Proposition 3.9). In addition to allowing us to state the theorem as a simple conservativity result, this is required for the proof of [7, Corollary 3.6], which relies on an interpretation of \({\textrm{HAP}}\) into itself which changes the application function and pure combinators, while preserving \({\mathcal {L}}_{{\textrm{HA}}}\).

4 A hierarchy of almost negative formulae

An important subtheory of \(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{}\) is that given by the fixpoint axioms for operator forms which are almost negative. Recall a formula is almost negative if it contains no disjunctions and the matrix of any existential quantifier is an equation between terms. \( \Lambda \) denotes the class of almost negative formulae.

In this section we introduce a hierarchy \((\Lambda _n)\) of formulae which exhausts the almost negative formulae \(\Lambda \). In classical arithmetic, the arithmetic (quantifier) hierarchy classifies formulae of the language according by quantifier complexity (that is, quantifier alternations). This hinges on the existence of a prenex normal form, and in particular on De Morgan’s laws and the possibility to define \(\rightarrow \) in terms of \(\vee \) and \(\lnot \). For intuitionistic arithmetic this is no longer a possibility and the situation is not as simple. A few hierarchies for intuitionistic arithmetic have been proposed, in this context we should mention Wolfgang Burr whose \(\Phi ^{\prime }\)-hierarchy in [12] is very close to the one we consider (see also Burr’s [13]).

This formula hierarchy will behave relative to \(\Lambda \) in several respects similarly to how the arithmetic hierarchy behaves relative to the entire language in the classical case. In addition to exhausting the almost negative formulae (in a sense made precise below), each level of the hierarchy contains a partial satisfaction predicate for that level: for each \(n \in \mathbb {N}\) there is a \(\Lambda _n\)-formula \(\texttt {Sat} _n\) which \({\textrm{HAP}}\) proves to be a (compositional) satisfaction predicate for formulae in \(\Lambda _n\). The construction of the \(\texttt {Sat} _n\) will be the main content of Sect. 4.2.

4.1 Stratifying the almost negative formulae

For now we turn to more elementary properties of \(\Lambda _n\). Two of the most notable of these are the Diagonal Lemma 4.6 and the closure of \(\Lambda _n\) under substitution into strictly positive positions (Lemma 4.5). These properties play crucial roles in the interpretability argument of Theorem 5.7.

Definition 4.1

\(\Sigma {\textrm{e}}\), the set of \(\Sigma \)-equations, is the set of formulae of the form \(\exists x \, \sigma = \tau \), where \(\sigma \) and \(\tau \) are terms. \(\Lambda _0\) is the smallest set closed under conjunction which contains \(\Sigma {\textrm{e}}\) and the atomic formulae. \(\Lambda _{n + 1}\) is the smallest set that contains \(\Sigma {\textrm{e}}\) and atomic formulae which is closed under conjunction, universal quantification and implications with \(\Lambda _n\) antecedents; that is, if \(\varphi \in \Lambda _{n + 1}\) and \(\psi \in \Lambda _n\) then \(\psi \rightarrow \varphi \in \Lambda _{n + 1}\).

The normal form hierarchy \( ( \Lambda ^{{\textrm{nf}}}_n )_n\) is defined as follows: \(\Lambda ^{{\textrm{nf}}}_0\) is the set conjunctions \( \psi \wedge \bigwedge _{i=1}^k \varphi _i \) where \( \psi \in \Sigma {\textrm{e}}\), \( k \ge 0 \) and each \( \varphi _i \) for \(i \le k\) is an atomic formula other than \(\bot \) or an equation (whence \(\Lambda ^{{\textrm{nf}}}_0 = \Sigma {\textrm{e}}\) for \({\mathcal {L}}_{{\textrm{HA}}}\), \({\mathcal {L}}_{{\textrm{PRA}}}\) and \({\mathcal {L}}_{{\textrm{HAP}}}\)). \(\Lambda ^{{\textrm{nf}}}_{n + 1}\) is the set of universally quantified conjunctions of implications with \( \Lambda ^{{\textrm{nf}}}_n \) antecedents and \( \Lambda ^{{\textrm{nf}}}_0 \) consequents, namely formulae of the form \(\forall x \bigwedge _{i=0}^{k} ( \phi _i \rightarrow \psi _i )\) where \( \{ \phi _0, \dotsc , \phi _k \} \subseteq \Lambda ^{{\textrm{nf}}}_n \) and \( \{ \psi _0, \dotsc , \psi _k \} \subseteq \Lambda ^{{\textrm{nf}}}_0 \). Let \(\Lambda ^{{\textrm{nf}}}= \bigcup _{n \in \mathbb {N}} \Lambda ^{{\textrm{nf}}}_n\).

It should be noted that this stratification of \(\Lambda \) is closed under \(\alpha \)-equivalence and thus is well defined. A consequence of the definition is that the \(\Lambda _n\) form a strictly telescoping hierarchy:

Lemma 4.2

For every \(n \in \mathbb {N}\), \(\Lambda _n \subset \Lambda _{n + 1}\).

The hierarchy \( ( \Lambda ^{{\textrm{nf}}}_n )_n \) represents normal forms for formulae of \( \Lambda \) in the sense that \( \Lambda ^{{\textrm{nf}}}_n \subseteq \Lambda _n \) for every n, and every formula in \( \Lambda _n \) is provably equivalent to a formula in \( \Lambda ^{{\textrm{nf}}}_n \) over the theory \( {\textrm{HA}}\) or \( {\textrm{HAP}}\) as appropriate. This latter result is strengthened in Lemma 4.4.

We are interested here in the almost negative formulae, which is why we allow \(\Sigma {\textrm{e}}\) as ‘atoms,’ much as \(\Delta _0\)-formulae are treated as ‘atoms’ in the classical arithmetical hierarchy. In the latter case, however, we have generous closure conditions on this set of ‘atoms,’ even though this makes no real difference further on in the arithmetical hierarchy, while here we are requiring the special ‘atoms’ to have a very concrete form. We could, for the purposes of this paper, have let \(\Sigma {\textrm{e}}\) be closed under (at least) conjunctions, disjunctions and existential quantification and subsequently used formulae constructed therefrom by conjunctions, implications and universal quantifications instead of the almost negative formulae (thus thereby essentially allowing general \(\Sigma _1\)-formulae as ‘atoms’) without much extra work. Since the almost negative formulae seem to be the established standard in these contexts, however, we will not generalise in this direction. This will have the added advantage of making the definitions of the satisfaction predicates somewhat clearer since no connectives or quantifiers are in the scope of an existential quantifier.

In the other direction, as opposed to Heyting arithmetic in the language of \({\textrm{PRA}}\), every (partial) recursive function is represented by a term in \({\textrm{HAP}}\). Thus, adding an existential quantifier to form a \(\Sigma \)-equation does not yield increased expressibility. So we could have simplified the definition of \(\Lambda ^{{\textrm{nf}}}\) in this setting by leaving out the existential quantifiers altogether. However, we gain little by doing so, and thus prefer to have \(\Lambda ^{{\textrm{nf}}}\) formulated as a template for all adequate languages.

The essential difference between the \(\Lambda \)-hierarchy and Burr’s \(\Phi ^{\prime }\) from [12] is that \(\Lambda _n\) is also closed under conjunction to exhaust the almost negative formulae. Both can be seen as mirroring the ordinary arithmetic hierarchy, in that they are classically equivalent to it.

In the following lemma, let \({\textrm{PAP}}\) denote the result of adding the law of excluded middle to \({\textrm{HAP}}\).Footnote 3 Given a set \( \Gamma \) of formulae and a theory \( {\textrm{T}} \), recall \( \Gamma ({\textrm{T}}) \) denotes the set of formulae that are provably in \( {\textrm{T}} \) equivalent to some formula in \( \Gamma \).

Lemma 4.3

\(\Lambda _n\) relates to almost negative formulae and the usual arithmetical hierarchy in the following way:

  1. 1.

    The \(\Lambda _n\) exhaust the almost negative formulae, that is \(\Lambda = \bigcup _{n \in \mathbb {N}} \Lambda _n\).

  2. 2.

    In the arithmetic languages \({\mathcal {L}}_{{\textrm{PRA}}}\) and \({\mathcal {L}}_{{\textrm{HAP}}}\): Let \({\textrm{HA}}^*\) be \({\textrm{HA}}_{{\mathcal {L}}_{{\textrm{PRA}}}}\) or \({\textrm{HAP}}\). Then \(\Lambda ^{{\textrm{nf}}}_0({\textrm{HA}}^*)\), the formulae equivalent to \(\Lambda ^{{\textrm{nf}}}_0\)-formulae over \({\textrm{HA}}^*\), is precisely the formulae equivalent to \(\Sigma {\textrm{e}}\)-formulae over \({\textrm{HA}}^*\), as well as the formulae equivalent to \(\Sigma _1\)-formulae over \({\textrm{HA}}^*\).

  3. 3.

    In the arithmetic languages \({\mathcal {L}}_{{\textrm{PRA}}}\) and \({\mathcal {L}}_{{\textrm{HAP}}}\): Let \({\textrm{PA}}^*\) be \({\textrm{PA}}_{{\mathcal {L}}_{{\textrm{PRA}}}}\) or \({\textrm{PAP}}\). For \(n > 0\), \(\Lambda ^{{\textrm{nf}}}_n({\textrm{PA}}^*) = \Pi _{n + 1}({\textrm{PA}}^*)\). Moreover, \(\Lambda ^{{\textrm{nf}}}_0({\textrm{PA}}^*) = \Sigma {\textrm{e}}({\textrm{PA}}^*) = \Sigma _1({\textrm{PA}}^*)\).

Proof

Observe that \(\Lambda _n \subseteq \Lambda \) for all \(n \in \mathbb {N}\). We show that \( \Lambda \subseteq \bigcup _n \Lambda _n \) by induction on the complexity of almost negative formulae:

  • If \(\varphi \) is an atom or a \(\Sigma {\textrm{e}}\)-formula, then \(\varphi \in \Lambda _0\).

  • The induction steps for \(\wedge \) and \(\forall \) are straightforward.

  • If \(\varphi = (\vartheta \rightarrow \psi )\) for \(\vartheta ,\psi \in \bigcup _{k \in \mathbb {N}} \Lambda _k \cap \Lambda \), let n be such that both are in \(\Lambda _n\) (by Lemma 4.2). Then \(\varphi \in \Lambda _{n + 1}\).

This concludes the proof of the first statement.

For the remaining statements, clearly \(\Sigma {\textrm{e}}= \Lambda ^{{\textrm{nf}}}_0 \subseteq \Sigma _1\) by definition. We show by induction on \(n > 0\) that \(\Lambda ^{{\textrm{nf}}}_n \subseteq \Pi _{n + 1}({\textrm{PA}}^*)\).

  • Let \(\varphi = \forall x \bigwedge _i (\vartheta _i \rightarrow \psi _i)\), where \(\vartheta _i,\psi _i \in \Lambda ^{{\textrm{nf}}}_0 \subseteq \Sigma _1\). Then by classical logic \(\varphi \in \Pi _2({\textrm{PA}}^*)\).

  • Let \(k \ge 1\) and \(\varphi = \forall x \bigwedge _i (\vartheta _i \rightarrow \psi _i)\), where \(\vartheta _i \in \Lambda ^{{\textrm{nf}}}_k \subseteq \Pi _{k + 1}({\textrm{PA}}^*)\) and \(\psi _i \in \Lambda ^{{\textrm{nf}}}_0 \subseteq \Sigma _1\). Then by classical logic \(\varphi \in \Pi _{k + 2}({\textrm{PA}}^*)\).

Conversely, since \(\Delta _0\)-formulae in \({\mathcal {L}}_{{\textrm{PRA}}}\) and \({\mathcal {L}}_{{\textrm{HAP}}}\) are equivalent to atoms in \({\textrm{HA}}^*\), \(\Sigma _1 \subseteq \Sigma {\textrm{e}}({\textrm{HA}}^*) = \Lambda ^{{\textrm{nf}}}_0({\textrm{HA}}^*) \subseteq \Lambda ^{{\textrm{nf}}}_0({\textrm{PA}}^*)\) by structural induction. Hence \(\Sigma _1({\textrm{HA}}^*) = \Lambda ^{{\textrm{nf}}}_0({\textrm{HA}}^*)\) and the corresponding for \({\textrm{PA}}^*\). We show that \(\Pi _{n + 1}({\textrm{PA}}^*) = \Lambda ^{{\textrm{nf}}}_n({\textrm{PA}}^*)\) by induction on \(n > 0\).

  • Suppose \(\varphi = \forall x \vartheta \), where \(\vartheta \in \Sigma _1 \subseteq \Lambda ^{{\textrm{nf}}}_0({\textrm{PA}}^*)\). Then \(\varphi \in \Lambda ^{{\textrm{nf}}}_1({\textrm{PA}}^*)\). Thus \(\Pi _2 \subseteq \Lambda ^{{\textrm{nf}}}_1({\textrm{PA}}^*)\), whence \(\Pi _2({\textrm{PA}}^*) = \Lambda ^{{\textrm{nf}}}_1({\textrm{PA}}^*)\) by above.

  • Suppose \(\varphi = \forall x \vartheta \), where \(\vartheta \in \Sigma _{k + 1}\). Let be \(\chi \rightarrow \exists x ({\textsf{0}} \mathrel {=\!\!\!\!=} \textsf{S}({\textsf{0}}))\) for formulae \(\chi \). Then by induction hypothesis. Let \(\psi \in \Lambda ^{{\textrm{nf}}}_k\) be equivalent. Then , where . Note that this would not work with \(\lnot \), since \(\bot \) is not a \(\Lambda ^{{\textrm{nf}}}_0\)-formula. So \(\Pi _{k + 2} \subseteq \Lambda ^{{\textrm{nf}}}_{k + 1}({\textrm{PA}}^*)\) and consequently \(\Pi _{k + 2}({\textrm{PA}}^*) = \Lambda ^{{\textrm{nf}}}_{k + 1}({\textrm{PA}}^*)\).

\(\square \)

In particular, \(\Sigma {\textrm{e}}({\textrm{HAP}})\) is closed under conjunction, disjunction, existential quantification and bounded universal quantification.

It should be intuitively clear that \(\Lambda _0\) is \({\textrm{HAP}}\)-equivalent to \(\Lambda ^{{\textrm{nf}}}_0\). The same holds for all n, as we will show. In order to define a satisfaction predicate for \(\Lambda _n\), however, we need to have access to an explicit transformation from \(\Lambda _n\) to its normal form \(\Lambda ^{{\textrm{nf}}}_n\) in \({\textrm{HAP}}\). Corresponding transformations can be defined for languages other than \({\mathcal {L}}_{{\textrm{HAP}}}\). Since it is clear that \(\Lambda ^{{\textrm{nf}}}_n \subseteq \Lambda _n\), this transformation yields the inclusions \(\Lambda ^{{\textrm{nf}}}_n \subseteq \Lambda _n \subseteq \Lambda ^{{\textrm{nf}}}_n({\textrm{HAP}})\) and \(\Lambda ^{{\textrm{nf}}}_n \subseteq \Lambda _n \subseteq \Lambda ^{{\textrm{nf}}}_n({\textrm{PAP}})\) for all n.

We now fix a standard coding of the language \({\mathcal {L}}_{{\textrm{HAP}}}\) in \({\textrm{HA}}\), and thus in \({\textrm{HAP}}\). The features we will assume are that the set of codes of two types of syntactic objects (terms, formulae etc.) never intersect, that no two distinct syntactic objects are assigned the same code, that \({\textsf{0}}\) is not the code of any syntactic object and that the code of formulae and terms are (numerically) strictly larger than their (immediate) constituents. A similar note on the coding of sequences are that they are assumed to be strictly larger than their length and all of their elements. Thus we can reason about \(\Lambda _n\)-formulae in a theory of arithmetic.

Lemma 4.4

There are primitive recursive functions \(\lambda _n :\Lambda _n \longrightarrow \Lambda ^{{\textrm{nf}}}_n\) which transforms \(\Lambda _n\)-formulae to \( {\textrm{HAP}}\)-provably equivalent normal forms.

Proof

We omit the actual construction, from which we can see that for \(\varphi \in \Lambda _n\) but which is otherwise unenlightening. We only give the general ideas on which it hinges.

Firstly, we can easily add redundant parts to a (\(\Sigma \)-)equation to make it an equivalent \(\Lambda ^{{\textrm{nf}}}_n\)-formula, as well as finding a \(\Sigma \)-equation equivalent to \(\bot \) (as above).

Secondly, if \(\exists x (\sigma _1 \mathrel {=\!\!\!\!=} \sigma _2)\) and \(\exists y (\tau _1 \mathrel {=\!\!\!\!=} \tau _2)\) are \(\Lambda ^{{\textrm{nf}}}_0\)-formulae, then is a \(\Lambda ^{{\textrm{nf}}}_0\)-formula equivalent to their conjunction (where is a shorthand for application of the combinator representing the primitive recursive subtraction function).

Thirdly, if \(\forall x \bigwedge _{i = 0}^k (\psi _i \rightarrow \varphi _i)\) and \(\forall y \bigwedge _{j = 0}^m (\xi _j \rightarrow \vartheta _j)\) are \(\Lambda ^{{\textrm{nf}}}_{n + 1}\)-formulae and \(\chi \in \Lambda ^{{\textrm{nf}}}_n\), then

$$\begin{aligned}&\forall x \bigwedge _{i = 0}^k (\psi _i \rightarrow \varphi _i) \wedge \forall y \bigwedge _{j = 0}^m (\xi _j \rightarrow \vartheta _j)\\&\forall u \forall x \bigwedge _{i = 0}^k (\psi _i \rightarrow \varphi _i) \end{aligned}$$

and

$$\begin{aligned}&\chi \rightarrow \forall x \bigwedge _{i = 0}^k (\psi _i \rightarrow \varphi _i) \end{aligned}$$

where x, y and u could be the same, are equivalent to

$$\begin{aligned}&\forall v ((\bigwedge _{i = 0}^k \psi _i \rightarrow \varphi _i)(x/v) \wedge (\bigwedge _{j = 0}^m \xi _j \rightarrow \vartheta _j)(y/v))\\&\forall v (\bigwedge _{i = 0}^k (\psi _i \rightarrow \varphi _i)(x/{\textbf{p}}_{{\textrm{l}}}v)(u/{\textbf{p}}_{{\textrm{r}}}v)) \end{aligned}$$

and

$$\begin{aligned}&\forall v \bigwedge _{i = 0}^k ((\chi \wedge \psi _i(x/v)) \rightarrow \varphi _i(x/v)) \end{aligned}$$

respectively, where v is fresh. The first two are in \(\Lambda ^{{\textrm{nf}}}_{n + 1}\) and the third can be given such a form inductively, since \(\chi \wedge \psi _i(x/v) \in \Lambda _n\). \(\square \)

The \(\lambda _n\) can be chosen to be (provably in \({\textrm{HAP}}\)) primitive recursive in the structure of their arguments.

We finally turn to the two key properties of the hierarchy mentioned earlier.

Lemma 4.5

If \(\phi \in \Lambda _n\) has only strictly positive occurrences of the k-ary relation symbol R and \(\theta \in \Lambda _m\) then \(\phi (R/\theta ) \in \Lambda _{\max (n,m)}\).

Proof

Let \(M = \max (n,m)\). The proof is by induction on the complexity of \(\phi \).

  • Let \(\sigma \) and \(\tau \) be terms. Then \((\sigma \mathrel {=\!\!\!\!=} \tau )(R/\theta ) = (\sigma \mathrel {=\!\!\!\!=} \tau ) \in \Lambda _M\).

  • We have \(\bot (R/\theta ) = \bot \in \Lambda _M\).

  • We have \((R(\vec {\tau }))(R/\theta ) = \theta (\vec {{\textsf{v}}}_{< k}/\vec {\tau }) \in \Lambda _M\).

  • We have \((Q(\vec {\tau }))(R/\theta ) = Q(\vec {\tau }) \in \Lambda _M\).

  • Let \(\sigma \) and \(\tau \) be terms. Then \((\exists x \sigma \mathrel {=\!\!\!\!=} \tau )(R/\theta ) = (\exists x \sigma \mathrel {=\!\!\!\!=} \tau ) \in \Lambda _M\).

  • Let \(\chi , \psi \in \Lambda _n\) have only strictly positive occurrences of R and be such that \(\chi (R/\theta ), \psi (R/\theta ) \in \Lambda _M\). Then \((\chi \wedge \psi )(R/\theta ) = (\chi (R/\theta ) \wedge \psi (R/\theta )) \in \Lambda _M\).

  • In case \(n \ge 1\), let \(\psi \in \Lambda _n\) have only strictly positive occurrences of R and be such that \(\psi (x/z)(R/\theta ) \in \Lambda _M\) for all z. Then \((\forall x \psi )(R/\theta ) = \forall y (\psi (x/y)(R/\theta )) \in \Lambda _M\) for some fresh y.

  • In case \(n \ge 1\), let \(\psi \in \Lambda _n\) have only strictly positive occurrences of R and be such that \(\psi (R/\theta ) \in \Lambda _M\), and \(\chi \in \Lambda _{n - 1}\) be such that \(\chi \rightarrow \psi \) has only strictly positive occurrences of R. Then \((\chi \rightarrow \psi )(R/\theta ) = (\chi \rightarrow \psi (R/\theta )) \in \Lambda _M\) since R does not occur in \(\chi \).

This concludes the proof. \(\square \)

Since \({\textrm{HAP}}\) has terms for all primitive recursive functions, there is a term \(\texttt {sub} \) for the substitution function in \({\mathcal {L}}_{{\textrm{HAP}}}\). This is used to prove the following:

Lemma 4.6

(Diagonal Lemma in \({\textrm{HAP}}\)) \(\Lambda _n\) and \(\Lambda ^{{\textrm{nf}}}_n\) are closed under diagonalisation: If \(\varphi \in \Lambda _n\) (resp. \(\in \Lambda ^{{\textrm{nf}}}_n\)) has free variables \({\textsf{v}}_0, \dotsc , {\textsf{v}}_k\), then there is a formula \(\psi \in \Lambda _n\) (\( \psi \in \Lambda ^{{\textrm{nf}}}_n \)) with free variables \({\textsf{v}}_0, \dotsc , {\textsf{v}}_{k - 1}\) and

$$\begin{aligned} {\textrm{HAP}}\vdash \psi (\vec {x}) \leftrightarrow \varphi (\vec {x},\ulcorner \psi \urcorner )\text{, } \end{aligned}$$

where \(\vec {x}\) has length k.

Proof

This is the standard diagonal argument. \(\square \)

4.2 Satisfaction predicates for almost negative formulae

Given terms \(\eta \), \(\nu \) and \(\tau \) we write \(\eta _{\nu }^{\tau }\) for the term \(\lambda u. {\textbf{d}}u \nu ({\textbf{k}}\tau ) \eta u\), where u is fresh. (Recall \({\textbf{d}}\) is the ‘decision by case’ term from Proposition 3.11.) This term is such that , corresponding to the ‘update’ of the function \(\eta \) with the new value \(\tau \) for input \(\nu \). Note, there is no assumption that \( \tau \) denotes. For sequences \( \vec \tau \) and \( \vec \nu \) of terms (of equal length) we define \(\eta _{\vec {\nu }}^{\vec {\tau }}\) by iterating the above construction.

Since partial combinatory algebras are Turing complete (see Proposition 3.11 and [6, VI. Theorem 2.8.1]) it is possible to define a valuation combinator for partial terms of \({\mathcal {L}}_{{\textrm{HAP}}}\).

Definition 4.7

(Valuation function in \({\textrm{HAP}}\)) Using Proposition 3.9 we have formulae and combinators corresponding to the following primitive recursive relations and functions: \(\texttt {Seq} \), \(\texttt {lh} \), \(\texttt {Var} \), \(\texttt {FV} \), \(\texttt {BV} \) (the second argument is a (code of a) free/bound variable of the first), \({\texttt {Term}} \), \(\texttt {Fmla} \), \(\texttt {Sent} \), \(\texttt {sub} \), , , \(\pmb {\lambda }_n\) and \({\texttt {num}} \) (the formal numeral function).

Let \(\texttt {val} \) be a combinator in \({\textrm{HAP}}\) such that

  1. 1.

    for every constant symbol \(\textsf{c}\),

  2. 2.

    , and

  3. 3.

    for every function symbol \(\textsf{f}\)

(recall the notational convention that \(\ulcorner \alpha \urcorner \) means \({\overline{\ulcorner \alpha \urcorner }}\), the numeral of the Gödel code of \(\alpha \), for expressions \(\alpha \)).

These defined relations will notationally be treated as predicate symbols.

Recall that in \({\textrm{HAP}}\) every object in the domain is a partial function and, in particular, is a partial variable assignment mapping codes of variables to values. Thus it is not necessary to place any restriction on the e in \(\texttt {val} \cdot e \cdot z\) such as, for example, that e represents an assignment for the variables of (the term coded by the value of the variable) z.

Lemma 4.8

The valuation function \(\texttt {val} \) acts as a partial valuation function for partial terms of \({\mathcal {L}}_{{\textrm{HAP}}}\). In particular:

  1. 1.

    .

  2. 2.

    .

  3. 3.

    .

  4. 4.

    for every partial term \(\tau \) with free variables among \({\textsf{v}}_0,\dotsc ,{\textsf{v}}_{n - 1}\).

Proof

The first three are proved by induction on t in \({\textrm{HAP}}\). The final claim is an induction on the construction of \(\tau \). \(\square \)

In the interest of readability we will conflate coding and concatenation in the coded language. Any logical symbols occurring within square brackets \([\quad ]\) refer to the codes of these symbols, concatenated with the other (named) constructs appearing in the brackets. For instance, \([\exists v (s \mathrel {=\!\!\!\!=} t)]\) below is the code \(\ulcorner \exists {\textsf{v}}_0 ({\textsf{v}}_1 \mathrel {=\!\!\!\!=} {\textsf{v}}_2) \urcorner \) with the codes v, s, t formally substituted for \(\ulcorner {\textsf{v}}_0 \urcorner \), \(\ulcorner {\textsf{v}}_1 \urcorner \), \(\ulcorner {\textsf{v}}_2 \urcorner \) respectively.

Theorem 4.9

(Partial Satisfaction Predicates in \({\textrm{HAP}}\)) For every n there is a \(\Lambda ^{{\textrm{nf}}}_n\)-formula \(\texttt {Sat} _n(e,F)\) which \({\textrm{HAP}}\) proves is a compositional satisfaction predicate for \(\Lambda _n\)-formulae.

Proof

The proof is cumbersome but straightforward. Essentially, we mimic standard constructions of \(\Sigma _n\)-satisfaction predicates in \({\textrm{PA}}\), as in e.g. Hájek and Pudlák’s [14].

We first construct an intermediate satisfaction predicate for \(\Lambda ^{{\textrm{nf}}}_n\)-formulae in \({\mathcal {L}}_{{\textrm{HAP}}}\) by induction on n.

  • First \(\texttt {Sat} _0^{\prime \prime }(e,F)\) is

    $$\begin{aligned}&\exists x,v,s,t({\texttt {Term}} (s) \wedge {\texttt {Term}} (t) \wedge \texttt {Var} (v) \wedge F = [\exists v (s = t)] \wedge \texttt {val} \cdot e_v^x \cdot s\\&\quad \mathrel {=\!\!\!\!=} \texttt {val} \cdot e_v^x \cdot t) \end{aligned}$$

    This is straightforwardly \({\textrm{HAP}}\)-equivalent to a \(\Sigma {\textrm{e}}\)-formula. The predicate \(\texttt {Sat} ^{\prime }_0\) is thus the \(\Lambda ^{{\textrm{nf}}}_0\) normal form of this formula, which is \({\textrm{HAP}}\)-equivalent to it by Lemma 4.4.

  • We define \(\texttt {Sat} ^{\prime \prime }_{n + 1}(e,F)\) as

    where \(\texttt {conjs} \) is the combinator representing the primitive recursive function

    $$\begin{aligned} {{\,\textrm{conjs}\,}}(\langle e \rangle )&\mathrel {=\!\!\!\!=} e\\ {{\,\textrm{conjs}\,}}(\langle h, t\rangle )&\mathrel {=\!\!\!\!=} {{\,\textrm{conjs}\,}}(t) \wedge h\text{, } \end{aligned}$$

    in accordance with Proposition 3.9. \(\texttt {Sat} ^{\prime \prime }_{n + 1}\) is \(\Lambda _{n + 1}\), whence \(\texttt {Sat} ^{\prime }_{n + 1}\) is the \(\Lambda ^{{\textrm{nf}}}_{n + 1}\)-formula \(\lambda _{n + 1}(\texttt {Sat} ^{\prime \prime }_{n + 1})\).

We now define \(\texttt {Sat} _n(e,F)\) as \(\texttt {Sat} ^{\prime }_n(e,\pmb {\lambda }_n \cdot F)\), which is compositional on \(\Lambda _n\)-formulae. This, and the intermediate facts that \(\texttt {Sat} ^{\prime }_n\) respects conjunction, only depends on the values of e for the free variables of F and ‘commutes’ with substitution, that is

and

are now shown by induction on n as before, with inner inductions on the structure of F. \(\square \)

Corollary 4.10

Let \(\phi \) be a \(\Lambda _n\) formula with free variables among \({\textsf{v}}_0,\dotsc ,{\textsf{v}}_{k - 1}\). Then .

Proof

Outer induction on n, inner induction on \(\phi \). \(\square \)

5 Fixpoint theories

We return now to our main item of study: the intuitionistic theory of fixpoints over Heyting arithmetic, \(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{}\). Similar to the way \({\textrm{HA}}\) is included in \({\textrm{HAP}}\) we want to embed \(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{}\) in a corresponding theory in the logic of partial terms, extending the notion of strictly positive fixpoints to \({\textrm{HAP}}\). We denote this theory as \(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{\textrm{P}}{}\). We start by formally introducing these fixpoint theories.

5.1 \(\widehat{{{\textbf {ID}}}}{}_{{{\textbf {1}}}}^{{{\textbf {i}}}}{}\) and \(\widehat{{{\textbf {ID}}}}{}_{{{\textbf {1}}}}^{{{\textbf {i}}}}{{\textbf {P}}}{}\)

Let \({\mathcal {L}}\) be a fixed language extending \({\mathcal {L}}_{{\textrm{HA}}}\). Let \(P = (P_n)_{n \in \mathbb {N}}\) be a sequence of new predicate symbols such that \( P_n \) has arity n. Let \({\mathcal {L}}(P_n)\) be the language \({\mathcal {L}}\) with \(P_n\) added and \({\mathcal {L}}^P\) that of \({\mathcal {L}}\) with all \(P_n\) added. We will by \({{\,\textrm{POS}\,}}_{P_n}({\mathcal {L}})\) denote the set of formulae in \( {\mathcal {L}}(P_n) \) whose free variables are exactly \({\textsf{v}}_0, \dotsc , {\textsf{v}}_{n - 1}\) and such that \(P_n\) occurs at least once in the formula and in strictly positive position only. That is, \( P_n \) may not occur in the antecedent of any implication. Let \({{\,\textrm{POS}\,}}_P({\mathcal {L}}) = \bigcup _{n \in \mathbb {N}} {{\,\textrm{POS}\,}}_{P_n}({\mathcal {L}})\). Note that this definition ensures that \({{\,\textrm{POS}\,}}_P({\mathcal {L}})\) is a union of disjoint classes, so exactly one of the \(P_n\)s occur in any formula of \({{\,\textrm{POS}\,}}_P({\mathcal {L}})\); the requirement that \(P_n\) actually occur is no real restriction on the \({{\,\textrm{POS}\,}}_{P_n}({\mathcal {L}})\). Formulae of \({{\,\textrm{POS}\,}}_P({\mathcal {L}})\) will be used as operators with \(P_n\) as parameters to generate (axioms for) strictly positive fixpoints, the strictly positive operator forms (in \({\mathcal {L}}\)) from the introduction. Now we can formally define \(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{}\) as follows: For each \(\Phi \in {{\,\textrm{POS}\,}}_{P_n}({\mathcal {L}})\) we introduce a new n-ary predicate \({{\,\textrm{I}\,}}_{\Phi }\) and the axiom

figure c

Similarly to above, we will by \({\mathcal {L}}({{\,\textrm{I}\,}}_{\Phi })\) denote the language \({\mathcal {L}}\) extended with the (specific) symbol \({{\,\textrm{I}\,}}_{\Phi }\) and by \({\mathcal {L}}^{{\textrm{ID}}}\) that of \({\mathcal {L}}\) with \({{\,\textrm{I}\,}}_{\Phi }\) added for every \(\Phi \in {{\,\textrm{POS}\,}}_P({\mathcal {L}})\). Then \(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{}(\Gamma )\) is \({\textrm{HA}}({\mathcal {L}}^{{\textrm{ID}}})\) plus all (\({\textrm{Ax}}_{\Phi }\)) for \(\Phi \in {{\,\textrm{POS}\,}}_P({\mathcal {L}}) \cap \Gamma \), where \(\Gamma \) is some class of \({\mathcal {L}}^P\)-formulae. \(\widehat{{\textrm{ID}}}_{1}{}(\Gamma )\) is \(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{}(\Gamma ) + {\textrm{LEM}}\) (or equivalently, \({\textrm{PA}}({\mathcal {L}}^{{\textrm{ID}}}) + \{{\textrm{Ax}}_{\Phi } \mid \Phi \in {{\,\textrm{POS}\,}}_P({\mathcal {L}}) \cap \Gamma \}\)). Often we will use this for classes \(\Gamma \) whose exact definition depends on the ambient language (like \(\widehat{{\textrm{ID}}}_{1}{}(\Pi _2)\) in the introduction), whence it is tacitly understood that the definition used for \(\Gamma \) is the one appropriate for \({\mathcal {L}}^P\) (i.e. \(\Pi _2\) here means all \(\Pi _2\)-formulae in the language \({\mathcal {L}}^P\)); if there is reason to avoid confusion we will write \(\Gamma ({\mathcal {L}}^P)\) for this set. In case \(\Gamma \) is all of \({\mathcal {L}}^P\), and/or the language \({\mathcal {L}}\) is evident, we will often drop them from the notations. Thus \(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{}\) is \(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{}({\mathcal {L}}_{{\textrm{HA}}}^P)\).

We now extend this definition to fixpoint theories over \({\textrm{HAP}}\).

Definition 5.1

The theory \(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{\textrm{P}}{}\) is the \({\textrm{LPT}}\)-theory in the language \({\mathcal {L}}_{{\textrm{HAP}}}^{{\textrm{ID}}}\) axiomatised by

  1. 1.

    the axioms of \({\textrm{HAP}}({\mathcal {L}}_{{\textrm{HAP}}}^{{\textrm{ID}}})\),

  2. 2.

    the schema (\({\textrm{Ax}}_{\Phi }\)) for all \(\Phi \in {{\,\textrm{POS}\,}}_P({\mathcal {L}}_{{\textrm{HAP}}})\).

The theory \(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{\textrm{P}}{}(\Gamma )\), where \(\Gamma \) is a subset of \({\mathcal {L}}_{{\textrm{HAP}}}^P\), is axiomatised by clause 1 above, and

  1. 3.

    the schema (\({\textrm{Ax}}_{\Phi }\)) for all \(\Phi \in {{\,\textrm{POS}\,}}_P({\mathcal {L}}_{{\textrm{HAP}}}) \cap \Gamma \).

It follows from these definitions that the language of \(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{}\) is contained in that of \(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{\textrm{P}}{}\); \({\mathcal {L}}_{{\textrm{HA}}}^{{\textrm{ID}}}\subset {\mathcal {L}}_{{\textrm{HAP}}}^{{\textrm{ID}}}\). Given Lemma 3.6, we can in fact make a stronger claim.

Lemma 5.2

\(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{\textrm{P}}{}\) proves every theorem of \(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{}\).

Proof

By Lemma 3.6. Hence by the same lemma all we need to check are the fixpoint axioms of \(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{}\). Let \({{\,\textrm{I}\,}}_{\Phi }(\vec {{\textsf{v}}}) \leftrightarrow \Phi ({{\,\textrm{I}\,}}_{\Phi };\vec {{\textsf{v}}})\) be such an axiom. Since this is literally an axiom of \(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{\textrm{P}}{}\) we are done. \(\square \)

The corresponding lemma holds for \(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{}(\Gamma )\) and \(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{\textrm{P}}{}(\Gamma )\) if \(\Gamma \) is a set of formulae (but recall that e.g. \(\Lambda \) and \(\Lambda _n\) below denote different sets in \({\mathcal {L}}_{{\textrm{HA}}}^P\) and \({\mathcal {L}}_{{\textrm{HAP}}}^P\)).

5.2 Partial realizability interpretation of \(\widehat{{{\textbf {ID}}}}{}_{{{\textbf {1}}}}^{{{\textbf {i}}}}{{\textbf {P}}}{}\)

The notion of realizability we are employing (Sect. 3.2) syntactically transforms a formula into a negative formula (Lemma 3.15). This transformation also preserves strictly positive occurrences of symbols and subformulae in many important instances. In particular, for \( \Phi \in {{\,\textrm{POS}\,}}_{P_n}({\mathcal {L}}) \), a strictly positive operator form in the n-ary predicate \( P_n \), its ‘realization’ \(x \mathbin {\underline{{\textrm{r}}}}\Phi \) will be in \( {{\,\textrm{POS}\,}}_{\mathbin {\underline{{\textrm{r}}}}P_n}({\mathcal {L}}) \), i.e. a strictly positive operator form in the \( (n + 1) \)-ary predicate \(\mathbin {\underline{{\textrm{r}}}}P_n\). Since a fixpoint axiom of \(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{\textrm{P}}{}\) will be realized if we can provide functions transforming realizers of the fixpoint predicate into realizers of the corresponding operator applied to that predicate and vice versa, if we postulate these functions to be identity we get that \({{\,\textrm{I}\,}}_{\Phi }(\vec {{\textsf{v}}}) \leftrightarrow \Phi ({{\,\textrm{I}\,}}_{\Phi };\vec {{\textsf{v}}})\) has a realizer provided that

$$\begin{aligned} {\textsf{v}}_n \mathbin {\underline{{\textrm{r}}}}{{\,\textrm{I}\,}}_{\Phi }(\vec {{\textsf{v}}}) \leftrightarrow {\textsf{v}}_n \mathbin {\underline{{\textrm{r}}}}\Phi ({{\,\textrm{I}\,}}_{\Phi };\vec {{\textsf{v}}}) \end{aligned}$$
(2)

holds. By above this biconditional is itself (equivalent to) a strictly positive fixpoint axiom, and since realizability is a transformation into negative formulae, (2) is actually equivalent to an axiom of \(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{\textrm{P}}{}(\Lambda )\). In this section we make this realizability interpretation of \(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{\textrm{P}}{}\) in \(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{\textrm{P}}{}(\Lambda )\) precise (Theorem 5.6).

First, we augment the realizability transformation with a clause for the ‘fixpoint generators’ P, and subsequently for all fixpoint predicates \({{\,\textrm{I}\,}}_{\Phi }\), in the manner of [5, \(\S \)6].

Definition 5.3

For the language \({\mathcal {L}}_{{\textrm{HAP}}}^P\), we stipulate \(\mathbin {\underline{{\textrm{r}}}}P_n = P_{n + 1}\), that is

$$\begin{aligned} \tau \mathbin {\underline{{\textrm{r}}}}P_n(\vec {x}) \text { is } P_{n + 1}(\vec {x},\tau ) \end{aligned}$$

in the final clause of the definition of realizability.

Lemma 5.4

In \({\mathcal {L}}_{{\textrm{HAP}}}^P\) with realizability as per Definition 5.3 we have that \({\textsf{v}}_n \mathbin {\underline{{\textrm{r}}}}\Phi \) for \(\Phi \in {{\,\textrm{POS}\,}}_{P_n}({\mathcal {L}}_{{\textrm{HAP}}})\) is in \({{\,\textrm{POS}\,}}_{P_{n + 1}}({\mathcal {L}}_{{\textrm{HAP}}}) \cap \, \Lambda \). More generally, let \({\mathcal {L}}\) extend \({\mathcal {L}}_{{\textrm{HAP}}}\) with a set of relation symbols, R being among them. Suppose \(\mathbin {\underline{{\textrm{r}}}}R\) is not the same as \(\mathbin {\underline{{\textrm{r}}}}Q\) for any other relation Q. If \(\phi \in {\mathcal {L}}\) has only strictly positive occurrences of R and \(\tau \) is a term, \(\tau \mathbin {\underline{{\textrm{r}}}}\phi \) is negative and has only strictly positive occurrences of \(\mathbin {\underline{{\textrm{r}}}}R\), the number of which equals the number of occurrences of R in \(\phi \), and \({{\,\textrm{FV}\,}}(\tau \mathbin {\underline{{\textrm{r}}}}\phi ) = {{\,\textrm{FV}\,}}(\phi ) \cup {{\,\textrm{FV}\,}}(\tau )\) if R occurs in \(\phi \).

Proof

The statement about negativity follows from Lemma 3.15. The rest is shown by induction on complexity of \(\phi \).

  • The atomic cases are trivial.

  • The inductive steps for the Boolean connectives are straightforward, so we present only the argument for the implication. Thus consider the case when \(\phi \) is an implication \(\psi \rightarrow \theta \), where \(\psi \) does not contain R, \(\theta \) has only strictly positive occurrences of R and for all terms \(\sigma _1\) and \(\sigma _2\) do we have that \(\sigma _1 \mathbin {\underline{{\textrm{r}}}}\psi \) has no occurrence of \(\mathbin {\underline{{\textrm{r}}}}R\), the number of occurrences of \(\mathbin {\underline{{\textrm{r}}}}R\) in \(\sigma _2 \mathbin {\underline{{\textrm{r}}}}\theta \) is the same as the number of occurrences of R in \(\theta \), and if \(\theta \) has at least one occurrence of R then the free variables of \(\sigma _2 \mathbin {\underline{{\textrm{r}}}}\theta \) are those of \(\theta \) and \(\sigma _2\).

    Let \(\tau \) be a term. Then

    $$\begin{aligned} \tau \mathbin {\underline{{\textrm{r}}}}(\psi \rightarrow \theta ) = \forall x (x \mathbin {\underline{{\textrm{r}}}}\psi \rightarrow (\tau x\mathord \downarrow \wedge \, \tau x \mathbin {\underline{{\textrm{r}}}}\theta )) \end{aligned}$$

    has only strictly positive occurrences of \(\mathbin {\underline{{\textrm{r}}}}R\) by induction hypothesis, since all of these are in \(\tau x \mathbin {\underline{{\textrm{r}}}}\theta \). Thus the number of such occurrences equals the number of such occurrences in \(\tau x \mathbin {\underline{{\textrm{r}}}}\theta \), which by induction hypothesis is the number of occurrences of R in \(\theta \), i.e. in \(\psi \rightarrow \theta \). If R occurs in \(\psi \rightarrow \theta \) then it occurs in \(\theta \), whence

    $$\begin{aligned} {{\,\textrm{FV}\,}}(\tau \mathbin {\underline{{\textrm{r}}}}(\psi \rightarrow \theta ))&= {{\,\textrm{FV}\,}}(\forall x (x \mathbin {\underline{{\textrm{r}}}}\psi \rightarrow (\tau x\mathord \downarrow \wedge \, \tau x \mathbin {\underline{{\textrm{r}}}}\theta )))\\&= ({{\,\textrm{FV}\,}}(\psi ) \cup (({{\,\textrm{FV}\,}}(\tau ) \cup {{\,\textrm{FV}\,}}(\theta )) \cup \{x\})) {\setminus } \{x\}\\&= {{\,\textrm{FV}\,}}(\psi ) \cup {{\,\textrm{FV}\,}}(\theta ) \cup {{\,\textrm{FV}\,}}(\tau )\\&= {{\,\textrm{FV}\,}}(\psi \rightarrow \theta ) \cup {{\,\textrm{FV}\,}}(\tau ) \end{aligned}$$

    by Lemma 3.15 and induction hypothesis, since x does not occur in \(\psi \), \(\theta \) and \(\tau \).

  • Since the existential case contains all essential ideas from the universal case but is slightly more involved, we omit the universal case.

    Consider the case when \(\phi \) starts with an existential quantifier, \(\exists x \psi \), where \(\psi \) only has strictly positive occurrences of R and for any term \(\sigma \) and formula \(\theta \) with only strictly positive occurrences of R and the same complexity as \(\psi \), \(\sigma \mathbin {\underline{{\textrm{r}}}}\theta \) is strictly positive in \(\mathbin {\underline{{\textrm{r}}}}R\), has as many occurrences of \(\mathbin {\underline{{\textrm{r}}}}R\) as \(\theta \) has of R and satisfies \({{\,\textrm{FV}\,}}(\sigma \mathbin {\underline{{\textrm{r}}}}\theta ) = {{\,\textrm{FV}\,}}(\theta ) \cup {{\,\textrm{FV}\,}}(\sigma )\) if R occurs in \(\theta \).

    Let \(\tau \) be a term. By convention we can assume its variables are not bound in \(\exists x \psi \). Then

    $$\begin{aligned} \tau \mathbin {\underline{{\textrm{r}}}}(\exists x \psi ) = {\textbf{p}}_{{\textrm{r}}}\tau \mathbin {\underline{{\textrm{r}}}}(\psi (x/{\textbf{p}}_{{\textrm{l}}}\tau )) \end{aligned}$$

    Since \(\psi (x/{\textbf{p}}_{{\textrm{l}}}\tau )\) has the same complexity as \(\psi \) the induction hypothesis applies, whence \({\textbf{p}}_{{\textrm{r}}}\tau \mathbin {\underline{{\textrm{r}}}}\, (\psi (x/{\textbf{p}}_{{\textrm{l}}}\tau ))\) is strictly positive in \(\mathbin {\underline{{\textrm{r}}}}R\) and has as many occurrences of \(\mathbin {\underline{{\textrm{r}}}}R\) as \(\psi (x/{\textbf{p}}_{{\textrm{l}}}\tau )\), and hence \(\exists x \psi \), has of R. Also, if R occurs in \(\exists x \psi \) it occurs in \(\psi (x/{\textbf{p}}_{{\textrm{l}}}\tau )\) whence

    $$\begin{aligned} {{\,\textrm{FV}\,}}(\tau \mathbin {\underline{{\textrm{r}}}}\exists x \psi )&= {{\,\textrm{FV}\,}}({\textbf{p}}_{{\textrm{r}}}\tau \mathbin {\underline{{\textrm{r}}}}(\psi (x/{\textbf{p}}_{{\textrm{l}}}\tau )))\\&= {{\,\textrm{FV}\,}}(\psi (x/{\textbf{p}}_{{\textrm{l}}}\tau )) \cup {{\,\textrm{FV}\,}}({\textbf{p}}_{{\textrm{r}}}\tau )\\&= {{\,\textrm{FV}\,}}(\psi ) {\setminus } \{x\} \cup {{\,\textrm{FV}\,}}(\tau )\\&= {{\,\textrm{FV}\,}}(\exists x \psi ) \cup {{\,\textrm{FV}\,}}(\tau ) \end{aligned}$$

    by induction hypothesis.

This concludes the proof. \(\square \)

Another consequence of the above is that \(x \mathbin {\underline{{\textrm{r}}}}\Phi ({{\,\textrm{I}\,}}_{\Phi };\vec {y})\) is strictly positive in \(\mathbin {\underline{{\textrm{r}}}}{{\,\textrm{I}\,}}_{\Phi }\), the particular choice of which we can now specify.

Definition 5.5

For the language \({\mathcal {L}}_{{\textrm{HAP}}}^{{\textrm{ID}}}\), given \(\Phi \in {{\,\textrm{POS}\,}}_{P_n}({\mathcal {L}}_{{\textrm{HAP}}})\) we stipulate \(\mathbin {\underline{{\textrm{r}}}}{{\,\textrm{I}\,}}_{\Phi } = {{\,\textrm{I}\,}}_{{\textsf{v}}_n \mathbin {\underline{{\textrm{r}}}}\Phi }\), the almost negative strictly positive operator form from Lemma 5.4, that is

$$\begin{aligned} \tau \mathbin {\underline{{\textrm{r}}}}{{\,\textrm{I}\,}}_{\Phi }(\vec {x}) \text { is } {{\,\textrm{I}\,}}_{{\textsf{v}}_n \mathbin {\underline{{\textrm{r}}}}\Phi }(\vec {x},\tau ) \end{aligned}$$

in the final clause of the definition of realizability.

Theorem 5.6

For the realizability interpretation given by Definitions 3.14 and 5.5, for \(\varphi \in {\mathcal {L}}_{{\textrm{HAP}}}^{{\textrm{ID}}}\) and \(x \not \in {{\,\textrm{FV}\,}}(\varphi )\).

Proof

By Lemma 3.18 and compactness it is enough to show that for each non-logical axiom \(\varphi \) of \(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{\textrm{P}}{}\) there is a combinator \(\tau \) with . Now, every axiom except the induction and fixpoint schemata, \({\textrm{HAP}}\)2 and the third part of \({\textrm{HAP}}\)5 is an equation true in \({\textrm{HAP}}({\mathcal {L}}_{{\textrm{HAP}}}^{{\textrm{ID}}})\), and hence realised by \({\textsf{0}}\) there; \({\textrm{HAP}}\)2 and the third part of \({\textrm{HAP}}\)5 are realized by \({\textbf{id}}\). As for the induction axiom \({\textrm{Ind}}_{\varphi }\),

$$\begin{aligned} {\textrm{HAP}}({\mathcal {L}}_{{\textrm{HAP}}}^{{\textrm{ID}}}) \vdash {\textbf{r}}\mathbin {\underline{{\textrm{r}}}}{\textrm{Ind}}_{\varphi } \end{aligned}$$

For the fixpoint axioms, we observe the following. By Definition 5.5 realizability is a transformation of the language \({\mathcal {L}}_{{\textrm{HAP}}}^{{\textrm{ID}}}\) into the fragment defined by the almost negative strictly positive operator forms. Thus given a fixpoint axiom \(\forall \vec {y} ( {{\,\textrm{I}\,}}_{\Phi }(\vec {y}) \leftrightarrow \Phi ({{\,\textrm{I}\,}}_{\Phi };\vec {y})) \) with \(\Phi \in {{\,\textrm{POS}\,}}_{P_n}({\mathcal {L}}_{{\textrm{HAP}}})\) let \(\Psi \in {{\,\textrm{POS}\,}}_{P_{n + 1}}({\mathcal {L}}_{{\textrm{HAP}}})\) be the operator form from Lemma 5.4 such that \(\mathbin {\underline{{\textrm{r}}}}{{\,\textrm{I}\,}}_{\Phi } = {{\,\textrm{I}\,}}_{\Psi }\). Then

$$\begin{aligned} \widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{\textrm{P}}{}(\Lambda ) \vdash x \mathbin {\underline{{\textrm{r}}}}{{\,\textrm{I}\,}}_{\Phi }(\vec {y})&\leftrightarrow {{\,\textrm{I}\,}}_{\Psi }(\vec {y},x){} & {} \text {definition}\\&\leftrightarrow \Psi ({{\,\textrm{I}\,}}_{\Psi };\vec {y},x){} & {} \text {fixpoint axiom}\\&\leftrightarrow \Psi (\vec {y},x)({{\,\textrm{I}\,}}_{\Psi }){} & {} \text {definition}\\&\leftrightarrow ({\textsf{v}}_n \mathbin {\underline{{\textrm{r}}}}\Phi )(\vec {y},x)({{\,\textrm{I}\,}}_{\Psi }){} & {} \text {Lemma}~5.4\\&\leftrightarrow (x \mathbin {\underline{{\textrm{r}}}}\Phi (\vec {y}))({{\,\textrm{I}\,}}_{\Psi }){} & {} \text {Lemma}~3.16\\&\leftrightarrow (x \mathbin {\underline{{\textrm{r}}}}\Phi (\vec {y}))(\mathbin {\underline{{\textrm{r}}}}{{\,\textrm{I}\,}}_{\Phi }){} & {} \text {definition} \end{aligned}$$

Appealing to Lemma 3.17 this equivalence, with x universally quantified, is equivalent to \({\textbf{p}}\cdot {\textbf{id}}\cdot {\textbf{id}}\mathbin {\underline{{\textrm{r}}}}({{\,\textrm{I}\,}}_{\Phi }(\vec {y}) \leftrightarrow \Phi ({{\,\textrm{I}\,}}_{\Phi };\vec {y}))\). Hence

which concludes the proof. \(\square \)

We close the section by proving that \( \widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{\textrm{P}}{}(\Lambda ) \) is a conservative extension of \( {\textrm{HAP}}\). The proof utilises the partial satisfaction predicates introduced in Sect. 4.

Theorem 5.7

\(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{\textrm{P}}{}(\Lambda )\) is interpretable in \({\textrm{HAP}}\), keeping \({\mathcal {L}}_{{\textrm{HAP}}}\) fixed.

Proof

We define a compositional interpretation \({\mathcal {F}} :{\mathcal {L}}_{{\textrm{HAP}}}^{{\textrm{ID}}}\longrightarrow {\mathcal {L}}_{{\textrm{HAP}}}\) which fixes \({\mathcal {L}}_{{\textrm{HAP}}}\). To that extent, for \(k \in \mathbb {N}\) let \(T_k\) be the term \({\textbf{id}}_{\overrightarrow{\ulcorner {\textsf{v}}_{<k} \urcorner }}^{\vec {{\textsf{v}}}_{< k}}\) (the identity combinator modified so that \(\ulcorner {\textsf{v}}_j \urcorner \) is mapped to (the value of) \({\textsf{v}}_j\)), so that \(T_k\) has exactly \({\textsf{v}}_0, \dotsc , {\textsf{v}}_{k - 1}\) free, and for all \(j < k\). Take an almost negative \(\Phi \in {{\,\textrm{POS}\,}}_{P_k}({\mathcal {L}}_{{\textrm{HAP}}})\) and let n be the smallest index for which \(\Phi \in \Lambda _n\), by Lemma 4.2. Set \(\phi = \Phi (\lambda \vec {{\textsf{v}}}_{<k}.\texttt {Sat} _n(T_k,{\textsf{v}}_k);\vec {{\textsf{v}}}_{<k})\). By Theorem 4.9\(\phi \in {\mathcal {L}}_{{\textrm{HAP}}}\), and by Lemma 4.5\( \phi \in \Lambda _n \). Diagonalisation (Lemma 4.6) yields a formula \(\psi \in \Lambda _n\) with free variables \({\textsf{v}}_0, \dotsc , {\textsf{v}}_{k - 1}\) and

Defining \({\mathcal {F}}({{\,\textrm{I}\,}}_{\Phi }) = \psi \) we thus see

by Corollary 4.10. Setting \({\mathcal {F}}(\Psi ) = \bot \) for \(\Psi \in {{\,\textrm{POS}\,}}_P({\mathcal {L}}_{{\textrm{HAP}}}) {\setminus } \Lambda \) (since these are inconsequential), the interpretation of the remaining axioms of \(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{\textrm{P}}{}(\Lambda )\) are immediate. Consequently . \(\square \)

6 Conclusion

Tying together the above results, we can prove the wanted conservativity result.

Theorem 6.1

\(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{}\) is conservative over \({\textrm{HA}}\).

Proof

Let \(\varphi \) be a sentence of \({\mathcal {L}}_{{\textrm{HA}}}\). Then we have the following chain of implications:

\(\square \)

The argument we have presented combines two interpretations: a realizability interpretation of a fixpoint theory into the subtheory of fixpoints for almost negative operator forms and a direct interpretation of this subtheory in Heyting arithmetic. Full conservativity does not directly follow from these reductions because realizability and provability do not coincide for Heyting arithmetic: there are statements in the language of arithmetic which are (Kleene-)realizable yet not provable. As the two notions agree on the fragment of almost negative formulae, conservativity for this class of sentences holds. But by lifting the two interpretations to the corresponding theories formulated over Beeson’s richer logic of partial terms the stronger conservation result becomes a consequence of van den Berg and van Slooten’s theorem; for arithmetic formulae, provability in Heyting arithmetic subsumes realizability in Heyting arithmetic with partial terms.

A key ingredient in our argument is the existence of partial satisfaction predicates for a formula-hierarchy which exhausts the almost negative formulae. These partial satisfaction predicates do not rely on the presence of partial terms in any essential way, and arithmetic counterparts are available which, provably in \( {\textrm{HA}}\), are compositional satisfaction predicates for the arithmetic formulae at the same level. A natural question is whether there exist partial satisfaction predicates for classes of formulae including the positive connectives \( \vee \) and \( \exists \), whether in the language with partial terms or pure arithmetic. A partial negative answer to this question was provided by Leivant in [15], who, improving a result of de Jongh [16], gave lower bounds on the negative nesting depth of possible satisfaction predicates for formula classes which include all propositional combinations of \(\Sigma _1\)-, \(\Pi _1\)- or \(\Sigma _2\)-formulae, to some fixed nesting depth. Whether, more generally, there is a stratification of the entire language which admits partial satisfaction predicates in \({\textrm{HA}}\) is, to the authors’ knowledge, unknown, which is somewhat surprising given the importance of such predicates in the proof theory of classical systems of arithmetic.

There can, however, not be a hierarchy of arithmetic formulae which (i) is closed under substitution in strictly positive positions (Lemma 4.5), (ii) is closed under diagonalisation (Lemma 4.6), (iii) exhausts the entire language \({\mathcal {L}}_{{\textrm{HA}}}\), and (iv) has partial satisfaction predicates for every level. Such a hierarchy with corresponding satisfaction predicates would give rise to a direct interpretation of \(\widehat{{\textrm{ID}}}{}_{1}^{{\textrm{i}}}{}\) in \({\textrm{HA}}\) by generalising Theorem 5.7, but it would also allow the classical theory \(\widehat{{\textrm{ID}}}_{1}{}\) to be interpreted in \({\textrm{PA}}\) by the same argument. This cannot be the case because \(\widehat{{\textrm{ID}}}_{1}{}\) is strictly stronger than \({\textrm{PA}}\). On the other hand, this line of reasoning shows that \(\widehat{{\textrm{ID}}}_{1}{}(\Lambda )\) is conservative over \({\textrm{PA}}\), again by generalising Theorem 5.7. Thus, the strictly positive almost negative operator forms gives a weaker classical fixpoint theory than the merely positive almost negative ones, since the latter is equivalent to \(\widehat{{\textrm{ID}}}_{1}{}\). Attempting to carry out our argument for this class of fixpoints fails on Lemma 4.5, since \(\Lambda _n\) is not closed under substitutions into merely positive positions. A final note is that, since \(\Pi _1\) has a \(\Pi _1\) satisfaction predicate and is closed under substitutions into strictly positive positions, \(\widehat{{\textrm{ID}}}_{1}{}(\Pi _1)\) is conservative over \({\textrm{PA}}\) essentially by replacing \(\Lambda _n\) by \(\Pi _1\) in the proof of Theorem 5.7. On the other hand \(\widehat{{\textrm{ID}}}_{1}{}(\Pi _2)\) is not conservative over \({\textrm{PA}}\), since it interprets the Kripke-Feferman theory of truth \({\textrm{KF}}\) (Feferman, [17]) which proves the consistency of \({\textrm{PA}}\). It would therefore be interesting to identify the subclasses \(\Gamma \) of \(\Pi _2\) forms for which \(\widehat{{\textrm{ID}}}_{1}{}(\Gamma )\) is still conservative.

We do believe this argument generalises to finite iterations \(\widehat{{\textrm{ID}}}{}_{n}^{{\textrm{i}}}{}\) of fixpoint theories, however. The main idea would then be to repeat the application of Theorem 5.7 inductively to reduce \(\widehat{{\textrm{ID}}}{}_{n + 1}^{{\textrm{i}}}{\textrm{P}}{}(\Lambda )\) to \(\widehat{{\textrm{ID}}}{}_{n}^{{\textrm{i}}}{\textrm{P}}{}(\Lambda )\), viewing \({\textrm{HAP}}\) as \(\widehat{{\textrm{ID}}}{}_{0}^{{\textrm{i}}}{\textrm{P}}{}(\Lambda )\) (\(\widehat{{\textrm{ID}}}{}_{n}^{{\textrm{i}}}{\textrm{P}}{}(\Lambda )\) should mean all operator forms are almost negative, not just the nth ‘top layer’). The possible issue we see in Sect. 4.2 is that Theorem 4.9 requires (primitive) recursive transformations from \(\Lambda _n\) to \(\Lambda ^{{\textrm{nf}}}_n\) as in Lemma 4.4, which is not as straightforward for countable vocabularies. This should be manageable by more careful attention to coding, or finally by a compactness argument in Theorem 5.7. The proof of Theorem 5.7 should otherwise generalise, essentially by placing an ‘\({\mathcal {F}}\)’ defined by induction hypothesis in front of every appearance of \(\Phi \) except the first. In the rest of the argument of Theorem 6.1, generalising in this direction would add a countable number of relation symbols and axioms governing these, and Lemma 5.2 clearly generalises to this case. For the results leading up to Theorem 5.6, prominently Lemma 5.4, we have taken some care not to specify the relation symbols in the base language, so reformulating Theorem 5.6 slightly this step should also generalise by induction. Finally, the final step would remain unchanged.

A natural question would be whether a generalisation of this argument works also for some transfinite iterations \(\widehat{{\textrm{ID}}}{}_{\alpha }^{{\textrm{i}}}{}\). While we have no clear ideas in this direction, it’s a reasonable question for future work.