Hostname: page-component-cb9f654ff-9b74x Total loading time: 0 Render date: 2025-08-31T00:52:06.486Z Has data issue: false hasContentIssue false

LATTICE EMBEDDINGS AND PUNCTUAL LINEAR ORDERS

Published online by Cambridge University Press:  01 August 2025

MARINA DORZHIEVA
Affiliation:
SCHOOL OF MATHEMATICS AND STATISTICS https://ror.org/0040r6f76 VICTORIA UNIVERSITY OF WELLINGTON WELLINGTON 6012 NEW ZEALAND E-mail: dm-3004@inbox.ru
ELLEN HAMMATT*
Affiliation:
INSTITUTE OF DISCRETE MATHEMATICS AND GEOMETRY, https://ror.org/04d836q62 TECHNISCHE UNIVERSITÄT WIEN VIENNA 1040 AUSTRIA
Rights & Permissions [Opens in a new window]

Abstract

We investigate the primitive recursive content of linear orders. We prove that the punctual degrees of rigid linear orders, the order of the integers $\mathbb {Z}$, and the order of the rationals $\mathbb {Q}$ embed the diamond (preserving supremum and infimum). In the cases of rigid orders and the order $\mathbb {Z}$, we further extend the result to embed the atomless Boolean algebra; we leave the case of $\mathbb {Q}$ as an open problem. We also show that our results for the rigid orders, in fact, work for orders having a computable infinite invariant rigid sub-order.

Information

Type
Article
Creative Commons
Creative Common License - CCCreative Common License - BY
This is an Open Access article, distributed under the terms of the Creative Commons Attribution licence (https://creativecommons.org/licenses/by/4.0), which permits unrestricted re-use, distribution, and reproduction in any medium, provided the original work is properly cited.
Copyright
© The Author(s), 2025. Published by Cambridge University Press on behalf of The Association for Symbolic Logic

1 Introduction

In computable algebra, the main objects are computably presented algebraic structures, such as groups, fields, Boolean algebras, and linear orders. A computable presentation of a structure $\mathcal {A}$ is a coding of $\mathcal {A}$ by natural numbers so that all relations and functions in the language of $\mathcal {A}$ become computable on their respective indices.

Mal’cev [Reference Mal’cev35] proposed that computable presentations of algebraic structures should be studied up to computable isomorphism. The idea is that the maps used to compare the objects of study should preserve all of the properties of these objects that we wish to study. This approach is the suitable computable analogue of, e.g., comparing topological groups under topological group-isomorphism and identifying differentiable manifolds up to diffeomorphism. Mal’cev defined a structure to be computably categorical (or autostable) if it has a unique computable presentation up to computable isomorphism. For example, any finitely generated group is computably categorical, and so is the countable dense order of the rationals (folklore).

The study of the number of computable presentations up to computable isomorphism (i.e., computable dimension) has accumulated many results and techniques; we cite the books [Reference Ash and Knight2, Reference Montalbán39, Reference Montalbán40]. For example, there exist structures having exactly two computable presentations up to computable isomorphism [Reference Goncharov20]. Computably categorical structures can be rather complicated in general; for instance, their index set is $\Pi ^1_1$ -complete [Reference Downey, Kach, Lempp, Lewis-Pye, Montalbán and Turetsky18]. However, non-trivial examples of computably categorical structures or structures having finitely many computable presentations have to be specifically constructed using intricate techniques. In contrast with these results, in many standard classes, computably categorical structures are easy to describe. For example, a linear order is computably categorical if and only if it has only finitely many successive pairs [Reference Goncharov and Dzgoev22, Reference Remmel41]. Similar descriptions of computable categoricity are known for Boolean algebras [Reference Goncharov23, Reference LaRoche33], broad classes of abelian groups [Reference Goncharov21, Reference Melnikov and Ng36, Reference Smith44], trees of finite height [Reference Lempp, McCoy, Miller and Solomon34], and ordered abelian groups [Reference Goncharov, Lempp and Solomon19]. In all these cases, if a structure in the class is not computably categorical, then it has infinitely many computable presentations up to computable isomorphism.

Thus, it seems that most algebraic structures encountered in mathematical practice are not particularly interesting within the classical framework of computable categoricity. Consequently, one may question the underlying reasons for this phenomenon. One possible explanation is as follows: the approach discussed above does not assume any time or resource restrictions on our algorithms.

The unbounded search is used so profoundly throughout the literature that most of the algorithmic procedures developed within this framework appear to be completely impractical. It is remarkable that, with some work, it can often be illustrated that many computably presented algebraic structures possess polynomial-time presentations. This is true, for instance, for linear orders, Boolean algebras, torsion-free abelian groups, and for many other broad classes of structures; we cite [Reference Alaev1, Reference Cenzer, Downey, Remmel and Uddin7Reference Cenzer and Remmel11, Reference Grigorieff25].

As was observed in [Reference Kalimullin, Melnikov and Ng29], almost all such proofs are focused on making algorithms primitive recursive, and then with a bit more work, it can be shown that the bounds are polynomial-time. On the other hand, to show a structure has no polynomial-time presentation, it is often easiest to show that it does not have a primitive recursive presentation by diagonalising against all primitive recursive presentations.

Motivated by these observations and beginning with [Reference Kalimullin, Melnikov and Ng29], there has been a line of investigation into the theory of primitive recursive processes in algebra and analysis. We also cite the survey [Reference Bazhenov, Downey, Kalimullin and Melnikov5], which is, however, rapidly ageing. There have been many recent results that appeared after the publication of [Reference Bazhenov, Downey, Kalimullin and Melnikov5], to name a few: [Reference Bagaviev, Batyrshin, Bazhenov, Bushtets, Dorzhieva and Koh3, Reference Bazhenov and Kalimullin4, Reference Bazhenov, Kalimullin, Melnikov and Ng6, Reference Dorzhieva, Downey, Hammatt, Melnikov and Ng13Reference Downey, Harrison-Trainor, Kalimullin, Melnikov and Turetsky17, Reference Kalimullin27, Reference Kalimullin, Melnikov and Montalban28, Reference Kalociński, Mauro, Wrocławski, Královič and Kučera31, Reference Melnikov and Ng38, Reference Selivanov, Selivanova, Boulier, England, Sadykov and Vorozhtsov43]. The main definition in these investigations is as follows.

Definition 1.1 [Reference Kalimullin, Melnikov and Ng29].

A structure with finite language is a punctual (formally, fully primitive recursive) presentation if it has $\mathbb {N}$ as its domain and all functions and relations in the language of $\mathcal {A}$ are primitive recursive on $\mathbb {N}$ .

Following the ideas of Mal’cev, we would like to compare punctual structures up to primitive recursive isomorphism. Now the difference with general computable structures becomes immediately apparent. Notice that the inverse of a primitive recursive function $f: \omega \to \omega $ may not be primitive recursive. This induces a natural reduction on punctual presentations of a given structure.

Definition 1.2. Let $PR(\mathcal {M})$ be the collection of punctual presentations of $\mathcal {M}$ . For $\mathcal {A},\mathcal {B}\in PR(\mathcal {M})$ , we say that $\mathcal {A}$ is punctually reducible to $\mathcal {B}$ , written $\mathcal {A}\leq _{pr}\mathcal {B}$ , if there is a primitive recursive isomorphism $p:\mathcal {A}\to \mathcal {B}$ . We write $\mathcal {A}\cong _{pr}\mathcal {B}$ and say that $\mathcal {A}$ and $\mathcal {B}$ are punctually equivalent if $\mathcal {A}\leq _{pr}\mathcal {B}$ and $\mathcal {B}\leq _{pr}\mathcal {A}$ . Then the punctual degrees of $\mathcal {M}$ , PR $(\mathcal {M})$ , are defined to be $PR(\mathcal {M})/\cong _{pr}$ .

We remark that $\mathcal {A} \cong _{pr} \mathcal {B}$ does not necessarily imply that there is an isomorphism f between the structures so that both f and $f^{-1}$ are primitive recursive.

Some initial steps in the investigation of the punctual degrees of structures were taken in [Reference Kalimullin, Melnikov and Ng26]. Perhaps unsurprisingly, with some effort, pathological examples of structures having unusual or unexpected punctual degrees can be manufactured; e.g., [Reference Bazhenov, Kalimullin, Melnikov and Ng6, Reference Melnikov and Ng38]. What is certainly unexpected is that the study of the punctual degrees of even the most familiar structures has proven to be a challenging task. In [Reference Melnikov and Ng37], it was discovered that the punctual degrees of the dense linear order, the random graph, and the universal countable abelian p-group are pairwise non-isomorphic; note all three structures are homogeneous and computably categorical. In [Reference Kalimullin, Melnikov and Zubkov30], it was shown that any countable distributive lattice can be embedded into the punctual degrees of the semi-ring of the natural numbers, as well as into the punctual degrees of any rigid finitely generated (infinite) structure. In [Reference Dorzhieva, Downey, Hammatt, Melnikov and Ng13], it was established that the punctual degrees of any computably almost rigid structure, including $(\omega , <)$ and the linear order $(\mathbb {Z}, <)$ , are dense. Surprisingly, the punctual degrees of $(\mathbb {Q},<)$ are not dense [Reference Koh, Melnikov and Ng32]. It appears that primitive recursive procedures remain poorly understood, even for the well-studied class of computably presentable linear orders.

We wish to further understand the punctual degrees of linear orders. In particular, we are interested in whether any countable distributive lattice can be embedded into the punctual degrees of a linear order $\mathcal {L}$ . Since the atomless Boolean algebra is universal for distributive lattices, we aim to show this by embedding the atomless Boolean algebra into the punctual degrees of $\mathcal {L}$ , preserving the supremums and infimums. The first step towards this is to embed the diamond, which consists of presentations $\mathcal {A},\mathcal {B},\mathcal {C},\mathcal {D}$ of $\mathcal {L}$ where $\mathcal {A}<_{pr}\mathcal {B}$ , $\mathcal {C} |_{pr}\mathcal {D}$ , $\sup (\mathcal {C},\mathcal {D})=\mathcal {B}$ and ${\inf (\mathcal {C},\mathcal {D})=\mathcal {A}}$ . Below is the first main result of the paper.

Theorem 1.1 (The Diamond).

We can embed the diamond into the punctual degrees of $\mathcal {L}$ for the following linear orders:

  1. 1. Linear orders of the form $\mathcal {L}=\mathcal {L}_{-1}+\mathcal {L}_0+\mathcal {L}_1$ where $\mathcal {L}_{-1},\mathcal {L}_0,\mathcal {L}_1$ are punctually presentable linear orders and $\mathcal {L}_0$ is infinite and invariant in $\mathcal {L}$ (for example, rigid linear orders including ordinals).

  2. 2. The order $\mathbb {Z}$ of the integers.

  3. 3. The dense linear order $\mathbb {Q}$ .

We note that a linear order is computably presentable if and only if it is punctually presentable [Reference Kalimullin, Melnikov and Ng29]. In this paper, we will use the term punctually presentable. We also note that in (1) above, we prove a stronger result: there is an embedding of the diamond between any presentations $\mathcal {A}<_{pr}\mathcal {B}$ such that $\mathcal {A}$ and $\mathcal {B}$ reveal elements outside $\mathcal {L}_0$ at the same stage. It follows that for any punctual rigid linear order (e.g., any computable ordinal), we can embed the diamond between any pair of punctual copies $\mathcal {A}<_{pr}\mathcal {B}$ . Given the density of $\mathbf {PR}(\mathbb {Z})$ ([Reference Dorzhieva, Downey, Hammatt, Melnikov and Ng13]), this stronger property likely holds for $\mathbb {Z}$ as well, however, our proof does not show this. Given the non-density of $\mathbf {PR}(\mathbb {Q})$ ([Reference Koh, Melnikov and Ng32]), this stronger result cannot possibly hold in the case of $\mathbb {Q}$ . In the first two cases, using different arguments, we can extend the construction to embed the atomless Boolean algebra. Below is the second main result of the paper.

Theorem 1.2. There is an embedding of the atomless Boolean algebra into the punctual degrees of $\mathcal {L}$ for the following linear orders:

  1. 1. Linear orders of the form $\mathcal {L}=\mathcal {L}_{-1}+\mathcal {L}_0+\mathcal {L}_1$ where $\mathcal {L}_{-1},\mathcal {L}_0,\mathcal {L}_1$ are punctually presentable linear orders and $\mathcal {L}_0$ is infinite and invariant in $\mathcal {L}$ .

  2. 2. The order $\mathbb {Z}$ of the integers.

As for the case of the diamond, in (1), we prove the stronger result: there is an embedding of the atomless Boolean algebra between $\mathcal {A}$ and $\mathcal {B}$ for any presentations $\mathcal {A}<_{pr}\mathcal {B}$ such that $\mathcal {A}$ and $\mathcal {B}$ reveal elements outside $\mathcal {L}_0$ at the same stage. Therefore, as in the diamond case, it follows that for any rigid linear order, we can embed the diamond between any pair of punctual copies $\mathcal {A}<_{pr}\mathcal {B}$ . We leave open whether the theorem above holds for $\mathbb {Q}$ . The reader will see that our embedding of the diamond in the case of the rationals does not even seem to allow us to embed the 8-element Boolean algebra, let alone the dense atomless one. The reader may find this blockage both unusual and unexpected. However, given the unusually high combinatorial complexity of the proof of the non-density of $\mathbf {PR}(\mathbb {Q})$ mentioned above ([Reference Koh, Melnikov and Ng32]), there is perhaps no big surprise here.

In Section 2, we embed the diamond and the atomless Boolean algebra into the punctual degrees of invariant linear orders (proving Theorems 1.1 and 1.2 in the case of (1)). Following this, in Section 3, we embed the diamond into the punctual degrees of the rationals (proving Theorem 1.1 in the case of (3)). Lastly, in Section 4, we embed the diamond and the atomless Boolean algebra into the punctual degrees of the integers (proving Theorems 1.1 and 1.2 in the case of (2)).

2 Invariant linear orders

Our first main result is concerned with linear orders $\mathcal {L}$ of the form $\mathcal {L} = \mathcal {L}_{-1} + \mathcal {L}_0 + \mathcal {L}_1$ , where $\mathcal {L}_{-1}$ and $\mathcal {L}_{1}$ may be empty, and $\mathcal {L}_0$ is infinite and invariant. We say that $\mathcal {L}_0$ is invariant in $\mathcal {L}$ if for any $\varphi \in \operatorname {\mathrm {Aut}}(\mathcal {L})$ , $\varphi \! \upharpoonright _{\mathcal {L}_0}=\operatorname {\mathrm {id}}_{\mathcal {L}_0}$ . Note that it follows from the definition that $\mathcal {L}_0$ is rigid. Examples of linear orders that contain an infinite invariant $\mathcal {L}_0$ include ordinals and, more generally, infinite rigid linear orders. Of course, there are examples of such linear orders that are not rigid; e.g., consider $\mathbb {Q} +\mathbb {N} + \mathbb {N}^{*} +\mathbb {Q}$ in which $\mathbb {N} + \mathbb {N}^{*}$ is clearly invariant. Conversely, the existence of a rigid $\mathcal {L}_0$ is not sufficient. For example, each copy of $\mathbb {N}$ is rigid in $\mathbb {N}\times \mathbb {Z}$ but there is no $\mathcal {L}_0$ in $\mathbb {N}\times \mathbb {Z}$ that is invariant. The idea is that $\mathcal {L}$ has an identifiable infinite section that is rigid within the linear order, and we will use this section to apply the construction.

Remark 2.1. We highlight that, in addition to requiring that $\mathcal {L}$ is punctually presentable, we require $\mathcal {L}_{-1},\mathcal {L}_0,\mathcal {L}_1$ to be punctually presentable as well; note that this is automatically true if $\mathcal {L}_0$ is a (closed, open, or half-open) interval in $\mathcal {L}$ . While this covers many linear orders which contain an invariant (convex) sub-order, it does not cover all such linear orders. In [Reference Coles, Downey and Khoussainov12], Coles, Downey, and Khoussainov proved that there is a computable linear order $\mathcal {L}=\mathcal {A}+\omega ^{*}$ such that $\mathcal {A}$ is not computably presentable. For such linear orders, we do not yet know that there exist punctual presentations $\mathcal {B}>_{pr}\mathcal {A}$ such that there is a primitive recursive $p:\mathcal {A}\to \mathcal {B}$ which is the identity outside an infinite invariant interval. A new construction is required for the case when $\mathcal {L} = \mathcal {A}+\omega ^{*}$ , where $\mathcal {A}$ has no computable presentation.

In this section, we prove the following theorem.

Theorem 2.2. Let $\mathcal {L}$ be a linear order such that there are $\mathcal {L}=\mathcal {L}_{-1}+\mathcal {L}_0+\mathcal {L}_1$ with the following properties

  • $\mathcal {L}_0$ is infinite and invariant in $\mathcal {L}$

  • $\mathcal {L}_{-1}$ , $\mathcal {L}_0,$ and $\mathcal {L}_1$ are punctually presentable linear orders.

For any punctual presentations $\mathcal {A},\mathcal {B}$ of $\mathcal {L}$ such that $\mathcal {A}<_{pr}\mathcal {B}$ and $\mathcal {A}$ and $\mathcal {B}$ reveal elements outside $\mathcal {L}_0$ at the same stage, there exist punctual presentations $\mathcal {C},\mathcal {D}$ such that $\mathcal {C},\mathcal {D}$ are incomparable under $\leq _{pr}$ , $\mathcal {A}=\inf (\mathcal {C},\mathcal {D})$ , and $\mathcal {B}=\sup (\mathcal {C},\mathcal {D})$ .

As mentioned, we allow $\mathcal {L}_{-1}$ or $\mathcal {L}_1$ (or both) to be empty.

The proof of Theorem 2.2 is delayed until Section 2.2. Before we prove the theorem, we need to establish a preliminary result that is contained in the section below. The result says that, under the assumptions of Theorem 1.1 (1), there exist two punctual copies of $\mathcal {L}$ with the properties required to serve as the ‘top’ and the ‘bottom’ of the diamond. Therefore, the combination of this result along with Theorem 2.2 proves Theorem 1.1 (1).

2.1 Constructing presentations $\mathcal {A},\mathcal {B}$ , of $\mathcal {L}$ with $\mathcal {B}$ above $\mathcal {A}$

Note that the theorem below does not require the existence of an invariant (convex) sub-order. The result is not difficult but it appears to be new. It will allow us to show that linear orders in Theorem 1.1 (1) have punctual presentations $\mathcal {A} <_{pr} \mathcal {B}$ with the properties in Theorem 2.2.

Theorem 2.3. If $\mathcal {L}$ is an infinite punctual linear order, then there exist punctual presentations $\mathcal {A},\mathcal {B}$ of $\mathcal {L}$ such that $\mathcal {A} <_{pr} \mathcal {B}$ .

Proof. We build punctual presentations of $\mathcal {L}$ , $\mathcal {A,}$ and $\mathcal {B}$ along with a primitive isomorphism $p:\mathcal {A} \to \mathcal {B}$ . We need to satisfy the following requirements:

$$ \begin{align*} R_e: \,\, p_e: \mathcal{B} \to \mathcal{A} \mbox{ is not an isomorphism}, \end{align*} $$

where $(p_e)_{e \in \omega }$ is an effective enumeration of all primitive recursive functions. The proof is non-uniform. Recall that a right (left) limit point in a linear order $\mathcal {L}$ is a point l for which there exists a sequence ${\left \langle {l_i}\right \rangle }_{i\in \mathbb {N}}$ such that for all $i\in \mathbb {N}$ , $l_i>l$ ( $l_i<l$ ), the sequence is strictly decreasing (increasing), and for all $a>l$ ( $a<l$ ), there is i such that $a>l_i$ ( $a<l_i$ ).

Since $\mathcal {L}$ is punctual, within primitive recursively bounded time $t[s]$ , we can decide $x<_{\mathcal {L}}y$ for all $x,y\leq s$ . We call the time period $(t(s-1), t(s)]$ stage s. $\mathcal {L}[s]$ denotes the substructure of $\mathcal {L}$ obtained by computing $<_{\mathcal {L}}$ on every pair of elements up to s. For structures we are building ( $\mathcal {A}$ and $\mathcal {B}$ ), we consider $\mathcal {C}[s]$ to be the presentation we have built so far at stage s. Throughout the construction we will add a new element to $\mathcal {C}$ , this means we add the $<_{\mathbb {N}}$ -least element $x\in \mathbb {N}$ that is not yet in $\mathcal {C}[s]$ and we define $<_{\mathcal {C}}$ as described in the construction. In this construction, we will ensure that $\mathcal {C}$ is punctual by ensuring that by the end of stage s, we have added the element s to $\mathcal {C}[s]$ . We ensure that isomorphisms are primitive recursive by ensuring that it is defined on all elements in $\mathcal {C}[s]$ at stage s.

Case 1: $\mathcal {L}$  has a right limit point l. Fix some punctual presentation of $\mathcal {L}$ . Non-uniformly fix the limit point l. Without loss of generality, we may assume that in this presentation $l=0$ . We will build punctual presentations $\mathcal {A}$ and $\mathcal {B}$ that are isomorphic to $\mathcal {L}$ such that $\mathcal {A}<_{pr}\mathcal {B}$ . The idea is that $\mathcal {B}$ will always copy $\mathcal {A}$ so that it can naturally extend the definition of a primitive recursive $p:\mathcal {A}\to \mathcal {B}$ , except we occasionally add an extra point in $\mathcal {B}$ which will ‘float’ just to the right of l while we diagonalise. We call this the island technique, where this extra point acts as a floating island an unknown distance away from the rest of the elements on the right of l. While diagonalising, we will grow $\mathcal {A}$ towards l and $\mathcal {B}$ towards the extra point to the right of l. We copy the other points in $\mathcal {L}$ after each diagonalisation.

In this construction, we will use the macro grow $\mathcal {C}$ towards y to mean, add a new element to $\mathcal {C}$ so that it is the least element greater than y under $<_{\mathcal {C}}$ .

Construction. At stage $0$ , we introduce 0 into $\mathcal {A}$ and $\mathcal {B}$ which will be isomorphic to the limit point $l\in \mathcal {L}$ . We will call this element l in all structures and define $p(l)=l$ . Go to the next stage and begin to work for requirement $R_0$ .

At stage $s>0$ , we are working for some requirement $R_e$ . The strategy for $R_e$ as described below.

Strategy for $R_e$ . We start by adding the floating point x into $\mathcal {B}$ so that it is the least element greater than l while we are working on this requirement. Wait for $p_e(x)$ to converge at some stage t and then wait for $p_e(y)$ to converge for all $y\in \mathcal {B}[t]$ . While we wait for this, continue to grow $\mathcal {B}$ towards x and grow $\mathcal {A}$ towards l. Once we have seen $p_e(y)$ converge for all $y\in \mathcal {B}[t]$ , add an element $\hat {x}$ , so that it is the least element greater than l in $\mathcal {A}$ and define $p(\hat {x})=x$ . Note that at this stage, $\mathcal {A}[s]$ and $\mathcal {B}[s]$ are isomorphic. Go to recovery.

Recovery. Let $l_{\mathcal {L}}^{+},l^{+}_{\mathcal {A}}$ , and $l^{+}_{\mathcal {B}}$ be the least element greater than l in $\mathcal {L}[t],\mathcal {A}[t]$ , and $\mathcal {B}[t]$ respectively, where t is the stage that we started to work for the current requirement. We begin by adding elements to $\mathcal {A}$ and $\mathcal {B}$ so that they are isomorphic to $\mathcal {L}$ outside $[l,l^{+}]$ . Then we wait for the interval $[l_{\mathcal {L}},l_{\mathcal {L}}^{+}]$ to catch up. Let m be the size of $[l_{\mathcal {A}},l_{\mathcal {A}}^{+}]$ at stage s (the current stage). We wait for $[l_{\mathcal {L}},l_{\mathcal {L}}^{+}]$ to contain m elements. While we wait, we copy any elements outside the interval that appear into $\mathcal {A}$ and $\mathcal {B}$ . Once we have seen m elements in $[l_{\mathcal {L}},l_{\mathcal {L}}^{+}]$ , $\mathcal {A}$ and $\mathcal {B}$ are both currently isomorphic to $\mathcal {L}$ , so recovery has finished. Move to the next requirement on the list.

Verification. Notice that each R requirement is worked on for finitely many stages because we only wait for a primitive recursive function to halt on finitely many elements. During recovery, we wait for the presentation $\mathcal {L}$ to grow a finite amount towards the limit point l. Since l is a right limit point in $\mathcal {L}$ , this must eventually happen and hence we stay in recovery for finitely many stages after each requirement. While we wait in recovery, $\mathcal {A}$ and $\mathcal {B}$ continue adding elements corresponding to those outside the $[l,l^{+}]$ interval. This means that while we wait for the interval in $\mathcal {L}$ to ‘catch up’, $\mathcal {A}$ and $\mathcal {B}$ stay punctual. Therefore $\mathcal {A}$ and $\mathcal {B}$ are punctual presentations of  $\mathcal {L}$ .

We now prove that all R requirements are met. We are in recovery for finitely many stages and diagonalisation ends after $p_e$ halts on finitely many inputs, therefore every requirement is eventually worked on. Fix a requirement $R_e$ , there is a stage s where we begin to work on requirement $R_e$ . Once $p(x)$ converges, we have two cases, either $p_e(x)\leq l$ or $p_e(x)>l$ .

If $p_e(x)\leq l$ , then by our strategy, there are strictly more elements in $\mathcal {B}$ to the left of x than there are in $\mathcal {A}$ to the left of $p_e(x)$ , as shown in Figure 1.

Figure 1 Solid elements are the old elements from before we started to work on requirement $R_e$ , while hollow elements are new elements. The arrow represents $p_e$ . The dashes show where we will continue to add points while we work on this requirement.

Similarly, if $p_e(x)>l$ , there are strictly more elements in $\mathcal {B}$ to the right of x than there are in $\mathcal {A}$ to the right of $p_e(x)$ , as shown in Figure 2.

Figure 2 Solid elements are the old elements from before we started to work on requirement $R_e$ started, while hollow elements are new elements. The arrow represents $p_e$ . The dashes show where we will continue to add points while we work on this requirement.

We show that in either case we meet the requirement. Let t be the stage where we first see $p_e(x)\!\!\downarrow $ while we are working on requirement $R_e$ . Let z be the least element greater than l at stage t. While we wait for $p_e(y)$ to converge for all $y\in \mathcal {B}[t]$ , we only add elements into $\mathcal {A}$ between l and z. Note that there are finitely many $y\in \mathcal {B}[t]$ , so eventually $p_e(y)$ converges for all $y\in \mathcal {B}[t]$ . At this stage, $p_e$ must have shown that either it is not order-preserving or it is not injective. Therefore requirement $R_e$ is eventually met.

Case 2: $\mathcal {L}$ has a left limit point. Act exactly as in case 1 but swap left and right. Now grow $\mathcal {C}$ towards y means that we add the least element not yet in $\mathcal {C}[s]$ so that it is the greatest element less than y. When we define $l^{+}$ in recovery, it is now the greatest element less than l.

Case 3: $\mathcal {L}$  has a sub-interval of order type $\mathbb {N}+\mathbb {N}^{*}$ . Fix some punctual presentation of $\mathcal {L}$ . Non-uniformly fix $a,b$ in this presentation of $\mathcal {L}$ such that $[a,b]\cong \mathbb {N}+\mathbb {N}^{*}$ . Without loss of generality we may assume that in this presentation $a=0$ and $b=1$ . For any element x we can primitive recursively decide if x belongs to the interval $[a,b]$ in $\mathcal {L}$ .

In this construction, we will build the interval $[a,b]$ by building the sequences $a_i$ and $b_i$ such that $a_0=a$ , $a_i<_{\mathcal {C}}a_{i+1}<_{\mathcal {C}}b$ and $b_0=b$ , $b_i>_{\mathcal {C}}b_{i+1}>_{\mathcal {C}}a_j$ for any $j\in \omega $ . Eventually, the sequence $a_i$ will be isomorphic $\mathbb {N}$ and $b_i$ to $\mathbb {N}^{*}$ . We use the macro grow $\mathbb {N}$ $(\mathbb {N}^{*})$ in $[a,b]$ in $\mathcal {C}$ to mean, add a new element to $\mathcal {C}$ to extend the initial segment of $a_i$ ( $b_i$ ) that we have so far. Now we detail the formal construction.

Construction. At stage $0$ , add the elements $a=0$ and $b=1$ into $\mathcal {A}[0]$ and $\mathcal {B}[0]$ . Define $p(0)=0$ and $p(1)=1$ . Go to the next stage and begin to work towards meeting requirement $R_0$ .

At stage $s>0$ , we are working for some requirement $R_e$ . The strategy for $R_e$ is described below.

Strategy for $R_e$ . At every stage, compute $p_e(x)$ on every $x\in [a,b]_{\mathcal {B}[s]}$ and wait for $p_e$ to show it is not an isomorphism. While we wait, grow $\mathbb {N}$ and $\mathbb {N}^{*}$ in $\mathcal {B}$ and grow $\mathbb {N}$ in $\mathcal {A}$ . Define p on all elements as they are added to $\mathcal {A}$ to the corresponding elements added to $\mathcal {B}$ while growing $\mathbb {N}$ . Once $p_e$ shows it is not an isomorphism, add corresponding elements to $\mathcal {A}$ that were added to $\mathbb {N}^{*}$ in $\mathcal {B}$ during this strategy and extend p. Note that at this stage, $\mathcal {A}[s]$ and $\mathcal {B}[s]$ are isomorphic and p is onto $\mathcal {B}[s]$ . Finally add necessary elements so that $\mathcal {A}[s]$ and $\mathcal {B}[s]$ are isomorphic to $\mathcal {L}[s]$ outside $[a,b]$ and extend p naturally. Go to the next stage and begin to work on the strategy for $R_{e+1}$ .

Verification. It is clear that $\mathcal {A}$ and $\mathcal {B}$ are punctual because at every stage we add at least one element. Now, let us show that $p_e$ is not an isomorphism. Compute $p_e$ on the elements of $\mathcal {B}$ . Since $\mathcal {A}$ and $\mathcal {B}$ are not adding any elements outside $[a,b]$ , eventually there is an element c in $\mathcal {B}$ that is part of $\mathbb {N}^{*}$ mapped to an element in $\mathcal {A}$ that is part of $\mathbb {N}$ (or we will see that $p_e$ is not injective). After this point, we continue to add elements to the left of c in $\mathcal {B}$ however no elements are added to the left of $p_e(c)$ , therefore eventually $p_e$ will show that it is not order-preserving or not injective. Then each requirement is met at some stage. By construction, the interval $[a,b]$ is isomorphic to $\mathbb {N}+\mathbb {N}^{*}$ and at every recovery, we ensure that $\mathcal {A}$ and $\mathcal {B}$ are isomorphic to $\mathcal {L}$ outside $[a,b]$ . Therefore $\mathcal {A}$ and $\mathcal {B}$ are punctual presentations of $\mathcal {L}$ as desired.

Case 4: Not case 1, 2, or 3. If $\mathcal {L}$ has no greatest or least element, then we can proceed as in case 1 or 2 with $\mathcal {L}\cup \{\infty \}$ or $\mathcal {L}\cup \{-\infty \}$ , respectively. Otherwise, $\mathcal {L}$ is of the form $\mathbb {N}+\mathbb {Z}\cdot \mathbb {Q}+\mathbb {N}^{*}$ [Reference Rosenstein42]. In this case, in a similar way to case 3, we build $\mathcal {A}$ and $\mathcal {B}$ in three sections, isomorphic to $\mathbb {N},\mathbb {Z}\cdot \mathbb {Q,}$ and $\mathbb {N}^{*}$ , respectively. Let $\mathcal {P}$ be some punctual presentation of $\mathbb {Z}\cdot \mathbb {Q}$ . As in case 3, while working towards meeting some $R_e$ requirement we grow $\mathbb {N}$ and $\mathbb {N}^{*}$ in $\mathcal {B}$ and we grow $\mathbb {N}$ in $\mathcal {A}$ until we see a disagreement from $p_e$ . Once we see this we recover by making $\mathcal {A}[s]$ and $\mathcal {B}[s]$ isomorphic and then add elements from $\mathcal {P}[s]$ to $\mathcal {A}[s]$ and $\mathcal {B}[s]$ in between the copies of $\mathbb {N}$ and $\mathbb {N}^{*}$ that we are building. Then move to the next requirement. The verification of the construction in case 3 applies in order to show that $\mathcal {A}$ and $\mathcal {B}$ are as desired.

In Theorem 2.2, we consider $\mathcal {A}<_{pr}\mathcal {B}$ and $\mathcal {A}$ and $\mathcal {B}$ reveal elements outside $\mathcal {L}_0$ at the same stage; the intuition is that it will allow us to restrict our strategies to the invariant part of $\mathcal {L}$ . Note that in the case that $\mathcal {L}$ is rigid we can define $\mathcal {L}_{-1}$ and $\mathcal {L}_{1}$ to be empty. In this case, any punctual presentations $\mathcal {A},\mathcal {B}$ of $\mathcal {L}$ such that $\mathcal {A}<_{pr}\mathcal {B}$ will suffice. The following lemma shows that in the case that $\mathcal {L}$ is not rigid, $\mathcal {A}$ and $\mathcal {B}$ with this property exist to prove Theorem 1.1 (1).

Lemma 2.4. Suppose $\mathcal {L}=\mathcal {L}_{-1}+\mathcal {L}_0+\mathcal {L}_1$ , where $\mathcal {L}_0$ is infinite and invariant, and $\mathcal {L}_{-1},\mathcal {L}_0$ , and $\mathcal {L}_1$ are punctually presentable linear orders. Then there exist punctual presentations $\mathcal {A},\mathcal {B}$ of $\mathcal {L}$ such that $\mathcal {A}<_{pr}\mathcal {B}$ and $\mathcal {A}$ and $\mathcal {B}$ reveal elements outside $\mathcal {L}_0$ at the same stage.

Proof. Fix punctual presentations of $\mathcal {L}_{-1},\mathcal {L}_0$ , and $ \mathcal {L}_1$ , we will slightly abuse the notation and denote these presentations by $\mathcal {L}_{-1},\mathcal {L}_0$ , and $\mathcal {L}_1,$ respectively. Apply Theorem 2.3 to $\mathcal {L}_0$ to obtain punctual presentations $\mathcal {L}_0<_{pr}\hat {\mathcal {L}_0}$ . Let ${N_{-1},N_0,N_1}$ be a partition of $\mathbb {N}$ with $|N_i|=|\mathcal {L}_i|$ and for each infinite $N_i,$ there is an injective primitive recursive $r_i:\mathbb {N}\to N_i$ with primitive recursive inverse. We will treat $r_i$ as a map on $\mathcal {L}_i$ . Now let $\mathcal {A}=r_{-1}(\mathcal {L}_{-1})+r_{0}(\mathcal {L}_{0})+r_{1}(\mathcal {L}_{1})$ and $\mathcal {B}=r_{-1}(\mathcal {L}_{-1})+r_{0}(\hat {\mathcal {L}}_{0})+r_{1}(\mathcal {L}_{1})$ . Therefore, elements of $\mathcal {L}_{-1}\cup \mathcal {L}_1$ will appear in $\mathcal {A}$ at the same stage they appear in $\mathcal {B}$ . Let $p_0$ be a primitive recursive isomorphism from $\mathcal {L}_0$ to $\hat {\mathcal {L}_0}$ given by Theorem 2.3, and let $p_{-1}(x)=x$ and $p_1(x)=x$ . Define $q:\mathcal {A}\to \mathcal {B}$ as $q(x)=p_i(x)$ for $x\in N_i$ . This is a primitive recursive isomorphism. Suppose there is a primitive recursive isomorphism $r:\mathcal {B}\to \mathcal {A}$ . Then $r_0^{-1}\circ r \circ r_0$ is a primitive recursive isomorphism from $\hat {\mathcal {L}_0}$ to $\mathcal {L}_0$ , which is a contradiction. So $\mathcal {A}<_{pr}\mathcal {B}$ and $\mathcal {A}$ and $\mathcal {B}$ reveal elements outside $\mathcal {L}_0$ at the same stage as desired.

2.2 Embedding the diamond

Now we prove Theorem 2.2 by construction.

We build structures $\mathcal {C}$ and $\mathcal {D}$ so that they meet the following requirements:

$$ \begin{align*} & R_{e}^0: \ p_e:\mathcal{C}\to \mathcal{D} \text{ is not an isomorphism,} \\ & R_{e}^1: \ p_e:\mathcal{D}\to \mathcal{C} \text{ is not an isomorphism,} \\ & P_{i,j,k}: \text{ if }p_j:\mathcal{C}\to\mathcal{P}_i,~ p_k:\mathcal{D}\to\mathcal{P}_i \text{ are p.r. isomorphisms, then } \mathcal{B} \leq_{pr}\mathcal{P}_i, \\ & Q_{i,j,k}: \text{ if }q_j:\mathcal{P}_i\to\mathcal{C},~ q_k:\mathcal{P}_i\to\mathcal{D} \text{ are p.r. isomorphisms, then } \mathcal{P}_i \leq_{pr} \mathcal{A}, \end{align*} $$

where ${\left \langle {p_e}\right \rangle }_{e\in \mathbb {N}}$ and ${\left \langle {\mathcal {P}_i}\right \rangle }_{i\in \mathbb {N}}$ are effective enumerations of all primitive recursive functions and punctual presentations, respectively. We also build primitive recursive isomorphisms $\gamma _{\mathcal {C}}:\mathcal {C} \to \mathcal {B}$ , $\gamma _{\mathcal {D}}:\mathcal {D} \to \mathcal {B}$ , $\delta _{\mathcal {C}}:\mathcal {A}\to \mathcal {C}$ , $\delta _{\mathcal {D}}:\mathcal {A} \to \mathcal {D}$ . Let p be the primitive recursive isomorphism that witnesses $\mathcal {A}<_{pr}\mathcal {B}$ .

We arrange an effective list of R requirements in order type $\omega $ and meet them one by one. While working towards an R requirement, we will copy $\mathcal {B}$ into one of our structures, while the other copies $\mathcal {A}$ . $\mathcal {B}>_{pr}\mathcal {A}$ so $\mathcal {B}$ must infinitely often introduce elements that do not show up in $\mathcal {A}$ for unbounded lengths of time. These elements must lie within $\mathcal {L}_0$ since elements outside $\mathcal {L}_0$ appear at the same stage. Therefore when $p_e$ converges on an element that is not yet in the range of p, $p_e$ cannot possibly be an isomorphism and we can move to the next requirement. Notice that at any stage, $\mathcal {C}$ and $\mathcal {D}$ differ only within $L_0$ , this fact helps us meet P and Q requirements.

For structures we are building ( $\mathcal {C}$ and $\mathcal {D}$ ), we consider $\mathcal {E}[s]$ to be the substructure that we have built so far at stage s. Throughout the construction, we will add a new element to $\mathcal {E}$ , this means we add the $<_{\mathbb {N}}$ -least element $x\in \mathbb {N}$ that is not yet in $\mathcal {E}[s]$ and we define $\gamma _{\mathcal {E}}(x)$ immediately and then we define $x<_{\mathcal {E}}y$ by computing $\gamma _{\mathcal {E}}(x)<_{\mathcal {B}}\gamma _{\mathcal {C}}(y)$ . Thus, as long as $s\in \mathcal {E}[s]$ by stage s, $\mathcal {E}$ is punctual.

We consider $\mathcal {A}[s]$ to be the structure obtained by computing $<_{\mathcal {A}}$ on $\{i:i<s\}$ , while we consider $\mathcal {B}[s]$ to be the structure obtained by computing $<_{\mathcal {B}}$ on $\{i:i<\max \{p(i):i<s\}\}$ . Therefore we see that $\mathcal {B}$ contains all elements in $\mathcal {A}$ as well as maybe some extra elements. Note that we may assume that at stage s, $p(i)[s]\!\!\downarrow $ for all $i<s$ .

We note that the above conventions described are different from those in the other sections because in this case we are following presentations $\mathcal {A}$ and $\mathcal {B}$ that we are not in control of. Now we describe the formal construction.

2.2.1 Construction.

Fix an effective list of all R requirements. At stage $0$ , begin the strategy of the first requirement on the list. We now detail the strategies we enact depending on which requirement we are working on. We continue this strategy at every stage until the strategy tells us to go to the next requirement.

Strategy for $R^0_e$ . For stage s, while we are working on this requirement, we define $\gamma _{\mathcal {C}},\gamma _{\mathcal {D}},\delta _{\mathcal {C,}}$ and $\delta _{\mathcal {D}}$ as follows. First, we copy $\mathcal {A}$ into $\mathcal {C}$ and $\mathcal {D}$ as follows. For each $x\in \mathcal {A}[s]\setminus \mathcal {A}[s-1],$ do the following

  • If $\gamma ^{-1}_{\mathcal {E}}(p(x))[s]\!\!\uparrow $ , then add a new element to $\mathcal {E}$ , y, and define $\delta _{\mathcal {E}}(x)=y$ and $\gamma _{\mathcal {E}}(y)=p(x)$ (where $\mathcal {E}\in \{\mathcal {C},\mathcal {D}\}$ ).

  • If $\gamma _{\mathcal {E}}^{-1}(p(x))[s]\!\!\downarrow $ , then define $\delta _{\mathcal {E}}(x)=\gamma _{\mathcal {E}}^{-1}(p(x))$ (where $\mathcal {E}\in \{\mathcal {C},\mathcal {D}\}$ ).

Then we copy $\mathcal {B}$ into $\mathcal {C}$ as follows. For each $y\in \mathcal {B}[s]\setminus \mathcal {B}[s-1]$ , if there is no $i\in \mathcal {A}[s]$ such that $p(i)=y$ , then add a new element x to $\mathcal {C}$ , and define $\gamma _{\mathcal {C}}(x)=y$ .

If there is $x\in \mathcal {C}[s]$ such that $p_e(x)[s]\!\!\downarrow $ and $\gamma _{\mathcal {D}}^{-1}(\gamma _{\mathcal {C}}(x))[s]\!\!\uparrow $ , move to the next requirement, otherwise, go to the next stage and continue this strategy.

Strategy for $R^1_e$ . Do the same strategy but switch the roles of $\mathcal {C}$ and $\mathcal {D}$ .

2.2.2 Verification.

We show that all requirements are met.

Lemma 2.5. $\gamma _{\mathcal {C}}:\mathcal {C}\to \mathcal {B}$ and $\gamma _{\mathcal {D}}:\mathcal {D}\to \mathcal {B}$ are primitive recursive isomorphisms.

Proof. We first show that $\gamma _{\mathcal {C}}$ is surjective. Let $y\in \mathcal {B}[s]\setminus \mathcal {B}[s-1]$ . If $\mathcal {C}$ is copying $\mathcal {B}$ at stage s, then y is added to the range of $\gamma _{\mathcal {C}}$ . If $\mathcal {C}$ is not copying $\mathcal {B}$ at stage s, then since p is an isomorphism from $\mathcal {A}\to \mathcal {B}$ , there is a stage t such that y enters the range of p. At stage $t,$ we add an element to $\mathcal {C}$ and include y to the range of $\gamma _{\mathcal {C}}$ . Therefore $\gamma _{\mathcal {C}}$ is surjective. By construction, $\gamma _{\mathcal {C}}$ is injective, order-preserving and $\gamma _{\mathcal {C}}$ is defined on x as soon as x enters $\mathcal {C}$ . Therefore, $\gamma _{\mathcal {C}}$ is a primitive recursive isomorphism.

The exact same argument can be used for $\mathcal {D}$ in regards to defining $\gamma _{\mathcal {D}}$ .

Lemma 2.6. $\delta _{\mathcal {C}}:\mathcal {A}\to \mathcal {C}$ and $\delta _{\mathcal {D}}:\mathcal {A}\to \mathcal {D}$ are primitive recursive isomorphisms.

Proof. First, we show that $\delta _{\mathcal {C}}$ is surjective. Let $x\in \mathcal {C}$ , we will show that $x\in \operatorname {\mathrm {range}}(\delta _{\mathcal {C}})$ . The preimage of $\delta _{\mathcal {C}}$ for all elements in $\mathcal {C}$ is defined immediately unless $\mathcal {C}$ is copying $\mathcal {B}$ and $\mathcal {B}$ adds an element before $\mathcal {A}$ does. In this case, there exists i such that $p(i)=\gamma _{\mathcal {C}}(x)$ . At this stage, we will define $\delta _{\mathcal {C}}(i)=x$ . Therefore $\delta _{\mathcal {C}}$ is surjective. By construction, $\delta _{\mathcal {C}}$ is injective and order-preserving and $\delta _{\mathcal {C}}$ is defined on x as soon as x enters $\mathcal {A}$ . Therefore $\delta _{\mathcal {C}}$ is a primitive recursive isomorphisms.

The exact same argument can be used for $\mathcal {D}$ in regards to defining $\delta _{\mathcal {D}}$ .

Lemma 2.7. For all $e\in \mathbb {N}$ , requirements $R^0_e$ and $R^1_e$ are met.

Proof. Suppose at stage t we started working for some $R_e^0$ requirement. While we work on this requirement, $\mathcal {C}$ is currently copying $\mathcal {B}$ while $\mathcal {D}$ copies $\mathcal {A}$ . Suppose there is no stage $s>t$ such that for some $x\in \mathcal {C}$ , $p_e(x)[s]\!\!\downarrow $ and $\gamma _{\mathcal {D}}^{-1}(\gamma _{\mathcal {C}}(x))[s]\!\!\uparrow $ . Then for all stages $s>t$ , if $p_e(x)[s]\!\!\downarrow $ on $x\in \mathcal {C}[s]$ then $\gamma _{\mathcal {D}}^{-1}(\gamma _{\mathcal {C}}(x))[s]\!\!\downarrow $ . Then the computation of $p_e$ gives a primitive recursive time bound on the computation of $p^{-1}(\gamma _{\mathcal {C}}(x))$ ; this is because $\mathcal {D}$ copies $\mathcal {A}$ during this stage. Therefore, $p^{-1}$ is primitive recursive, a contradiction. Hence there is a stage s such that $p_e(x)[s]\!\!\downarrow $ on some $x\in \mathcal {C}$ such that $\gamma _{\mathcal {D}}^{-1}(\gamma _{\mathcal {C}}(x))[s]\!\!\uparrow $ . Fix such an x.

We now show that $R^0_e$ is met. Notice that x must be in $\mathcal {L}_0$ and $\gamma _{\mathcal {D}}^{-1}(\gamma _{\mathcal {C}})$ is an isomorphism from $\mathcal {C}\to \mathcal {D}$ . Since $\mathcal {L}_0$ is invariant in $\mathcal {L}$ , $p_e$ cannot be an isomorphism.

For $R_e^1$ requirements, swap the roles of $\mathcal {C}$ and $\mathcal {D}$ (including the subscripts for $\gamma $ and $\delta $ ). Then for all $e,$ there is a stage where $R_e^0$ and $R_e^1$ are met.

Lemma 2.8. For all $i,j,k\in \mathbb {N}$ requirement $P_{i,j,k}$ is met.

Proof. Let $\mathcal {P}_i\geq _{pr}\mathcal {C},\mathcal {D}$ , we will show that $\mathcal {P}_i\geq _{pr}\mathcal {B}$ by defining a primitive recursive isomorphism $\eta :\mathcal {B}\to \mathcal {P}_i$ . Note that by Lemma 2.5, $\mathcal {B}>_{pr}\mathcal {C},\mathcal {D}$ .

Since $\mathcal {P}_i\geq _{pr}\mathcal {C},\mathcal {D}$ , there are primitive recursive isomorphisms $p_j:\mathcal {C}\to \mathcal {P}_i$ and $p_k:\mathcal {D}\to \mathcal {P}_i$ . At any stage, exactly one of $\mathcal {C}$ or $\mathcal {D}$ is copying $\mathcal {B}$ . Then for all stages s and all $x\in \mathcal {B}[s]$ , at least one of $\gamma _{\mathcal {C}}^{-1}(x)[s]$ or $\gamma _{\mathcal {D}}^{-1}(x)[s]$ is defined. If it is $\gamma _{\mathcal {C}}^{-1}(x)$ , then define $\eta (x)=p_j(\gamma _{\mathcal {C}}^{-1}(x))$ . Otherwise, define $\eta (x)=p_k(\gamma _{\mathcal {D}}^{-1}(x))$ .

Recall that elements outside $\mathcal {L}_0$ appear in $\mathcal {A},\mathcal {B},\mathcal {C},\mathcal {D}$ at the same stage. Then $\gamma _{\mathcal {C}}^{-1}(x)[s]\!\!\downarrow $ for all $x\in \mathcal {B}[s]$ outside $\mathcal {L}_0$ . By definition of $\eta $ , $\eta (x)=p_j(\gamma _{\mathcal {C}}^{-1}(x))$ for such x. For all $x\in \mathcal {L}_0$ , $p_j(\gamma _{\mathcal {C}}^{-1}(x))=p_k(\gamma _{\mathcal {D}}^{-1}(x))$ since $\mathcal {L}_0$ is invariant in $\mathcal {L}$ . Therefore $\eta $ is a primitive recursive isomorphism.

Lemma 2.9. For all $i,j,k\in \mathbb {N}$ requirement $Q_{i,j,k}$ is met.

Proof. Let $\mathcal {P}_i\leq _{pr}\mathcal {C},\mathcal {D}$ , we will show that $\mathcal {P}_i\leq _{pr}\mathcal {A}$ by defining a primitive recursive isomorphism $\nu :\mathcal {P}_i\to \mathcal {A}$ . Note that by Lemma 2.6, $\mathcal {A}<_{pr}\mathcal {C},\mathcal {D}$ .

Since $\mathcal {P}_i\leq _{pr}\mathcal {C},\mathcal {D}$ , there are primitive recursive isomorphisms $q_j:\mathcal {P}_i\to \mathcal {C}$ and $q_k:\mathcal {P}_i\to \mathcal {D}$ . Consider the least stage s such that $q_j(x)[s]\!\!\downarrow $ and $q_k(x)[s]\!\!\downarrow $ . Define $\nu (x)=\delta ^{-1}_{\mathcal {C}}(q_j(x))$ . Since $\delta ^{-1}_{\mathcal {C}}$ is an isomorphism and $q_j$ is by assumption an isomorphism, all that is left is to show that $\nu $ is primitive recursive.

For all x such that $q_j(x)[s]\!\!\downarrow $ is outside $\mathcal {L}_0$ , $\delta ^{-1}_{\mathcal {C}}(q_j(x))[s]\!\!\downarrow $ . Otherwise, since $\mathcal {L}_0$ is invariant, $\gamma _{\mathcal {C}}(q_j(x))=\gamma _{\mathcal {D}}(q_k(x))$ . By construction, only one of $\mathcal {C}$ and $\mathcal {D}$ is currently copying the new elements in $\mathcal {B}$ . Therefore it follows that once $q_j(x)$ and $q_k(x)$ converge, the corresponding element must be in $\mathcal {A}$ . Then for each x at the least stage s such that $q_j(x)[s]\!\!\downarrow $ and $q_k(x)[s]\!\!\downarrow $ , $\delta ^{-1}_{\mathcal {C}}(q_j(x))[s]\!\!\downarrow $ . Therefore $\nu $ is a primitive recursive isomorphism.

All requirements are met; functions $\gamma _{\mathcal {C}}, \gamma _{\mathcal {D}}, \delta _{\mathcal {C,}}$ and $\delta _{D}$ are primitive recursive isomorphisms by construction. Hence we have built $\mathcal {C},\mathcal {D}$ as desired.

Remark 2.10. Notice that $p=\gamma _{\mathcal {C}}\circ \delta _{\mathcal {C}}=\gamma _{\mathcal {D}}\circ \delta _{\mathcal {D}}$ by construction, this will come in useful in the next section.

2.3 Embedding the atomless Boolean algebra

Recall that we can embed the diamond between any $\mathcal {A}<_{pr}\mathcal {B}$ that reveal elements outside $\mathcal {L}_0$ at the same stage. By construction, $\mathcal {A},\mathcal {B},\mathcal {C},\mathcal {D}$ reveal elements outside of $\mathcal {L}_0$ at the same stage. This means the diamond construction naturally iterates between $\mathcal {A}$ and $\mathcal {C}$ , $\mathcal {C}$ and $\mathcal {B,}$ etc. By applying this process, we obtain generators for an embedding of the atomless Boolean algebra between $\mathcal {A}$ and $\mathcal {B}$ . In this section, we work towards proving the following theorem.

Theorem 2.11. Let $\mathcal {L}$ be a linear order such that there are $\mathcal {L}_{-1},\mathcal {L}_0$ , and $\mathcal {L}_1$ with the following properties.

  • $\mathcal {L}_{-1}+\mathcal {L}_0+\mathcal {L}_1=\mathcal {L.}$

  • $\mathcal {L}_0$ is infinite and invariant in $\mathcal {L.}$

  • $\mathcal {L}_{-1}$ , $\mathcal {L}_0,$ and $\mathcal {L}_1$ are punctual linear orders.

Then for any punctual presentations $\mathcal {A},\mathcal {B}$ of $\mathcal {L}$ such that $\mathcal {A}<_{pr}\mathcal {B}$ and $\mathcal {A}$ and $\mathcal {B}$ reveal elements outside $\mathcal {L}_0$ at the same stage, we can embed the atomless Boolean algebra with $\mathcal {B}=1$ and $\mathcal {A}=0$ .

A generator is a presentation that is built by some iteration of the diamond construction. We define the complexity of a generator $\mathcal {E}$ to be the number of times the diamond construction has been iterated in order to obtain $\mathcal {E}$ . For example, first we obtain $\mathcal {E}_0,\mathcal {E}_1$ by iterating the diamond construction once between $\mathcal {A}$ and $\mathcal {B}$ , then these presentations have complexity 1. We then iterate the diamond construction again between $\mathcal {E}_0$ and $\mathcal {A}$ , between $\mathcal {E}_0$ and $\mathcal {B}$ , between $\mathcal {E}_1$ and $\mathcal {A,}$ and between $\mathcal {E}_1$ and $\mathcal {B}$ ; these presentations that we obtain have complexity 2. We consider the lattice obtained by finite combinations of meets and joins of generators. We will prove later that this indeed gives us a Boolean algebra with $\mathcal {A}=0$ and $\mathcal {B}=1$ .

For this section, we use the following notation for the isomorphisms that are in play. Our notation naturally extends the notation from the previous section. We use $\gamma _{\mathcal {E}}:\mathcal {E}\to \mathcal {B}$ , $\delta _{\mathcal {E}}:\mathcal {A}\to \mathcal {E}$ , while $\eta _{\mathcal {E}\to \mathcal {G}}:\mathcal {E}\to \mathcal {G}$ is used where neither $\mathcal {E}$ nor $\mathcal {G}$ are $\mathcal {A}$ or $\mathcal {B}$ . Recall that p is the primitive recursive isomorphism from $\mathcal {A}$ to $\mathcal {B}$ .

Lemma 2.12. Let $\mathcal {E}$ be a generator. Then there are primitive recursive isomorphisms $\delta _{\mathcal {E}}:\mathcal {A}\to \mathcal {E}$ and $\gamma _{\mathcal {E}}:\mathcal {E}\to \mathcal {B}$ , moreover $\gamma _{\mathcal {E}}\circ \delta _{\mathcal {E}}=p$ .

Proof. We prove this by induction on the complexity of the generator. The base case is where $\mathcal {E}$ has complexity 1, then the lemma follows immediately from Lemmas 2.5 and 2.6.

Now suppose the lemma holds for complexity n, we will prove for complexity $n+1$ . $\mathcal {E}$ is a generator and has complexity $n+1$ , so $\mathcal {E}$ is constructed by iterating the diamond construction between some $\mathcal {G}$ and $\mathcal {H}$ that have complexity at most n. Without loss of generality, assume $\mathcal {G}>_{pr}\mathcal {H}$ . By induction there are primitive recursive isomorphisms $\gamma _{\mathcal {G}}$ , $\gamma _{\mathcal {H}}$ , $\delta _{\mathcal {G,}}$ and $\delta _{\mathcal {H}}$ . By construction, $\eta _{\mathcal {E}\to \mathcal {G}}$ and $\eta _{\mathcal {H}\to \mathcal {E}}$ are primitive recursive isomorphisms. Then it follows that $\gamma _{\mathcal {E}}=\gamma _{\mathcal {G}}\circ \eta _{\mathcal {E}\to \mathcal {G}}$ and ${\delta _{\mathcal {E}}=\eta _{\mathcal {H}\to \mathcal {E}}\circ \delta _{\mathcal {H}}}$ are primitive recursive isomorphisms.

By induction, $\gamma _{\mathcal {G}}\circ \delta _{\mathcal {G}}=p$ and $\gamma _{\mathcal {H}}\circ \delta _{\mathcal {H}}=p$ . By construction, $\eta _{\mathcal {E}\to \mathcal {G}}\circ \eta _{\mathcal {H}\to \mathcal {E}}$ is a primitive recursive isomorphism from $\mathcal {H}$ to $\mathcal {G}$ . Then it follows that $p=\gamma _{\mathcal {G}}\circ \eta _{\mathcal {E}\to \mathcal {G}}\circ \eta _{\mathcal {H}\to \mathcal {E}}\circ \delta _{\mathcal {H}}=\gamma _{\mathcal {E}}\circ \delta _{\mathcal {E}}$ .

Lemma 2.13. Let $\mathcal {E},\mathcal {F}$ be presentations such that there are primitive recursive isomorphisms $\delta _{\mathcal {E}}$ , $\gamma _{\mathcal {E}}$ , $\delta _{\mathcal {F,}}$ and $\gamma _{\mathcal {F}}$ , and $\gamma _{\mathcal {E}}\circ \delta _{\mathcal {E}}=\gamma _{\mathcal {F}}\circ \delta _{\mathcal {F}}=p$ . Then there is a punctual presentation $\mathcal {G}$ of $\mathcal {L}$ such that $\mathcal {G}=\sup (\mathcal {E},\mathcal {F})$ and there are primitive recursive isomorphisms $\delta _{\mathcal {G}}:\mathcal {A}\to \mathcal {G}$ and $\gamma _{\mathcal {G}}:\mathcal {G}\to \mathcal {B}$ , moreover $\gamma _{\mathcal {G}}\circ \delta _{\mathcal {G}}=p$ .

Proof. We define a punctual presentation $\mathcal {G}$ that is exactly the elements that are in either $\mathcal {E}$ or $\mathcal {F}$ . Below we give the formal definition, including the isomorphisms $\gamma _{\mathcal {G}}$ , $\delta _{\mathcal {G}}$ , $\eta _{\mathcal {E}\to \mathcal {G,}}$ and $\eta _{\mathcal {F}\to \mathcal {G}}$ .

Consider $\{\gamma _{\mathcal {E}}(i):i<s\}\cup \{\gamma _{\mathcal {F}}(i):i<s\}$ as a substructure of $\mathcal {B}$ . We will denote this substructure as $\mathcal {B}_{\mathcal {E}\cup \mathcal {F}}[s]$ . We build a punctual presentation $\mathcal {G}$ so that ${\mathcal {G}\cong \mathcal {B}_{\mathcal {E}\cup \mathcal {F}}[s]}$ . This means that at each stage for each $x\in \mathcal {B}_{\mathcal {E}\cup \mathcal {F}}[s+1]\setminus \mathcal {B}_{\mathcal {E}\cup \mathcal {F}}[s]$ we consider the least y with $\gamma _{\mathcal {G}}(y)[s]\!\!\uparrow $ and define $\gamma _{\mathcal {G}}(y)=x$ . Define $a<_{\mathcal {G}}b$ if and only if $\gamma _{\mathcal {G}}(a)<_{\mathcal {B}}\gamma _{\mathcal {G}}(b)$ . $\mathcal {E}$ and $\mathcal {F}$ are punctual and $\gamma _{\mathcal {G}}$ is a primitive recursive isomorphism, therefore $\mathcal {G}$ is punctual.

For x with $\gamma _{\mathcal {E}}(x)[s]\!\!\downarrow ,$ we define $\eta _{\mathcal {E}\to \mathcal {G}}=\gamma _{\mathcal {G}}^{-1}(\gamma _{\mathcal {E}}(x))$ . For x with $\gamma _{\mathcal {F}}(x)[s]\!\!\downarrow ,$ we define $\eta _{\mathcal {F}\to \mathcal {G}}=\gamma _{\mathcal {G}}^{-1}(\gamma _{\mathcal {F}}(x))$ . These are primitive recursive isomorphisms because at the stage that $\gamma _{\mathcal {F}}(x)[s]\!\!\downarrow $ , $\gamma _{\mathcal {F}}(x)\in \mathcal {B}_{\mathcal {E}\cup \mathcal {F}}[s]$ by definition, therefore at stage s, $\gamma _{\mathcal {G}}^{-1}(\gamma _{\mathcal {F}})[s]\!\!\downarrow $ . The same argument shows that $\eta _{\mathcal {E}\to \mathcal {G}}$ is primitive recursive.

It follows that $\delta _{\mathcal {G}}(x)=\eta _{\mathcal {E}\to \mathcal {G}}(\delta _{\mathcal {E}}(x))$ is a primitive recursive isomorphism. Since $\gamma _{\mathcal {E}}\circ \delta _{\mathcal {E}}=\gamma _{\mathcal {F}}\circ \delta _{\mathcal {F}}=p$ , it follows that $\gamma _{\mathcal {G}}\circ \delta _{\mathcal {G}}=p$ .

Finally, it is left to prove that $\mathcal {G}=\sup (\mathcal {E},\mathcal {F})$ . Suppose there is $\mathcal {P}_i\geq _{pr}\mathcal {E},\mathcal {F}$ witnessed by $p_j:\mathcal {E}\to \mathcal {P}_i$ and $p_k:\mathcal {F}\to \mathcal {P}_i$ . We define $\eta :\mathcal {G}\to \mathcal {P}_i$ as follows. For each x, at the least stage s where $\gamma _{\mathcal {G}}(x)[s]\!\!\downarrow $ , define $\eta (x)=p_j(\eta _{\mathcal {E}\to \mathcal {G}}^{-1}(x))$ if $\eta _{\mathcal {E}\to \mathcal {G}}^{-1}(x)[s]\!\!\downarrow $ , otherwise define $\eta (x)=p_k(\eta _{\mathcal {F}\to \mathcal {G}}^{-1}(x))$ .

By definition of $\mathcal {G}$ , at the least stage s where $\gamma _{\mathcal {G}}(x)[s]\!\!\downarrow $ , at least one of $\eta _{\mathcal {E}\to \mathcal {G}}^{-1}(x)[s]$ or $\eta _{\mathcal {F}\to \mathcal {G}}^{-1}(x)[s]$ is defined. Therefore $\eta $ is primitive recursive.

Recall that for all $x\notin \mathcal {L}_0$ , x is added to all presentations at the same stage. Therefore $\eta (x)=p_j(\eta _{\mathcal {E}\to \mathcal {G}}^{-1}(x))$ for all such x. For $x\in \mathcal {L}_0$ , $p_j(\eta _{\mathcal {E}\to \mathcal {G}}^{-1}(x))=p_k(\eta _{\mathcal {F}\to \mathcal {G}}^{-1}(x))$ . Therefore $\eta $ is an isomorphism since $p_j,p_k,\eta _{\mathcal {E}\to \mathcal {G}},\eta _{\mathcal {F}\to \mathcal {G}}$ are all isomorphisms.

Therefore $\mathcal {P}_i\geq _{pr}\mathcal {G}$ . Hence $\mathcal {G}=\sup (\mathcal {E},\mathcal {F})$ as desired.

Lemma 2.14. Let $\mathcal {E},\mathcal {F}$ be punctual presentations such that there are primitive recursive isomorphisms $\delta _{\mathcal {E}}:\mathcal {A}\to \mathcal {E}$ , $\gamma _{\mathcal {E}}:\mathcal {E}\to \mathcal {B}$ , $\delta _{\mathcal {F}}:\mathcal {A}\to \mathcal {F}$ and $\gamma _{\mathcal {F}}:\mathcal {F}\to \mathcal {B}$ , and $\gamma _{\mathcal {E}}\circ \delta _{\mathcal {E}}=\gamma _{\mathcal {F}}\circ \delta _{\mathcal {F}}=p$ . Then there is a punctual presentation $\mathcal {H}$ of $\mathcal {L}$ such that $\mathcal {H}=\inf (\mathcal {E},\mathcal {F})$ and there are primitive recursive isomorphisms $\delta _{\mathcal {H}}:\mathcal {A}\to \mathcal {H}$ and ${\gamma _{\mathcal {H}}:\mathcal {H}\to \mathcal {B}}$ , moreover $\gamma _{\mathcal {H}}\circ \delta _{\mathcal {H}}=p$ .

Proof. We define a punctual presentation $\mathcal {H}$ that is exactly the elements that are in both $\mathcal {E}$ and $\mathcal {F}$ . Below we give the formal definition, including the isomorphisms $\gamma _{\mathcal {H}}$ , $\delta _{\mathcal {H}}$ , $\eta _{\mathcal {H}\to \mathcal {E,}}$ and $\eta _{\mathcal {H}\to \mathcal {F}}$ .

Consider $\{\gamma _{\mathcal {E}}(i):i<s\}\cap \{\gamma _{\mathcal {F}}(i):i<s\}$ as a substructure of $\mathcal {B}$ . We will denote this substructure as $\mathcal {B}_{\mathcal {E}\cap \mathcal {F}}[s]$ . We build a punctual presentation $\mathcal {H}$ so that $\mathcal {H}\cong \mathcal {B}_{\mathcal {E}\cap \mathcal {F}}[s]$ . This means that at each stage for each $x\in \mathcal {B}_{\mathcal {E}\cap \mathcal {F}}[s+1]\setminus \mathcal {B}_{\mathcal {E}\cap \mathcal {F}}[s]$ we consider the least y with $\gamma _{\mathcal {H}}(y)[s]\!\!\uparrow $ and define $\gamma _{\mathcal {H}}(y)=x$ . Define $a<_{\mathcal {H}}b$ if and only if $\gamma _{\mathcal {H}}(a)<_{\mathcal {B}}\gamma _{\mathcal {H}}(b)$ .

Now we define $\delta _{\mathcal {H}}(x)$ . Let s be the least stage such that $p(x)[s]\!\!\downarrow $ . By stage s, $\gamma _{\mathcal {E}}^{-1}(p(x))[s]\!\!\downarrow $ , $\gamma _{\mathcal {F}}^{-1}(p(x))[s]\!\!\downarrow $ and by definition of $\mathcal {H}$ , an element y has been added to $\mathcal {H}[s]$ such that $\gamma _{\mathcal {H}}(y)=p(x)$ . Then at stage s, we define $\delta _{\mathcal {H}}(x)=y$ . Hence, $\delta _{\mathcal {H}}$ is primitive recursive. It follows that $\mathcal {H}$ is punctual and $\gamma _{\mathcal {H}}\circ \delta _{\mathcal {H}}=p$ by definition.

Define $\eta _{\mathcal {H}\to \mathcal {E}}(x)=\gamma _{\mathcal {E}}^{-1}(\gamma _{\mathcal {H}}(x))$ and $\eta _{\mathcal {H}\to \mathcal {F}}(x)=\gamma _{\mathcal {F}}^{-1}(\gamma _{\mathcal {H}}(x))$ . These are isomorphisms by composition and are primitive recursive because at the stage s that $\gamma _{\mathcal {H}}(x)[s]\!\!\downarrow $ , $\gamma _{\mathcal {H}}(x)\in \mathcal {B}_{\mathcal {E}\cap \mathcal {F}}[s]$ by definition, therefore $\gamma _{\mathcal {E}}^{-1}(\gamma _{\mathcal {H}}(x))[s]\!\!\downarrow $ and $\gamma _{\mathcal {F}}^{-1}(\gamma _{\mathcal {H}}(x))[s]\!\!\downarrow $ .

Now we show that $\mathcal {H}=\inf (\mathcal {E},\mathcal {F})$ . Suppose there is $\mathcal {P}_i\leq _{pr}\mathcal {E},\mathcal {F}$ witnessed by ${q_j:\mathcal {P}_i\to \mathcal {E}}$ and $q_k:\mathcal {P}_i\to \mathcal {F}$ . We define $\eta :\mathcal {P}_i\to \mathcal {H}$ as follows. For each x, at the least stage s such that $q_j(x)[s]\!\!\downarrow $ and $q_k(x)[s]\!\!\downarrow $ , define $\eta (x)=\eta _{\mathcal {H}\to \mathcal {E}}^{-1}(q_j(x))$ . Now we show that $\eta $ is primitive recursive. Recall that elements outside $L_0$ appear at the same time in every structure. So for x outside $L_0$ , $q_j(x)$ is also outside $L_0$ and so $\eta _{\mathcal {H}\to \mathcal {E}}^{-1}(q_j(x))$ converges once $q_j(x)$ converges. For x in $ L_0$ , $\gamma _{\mathcal {E}}(q_j(x))=\gamma _{\mathcal {F}}(q_k(x))\in \mathcal {B}_{\mathcal {E}\cap \mathcal {F}}[s]$ . Therefore, the corresponding element must be in $\mathcal {H}[s]$ and so $\eta _{\mathcal {H}\to \mathcal {E}}^{-1}(q_j(x))[s]\!\!\downarrow $ . Thus $\eta $ is a primitive recursive isomorphism.

Hence $\mathcal {P}_i\leq _{pr}\mathcal {H}$ and $\mathcal {H}=\inf (\mathcal {E},\mathcal {F})$ as desired.

With the above lemmas, we are now ready to prove Theorem 2.11.

Proof of Theorem 2.11.

Apply Theorem 2.2 between $\mathcal {A}$ and $\mathcal {B}$ . Repeat the application of Theorem 2.2 between every pair of presentations built so far with the property that $\mathcal {E}<_{pr}\mathcal {F}$ . We call the presentations built in this way the generators. We consider the structure obtained by taking finite combinations of meets and joins of these generators. We show that this gives us the atomless Boolean algebra by showing that complements, meets, and joins of generators exist as well as showing that the lattice embedding is distributive.

Existence of meets and joins. Follows from Lemmas 2.122.14.

Existence of complements. If complements of the generators exist then it follows that every element has a complement.

We use induction on the complexity of the generator. The base case is generators of complexity 1. In this case, the complement of a generator $\mathcal {G}$ with complexity 1 is the other generator created between $\mathcal {A}$ and $\mathcal {B}$ . Let $\mathcal {G}$ be a generator with complexity $n>1$ . Then $\mathcal {G}$ was built between some other generators $\mathcal {E}<_{pr}\mathcal {F}$ of lower complexity. Let $\mathcal {H}$ be the other generator that was built between $\mathcal {E}$ and $\mathcal {F}$ . By induction, $\mathcal {E}$ and $\mathcal {F}$ have complements, $\mathcal {E}^{c}$ and $\mathcal {F}^c,$ respectively. Then we show that $(\mathcal {H}\wedge \mathcal {E}^{c})\vee \mathcal {F}^c$ is the complement of $\mathcal {G}$ .

To do this, we need to show that $G\vee (\mathcal {H}\wedge \mathcal {E}^c)\vee \mathcal {F}^c\cong _{pr}\mathcal {B}$ and $\mathcal {G}\wedge ((\mathcal {H}\wedge \mathcal {E}^c)\vee \mathcal {F}^c)\cong _{pr}\mathcal {A}$ . By construction, at any stage, generators are either copying $\mathcal {A}$ or copying $\mathcal {B}$ . Recall that in Lemmas 2.13 and 2.14, the join and meet of two generators $\mathcal {C}$ and $\mathcal {D}$ exist. It follows that the join (meet) of two presentations copies $\mathcal {A}$ ( $\mathcal {B}$ ) only if both presentations copy $\mathcal {A}$ ( $\mathcal {B}$ ) and otherwise copies $\mathcal {B}$ ( $\mathcal {A}$ ). Also notice that given some presentation, the complement of this presentation has the property that, at any stage, if one copies $\mathcal {A,}$ the other must be copying $\mathcal {B}$ .

First, we show that at any stage $\mathcal {G}\wedge ((\mathcal {H}\wedge \mathcal {E}^c)\vee \mathcal {F}^c)$ copies $\mathcal {A}$ . Suppose $\mathcal {G}$ is currently copying $\mathcal {B}$ , then we show that $(\mathcal {H}\wedge \mathcal {E}^c)\vee \mathcal {F}^c$ is copying $\mathcal {A}$ . Since $\mathcal {G}$ is copying $\mathcal {B}$ and $\mathcal {G}<_{pr}\mathcal {F}$ , $\mathcal {F}$ also copies $\mathcal {B}$ and $\mathcal {F}^c$ is copying $\mathcal {A}$ . $\mathcal {E}=\mathcal {G}\wedge \mathcal {H}$ and $\mathcal {G}$ copies $\mathcal {B}$ , then $\mathcal {E}$ and $\mathcal {H}$ are either both copying $\mathcal {A}$ or both copying $\mathcal {B}$ . Therefore, $\mathcal {G}\wedge ((\mathcal {H}\wedge \mathcal {E}^c)\vee \mathcal {F}^c)$ copies $\mathcal {A}$ as desired.

Finally we show that at any stage $\mathcal {G}\vee (\mathcal {H}\wedge \mathcal {E}^c)\vee \mathcal {F}^c$ copies $\mathcal {B}$ . Suppose $\mathcal {G}$ and $\mathcal {F}^c$ are both copying $\mathcal {A}$ and we will prove that $\mathcal {H}\wedge \mathcal {E}^c$ is copying $\mathcal {B}$ . Since $\mathcal {F}^c$ is copying $\mathcal {A}$ , $\mathcal {F}$ must be copying $\mathcal {B}$ . Notice if $\mathcal {E}$ is copying $\mathcal {B}$ , then $\mathcal {G}$ must be copying $\mathcal {B}$ as well, which is a contradiction. So $\mathcal {E}$ is copying $\mathcal {A}$ and $\mathcal {E}^c$ is copying $\mathcal {B}$ . Since $\mathcal {F}=\mathcal {G}\vee \mathcal {H}$ , it must be that $\mathcal {H}$ is also copying $\mathcal {B}$ . Therefore, $\mathcal {G}\vee (\mathcal {H}\wedge \mathcal {E}^c)\vee \mathcal {F}^c$ copies $\mathcal {B}$ .

Hence $(\mathcal {H}\wedge \mathcal {E}^{c})\vee \mathcal {F}^c$ is the complement of $\mathcal {G}$ and therefore all generators have a complement.

Distributivity. To show a lattice is distributive, it is sufficient to show that it is distributive as a join-semilattice [Reference Gratzer24]. Therefore, it is sufficient to show that for any presentations $\mathcal {E}, \mathcal {F,}$ and $\mathcal {G}$ in our Boolean algebra, if $\mathcal {G}\leq _{pr}\sup (\mathcal {E},\mathcal {F})$ , there are $\mathcal {E}'$ and $\mathcal {F}'$ such that $\mathcal {G}=\sup (\mathcal {E}',\mathcal {F}')$ , $\mathcal {E}'\leq _{pr}\mathcal {E}$ and $\mathcal {F}'\leq _{pr}\mathcal {F}$ .

Let $\mathcal {E}'=\inf (\mathcal {G},\mathcal {E})$ and $\mathcal {F}'=\inf (\mathcal {G},\mathcal {F})$ . We show that $\mathcal {G}=\sup (\mathcal {E}',\mathcal {F}')$ . Let $\mathcal {K}\geq _{pr}\mathcal {E}',\mathcal {F}'$ . We will show that $\mathcal {K}\geq _{pr}\mathcal {G}$ by defining $\alpha :\mathcal {G}\to \mathcal {K}$ . For convenience, let $\sup (\mathcal {E},\mathcal {F})=\mathcal {M}$ .

At the least stage t such that $\eta _{\mathcal {G}\to \mathcal {M}}(x)[t]\!\!\downarrow $ , define $\alpha (x)[t]=\eta _{\mathcal {E}'\to \mathcal {K}}(\eta _{\mathcal {E}'\to \mathcal {G}}^{-1}(x))$ if $\eta _{\mathcal {E}'\to \mathcal {G}}^{-1}(x)[t]\!\!\downarrow $ , otherwise define $\alpha (x)[t]=\eta _{\mathcal {F}'\to \mathcal {K}}(\eta _{\mathcal {F}'\to \mathcal {G}}^{-1}(x))$ .

Recall that elements outside $\mathcal {L}_0$ appear at the same time in $\mathcal {E}',\mathcal {F}',\mathcal {G}$ , then $\eta _{\mathcal {E}'\to \mathcal {G}}^{-1}(x)$ and $\eta _{\mathcal {F}'\to \mathcal {G}}^{-1}(x)$ converge at stage t for elements outside $L_0$ . Therefore $\alpha (x)=\eta _{\mathcal {E}'\to \mathcal {K}}(\eta _{\mathcal {E}'\to \mathcal {G}}^{-1}(x))$ for all $x\notin L_0$ . If x is in $\mathcal {L}_0$ , then $\eta _{\mathcal {E}'\to \mathcal {K}}(\eta _{\mathcal {E}'\to \mathcal {G}}^{-1}(x))=\eta _{\mathcal {F}'\to \mathcal {K}}(\eta _{\mathcal {F}'\to \mathcal {G}}^{-1}(x))$ . Therefore, $\alpha $ is an isomorphism.

Now we prove that at stage t, then either $\eta _{\mathcal {E}'\to \mathcal {G}}^{-1}(x)[t]\!\!\downarrow $ or $\eta _{\mathcal {F}'\to \mathcal {G}}^{-1}(x)[t]\!\!\downarrow $ for any $x\in \mathcal {G}[t]$ . Recall that if $\eta _{\mathcal {G}\to \mathcal {M}}(x)[t]\!\!\downarrow $ , then by definition of supremum, $\eta _{\mathcal {E}\to \mathcal {M}}^{-1}(\eta _{\mathcal {G}\to \mathcal {M}}(x))[t]\!\!\downarrow $ or $\eta _{\mathcal {F}\to \mathcal {M}}^{-1}(\eta _{\mathcal {G}\to \mathcal {M}}(x))[t]\!\!\downarrow $ . By definition of $\mathcal {E}'$ and $\mathcal {F}'$ , it follows that either $\eta _{\mathcal {E}'\to \mathcal {G}}^{-1}(x)[t]\!\!\downarrow $ or $\eta _{\mathcal {F}'\to \mathcal {G}}^{-1}(x)[t]\!\!\downarrow $ .

3 The dense linear order

In this section, we prove that we can embed the diamond into the punctual degrees of the dense linear order.

3.1 Embedding the diamond

Theorem 3.1 (Diamond in $PR(\mathbb {Q})$ ).

There exist punctual presentations $\mathcal {A}$ , $\mathcal {B}$ , $\mathcal {C,}$ and $\mathcal {D}$ of $(\mathbb {Q},<)$ such that $\mathcal {C}$ and $\mathcal {D}$ are incomparable under $\leq _{pr}$ , $\mathcal {B}=\sup (\mathcal {C},\mathcal {D}),$ and $\mathcal {A}=\inf (\mathcal {C},\mathcal {D})$ .

We build structures $\mathcal {A}, \mathcal {B}, \mathcal {C,}$ and $\mathcal {D}$ so that they meet the following requirementsFootnote 1 :

$$ \begin{align*} & R_{e}^0: \ p_e:\mathcal{C}\to \mathcal{D} \text{ is not an isomorphism,} \\ & R_{e}^1: \ p_e:\mathcal{D}\to \mathcal{C} \text{ is not an isomorphism,} \end{align*} $$

where ${\left \langle {p_e}\right \rangle }_{e\in \mathbb {N}}$ and ${\left \langle {\mathcal {P}_i}\right \rangle }_{i\in \mathbb {N}}$ are effective enumerations of all primitive recursive functions and punctual presentations, respectively. We also build primitive recursive isomorphisms $\gamma _{\mathcal {C}}:\mathcal {C} \to \mathcal {B}$ , $\gamma _{\mathcal {D}}:\mathcal {D} \to \mathcal {B}$ , $\delta _{\mathcal {C}}:\mathcal {A}\to \mathcal {C}$ , $\delta _{\mathcal {D}}:\mathcal {A} \to \mathcal {D}$ .

The idea for this construction is that $\mathcal {C}$ always grows to the right, while $\mathcal {D}$ always grows to the left. $\mathcal {B}$ adds elements that are in $\mathcal {C}$ or $\mathcal {D}$ , while $\mathcal {A}$ adds elements only once they are in both $\mathcal {C}$ and $\mathcal {D}$ . To meet P requirements, we build an isomorphism from $\mathcal {B}$ to $\mathcal {P}_i$ by copying $p_j$ to the left and $p_k$ to the right. The switch between $p_j$ and $p_k$ is simple when they line up. But in the case that they do not line up, which is entirely possible in the case of the dense linear order, we use a special interval $[\mathtt {z},\mathtt {l}]$ which will patch the gap between the isomorphisms $p_j$ and $p_k$ . In the case of Q requirements, we can diagonalise to force $q_j$ and $q_k$ to line up. We highlight that these special elements $\mathtt {z}$ and $\mathtt {l}$ are the same elements for all requirements.

3.2 Construction

Order all $R,P,$ and Q requirements in an effective list of order type $\omega $ . At stage $0$ , let $|A[0]|=|B[0]|=|C[0]|=|D[0]|=2$ . Call these elements $\mathtt {l}$ and $\mathtt {z}$ with $\mathtt {l}>\mathtt {z}$ . These elements are special elements used for our construction. Define $\gamma _{\mathcal {C}}(\mathtt {z})=\delta _{\mathcal {C}}(\mathtt {z})=\gamma _{\mathcal {D}}(\mathtt {z})=\delta _{\mathcal {D}}(\mathtt {z})=\mathtt {z}$ , similarly for $\mathtt {l}$ . This means that $\mathtt {z}$ and $\mathtt {l}$ are the same elements in $\mathcal {A},\mathcal {B},\mathcal {C,}$ and $\mathcal {D}$ . For each stage s, let $z_s$ be the element such that it is the greatest element $z<\mathtt {l}$ at stage $s-1$ . In the construction, $\mathcal {A},\mathcal {B},\mathcal {C,}$ and $\mathcal {D}$ are the same in the interval $[\mathtt {z},\mathtt {l}]$ , therefore $z_s$ is the same element in all structures.

We note that the follow conventions are the same as used in Section 2.1 but is restated here for convenience. For structures we are building ( $\mathcal {A},\mathcal {B},\mathcal {C},\mathcal {D}$ ), we consider $\mathcal {E}[s]$ to be the presentation we have built so far at stage s. Throughout the construction, we will add a new element to $\mathcal {E}$ , this means we add the $<_{\mathbb {N}}$ -least element $x\in \mathbb {N}$ that is not yet in $\mathcal {E}[s]$ and we define $<_{\mathcal {E}}$ as described in the construction. In this construction, we will determine the punctuality of $\mathcal {E}$ by adding the element s to $\mathcal {E}[s]$ by the end of stage s. To ensure that the isomorphisms are primitive recursive, we define them on all elements in $\mathcal {E}[s]$ at stage s.

We will use the macro grow $\mathcal {L}$ to the right (at stage s) to mean add one new element x to $\mathcal {L}$ so that $x>y$ for all $y\in \mathcal {L}[s]$ . Similarly, we will use the macro grow $\mathcal {L}$ to the left to mean add one new element x to $\mathcal {L}$ so that $x<y$ for all $y\in \mathcal {L}[s]$ . We will use grow the interval $[z_s,\mathtt {l}]$ in $\mathcal {L}$ to mean, add $|\mathcal {B}[s-1]|$ many new elements between $z_s$ and $\mathtt {l}$ to $\mathcal {L}[s]$ .

At stage $0$ , no requirement requires attention. R and Q requirements will require attention at stage s as follows:

  • Requirement $R_e^0$ requires attention at stage s if it has not been met and there is some $c\in \mathcal {C}[s]$ such that $p_e(c)=\mathtt {z}$ .

  • Requirement $R_e^1$ requires attention at stage s if it has not been met and there is some $d\in \mathcal {D}[s]$ such that $p_e(d)=\mathtt {l}$ .

  • Requirement $Q_{i,j,k}$ requires attention at stage s if it has not been considered yet and there are $a,b\in \mathcal {P}_i[s]$ such that $q_j(a)=q_k(b)=\mathtt {l}$ .

Every requirement after being considered, never requires attention again. At stage s wait until there is a requirement that requires attention, while we wait, grow the interval $[z_s,\mathtt {l}]$ in all structures. Note that P requirements never require attention; we will show that they are met in the verification.

Requirement $Q_{i,j,k}$ . Let $a,b$ be the witnesses of $q_j(a)=q_k(b)=\mathtt {l}$ . If $a=b$ then declare $Q_{i,j,k}$ good. Otherwise, grow only the interval $(z_t,\mathtt {l})$ in all structures. Wait for a stage t where either $\mathcal {P}_i$ shows it is not a linear order, or either $q_j$ or $q_k$ shows it is not an isomorphism. Declare that $Q_{i,j,k}$ no longer requires attention, then move to the recovery stage.

Requirement $R_e^0$ . Let c be the witness of $p_e(c)=\mathtt {z}$ . At every stage t while we work on this requirement, grow $\mathcal {C}$ and $\mathcal {B}$ to the left and right, grow $\mathcal {D}$ and $\mathcal {A}$ to the right, and grow the interval $(z_t,\mathtt {l})$ in all structures. Compute $p_e(x)$ for all $x\in \mathcal {C}$ to the left of c. Eventually, there must be $x,y\in \mathcal {C}$ such that $x<_{\mathcal {C}}y<_{\mathcal {C}}c$ and $p_e(x)\not <_{\mathcal {D}}p_e(y)$ . Declare that $R_e^0$ is met and no longer requires attention, then move to the recovery stage.

Requirement $R_e^1$ . Let d be the witness of $p_e(d)=\mathtt {l}$ . At every stage t while we work on this requirement, grow $\mathcal {D}$ and $\mathcal {B}$ to the left and right, grow $\mathcal {C}$ and $\mathcal {A}$ to the left, and grow the interval $(z_t,\mathtt {l})$ in all structures. Compute $p_e(x)$ for all $x\in \mathcal {D}$ to the right of d. Eventually, there must be an $x,y\in \mathcal {D}$ such that $d<_{\mathcal {D}}x<_{\mathcal {D}} y$ and $p_e(x)\not <_{\mathcal {C}}p_e(y)$ . Declare that $R_e^1$ no longer requires attention, then move to the recovery stage.

Recovery stage. At a recovery stage $s,$ we ensure that all of our structures have the same number of elements. Ensure that $\gamma _{\mathcal {C}},\gamma _{\mathcal {D}},\delta _{\mathcal {C}},\delta _{\mathcal {D}}$ are all surjective by adding any required elements. In all structures, first grow $(z_s,\mathtt {l})$ , then add an element between any two adjacent elements.

3.2.1 Verification.

Now we show that all requirements are met.

Lemma 3.2. For all $e\in \mathbb {N}$ , if requirement $R^0_e$ is given attention, then $R^0_e$ is met.

Proof. Let c be such that $p_e(c)=\mathtt {z}$ . While we working on this requirement we do not grow $\mathcal {D}$ to the left of $\mathtt {z}$ . Hence, there are only some finite number m elements to the left of $\mathtt {z}$ in $\mathcal {D}$ . Since we grow $\mathcal {C}$ to the left, it must be that eventually we see some $x<_{\mathcal {C}}y<_{\mathcal {C}}c$ but $p_e(x)\not <_{\mathcal {D}}p_e(y)$ , hence we have met $R_e^0$ .

Lemma 3.3. For all $e\in \mathbb {N}$ , if requirement $R^1_e$ is given attention then $R^1_e$ is met.

Proof. Let d be such that $p_e(d)=\mathtt {l}$ . While we are working on this requirement we do not grow $\mathcal {C}$ to the right of $\mathtt {l}$ . Hence there are only some finite number elements to the right of $\mathtt {l}$ in $\mathcal {C}$ . Since we grow $\mathcal {D}$ to the right, it must be that eventually we see some $x,y\in \mathcal {D}$ such that $d<_{\mathcal {D}}x<_{\mathcal {D}} y$ and $p_e(x)\not <_{\mathcal {C}}p_e(y)$ , hence we have met  $R_e^1$ .

Lemma 3.4. For all $i,j,k\in \mathbb {N}$ , if requirement $Q_{i,j,k}$ is given attention and not declared to be good, then requirement $Q_{i,j,k}$ is met.

Proof. If at any stage $\mathcal {P}_i$ shows it is not a linear order, then the requirement is met. So we suppose that $\mathcal {P}_i$ is a linear order. For this requirement to require attention, there must be $a,b\in \mathcal {P}_i$ such that $q_j(a)=q_k(b)=\mathtt {l}$ . Since this requirement is not declared good by assumption, we have $a\neq b$ . Either $q_j(b)<q_j(a)$ or $q_k(a)<q_k(b)$ , otherwise, either $q_j$ or $q_k$ would not be an isomorphism and the requirement is met. Consider the former case. See Figure 3 for a diagram of this case. Wait for $q_j(b)$ to converge at some stage r. Then $q_j(b)\leq z_r$ . From now on, while we are working on this requirement, our structures grow only the interval $[z_r,\mathtt {l}]$ . Suppose that there are less than n elements in the structures that we build at stage r. Wait for $2n$ new elements to appear in $\mathcal {P}_i$ and for $q_j$ and $q_k$ to converge on them. If at least n of these new elements are to the left of b, we will see a disagreement since there are less than n elements to the left of $q_j(b)$ . Otherwise, there are at least n new elements to the right of b, and we will see a disagreement, since there are less than n elements to the right of $q_k(b)$ . Therefore, there must be a stage where $q_j$ or $q_k$ shows that it is not an isomorphism, and at this stage, the requirement is met.

Figure 3 A snapshot of a Q requirement that requires attention and is not declared to be good. The dashed arrows are $q_k$ and solid arrows are $q_j$ .

In the case that $q_j(b)>q_j(a)$ , then $q_k(a)<q_k(b)$ . Then by the same argument as above $q_k(a)\leq z_r$ and elements are only added between $q_k(a)$ and $q_j(a)$ while diagonalising and there must be a stage where this requirement is met.

Lemma 3.5. For all $i,j,k\in \mathbb {N}$ , if requirement $Q_{i,j,k}$ is declared to be good, then requirement $Q_{i,j,k}$ is met.

Proof. $Q_{i,j,k}$ is met if $q_j$ or $q_k$ are not isomorphisms, so suppose $q_j$ and $q_k$ are isomorphisms. $Q_{i,j,k}$ is good, so there is $a\in \mathcal {P}_i$ such that $q_j(a)=q_k(a)=\mathtt {l}$ . Define $\theta :\mathcal {P}_i\to \mathcal {A}$ as follows: for $x\leq a$ define $\theta (x)=\delta ^{-1}_{\mathcal {D}}( q_k(x))$ and for $x>a$ define $\theta (x)=\delta ^{-1}_{\mathcal {C}}( q_j(x))$ . $\theta $ is an isomorphism because $\delta ^{-1}_{\mathcal {D}}(q_k)$ and $\delta _{\mathcal {C}}^{-1}\circ q_j$ are isomorphisms by assumption and $q_j(a)=q_k(a)=\mathtt {l}$ .

We now prove that $\theta $ is primitive recursive. First, compute $x<_{\mathcal {P}_i} a$ , if true, then compute $q_k(x)$ . Now $q_k(x)\leq _{\mathcal {D}}\mathtt {l}$ as $q_j(a)=q_k(a)=\mathtt {l}$ . Notice that by construction, any element that appears in $\mathcal {A}$ on the left of $\mathtt {l}$ appears in $\mathcal {D}$ at the same time. Then $\delta ^{-1}_{\mathcal {D}}( q_k(x))[s]\!\!\downarrow $ where s is the least stage when $x<_{\mathcal {P}_i} a$ and $q_k(x)$ are computed. In the case that $x\leq _{\mathcal {P}_i} a$ is false, then compute $q_j(x)$ and then the same argument (swapping left to right) can be used to show why $\delta ^{-1}_{\mathcal {C}} ( q_j(x))[s]\!\!\downarrow $ at the stage s such that these computations have converged.

Lemma 3.6. For all $e,i,j,k\in \mathbb {N}$ requirements $Q_{i,j,k}, R^0_e$ and $R^1_e$ are met.

Proof. If a requirement never requires attention, then $p_e,p_j,$ or $p_k$ are not surjective and therefore the requirement is met. Suppose that the requirement requires attention at some stage s. By Lemmas 3.23.5, once a requirement is given attention the requirement is met and never requires attention again. The action of each requirement is finite and therefore we give attention to infinitely many requirements. Hence the requirement is eventually given attention and met.

Lemma 3.7. For all $i,j,k\in \mathbb {N}$ , requirement $P_{i,j,k}$ is met.

Proof. If $p_j$ and $p_k$ are not isomorphisms then we have met the requirement, so assume $p_j$ and $p_k$ are isomorphisms.

Suppose $p_j(\gamma _{\mathcal {C}}^{-1}(b_0))=p_k(\gamma _{\mathcal {D}}^{-1}(b_0))$ for some $b_0\in \mathcal {B}$ . Non-uniformly fix $b_0$ , then define $\eta (b)=p_j(\gamma _{\mathcal {C}}^{-1}(b))$ for $b\leq b_0$ and $\eta (b)=p_k(\gamma _{\mathcal {D}}^{-1}(b))$ for $b>b_0$ . By the same argument as the proof in Lemma 3.5, $\eta :\mathcal {B}\to \mathcal {P}_i$ is a primitive recursive isomorphism. Informally, this case is that because $p_j$ and $p_k$ ‘line up’ somewhere, we can then use this to make a primitive recursive isomorphism by copying $p_j$ to the left and $p_k$ to the right of the place where they line up.

Otherwise $p_j(\gamma _{\mathcal {C}}^{-1}(b_0))\neq p_k(\gamma _{\mathcal {D}}^{-1}(b_0))$ for all $b_0\in \mathcal {B}[s]$ . In particular there are $c\in \mathcal {C}$ , $d\in \mathcal {D}$ such that $p_j(c)=p_k(\mathtt {z})$ and $p_k(d)=p_j(\mathtt {z})$ . Then $c<_{\mathcal {C}}\mathtt {z}$ or $d<_{\mathcal {D}}\mathtt {z}$ since $p_j$ and $p_k$ are isomorphisms. See Figures 4 and 5 for a diagram of each case.

Figure 4 A snapshot of a P requirement where $c<\mathtt {z}$ . The dashed arrows represent $p_k$ and solid arrows represent $p_j$ .

Figure 5 A snapshot of a P requirement where $d<\mathtt {z}$ . The dashed arrows represent $p_k$ and solid arrows represent $p_j$ .

Figure 6 A diagram showing $\nu :(\gamma _{\mathcal {C}}(c),\mathtt {l})\subseteq \mathcal {B}\to (\mathtt {z},\mathtt {l})\subseteq \mathcal {D}$ at some stage s.

Suppose that $c<\mathtt {z}$ , as shown in Figure 4. We define a primitive recursive isomorphism $\nu :(\gamma _{\mathcal {C}}(c),\mathtt {l})\subseteq \mathcal {B}\to (\mathtt {z},\mathtt {l})\subseteq \mathcal {D}$ as follows.

Suppose t is the least stage such that $p_j(c)[t]\!\!\downarrow $ and $p_k(d)[t]\!\!\downarrow $ . At stage $t,$ we can start defining $\nu $ . Notice that at every stage $s\geq t$ , $(\gamma _{\mathcal {C}}(c),\mathtt {l})$ contains more elements than $(\mathtt {z},\mathtt {l})$ does. We define $\nu $ so that at each stage s it maps some initial segment of $(\gamma _{\mathcal {C}}(c),\mathtt {l})$ onto $(\mathtt {z},\mathtt {l})$ and we will show that $\nu $ will be defined on the rest of the elements in $(\gamma _{\mathcal {C}}(c),\mathtt {l})$ at the next stage. Note that $\nu $ is injective and order-preserving by construction. At stage t, let $(\gamma _{\mathcal {C}}(c),x)$ be the initial segment in $(\gamma _{\mathcal {C}}(c),\mathtt {l})[t]$ of size $|(\mathtt {z},\mathtt {l})[t]|$ . Map $(\gamma _{\mathcal {C}}(c),x)$ onto $(\mathtt {z},\mathtt {l})[t]$ . See Figure 6 for a diagram of $\nu $ .

At stage $s>t$ , we define $\nu $ as follows. Let $x\in (\gamma _{\mathcal {C}}(c),\mathtt {l})$ be the greatest element such that $\nu (x)[s-1]$ is defined. By construction of $\nu $ , it is defined on all elements in $(\gamma _{\mathcal {C}}(c), x]$ at stage $s-1$ and therefore at the end of each stage $\nu $ is as shown in Figure 6.

If s is not a recovery stage, let $(x,y)$ be the initial segment in $(x,\mathtt {l})[s]$ of size $|(\nu (x),\mathtt {l})[s]|$ . Map $(x,y)$ onto $(\nu (x),\mathtt {l})[s]$ .

If s is a recovery stage, then recall that the recovery stage has two steps, first we grow $(z_s,\mathtt {l})$ , then we add densifying elements (which means an element is added between every pair of elements that are currently adjacent). As soon as we grow $(z_s,\mathtt {l})$ , let $(x,y)$ be the initial segment in $(x,\mathtt {l})$ of size $|(\nu (x),\mathtt {l})|$ . Map $(x,y)$ onto $(\nu (x),\mathtt {l})$ . Now we add the densifying elements as follows. Let a be an element added between some $b_0,b_1$ where $\nu (b_0)$ and $\nu (b_1)$ are defined. Then define $\nu $ to map a to the densifying element between $\nu (b_0)$ and $\nu (b_1)$ .

Now we show that $\nu $ is a primitive recursive isomorphism on domain $(\gamma _{\mathcal {C}}(c),\mathtt {l})$ . $\nu $ is surjective because at each stage s, $\nu $ maps an initial segment of $(\mathtt {z},\mathtt {l})$ , $(\mathtt {z},y)$ , onto $(\mathtt {z},\mathtt {l})[s]$ . Recall that at each stage we add $|\mathcal {B}[s-1]|$ many elements between $z_s$ and $\mathtt {l}$ in $\mathcal {D}$ . Since there are less than $|\mathcal {B}[s-1]|$ many elements between $\mathtt {z}$ and $z_s$ at stage $s-1$ in $\mathcal {B}$ , $y\geq z_s$ . Therefore, every element in $(\mathtt {z},\mathtt {l})$ gets an image either immediately or at the next stage. By construction, notice that the size of $\mathcal {B}[s]$ is bounded by $4^{s+1}$ and hence the size of $\mathcal {B}[s]$ is bounded by a primitive recursive function. Then it follows that $\nu $ is defined on elements either immediately or at the next stage. Therefore, $\nu $ is primitive recursive on domain $(\gamma _{\mathcal {C}}(c),\mathtt {l})$ .

Otherwise, $d<\mathtt {z}$ , as shown in Figure 5. We define a primitive recursive isomorphism $\nu ':(\mathtt {z},\mathtt {l})\subseteq \mathcal {B}\to (d,\mathtt {l})\subseteq \mathcal {D}$ as follows.

Suppose t is the least stage such that $p_j(c)[t]\!\!\downarrow $ and $p_k(d)[t]\!\!\downarrow $ . At stage $t,$ we can start defining $\nu $ . Notice that at every stage $s\geq t$ , $(\mathtt {z},\mathtt {l})$ contains fewer elements than $(d,\mathtt {l})$ does. Note that $\nu $ is injective and order-preserving by construction. Let x be such that $(d,x)$ has size $|(\mathtt {z},\mathtt {l})|$ . Then we define $\nu '$ to map $(\mathtt {z},\mathtt {l})$ onto $(d,x)$ . See Figure 7.

Figure 7 A diagram showing $\nu ':[\mathtt {z},\mathtt {l}]\subseteq \mathcal {B}\to [d,\mathtt {l}]\subseteq \mathcal {D}$ at stage s.

At stage $s>t$ , we define $\nu '$ as follows. Let $x=\nu '(z_s)$ , i.e., the greatest value in the image of $\nu '$ defined at the previous stage. Notice that in this case, in contrast to the previous case, we always map all elements in $(\mathtt {z},\mathtt {l})$ immediately and at the end of each stage $\nu '$ is as shown in Figure 7.

To extend the definition of $\nu '$ when we grow $(z_s,\mathtt {l})$ , we do as follows. Let $(x,y)$ be the initial segment in $(x,\mathtt {l})$ of size $|(z_s,\mathtt {l})|$ . Map $(z_s,\mathtt {l})$ onto $(x,y)$ . We define $\nu '$ on densifying elements at recovery stages as in the previous case.

Notice that in this case, all elements in $(\mathtt {z},\mathtt {l})[s]$ get defined immediately. Therefore, $\nu '$ is primitive recursive on domain $(\mathtt {z},\mathtt {l})$ . At every stage, elements are added between $z_s$ and $\mathtt {l}$ , so every element in $(d,\mathtt {l})$ eventually gets a preimage. Therefore, $\nu '$ is a primitive recursive isomorphism on domain $(\mathtt {z},\mathtt {l})$ .

Recall that for each element $x\in \mathcal {B}[s]$ , at least one of $\gamma _{\mathcal {C}}^{-1}(x)[s]$ and $\gamma _{\mathcal {D}}^{-1}(x)[s]$ converges. The important fact is that if there is a new element, $x\in \mathcal {B}[s]$ , to the left of all other elements so far, then by construction $\gamma _{\mathcal {C}}^{-1}(x)[s]\!\!\downarrow $ . Similarly, if this new element is to the right, then $\gamma _{\mathcal {D}}^{-1}(x)[s]\!\!\downarrow $ . New elements added in the interval $[\mathtt {z},\mathtt {l}]$ are added to all structures at the same stage, so for every element in this interval in $\mathcal {B}[s],$ both $\gamma _{\mathcal {C}}^{-1}(x)[s]$ and $\gamma _{\mathcal {D}}^{-1}(x)[s]$ converge. Recall that $\gamma _{\mathcal {C}}(\mathtt {z})=\mathtt {z}$ , $\gamma _{\mathcal {C}}(\mathtt {l})=\mathtt {l}$ , $\gamma _{\mathcal {D}}(\mathtt {z})=\mathtt {z,}$ and $\gamma _{\mathcal {D}}(\mathtt {l})=\mathtt {l}$ .

If $c<\mathtt {z}$ , define $\eta :\mathcal {B}\to \mathcal {P}_i$ as $\eta (b)=p_j(\gamma _{\mathcal {C}}^{-1}(b))$ for $b\leq \gamma _{\mathcal {C}}(c)$ , $\eta (b)=p_k(\gamma _{\mathcal {D}}^{-1}(b))$ for $b\geq \mathtt {l}$ , and $\eta (b)=p_k(\nu (b))$ for $\gamma _{\mathcal {C}}(c)< b<\mathtt {l}$ . Then this is a primitive recursive isomorphism from $\mathcal {B}$ to $\mathcal {P}_i$ as desired.

If $d<\mathtt {z}$ , define $\eta ':\mathcal {B}\to \mathcal {P}_i$ as $\eta '(b)=p_j(\gamma _{\mathcal {C}}^{-1}(b))$ for $b\leq \mathtt {z}$ , $\eta '(b)=p_k(\gamma _{\mathcal {D}}^{-1}(b))$ for $b\geq \mathtt {l}$ , and $\eta '(b)=p_k(\nu '(b))$ for $\mathtt {z}<b<\mathtt {l}$ . Then this is a primitive recursive isomorphism from $\mathcal {B}$ to $\mathcal {P}_i$ as desired.

Lemma 3.8. $\mathcal {A}\cong \mathcal {B}\cong \mathcal {C}\cong \mathcal {D}$ are punctual and isomorphic to $\mathbb {Q.}$

Proof. By the previous lemmas, infinitely many requirements are worked on. Before we start to work on a new requirement, we enter a recovery stage where we ensure all structures are isomorphic and an element is added between every pair of elements that are currently adjacent, hence the structure we get is dense. We have infinitely many R requirements that we work on; hence, the structures have no end points. Then it is the case that $\mathcal {A}\cong \mathcal {B}\cong \mathcal {C}\cong \mathcal {D}\cong \mathbb {Q}$ .

4 The integers

In this section, we prove Theorems 1.1 and 1.2 in the case of the integers.

4.1 Embedding the diamond

Theorem 4.1 (Diamond for $\mathbb {Z}$ ).

There exist punctual presentations $\mathcal {A},\mathcal {B},\mathcal {C},\mathcal {D}$ of $(\mathbb {Z},<)$ such that $\mathcal {C}$ and $\mathcal {D}$ are incomparable under $\leq _{pr}$ , $\mathcal {B}=\sup (\mathcal {C},\mathcal {D})$ and ${\mathcal {A}=\inf (\mathcal {C},\mathcal {D})}$ .

We build structures $\mathcal {A},\mathcal {B},\mathcal {C,}$ and $\mathcal {D}$ so that they meet the following requirementsFootnote 2 :

$$ \begin{align*} & R_{e}^0: \ p_e:\mathcal{C}\to \mathcal{D} \text{ is not an isomorphism,} \\ & R_{e}^1: \ p_e:\mathcal{D}\to \mathcal{C} \text{ is not an isomorphism,} \\ & P_{i,j,k}: \text{ if }p_j:\mathcal{C}\to\mathcal{P}_i,~ p_k:\mathcal{D}\to\mathcal{P}_i \text{ are p.r. isomorphisms, then } \mathcal{B} \leq_{pr}\mathcal{P}_i, \\ & Q_{i,j,k}: \text{ if }q_j:\mathcal{P}_i\to\mathcal{C},~ q_k:\mathcal{P}_i\to\mathcal{D} \text{ are p.r. isomorphisms, then } \mathcal{P}_i \leq_{pr} \mathcal{A}, \end{align*} $$

where ${\left \langle {p_e}\right \rangle }_{e\in \mathbb {N}}$ and ${\left \langle {\mathcal {P}_i}\right \rangle }_{i\in \mathbb {N}}$ are effective enumerations of all primitive recursive functions and punctual presentations, respectively. We also build primitive recursive isomorphisms $\gamma _{\mathcal {C}}:\mathcal {C} \to \mathcal {B}$ , $\gamma _{\mathcal {D}}:\mathcal {D} \to \mathcal {B}$ , $\delta _{\mathcal {C}}:\mathcal {A}\to \mathcal {C}$ , $\delta _{\mathcal {D}}:\mathcal {A} \to \mathcal {D}$ .

We meet R requirements using the island technique, as used in Section 2.1, where we introduce an element x to the right of all elements. This element acts as a floating island an unknown ‘distance’ away. We compute $p_e(x)$ and use this image to diagonalise. We note that the macros used in this section were used in previous section, but we restate them here for convenience and completeness.

We note that the following conventions are the same as used in Sections 2.1 and 3 but are restated here for convenience. For structures we are building ( $\mathcal {A},\mathcal {B},\mathcal {C},\mathcal {D}$ ), we consider $\mathcal {E}[s]$ to be the presentation we have built so far at stage s. Throughout the construction, we will add a new element to $\mathcal {E}$ , this means we add the $<_{\mathbb {N}}$ -least element $x\in \mathbb {N}$ that is not yet in $\mathcal {E}[s]$ and we define $<_{\mathcal {E}}$ as described in the construction. In this construction, we will determine the punctuality of $\mathcal {E}$ by adding the element s to $\mathcal {E}[s]$ by the end of stage s. To ensure that the isomorphisms are primitive recursive, we define them on all elements in $\mathcal {E}[s]$ at stage s.

We will use the macro grow $\mathcal {L}$ to the right to mean, add one new element x to $\mathcal {L}$ so that $x>y$ for all $y\in \mathcal {L}[s]$ . We use grow $\mathcal {L}$ towards x for some element x to mean, add one new element z to $\mathcal {L}$ so that $z<x$ and $z>y$ for all $y\in \mathcal {L}[s]$ such that $y<x$ . We now detail the formal construction.

4.1.1 Construction.

We arrange all requirements in some effective list and meet them one by one. All R and Q requirements require attention from stage 0. In contrast, we say that $P_{i,j,k}$ requires attention at stage s if there are $c\in \mathcal {C}[s]$ and ${d\in \mathcal {D}[s]}$ such that $p_j(c)[s]\!\!\downarrow =p_k(d)[s]\!\!\downarrow $ . At every stage, we define isomorphisms $\gamma _{\mathcal {C}}:\mathcal {C} \to \mathcal {B}$ , $\gamma _{\mathcal {D}}:\mathcal {D} \to \mathcal {B}$ , $\delta _{\mathcal {C}}:\mathcal {A}\to \mathcal {C}$ , $\delta _{\mathcal {D}}:\mathcal {A} \to \mathcal {D}$ . We note that we will abuse notation and say that $c\leq d$ for $c\in \mathcal {C}$ and $d\in \mathcal {D}$ , by this, we mean that $\gamma _{\mathcal {C}}(c)\leq _{\mathcal {B}}\gamma _{\mathcal {D}}(d)$ .

At stage $0$ , begin working on the first requirement on the list. We now detail the strategies for each requirement.

Requirement $R_e^0$ . Add an extra element, x, into $\mathcal {B}$ and $\mathcal {C}$ and declare that x is larger than any element added so far. At every stage, while we work on this requirement, grow $\mathcal {C}$ and $\mathcal {B}$ towards x, while $\mathcal {A}$ and $\mathcal {D}$ grow to the right. See Figure 8 for a diagram of this. Compute $p_e$ on all elements enumerated into $\mathcal {C}$ . Eventually there must be $z\in \mathcal {C}$ such that $z<_{\mathcal {C}}x$ and $p_e(z)>_{\mathcal {D}}p_e(x)$ . Once we see this element, we have met the requirement. Now add an element y to the right in $\mathcal {A}$ and $\mathcal {D}$ and define $\delta _{\mathcal {C}}(y)=x$ , $\delta _{\mathcal {D}}(y)=y$ , $\gamma _{\mathcal {D}}(y)=x$ .

Figure 8 A diagram showing the extra element x in $\mathcal {C}$ and the way $\mathcal {C}$ and $\mathcal {D}$ grow during this requirement. The hollow circles represent new elements added during working on this requirement. The arrow represents $p_e$ .

Requirement $R_e^1$ . Do the same as in the previous requirement but switch the roles of $\mathcal {C}$ and $\mathcal {D}$ .

Requirement $Q_{i,j,k}$ . If at any stage during this strategy $q_j$ or $q_k$ is seen to not be an isomorphism, halt the stage and move to recovery. Wait for some $l\in \mathcal {P}_i$ to appear and $q_j$ and $q_k$ to be computed on l such that $q_j(l)=c$ and $q_k(l)=d$ for some new elements $c\in \mathcal {C}$ , $d\in D$ , where a new element is an element that was added since we began working on this requirement. While we wait, grow all the structures to the right. Once we find l, if $c= d$ then $Q_{i,j,k}$ is good, move to recovery. Otherwise, if $c< d$ then grow all structures towards d. In the case that $d< c$ , grow all structures towards c.

Requirement $P_{i,j,k}$ . Recall that if we are working on $P_{i,j,k}$ , this means it requires attention, so there are $c\in \mathcal {C}$ and $d\in \mathcal {D}$ such that $p_j(c)\!\!\downarrow =p_k(d)\!\!\downarrow $ . If at any stage during this strategy $p_j$ or $p_k$ is seen to not be an isomorphism, halt the stage and move to recovery. If $c=d$ , then we say that $P_{i,j,k}$ is good, halt the stage and move to the next R or Q requirement on the list. Otherwise consider the following two cases:

  • $c< d$ . Suppose there are n elements between c and d. We find a sequence $d_0=d, d_1,\dots , d_{m+1}$ such that $p_j(d_i)=p_k(d_{i+1})$ and m is such that $d_m$ is a new element since the stage we started to work on this requirement, as can be seen in Figure 9. While we work to define this sequence, grow all structures to the right. Let i be the least such that $m+1\geq i>0$ and we have not yet found $d_i$ . If there is an x such that $p_k(x)=p_j(d_{i-1})$ then let $x=d_i$ . If there is a stage where there is z such that $p_k(z)>p_j(d_{i-1})$ and there is no $x<z$ such that $p_k(x)=p_j(d_{i-1})$ , then move to the next requirement. If we have not moved on from this requirement, then we have found the sequence $d_0, d_1,\dots , d_{m+1}$ . Add $n+1$ elements between $d_m$ and $d_{m+1}$ .

    Figure 9 A diagram showing the sequence $d_i$ . The hollow circles represent new elements added during working on this requirement, as specified in the construction, in the case of this diagram $m=4$ . The solid arrows represent $p_j$ and the dashed arrows represent $p_k$ . Note that we do not represent $\mathcal {C}$ and $\mathcal {D}$ separately in this diagram since they are isomorphic during this requirement and are identified with each other using $\gamma _{\mathcal {C}}$ and $\gamma _{\mathcal {D}}$ .

  • $d< c$ . Do the same as in the previous case, swapping the roles of $\mathcal {C}$ and $\mathcal {D}$ as well as $p_j$ and $p_k$ .

Halt the stage and move to the least requirement which requires attention and has not yet been worked on.

Recovery. Add a new element on the left in each structure. Note that at the end of this stage, the structures all have the same number of elements and $\gamma _{\mathcal {C}}[s],\gamma _{\mathcal {D}}[s],\delta _{\mathcal {C}}[s],\delta _{\mathcal {D}}[s]$ are all isomorphisms. Halt the stage, move to the least requirement which requires attention and has not yet been worked on.

4.1.2 Verification.

Now we verify that all requirements are met.

Lemma 4.2. For all $e\in \mathbb {N}$ , if requirement $R^0_e$ is given attention then $R^0_e$ is met.

Proof. Compute $p_e(x)$ . Suppose there are n elements on the left of $p_e(x) \in \mathcal {D}$ at this stage. Wait for $n+1$ elements to appear on the left of $x\in \mathcal {C}$ . Compute $p_e$ on these elements. Since we grow $\mathcal {D}$ only to the right, there are still n elements on the left of $p_e(x)$ , then $p_e$ will show it is not an isomorphism.

Lemma 4.3. For all $e\in \mathbb {N}$ , if requirement $R^1_e$ is given attention then $R^1_e$ is met.

Proof. The proof is the same to the previous one with the $\mathcal {C}$ and $\mathcal {D}$ swapped.

Lemma 4.4. For all $i,j,k\in \mathbb {N}$ , if requirement $Q_{i,j,k}$ is given attention then $Q_{i,j,k}$ is met.

Proof. If $q_j$ and $q_k$ are not injective or order-preserving, then $Q_{i,j,k}$ is met. Suppose $q_j$ and $q_k$ are injective and order-preserving.

First we prove that we eventually find l such that $q_j(l)=c$ and $q_k(l)=d$ for some new elements $c\in \mathcal {C}$ , $d\in D$ . Suppose not, then we show that $q_j$ or $q_k$ is not injective. Indeed, suppose that there are n elements in each structure at the beginning of the stage. When $2n+1$ new elements appear in $\mathcal {P}_i$ , compute $q_j$ and $q_k$ on them. Suppose that at least $n+1$ of these new elements were mapped into new elements in $\mathcal {C}$ , then these elements were mapped into old elements in $\mathcal {D}$ . In this case, $q_k$ is not injective. Now suppose that there were less than $n+1$ elements mapped into new ones in $\mathcal {C}$ , then at least $n+1$ elements were mapped into old elements in $\mathcal {C}$ and $q_j$ is not injective. Thus, we eventually find l such that $q_j(l)=c$ and $q_k(l)=d$ for some new elements $c\in \mathcal {C}$ , $d\in D$ .

If $c= d$ and $q_j$ and $q_k$ are isomorphisms, then $\delta _{\mathcal {C}}^{-1}( q_j(l))=\delta _{\mathcal {D}}^{-1}( q_k(l))$ for all $l\in \mathcal {P}_i$ . Define an isomorphism $\theta (l)=\delta _{\mathcal {C}}^{-1}( q_j(l))$ . This is an isomorphism since $q_j$ and $\delta _{\mathcal {C}}^{-1}$ are isomorphisms. $\theta $ is primitive recursive because at the least stage that both $q_j(l)$ and $q_k(l)$ converge, $\delta _{\mathcal {C}}^{-1}( q_j(l))$ converges.

Consider the case $c\neq d$ . Let t be the stage when there is $l\in \mathcal {P}_i[t]$ such that $q_j(l)[t]=c$ and $q_k(l)[t]=d$ for new elements $c\in \mathcal {C}[t]$ , $d\in D[t]$ . Let n be the number of elements in $\mathcal {C}$ at stage t (note that all structures have the same size at this stage). By construction, in this case, we grow the interval between c and d in all structures while we wait for a disagreement. We show that this eventually happens. Let $x=\min (c,d)$ and $y=\max (c,d)$ . Notice that, while we wait there are no more than n elements on the left of x and no more than n elements on the right of y. Once $2n+1$ new elements to appear in $P_i$ , we see disagreement because there must be at least $n+1$ new elements on the left or the right of l. In the former case, there are not enough elements to the left of x, hence we will see that $q_j$ or $q_k$ is not an isomorphism (depending whether $x=c$ or d). In the latter case, there are not enough elements to the right of y, hence we will see that $q_j$ or $q_k$ is not an isomorphism, a contradiction.

Lemma 4.5. For all $i,j,k\in \mathbb {N}$ , if requirement $P_{i,j,k}$ is given attention then $P_{i,j,k}$ is met.

Proof. If $p_j$ and $p_k$ are not injective or order-preserving, then $P_{i,j,k}$ is met. Suppose $p_j$ and $p_k$ are injective and order-preserving.

If $P_{i,j,k}$ is good, then for all $b\in \mathcal {B}$ , $p_j(\gamma _{\mathcal {C}}^{-1}(b))=p_k(\gamma _{\mathcal {D}}^{-1}(b))$ . Define $\eta :\mathcal {B}\to \mathcal {P}_i$ as follows. At the least stage s such that $b\in \mathcal {B}[s]$ , define $\eta (b)=p_j(\gamma _{\mathcal {C}}^{-1}(b))$ if $\gamma _{\mathcal {C}}^{-1}(b)[s]\!\!\downarrow $ , otherwise define $\eta (b)=p_k(\gamma _{\mathcal {D}}^{-1}(b))$ . By construction, at stage s at least one of $\gamma ^{-1}_{\mathcal {D}}(b)$ and $\gamma ^{-1}_{\mathcal {C}}(b)$ is defined. Therefore $\eta $ is a primitive recursive isomorphism as desired.

Now suppose $P_{i,j,k}$ is not good. We show that it cannot be the case that both $p_j$ and $p_k$ are isomorphisms. First, we notice that when we begin to work on any requirement at some stage s, any interval of $\mathcal {A}[s-1]$ , $\mathcal {B}[s-1]$ , $\mathcal {C}[s-1]$ , and $\mathcal {D}[s-1]$ is fixed, i.e., no new elements will ever appear in any old interval. Therefore, in the case that we were able to find the sequence $d_0,\cdots ,d_{m+1}$ , the interval $(p_j(c), p_j(d))$ has n elements while the interval $(p_j(d_m), p_j(d_{m+1}))$ has $n+1$ elements; hence $p_j$ or $p_k$ is not an isomorphism. If it is the case that there was some i such that we could not find $d_i$ , then there is z such that $p_k(z)>p_j(d_{i-1})$ . Since there is no $d_i$ , there is no $x<z$ such that $p_k(x)=p_j(d_{i-1})$ . Then $p_k$ is not surjective since we will never add any elements between $d_{i-1}$ and z. Therefore, we have met requirement $P_{i,j,k}$ .

Lemma 4.6. For all $e,i,j,k\in \mathbb {N}$ , requirement $R^0_e$ , $R^1_e$ , $Q_{i,j,k}$ and $P_{i,j,k}$ is met.

Proof. By Lemmas 4.24.5, every requirement is eventually met if given attention. By construction and these lemmas, it follows that the construction works on each requirement for finitely many stages. Therefore, every requirement that requires attention is eventually given attention. In the case of P requirements, if $P_{i,j,k}$ does not require attention, then it is met because $p_j$ or $p_k$ is not surjective.

Therefore, all requirements are met.

Lemma 4.7. $\mathcal {A},\mathcal {B},\mathcal {C,}$ and $\mathcal {D}$ are presentations of $(\mathbb {Z},<)$ .

Proof. Notice that when we start working on a new strategy, we do not place elements in between any old elements. When we do add elements between some new elements we place only finitely many. Infinitely often we add an element to the left and to the right. Therefore, $\mathcal {A},\mathcal {B},\mathcal {C,}$ and $\mathcal {D}$ are presentations of $(\mathbb {Z},<)$ .

4.2 Embedding the atomless Boolean algebra

In this section, we prove the integers case of Theorem 1.2. We use the strategies from the diamond for integers, naturally extending the construction to the full atomless Boolean algebra.

Let $\beta $ denote the atomless Boolean algebra. We will detail how to extend the above techniques to build a presentation $\mathcal {A}_m$ of $\mathcal {L}$ for each $m\in \beta $ . Let $\preceq _{\beta }$ be the partial order defined as follows $a\preceq _{\beta } b$ if $a\wedge b=a$ . We build the presentations $\mathcal {A}_a$ for each $a\in \beta $ so that they meet the following requirements.

$$ \begin{align*} & R_{e}^{a,b}: \text{ if } a\npreceq_{\beta} b \text{, then } p_e:\mathcal{A}_a\to\mathcal{A}_b \text{ is not an isomorphism,} \\ & P^{a,b}_{i,j,k}: \text{ if }p_j:\mathcal{A}_a\to\mathcal{P}_i,~ p_k:\mathcal{A}_b\to\mathcal{P}_i \text{ are p.r. isomorphisms, then } \mathcal{A}_{a\vee b} \leq_{pr}\mathcal{P}_i, \\ & Q^{a,b}_{i,j,k}: \text{ if }q_j:\mathcal{P}_i\to\mathcal{A}_a,~ q_k:\mathcal{P}_i\to\mathcal{A}_b \text{ are p.r. isomorphisms, then } \mathcal{P}_i \leq_{pr} \mathcal{A}_{a\wedge b}, \end{align*} $$

where ${\left \langle {p_e}\right \rangle }_{e\in \mathbb {N}}$ and ${\left \langle {\mathcal {P}_i}\right \rangle }_{i\in \mathbb {N}}$ are effective enumerations of all primitive recursive functions and punctual presentations, respectively.

We also build primitive recursive isomorphisms $\gamma _{a,b}:\mathcal {A}_a\to \mathcal {A}_b$ for all $a,b\in \beta $ with $a\preceq _{\beta } b$ .

4.2.1 Construction.

We arrange all requirements in some effective list and meet them one by one. At each stage, we are building finitely many presentations and we will slowly introduce more presentations to build throughout the construction. Let $E_s$ be the indices of presentations we have started building by stage s. Arrange all elements of $\beta $ in some effective list; we will use this list to introduce new structures throughout the construction.

The requirements require attention at stage s as follows:

  • $R_e^{a,b}$ requires attention at stage s if $a,b\in E_s$ .

  • $Q^{a,b}_{i,j,k}$ requires attention at stage s if $a,b,c\in E_s$ where $c=a\wedge b$ .

  • $P^{a,b}_{i,j,k}$ requires attention at stage s if $a,b,c\in E_s$ for $c=a\vee b$ and there are $x\in \mathcal {A}_a[s]$ and $y\in \mathcal {A}_b[s]$ such that $p_j(x)[s]\!\!\downarrow =p_k(y)[s]\!\!\downarrow $ .

At every stage, we define isomorphisms $\gamma _{a,b}:\mathcal {A}_a \to \mathcal {A}_b$ such that $a\preceq _{\beta } b$ for ${a,b\in E_s}$ . As in the diamond, we will abuse notation and say that $x=y$ for $x\in \mathcal {A}_a$ and $y\in \mathcal {A}_b$ , this means that $\gamma _{a,c}(x)=\gamma _{b,c}(y)$ for some $c\succeq _{\beta }a,b$ . We note that by construction, if this is true for some $c\succeq _{\beta }a,b$ then it is actually true for all $c\succeq _{\beta }a,b$ .

At stage $0$ , let $E_0=\{a,b\}$ , where a and b are the first elements on the list of elements in $\beta $ . Begin working on the first requirement on the list that requires attention.

At stage $s>0$ , enact the strategy of the current requirement we are working on, if no requirement currently requires attention, then go to recovery. We now detail the strategies for each requirement.

Requirement $R^{a,b}_e$ . Do as in strategy for requirement $R_e^0$ from the diamond construction, but replace $\mathcal {C}$ with $\mathcal {A}_a$ and $\mathcal {D}$ with $\mathcal {A}_b$ . All presentations $\mathcal {A}_c$ with $c\succ _{\beta } a$ and $c\in E_s$ , copy $\mathcal {A}_a$ . All other presentations in $E_s$ copy $\mathcal {A}_b$ . All $\gamma _{d,d'}$ are naturally extended.

Requirement $Q^{a,b}_{i,j,k}$ . Do as in strategy $Q_{i,j,k}$ from the diamond construction, replacing $c,d$ with $x,y,$ respectively, and replacing $\mathcal {C},\mathcal {D}$ with $\mathcal {A}_a,\mathcal {A}_b,$ respectively. As in the diamond construction, all structures grow in the same way during this requirement, so $\mathcal {A}_d$ copies $\mathcal {A}_a$ for all $d\in E_{s}$ . All $\gamma _{d,d'}$ are naturally extended.

Requirement $P^{a,b}_{i,j,k}$ . Do as in strategy $P_{i,j,k}$ from the diamond construction, replacing $c,d$ with $x,y,$ respectively, and replacing $\mathcal {C},\mathcal {D}$ with $\mathcal {A}_a,\mathcal {A}_b,$ respectively. As in the diamond construction, all structures grow in the same way during this requirement, so $\mathcal {A}_d$ copies $\mathcal {A}_a$ for all $d\in E_{s}$ . All $\gamma _{d,d'}$ are naturally extended.

Recovery. Add a new element on the left in each structure in $E_s$ . Note that at the end of this stage, all established structures have the same number of elements, and for all $a\preceq _{\beta } b$ , $\gamma _{a,b}:\mathcal {A}_a \to \mathcal {A}_b$ are all isomorphisms. Let c be the least element on the list of elements of $\beta $ that has not yet been introduced. Build $\mathcal {A}_c$ so that it is isomorphic to all $\mathcal {A}_a$ ( $a\in \mathcal {E}_s$ ), define isomorphisms $\gamma _{c,b}$ and $\gamma _{a,c}$ for all $a,b\in E_s$ , $a\preceq _{\beta } c$ and $c\preceq _{\beta }b$ , and define $E_{s+1}=E_s\cup \{c\}$ . Halt the stage, move to the highest priority requirement that requires attention.

4.2.2 Verification.

Notice that at the start of working on a new requirement, all structures are isomorphic (i.e., they have the same number of elements).

Lemma 4.8. For all $a,b\in \beta $ with $a\preceq _{\beta } b$ , $\gamma _{a,b}:\mathcal {A}_a\to \mathcal {A}_b$ is a primitive recursive isomorphism.

Proof. While working on Q and P, all structures grow in the same way, hence it is clear that during these stages $\gamma _{c,d}$ are naturally extended for all $c,d\in \beta $ with $c\preceq _{\beta } d$ . During $R^{a,b}_e$ requirements, we have the following cases for $c,d\in \beta $ with $c\preceq _{\beta } d$ :

  • For any presentations $\mathcal {A}_c, \mathcal {A}_d$ with $c,d\succeq _{\beta } a$ , act as $\mathcal {A}_a$ and therefore grow the same way, so $\gamma _{c,d}$ are naturally extended.

  • For any presentations $\mathcal {A}_c, \mathcal {A}_d$ with $c,d\not \succeq _{\beta }a$ , act as $\mathcal {A}_b$ and therefore grow the same way, so $\gamma _{c,d}$ naturally extended.

  • If we are not in any of the previous cases, then we have $c\not \succeq _{\beta } a$ and $d\succeq _{\beta } a$ . In this case, $\mathcal {A}_c$ acts as $\mathcal {A}_b$ and $\mathcal {A}_d$ acts as $\mathcal {A}_a$ . Then $\gamma _{c,d}$ is naturally extended while leaving only the special element out of its range. Note that this element enters the range in recovery.

As above, by construction, at every stage s, we define $\gamma _{c,d}$ immediately on every element of $\mathcal {A}_c[s]$ , hence $\gamma _{c,d}$ is primitive recursive. When we start working on a new requirement at stage s, $\gamma _{c,d}$ is an isomorphism on domain $\mathcal {A}_c[s]$ onto $\mathcal {A}_d[s]$ .

Lemma 4.9. For all $a,b\in \beta $ and $e,i,j,k\in \mathbb {N}$ , requirements $R^{a,b}_e$ , $Q^{a,b}_{i,j,k,}$ and $P^{a,b}_{i,j,k}$ are met.

Proof. This follows immediately from Lemmas 4.2 and 4.44.6 by swapping roles of $\mathcal {A},\mathcal {B},\mathcal {C},\mathcal {D}$ to $\mathcal {A}_{a\vee b},\mathcal {A}_{a\wedge b}, \mathcal {A}_a,\mathcal {A}_b,$ respectively.

Therefore, all requirements are met and hence we have embedded the atomless Boolean algebra into the punctual degrees of $(\mathbb {Z},<)$ .

Acknowledgements

The authors acknowledge TU Wien Bibliothek for financial support through its Open Access Funding Programme.

Footnotes

1 Note that these requirements are the same as in the invariant linear order case, they are restated here for convenience.

2 Note that these requirements are the same as in the previous sections, they are restated here for convenience.

References

REFERENCES

Alaev, P. E., Existence and uniqueness of structures computable in polynomial time . Algebra and Logic, vol. 55 (2016), no. 1, pp. 7276.Google Scholar
Ash, C. J. and Knight, J., Computable Structures and the Hyperarithmetical Hierarchy, Studies in Logic and the Foundations of Mathematics, 144, North-Holland Publishing Co., Amsterdam, 2000.Google Scholar
Bagaviev, R., Batyrshin, I. I., Bazhenov, N., Bushtets, D., Dorzhieva, M., and Koh, H. T., et al., Computably and punctually universal spaces . Annals of Pure and Applied Logic, vol. 176 (2025), no. 1, p. 103491.Google Scholar
Bazhenov, N. A. and Kalimullin, I. S., Punctual categoricity spectra of computably categorical structures . Algebra and Logic, vol. 60 (2021), no. 3, pp. 223228, Cited by: 1.Google Scholar
Bazhenov, N., Downey, R., Kalimullin, I., and Melnikov, A. G., Foundations of online structure theory . The Bulletin of Symbolic Logic, vol. 25 (2019), no. 2, pp. 141181.Google Scholar
Bazhenov, N., Kalimullin, I., Melnikov, A. G., and Ng, K. M., Online presentations of finitely generated structures . Theoretical Computer Science, vol. 844 (2020), pp. 195216.Google Scholar
Cenzer, D., Downey, R. G., Remmel, J. B., and Uddin, Z., Space complexity of abelian groups . Archive for Mathematical Logic, vol. 48 (2009), no. 1, pp. 115140.Google Scholar
Cenzer, D. and Remmel, J., Polynomial-time versus recursive models . Annals of Pure and Applied Logic, vol. 54 (1991), no. 1, pp. 1758.Google Scholar
Cenzer, D. and Remmel, J., Polynomial-time abelian groups . Annals of Pure and Applied Logic, vol. 56 (1992), no. 1, pp. 313363.Google Scholar
Cenzer, D. and Remmel, J., Feasibly Categorical Abelian Groups, Birkhäuser, Boston, MA, 1995, pp. 91153.Google Scholar
Cenzer, D. and Remmel, J. B., Polynomial-Time Versus Computable Boolean Algebras, De Gruyter, Berlin and Boston, 1999, pp. 1554.Google Scholar
Coles, R. J., Downey, R., and Khoussainov, B., On initial segments of computable linear orders . Order, vol. 14 (1997), no. 2, pp. 107124.Google Scholar
Dorzhieva, M., Downey, R., Hammatt, E., Melnikov, A. G., and Ng, K. M., Punctually presented structures II: comparing presentations . Archive for Mathematical Logic, vol. 64 (2025), pp. 159184.Google Scholar
Dorzhieva, M. and Melnikov, A. G., Punctually presented structures I: Closure theorems . Computability, vol. 12 (2023), no. 4, pp. 323337.Google Scholar
Downey, R., Greenberg, N., Melnikov, A. G., Ng, K. M., and Turetsky, D., Punctual categoricity and universality . The Journal of Symbolic Logic, vol. 85 (2020), no. 4, pp. 14271466.Google Scholar
Downey, R., Melnikov, A. G., and Ng, K. M., Foundations of online structure theory II: The operator approach . Logical Methods in Computer Science, vol. 17 (2021), no. 3, pp. 135.Google Scholar
Downey, R., Harrison-Trainor, M., Kalimullin, I., Melnikov, A. G., and Turetsky, D., Graphs are not universal for online computability . Journal of Computer and System Sciences, vol. 112 (2020), pp. 112.Google Scholar
Downey, R. G., Kach, A. M., Lempp, S., Lewis-Pye, A. E. M., Montalbán, A., and Turetsky, D. D., The complexity of computable categoricity . Advances in Mathematics, vol. 268 (2015), pp. 423466.Google Scholar
Goncharov, S., Lempp, S., and Solomon, R., The computable dimension of ordered abelian groups . Advances in Mathematics, vol. 175 (2003), no. 1, pp. 102143.Google Scholar
Goncharov, S. S., The quantity of nonautoequivalent constructivizations . Algebra and Logic, vol. 16 (1977), no. 3, pp. 169185.Google Scholar
Goncharov, S. S., Autostability of models and abelian groups . Algebra and Logic, vol. 19 (1980), no. 1, pp. 1327.Google Scholar
Goncharov, S. S. and Dzgoev, V. D., Autostability of models . Algebra and Logic, vol. 19 (1980), no. 1, pp. 2837.Google Scholar
Goncharov, S. S., Countable Boolean Algebras and Decidability, Siberian School of Algebra and Logic, Kluwer Academic/Plenum, New York, 1997.Google Scholar
Gratzer, G. A., Lattice Theory: Foundation, Springer, Basel, 2011 Google Scholar
Grigorieff, S., Every recursive linear ordering has a copy in dtime-space(n, log(n)) . The Journal of Symbolic Logic, vol. 55 (1990), no. 1, pp. 260276.Google Scholar
Kalimullin, I. S., Melnikov, A. G., and Ng, K. M., The diversity of categoricity without delay . Algebra and Logic, vol. 56 (2017), no. 2, pp. 171177.Google Scholar
Kalimullin, I. S., Constructing punctually categorical semigroups . Algebra and Logic, vol. 59 (2020), no. 5, pp. 408411.Google Scholar
Kalimullin, I., Melnikov, A. G., and Montalban, A., Punctual definability on structures . Annals of Pure and Applied Logic, vol. 172 (2021), no. 8, Paper No. 102987. 18.Google Scholar
Kalimullin, I., Melnikov, A. G., and Ng, K. M., Algebraic structures computable without delay . Theoretical Computer Science, vol. 674 (2017), pp. 7398.Google Scholar
Kalimullin, I., Melnikov, A. G., and Zubkov, M., Punctual Degrees and Lattice Embeddings, World Scientific, Singapore, 2023, pp. 315334.Google Scholar
Kalociński, D., Mauro, L. S., and Wrocławski, M., Punctual presentability in certain classes of algebraic structures , 49th International Symposium on Mathematical Foundations of Computer Science (MFCS 2024) (Královič, R. and Kučera, A., editors), Leibniz International Proceedings in Informatics (LIPIcs), 306, Schloss Dagstuhl—Leibniz-Zentrum für Informatik, Dagstuhl, 2024, pp. 65:165:15.Google Scholar
Koh, H. T., Melnikov, A. G., and Ng, K. M., A non-density aspect of the rationals, to appear, 2024.Google Scholar
LaRoche, P., Recursively presented Boolean algebras . Notices AMS, vol. 24 (1977), pp. 552553.Google Scholar
Lempp, S., McCoy, C., Miller, R., and Solomon, R., Computable categoricity of trees of finite height . The Journal of Symbolic Logic, vol. 70 (2005), no. 1, pp. 151215.Google Scholar
Mal’cev, A. I., Constructive algebras. I , The metamathematics of algebraic systems (A. Ivanovič Mal'cev, editors), Studies in Logic and the Foundations of Mathematics, 66, Elsevier, Amsterdam, Netherlands, 1971, pp. 148214.Google Scholar
Melnikov, A. G. and Ng, K. M., Computable torsion abelian groups . Advances in Mathematics, vol. 325 (2018), pp. 864907.Google Scholar
Melnikov, A. G. and Ng, K. M., The back-and-forth method and computability without delay . Israel Journal of Mathematics, vol. 234 (2019), no. 2, pp, 9591000.Google Scholar
Melnikov, A. G. and Ng, K. M., A structure of punctual dimension two . Proceedings of the American Mathematical Society, vol. 148 (2020), no. 7, pp. 31133128.Google Scholar
Montalbán, A., Computable Structure Theory: Beyond the Arithmetic, 2023, to appear.Google Scholar
Montalbán, A., Computable Structure Theory: Within the Arithmetic, Cambridge University Press, Cambridge, 2021.Google Scholar
Remmel, J. B., Recursively categorical linear orderings . Proceedings of the American Mathematical Society, vol. 83 (1981), no. 2, pp. 387387.Google Scholar
Rosenstein, J. G., Linear Orderings, Pure and Applied Mathematics, 98, Academic Press, Inc., [Harcourt Brace Jovanovich, Publishers], New York, NY, 1982.Google Scholar
Selivanov, V. and Selivanova, S., Primitive recursive ordered fields and some applications , Computer Algebra in Scientific Computing (Boulier, F., England, M., Sadykov, T. M., and Vorozhtsov, E. V., editors), Springer International Publishing, Cham, 2021, pp. 353369.Google Scholar
Smith, R. L., Two Theorems on Autostability in p-Groups, Springer, Berlin, 1981, pp. 302311.Google Scholar
Figure 0

Figure 1 Solid elements are the old elements from before we started to work on requirement $R_e$, while hollow elements are new elements. The arrow represents $p_e$. The dashes show where we will continue to add points while we work on this requirement.

Figure 1

Figure 2 Solid elements are the old elements from before we started to work on requirement $R_e$ started, while hollow elements are new elements. The arrow represents $p_e$. The dashes show where we will continue to add points while we work on this requirement.

Figure 2

Figure 3 A snapshot of a Q requirement that requires attention and is not declared to be good. The dashed arrows are $q_k$ and solid arrows are $q_j$.

Figure 3

Figure 4 A snapshot of a P requirement where $c<\mathtt {z}$. The dashed arrows represent $p_k$ and solid arrows represent $p_j$.

Figure 4

Figure 5 A snapshot of a P requirement where $d<\mathtt {z}$. The dashed arrows represent $p_k$ and solid arrows represent $p_j$.

Figure 5

Figure 6 A diagram showing $\nu :(\gamma _{\mathcal {C}}(c),\mathtt {l})\subseteq \mathcal {B}\to (\mathtt {z},\mathtt {l})\subseteq \mathcal {D}$ at some stage s.

Figure 6

Figure 7 A diagram showing $\nu ':[\mathtt {z},\mathtt {l}]\subseteq \mathcal {B}\to [d,\mathtt {l}]\subseteq \mathcal {D}$ at stage s.

Figure 7

Figure 8 A diagram showing the extra element x in $\mathcal {C}$ and the way $\mathcal {C}$ and $\mathcal {D}$ grow during this requirement. The hollow circles represent new elements added during working on this requirement. The arrow represents $p_e$.

Figure 8

Figure 9 A diagram showing the sequence $d_i$. The hollow circles represent new elements added during working on this requirement, as specified in the construction, in the case of this diagram $m=4$. The solid arrows represent $p_j$ and the dashed arrows represent $p_k$. Note that we do not represent $\mathcal {C}$ and $\mathcal {D}$ separately in this diagram since they are isomorphic during this requirement and are identified with each other using $\gamma _{\mathcal {C}}$ and $\gamma _{\mathcal {D}}$.