Finite computable dimension and degrees of categoricity

Finite computable dimension and degrees of categoricity

Annals of Pure and Applied Logic 170 (2019) 58–94 Contents lists available at ScienceDirect Annals of Pure and Applied Logic www.elsevier.com/locate...

1MB Sizes 0 Downloads 90 Views

Annals of Pure and Applied Logic 170 (2019) 58–94

Contents lists available at ScienceDirect

Annals of Pure and Applied Logic www.elsevier.com/locate/apal

Finite computable dimension and degrees of categoricity Barbara F. Csima a,∗,1 , Jonathan Stephenson a,b,2 a b

Department of Pure Mathematics, University of Waterloo, Waterloo, ON, N2L 3G1, Canada Department of Mathematics and Statistics, Valparaiso University, Valparaiso, IN, 46383, USA

a r t i c l e

i n f o

Article history: Received 20 October 2016 Received in revised form 13 January 2017 Accepted 3 August 2018 Available online 16 August 2018 MSC: 03D45 03C57 03D80 03D99

a b s t r a c t We first give an example of a rigid structure of computable dimension 2 such that the unique isomorphism between two non-computably isomorphic computable copies has Turing degree strictly below 0 , and not above 0 . This gives a first example of a computable structure with a degree of categoricity that does not belong to an interval of the form [0(α) , 0(α+1) ] for any computable ordinal α. We then extend the technique to produce a rigid structure of computable dimension 3 such that if d0 , d1 , and d2 are the degrees of isomorphisms between distinct representatives of the three computable equivalence classes, then each di < d0 ⊕ d1 ⊕ d2 . The resulting structure is an example of a structure that has a degree of categoricity, but not strongly. © 2018 Elsevier B.V. All rights reserved.

Keywords: Computability theory Computable structure theory

1. Introduction In mathematics, we often identify structures up to isomorphism. We consider isomorphic copies of the same object to be the same. In computable structure theory, we need to be careful. Even if a structure has a computable presentation, it could be that not all computable copies are computably isomorphic. That is, computability theoretically, they are not the same. Indeed, in the case that they are the same, we have the following definition. Definition 1.1. A computable structure A is computably categorical if for all computable B ∼ = A there exists a computable isomorphism between A and B. * Corresponding author. E-mail addresses: [email protected] (B.F. Csima), [email protected] (J. Stephenson). URL: http://www.math.uwaterloo.ca/~csima (B.F. Csima). 1 B. Csima was partially supported by Canadian NSERC Discovery Grant 312501. 2 J. Stephenson is now at the Department of Mathematics, The University of Auckland, Private Bag 92019, Auckland 1142, New Zealand. https://doi.org/10.1016/j.apal.2018.08.012 0168-0072/© 2018 Elsevier B.V. All rights reserved.

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

59

What if a computable structure is not computably categorical? There are a couple of interesting questions we might ask. One is, how many equivalence classes does the structure have up to computable isomorphism? This number, which is at most ω, is known as the computable dimension of the structure. The other is, does the structure have a natural Turing degree where it becomes computably categorical? Goncharov was first to construct a structure of finite computable dimension [8]. There has been much further work on constructing structures of finite computable dimension with various properties [10], [3], [13]. Towards the second question, we first extend the definition of computably categorical to other degrees. Definition 1.2. A computable structure A is d-computably categorical if for all computable B ∼ = A there exists a d-computable isomorphism between A and B. Goncharov related these notions by showing that if a structure is 0 -computably categorical, then it must have computable dimension 1 or ω [9]. That is, the structures of finite computable dimension are necessarily unpleasant to build, in the sense that the fact that the various computable copies are indeed isomorphic cannot be verified by a limit computable isomorphism. The various constructions of structures of finite computable dimension all use an infinite injury type construction, and so are all 0 -categorical. No effort is made to control the complexity of the isomorphism(s). The following definition intends to pin down the level of complexity required to compute isomorphisms of a given computable structure, and to say which Turing degrees can be realized as levels of complexity of isomorphisms of computable structures. Definition 1.3. A structure A has degree of categoricity d if A is d-computably categorical, and for all c such that A is c-computably categorical, d ≤c. We say a degree d is a degree of categoricity if there is some structure with degree of categoricity d. Degrees of categoricity have been widely studied since they were first introduced by Fokina, Kalimullin and Miller in [6]. So far, all examples constructed have been in intervals of the form [0(α) , 0(α+1) ], and have had the following property, which is stronger than merely being a degree of categoricity. Definition 1.4. A degree of categoricity d is a strong degree of categoricity if there is a structure A with computable copies A0 and A1 such that d is the degree of categoricity for A, and every isomorphism f : A0 → A1 satisfies deg(f ) ≥ d. Fokina, Kalimullin and Miller [6] showed that all strong degrees of categoricity are hyperarithmetical. Later, Csima, Franklin and Shore [4] showed that in fact all degrees of categoricity are hyperarithmetical. Recently, Csima and Harrison-Trainor [5] have shown that the only “natural” degrees of categoricity are those of the form 0(α) for some computable α, and moreover that any computable structure has a strong degree of categoricity “on a cone”. In the first half of the paper we construct a rigid computable structure with computable dimension 2, and demonstrate a method for controlling the degree of the isomorphism between the two copies. Indeed, we are able to show the existence of a degree of categoricity d which does not lie in an interval of the form [0(α) , 0(α+1) ] for any computable ordinal α, answering an open question as stated in [6], [7], [1]. Theorem 1.5. There is a rigid computable structure with computable dimension 2 such that the isomorphism f between two computable copies satisfies f T ∅ and f ≤T ∅ , and therefore in particular f
60

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

Corollary 1.6. There is a rigid computable structure which has a degree of categoricity that does not belong to an interval of the form [0(α) , 0(α+1) ] for any computable ordinal α. Proof. Let A be a structure as guaranteed by Theorem 1.5, and let d be its degree of categoricity. Then as d  0 , the only eligible interval is [0, 0 ]. However, A has computable dimension 2, so by the result of Goncharov [9], d  0 . 2 One of the original aims of this paper was to show that there exists a structure that has a degree of categoricity but not strongly. We approached the problem by showing that we could control the degree of the isomorphism in the construction of a structure of finite computable dimension. In the mean time, we have received a preprint from Bazhenov, Kalimullin, and Yamaleev [2], that also shows as its main result the existence of a structure with a degree of categoricity but not strongly. Their approach uses a new notion of “spectral dimension”, and their structure is 0 -computably categorical, so in particular has computable dimension ω. We feel that our approach is of independent interest since it relates the natural notions of computable dimension and degrees of categoricity. In the second half of the paper we apply the ideas of the first half to carry out a more involved construction: that of a rigid computable structure with computable dimension 3, and which has a degree of categoricity but no strong degree of categoricity. That is, we prove the following. Theorem 1.7. There exists a rigid structure of computable dimension 3 such that if d0 , d1 , and d2 are the degrees of isomorphisms between distinct representatives of the three computable equivalence classes, then each di < d0 ⊕ d1 ⊕ d2 ≤ 0 . From Theorem 1.7 we immediately obtain the desired corollary. Corollary 1.8. There is a rigid computable structure with computable dimension 3 which has a degree of categoricity d ≤ 0 , but has no strong degree of categoricity. Neither our example nor the paper of [2] answers the question of whether all degrees of categoricity are strong. That is, the degree of categoricity that our structure constructed in Section 4.2 has is indeed a strong degree of categoricity as witnessed by a different structure. 2. Notation and conventions For general references, see Harizanov [11] for computable structure theory, and Soare [15] for computability theory. Our constructions will make use of Friedberg enumerations. Definition 2.1. Let S ⊆ P(ω). A c.e. Friedberg enumeration of S is a c.e. binary relation ν such that for all i = j, ν(i) = ν(j), where ν(i) = {x | (i, x) ∈ ν}, and S = {ν(i) | i ∈ ω}. For each S ⊆ ω, we let G(S) be the rigid graph associated to S. That is, for each A ∈ S, G(S) has a connected component with a root node with an (n + 3)-cycle attached to the root for each n ∈ A, and no other components. It is easy to see that a computable copy of G(S) gives a c.e. Friedberg enumeration of S, and conversely. Under this association, isomorphisms between computable copies of G(S) correspond to bijections f : ω → ω such that ν(i) = μ(f (i)), where ν and μ are Friedberg enumerations of the same set. The effectiveness of the correspondence guarantees that the Turing degree of the isomorphism between two computable copies of G(S) is the same as that of the bijection f to which it corresponds. We opt to work

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

61

directly with c.e. Friedberg enumerations instead of with the corresponding graphs. However, bearing in mind the strength of the correspondence, we will adopt much of the terminology associated with graphs. We note that our correspondence can be extended to associate arbitrary c.e. binary relations with (non-rigid) graphs. Because of this, we will refer to c.e. binary relations as structures, and fix an effective list (ρe )e∈ω of all such relations. If ν and μ are c.e. binary relations, we let ν(i) and μ(i) be as in the definition of c.e. Friedberg enumerations. We refer to a bijection f : ω → ω for which ν(i) = μ(f (i)) for every i as an isomorphism from ν to μ. Note that if there is a unique isomorphism from ν to μ, then they are c.e. Friedberg enumerations of the same set. Furthermore, given a c.e. binary relation ν, we often refer to i ∈ ω as a component of ν, since i can be viewed as a name for the connected component associated to ν(i) in the corresponding graph. 3. Computable dimension 2 This section is devoted to the proof of our first theorem, which we repeat here. Theorem 3.1. There is a rigid computable structure with computable dimension 2 such that the isomorphism f between two computable copies satisfies f T ∅ and f ≤T ∅ , and therefore in particular f
62

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

Remark 3.2. Note that if n0 , . . . , nk , m0 , . . . , mk are such that ν(ni ) = μ(mi ), then if we perform a right shuffle on n0 , . . . , nk in ν and a left shuffle on m0 , . . . , mk in μ, then after the shuffle we will have ν(ni ) = μ(mi+1 ), where mk+1 := m0 . At each stage of the construction we will perform a right shuffle in ν and a left shuffle in μ, and will always choose the components used in the shuffle to satisfy the condition laid out in Remark 3.2. This will be the only procedure used in our construction. This will ensure that ν[s] and μ[s] remain isomorphic at each stage s. By choosing which components we involve in the shuffle carefully, we will also ensure that ν and μ are still isomorphic at the end of the construction, and that we meet each requirement Ne . We now introduce some ideas and notation which we will use in the construction. Let ae , be , ce , de , xe , ye , and ze , for e ∈ ω, denote natural numbers distinct from one another. For σ ∈ 3<ω and η ∈ {ν, μ}, let pησ [0] = zσ,0 . These will be the “precious” components, used to meet the Ne requirements. N0 will need only one precious component, but Ne will need one for each σ ∈ 3e . We note that the convention elsewhere in the literature is to refer to the components used to meet the requirement Ne as “special” components, and to regard each such component as being a part of the eth Friedberg enumeration ρe from an effective list. This convention is seen, for instance, in Hirschfeldt’s dissertation [12], as well as in the work of Hirschfeldt, Khoussainov, and Shore [14], and Cholak, Goncharov, Khoussainov, and Shore [3]. For readers already familiar with the other terminology, we now draw attention to the fact that our precious components are in fact the images in ν and μ of the special components encountered elsewhere. The reason for our differing approach is that the additional requirements Se which we are trying to achieve require that we control the degree of the isomorphism f between ν and μ. To this end, we have elected to focus on the components in these structures rather than those in the other structures ρe . As is typical, the strings σ ∈ 3<ω are regarded as nodes within a tree of strategies, ordered lexicographically. If α is to the left of β in the tree, then α-stages of the construction are higher priority guesses, and are allowed to reset guesses made at β-stages. We refer to the leftmost path visited infinitely often as the true path T P for the construction, defined by setting T P  n = lim inf s αs  n. We will classify each stage of the construction according to what strategy we use at that stage. We will do so by assigning to each stage s a string αs of length s, and say that s is a β-stage for each β αs . At each stage we will have a finite set of β-marked components in our structures ν and μ. To determine whether a β-stage s is a β0-stage, a β1-stage, or a β2-stage, we will need to decide whether the structure ρe has recovered to resemble our structures ν and μ sufficiently closely. We do so by checking whether there is a well-behaved embedding hηβ from the β-marked components of η into ρe , where η is equal to each of ν and μ. A β2-stage will be a β-stage at which there is no such embedding, a β1-stage will be a stage where there is such an embedding to the same structure as the previous σ-stage at which we had a recovery, whereas a β0-stage will be a stage where there is recovery to the other structure than the time before. At β1-stages, we believe that ρe may be isomorphic to our structures, and work toward ensuring that if so, it is computably isomorphic to the one it has been recovering to. At β0-stages, we work toward ensuring ρe is not isomorphic to our structures, by “tricking” it into building an infinite component that our structure does not have. If β2 is on the true path, the precious components associated to β will be finite (because we stop paying attention to β). If β1 is on the true path, the precious component associated to β will be infinite (because we will keep using the same one in the presentation to which we have recovery, and ensure that we recycle the matching component in the other presentation to keep them isomorphic), and all but finitely many components of our structure are eventually β-marked; if ρe is isomorphic to our structure, the isomorphism is computable on the β-marked components of the structure to which recoveries are occurring, and hence will be computable. Finally, if β0 is on the true path, we discard every precious component associated to β, and the discarded components remain finite, but ρe will nonetheless include an infinite component associated to β, and hence cannot be isomorphic.

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

63

Note that the tree only tells us about the infinitary requirements Ne . The requirements of form Pe will be met by taking a simple diagonalization action to defeat potential computable isomorphisms between ν and μ. This action is not subject to injury, because we will perform our diagonalization using a component which is never again part of a shuffle. The requirements of the form Se will be met by a finitary action, and will impose additional finite restraint on the isomorphism f . They may injure lower priority Ne and Se requirements. However, they will only be a source of finitely many injuries, and therefore do not need to be taken into account when computing the true path—so we have elected to omit the Se requirements from the tree of strategies altogether. At each stage of the construction the structures ν[s] and μ[s] will be isomorphic via a unique isomorphism fs . To meet the requirement Se , we define a modified map fτ,s between μ and ν for each τ of length e. This map predicts which components of ν and μ should be infinite based on the assumption that τ ≺ T P , and is created by adjusting the current isomorphism fs to match that prediction. The maps fτ,s approximate f , in the sense that limn lims fT P n,s = f . For each σ such that σ1 τ , at each τ -stage s, fτ,s will predict the component q = pνσ [t + 1] to be infinite and predict its image in μ to be pμσ [t + 1], by specifying fτ,s (q) = pμσ [t + 1]. This modified map will also be partial: there are finitely many components of ν which we believe are not being mapped to their final images, but for which we do not have any predicted image. This will happen to each component at most once. If τ ≺ T P , then after the last σ0-stage, the components predicted to be infinite will not change, nor will their predicted images in μ. At each τ -stage thereafter, each component which is predicted to be infinite by τ will be involved in a shuffle. The shuffles are arranged so that at the end of the construction we have f (q) = fτ,s (q) for sufficiently large s, i.e. that fτ,s makes correct predictions. We will need to refer to the functions fτ,s when considering the requirements Se . For this reason, we will now split Se into requirements Sτ , where τ ∈ 3<ω has length e. We will work to achieve the requirement Sτ by choosing a witness w ∈ ω and ensuring that there is some n such that for sufficiently large s, either Φfeτ (w)[s] ↓ = C(w), or Φfeτ (w)[s] ↑. Provided that fτ and f agree on the use of the computation, we will have met the requirement Sτ . We will build C by giving a computable enumeration (Cs )s∈ω . To meet the overall requirement Se , it will suffice to meet the subrequirement Sτ for τ = T P  e. For each τ , at each stage of the construction we will have an active witness w for τ -diagonalization. Our strategy for meeting a requirement Sτ at stage s + 1 will be to find a function g : {0, . . . , k − 1} → ω such that Φge,s (w) ↓= 0, enumerate w into C, and ensure that fτ,t  k = g for each t ≥ s + 1. At stage s + 1 we search for g fθ,s , where we require τ θ αs+1 . Because fτ,s  k and fθ,s  k in general do not agree, once we identify such a g, we will need to perform a shuffle which is designed to ensure that fτ,s+1  k = g. We will use restraint functions to protect the initial segment g. We now give some additional intuition on how the components of ν and μ behave under the shuffling processes we use. This discussion essentially outlines the basic strategy developed by Goncharov [8] for meeting Ne . At each recovery stage s + 1 of the construction, we will choose a tuple νn of three elements of ν for each n such that s + 1 is a recovery stage for Nn . These components will occur in the order in the tuple as part of our shuffle in ν at that stage. We will (by convention) let νn be the empty tuple for each other n. We will also define corresponding tuples μ n to be shuffled in μ. These will be the images of the tuples νn under the current isomorphism fs . Exactly which components are used in νn will depend on whether we are at an odd or even recovery stage for Nn . In the case that σ0 ≺ T P for some σ of length n, we have infinitely many stages at which the structure ρn recovers to resemble our structures. However, ρn switches from following ν to following μ or vice versa

64

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

Fig. 1. Shuffles carried out in ν during a run of σ0-stages.

at each σ0-stage. So we cannot expect a computable isomorphism between ρn and either of our structures, and therefore work to ensure that ρn ends up isomorphic to neither. We will now discuss that case. Suppose (for simplicity), that every σ-stage which is a recovery stage for Nn is a σ0-stage. Suppose t0 + 1 is the first σ0-stage, and that t1 + 1 is the next σ-stage which is a recovery stage for Nn . Suppose that t0 + 1 is an even ν-recovery stage, while t1 + 1 is an even μ-recovery stage. Let pνσ,t0 = z. Assume z has never been part of a shuffle, and hence ν(z)[t0 ] = {z}. At stage t0 + 1, νn will consist of three components x0 , z, y0 . We will choose x0 and y0 to be fresh components which are σ-marked (this will be described precisely in the construction). At stage t1 + 1 we will use the component x0 in νn again, but flanked by two new fresh components x1 and y1 . At stage t2 + 1, we include x0 in νn one final time, once again flanked by two fresh components. Fig. 1 indicates the shuffles which will be performed in ν at stages t0 + 1 and t1 + 1. We include only the members of νn [s] for |σ| = ν in the diagram. The symbols , , and are used to indicate the elements enumerated into a member of νn from a component which is part of the shuffle, but which is not part of νn . Each arrow in the diagram is from the set ν(q)[t] to the set ν(q)[s] at a later stage of the construction. The solid arrows are from ν(q)[t] to ν(q)[t + 1], where t + 1 is a stage at which q is part of a shuffle. In the first two rows, the components are listed in the order in which they occur in νn[t0 + 1]. In the first row, we indicate the members of the components at the end of stage t0, and in the second, we indicate their members at the end of stage t0 + 1. Likewise, the third and fourth rows indicate the same information for the components x1 , z, x0 which make up νn [t1 + 1], and the fifth and sixth row correspond to νn [t2 + 1]. The dashed arrows are between ν(q)[t + 1] and ν(q)[s], where t + 1 and s + 1 are consecutive σ0-stages at which q is part of a shuffle in ν. Note that the component pνσ [t0 ] = z is not part of νn [t1 + 1]. n at stages t0 +1 and t1 +1, using † in place of , since the elements Fig. 2 shows the components used in μ enumerated into these components will be different to the ones we saw in ν. Here we see that pμσ[t1 ] is not part of μ n [t2 + 1]. Indeed, these two omitted components are a key part of the strategy: if s + 1 is a σ0-stage and η-recovery stage for Nn , no component which is part of ηn [t] at a stage t ≤ s will ever again be used in a shuffle. It is worth considering how the precious components are “mirrored” inside the computable structure ρn. Recall that our recoveries are governed by mappings hησ from the σ-marked components of the structure η into ρe , where |σ| = e. Suppose that pσ is the component of ρn such that pσ = hνσ (pνσ )[t0 ]. Because t1 + 1 is a σ0-stage of the construction, we have changed recovery direction from ν to μ. This will mean that hνβ [t0 ]  hνβ [t1 ], that is, that our most recent recovery is not compatible with the previous one. However, our shuffles will be chosen so that there are only two ways that the marked components of our structures can possibly line up with ρe : since the last recovery stage, the components of ρe either grew by mimicking a

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

65

Fig. 2. Shuffles carried out in μ during a run of σ0-stages.

Fig. 3. The shuffles carried out in ν during a run of σ1-stages which are ν-recovery stages.

left shuffle, or a right shuffle. The fact that hνβ [t0 ]  hνβ [t1 ] tells us that ρe ’s components mimicked the left shuffle in μ. In this case, since t1 + 1 is a σ0-stage, hνβ [t0 ]  hνβ [t1 ]. Therefore pσ = hμβ (pμσ )[t1 ]. This argument can be repeated at future σ0-stages: pσ = hνβ (pνσ )[t2 ], and so on. The upshot of this is that ρe (pσ ) is in fact an infinite set, since it grows at every σ0-stage. However, no component will be part of νn or μ n infinitely often, and therefore no component of ν or μ will actually be identical to pσ at the end of the construction. Thus, in some sense pσ is the truly important component here: it is this component that is preventing isomorphisms between ρe and our structures. We now consider what happens if σ1 ≺ T P for some σ of length n. In that case we must focus on the last σ0-stage of the construction, and what happens at the σ1-stages that follow it. Our strategy in that case is to choose our shuffles at σ1-stages to build isomorphic infinite components in ν and μ. So suppose that t0 + 1 is a σ0-stage, and that t1 + 1 < t1 + 2 are the next two σ-stages which are recovery stages for Nn , and that each is a σ1-stage. For simplicity, assume t0 + 1 is an even ν-recovery stage for Nn . In addition, suppose pνσ,t0 = z, and ν(z)[t0 ] = {z}. Note that t0 + 1 and t1 + 1 are odd and even ν-recovery stages for Nn , respectively. Fig. 3 shows how the shuffles proceed at each of the indicated stages, with the same conventions as earlier. This time, we are hoping to guarantee a computable isomorphism between ν and ρe . To this end, we will keep including the precious component pνσ,ti in the shuffles at stage ti + 1 at each stage, so that it turns into an infinite component matching one in ρe . A naive attempt at this will cause ν and μ to end up nonisomorphic, because the image of pνσ,ti in μ changes after each shuffle, and therefore we should not expect to build an infinite component in μ matching that in ν. This problem is solved by reusing some old components in the shuffle at odd recovery stages to “realign” the image of pνσ in μ. In particular, if, at an

66

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

Fig. 4. The shuffles carried out in μ during a run of σ1-stages which are ν-recovery stages.

even ν-recovery stage ti + 1 we have νn = x0 , z, y0 (where x0 and y0 are fresh and z = pνσ [ti ]), then, at the next odd ν-recovery stage, we will set νn = x1 , z, x0 , where x1 is a fresh component. As before, Fig. 4 shows the corresponding shuffles in μ. If this shuffling pattern is repeated, it will lead to pνσ [t0 ] = z being a member of νn at infinitely many stages. Likewise f (pνσ )[t0 ] = z will be a member of μ n infinitely often. The reinclusion step at odd recovery stages is necessary because it ensures that the isomorphism between ν and μ stabilizes at the end of the construction via an infinitary process. If we only used even recovery stages in the construction, we would not build an infinite component in μ to correspond to pνσ [t0 ]. 3.1. Formal construction Prior to the construction, we give a formal treatment of the concepts discussed earlier. We first define αs+1  e, recursively in e. We will make use of a set of marked components in each structure η, only believing that ρ|β| threatens to be isomorphic to η if it contains components resembling all of the marked ones. Every stage is a λ-stage. Stage s = 0: We let hηβ [0] be empty for η equal to both ν and μ and for every β. Stage s + 1: Suppose s + 1 is a β-stage for some β with |β| < s. Let e = |β|. Let B η be the set of components of η which are β-marked by the end of stage s, for η = μ and η = ν. We say that stage s + 1 is a recovery stage for Ne if, for η = ν and η = μ, there exists a unique map η hβ [s] : B η → ρe such that ρe (hηβ (x))[s] ⊇ η(x)[s] for each x ∈ B η , and furthermore that if t + 1 < s + 1 is the most recent β-stage which is a recovery stage for Ne , then range(hηβ )[t] ⊆ range(hηβ )[s]. If s + 1 is a recovery stage for Ne , and β was not active at the end of stage s, we say s + 1 is an even ν-recovery stage, a β-initialization stage and a β0-stage. If s + 1 is a recovery stage for Ne , and β was active at the end of stage s, let t + 1 < s + 1 be the most recent β-stage that was a recovery stage for Ne . If t was an even/odd η-recovery stage for Ne , and if hηβ [s] ⊇ hηβ [t], then we say s + 1 is an odd/even η-recovery stage and a β1-stage, whereas if hηβ [s]  hηβ [t], we say that this is an even ι-recovery stage for Ne , where ι = μ if η = ν, and ι = μ otherwise, and that stage s + 1 is a β0-stage. If s + 1 is not a recovery stage for Ne , then we say s + 1 is a β2-stage. Let αs+1 be the unique string of length s + 1 such that s + 1 is an αs+1 -stage. Note that s + 1 is a σ-stage iff σ αs+1 . We now specify fτ,s precisely for each τ , as follows. If σ1 τ , let t + 1 < s + 1 be the most recent σ0-stage. Set fτ,s (pνσ,t+1 ) = pμσ,t+1 . Say that τ s-predicts the components pνσ,t+1 of ν and pμσ,t+1 of μ to be precious. If fs (q) = pμσ,t+1 for some other q, then set fτ,s (q) to be undefined. For all other components q of ν, set fτ,s (q) = fs (q).

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

67

Towards meeting the Sτ requirements, let wτ,n for τ ∈ 3<ω and n ∈ ω denote natural numbers distinct from one another. These elements are the witnesses which will be assigned to Sτ to be enumerated into C. At stage s + 1 of the construction, we will say that a number q is fresh if ν(q)[s] = μ(q)[s] = {q}, and for each σ, q is not σ-reserved, and furthermore, for no t < s + 1 do we have q = pνσ,t or q = pμσ,t . Fresh elements are those which we have never shuffled, nor promised to shuffle at a future stage of the construction. At each stage s we will define a restraint function r : 3<ω → ω which we will use to protect computations that are being used to meet requirements of the form Sτ . We let Rs (τ ) = max{rs (σ) | σ ≤L τ }. This concludes the formal preliminaries, and we proceed with the stage by stage construction. Stage 0: Set ν(i)[0] = μ(i)[0] = {i} for each i. Set r(σ)[0] = 0 for all σ ∈ 3<ω . Recall that we have defined the precious components pησ = zσ,0 for each σ ∈ 3<ω and for η ∈ {ν, μ}. For η ∈ {ν, μ}, λ-mark the precious components pηλ . For the least components of form xl and yk , λ-mark them and say they are λ-reserved. Let C0 = ∅. Recall that we have defined wτ,n to be a distinct natural number for each τ ∈ 3<ω and n ∈ ω. For each τ , say that the active witness for τ -diagonalization is wτ,0 . Say that none of the requirements Sτ and Pe are currently satisfied. Say that no σ ∈ 3<ω is currently active. Stage s + 1: At this stage, we attempt to meet the highest priority requirement which requires attention. That is, we find the least e ≤ s such that one of Pe and Sτ requires attention, where τ = αs+1  e. Of these two, Pe is regarded as having higher priority than Sτ . In each case, our action will consist of performing a right shuffle of some components of ν, and a left shuffle of the identical components in μ. The components shuffled in the two cases will be very similar. We will specify which components should be part of the sequence of components used in the shuffle in each of ν and μ by considering each σ αs+1 in turn, and defining subsequences νn and μ n of components corresponding to σ = αs+1  n. After either action, there is a common clean-up phase. First we activate the strategies whose precious components may be involved in a shuffle at this stage, so that we may track them for recoveries of Ne at later stages. If σ = αs+1  e and s + 1 is a recovery stage for Ne , declare σ to be active, if it is not already active. Now for each type of requirement, we define what it means for that requirement to require attention, and describe our action if it receives attention. Pe requirements: Let Pe be a requirement which is not currently satisfied. Suppose there exists some e, j such that ϕe,s (be,j ) ↓= be,j , that each of ae,j , be,j , ce,j is larger than R(α  e)[s + 1], is fresh, and if any of these three components is β-marked, then β ≥L αs+1 or β ≺ αs+1 . Then say that Pe requires attention. If Pe is the highest priority requirement requiring attention, we act to meet it as follows: Let e, j be as specified above. Say that we attempt to meet Pe at this stage. For each n ≤ s, do as follows: Let σ = αs+1  n. If s +1 is an even ν-recovery stage for Nn , let νn = xl , pνσ,s , yk , where xl and yk are σ-reserved components. Let μ n = xl , fs (pνσ,s ), yk . If s + 1 is an odd ν-recovery stage for Nn , let t be the most recent σ-stage which was a recovery stage for Nn . Let ˆl be such that xˆl was a σ-reserved component used in νn [t]. Let νn = xl , pνσ,s , xˆl , where xl is σ-reserved. Let μ n = xl , f (pνσ )[s], pμσ,t . In both ν-recovery cases, let pνσ,s+1 = pνσ,s and pμσ,s+1 = f (pνσ )[s]. Similarly, if s + 1 is an even μ-recovery stage, let μ n = xl , pμσ,s , yk , where xl and yk are σ-reserved. Let νn = xl , f −1 (pμσ )[s], yk . If s + 1 is an odd μ-recovery stage, let t be the most recent σ-stage which was a recovery stage for Nn . Let n [t]. Let μ n = ykˆ , pμσ,s , yk , where yk is σ-reserved. kˆ be such that ykˆ was a σ-reserved component used in μ Let νn = pνσ,t , f −1 (pμσ )[s], yk . In both μ-recovery cases, let pμσ,s+1 = pμσ,s and pνσ,s+1 = f −1 (pμσ )[s]. If s + 1 is not an Nn recovery stage, let νn and μ n be empty.

68

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

Perform a right shuffle on ae,j , be,j , ce,j , ν0 , . . . , νs in ν and perform a left shuffle on ae,j , be,j , ce,j , s in μ. Say that Pe is satisfied. Proceed to the clean-up phase. μ 0 , . . . , μ Se requirements: Suppose τ αs+1 is of length e and that Sτ is not currently satisfied. If θ  τ , say that a component q of ν is θ-unpredictable if there is some σ such that σi θ for i = 0 or 1 for which q is σ-reserved, or such that q = pνσ,s or q = fs−1 (pμσ,s ), but θ does not s-predict q to be precious. Let wτ,n be the active witness for τ -diagonalization. Check whether there is some θ such that τ θ αs+1 , k < s, and g, which meet the following conditions: (1) g = fθ,s  k (2) if x is a component which is θ-unpredictable, k ≤ x. (3) Φgi (wτ,n )[s] ↓= 0. If such g and θ exist, say that Sτ requires attention. If Sτ is the highest priority requirement which requires attention, we act to meet it as follows: Let g and θ be as above. Suppose that |τ | = e and |θ| = m. Say that we attempt to meet Sτ at this stage. Enumerate wτ,n into Cs+1 . For each i < e, let σ = αs+1  i. Then let νi and μ i be exactly as laid out above in the case where we are attempting to meet Pe . For e ≤ i < m, let σ = αs+1  i. We choose νi and μ i to ensure that fτ,s+1  k = fθ,s = k. μ ν If fs (pσ,t0 +1 ) = pσ,t0 +1 , where t0 + 1 < s + 1 is the most recent σ0-stage, then we will want to involve pνσ,t0 +1 in the shuffle again. We will later see that this occurs precisely when s + 1 is an odd recovery stage for Ni . To this end, if s + 1 is an odd recovery stage for Ni , do as follows: Suppose t < s + 1 is the most recent σ-stage which is a recovery stage for Ni . Then t is an even ν-recovery stage or an even μ-recovery stage. In the former case, let ˆl be such that xˆl was one of the σ-reserved components used in νi [t]. Let νi = xl , pνσ,s , xˆl , where xl is σ-reserved. Let μ i = xl , f (pνσ )[s], pμσ,t+1 . In the latter case, let kˆ be such that ykˆ was one of the σ-reserved components used in μ i [t]. Let μ i = ykˆ , pμσ,s , yk , where yk is σ-reserved. Let νi = pνσ,t+1 , f −1 (pμσ )[s], yk . If e ≤ i < m and s + 1 is not an odd recovery stage for Ni , let νi and μ i be empty. Choose some fresh unmarked dj > max(R(α)[s], k). Perform a right shuffle on dj , ν0 , . . . , νm−1 in ν and perform a left shuffle on dj , μ 0 , . . . , μ m−1 in μ. Define rs+1 (τ ) = max(k, rs (τ )), where the domain of g is {0, . . . , k − 1}. Say that Sτ is satisfied. Proceed to clean-up phase. Clean-up phase: Let τ be such that we met either Sτ or Pe for αs+1  e = τ at this stage. Declare that any component involved in the shuffle is no longer σ-reserved for any σ. For each σ >L τ , do as follows: Declare any σ-reserved components to no longer be σ-reserved. Declare σ inactive. Declare that Sσ is no longer satisfied. Choose the least number wσ,n > s such that wσ,n ∈ / Cs as the active witness for σ-diagonalization. Let rs+1 (σ) = 0. For σ ≤L τ , define rs+1 (σ) = rs (σ) if not already defined. For each σ ≥L τ , find the least fresh zσ,n > R(α)[s + 1] which is not β-marked for any β, and set ν pσ [s + 1] = pμσ [s + 1] = zσ,n . We now describe the marking of components in ν. For each σ αs+1 , σ-mark the component pνσ,s+1 . For each i < e, let αs+1  i = σ. If s + 1 is a recovery stage for Ni , do as follows: σ-mark each component q of ν such that q is part of the right shuffle at this stage or q < s, except those for which q = pνβ,s+1 or q = f −1 (pμβ )[s + 1], or q is β-reserved, for some β ≺ σ. If any of aj , bj , and cj becomes σ-marked for some j, σ-mark all three. For all σ ∈ 3<ω with |σ| ≤ s + 1, if there are no σ-reserved components in ν, choose fresh unmarked components xl and yk of ν which are larger than R(α)[s +1], σ-mark those components and say that they are σ-reserved. For each component σ-marked in this manner, if β0 σ or β1 σ, β-mark that component.

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

69

Finally, for each component q of ν which has been σ-marked at any point for any σ, σ-mark the component fs+1 (q) of μ. 3.2. Verification We will now verify that the construction succeeds. The shuffles we perform in the construction are chosen to meet the condition of Remark 3.2, and therefore the two structures will be isomorphic throughout the construction—a fact which we will soon verify. However, it may not be immediately obvious that there is a unique isomorphism fs : ν[s] → μ[s] at each stage s of the construction. That will be verified by induction on s, and we therefore impose the inductive hypothesis as an assumption for many of our lemmas until we are ready to complete the proof. The existence of a unique isomorphism at each stage will be shown in Lemma 3.7. Note that if σ ∈ 3<ω is of length n ≤ s, then at each stage t such that n ≤ t ≤ s + 1 there are σ-reserved components xl and yk which have never been part of a shuffle, and which are σ-marked. As a first step to showing that our two structures are isomorphic, we must show that they are isomorphic at each stage of the construction. Since the action of our construction is to perform a single shuffle at each stage, by Remark 3.2, it suffices to show that the sequences being shuffled in the two structures are identical. We note that if t and s + 1 are consecutive σ-stages which are recovery stages for Nn , where |σ| = n, and s + 1 is not a σ-initialization stage, then pνσ [s] = pνσ [t] and pμσ [s] = pμσ [t]. Furthermore, none of the components used in νn [t] will have participated in any shuffle between stages t and s, so for each such component q we have ν(q)[t] = ν(q)[s]; the same goes for the components used in μ n [t]. If |σ| = n, and s+1 is a σ-initialization stage, we choose νn [s+1] and μ n [s+1] so that if νn [s+1] = u1 , u2 , u3 and μ n [s + 1] = v1 , v2 , v3 , then for each i ≤ 3 we have ν(ui )[s] = μ(vi )[s]. We must now check that this is true at other σ-stages at which Nn makes a recovery. Lemma 3.3. Let s + 1 be some stage of the construction such that for each t < s + 1, there is a unique isomorphism ft : ν[t] → μ[t]. Let σ be of length n. Suppose that t < s + 1 is a σ-stage which is a recovery stage for Nn at which we attempt to meet a requirement of the form Pi for some i > n, or of form Sτ for some τ  σ. Suppose that s + 1 is the next σ-stage which is a recovery stage for Nn after stage t, and that s + 1 is not a σ-initialization stage. If νn [s + 1] = u1 , u2 , u3 and μ n [s + 1] = v1 , v2 , v3 , then for each i ≤ 3 we have ν(ui )[s] = μ(vi )[s]. Proof. Let s + 1 be a σ-stage which is a recovery stage for Nn , but not a σ-initialization stage. Consider the most recent σ-stage t < s + 1. If that stage is a σ-initialization stage, then we have already remarked that the components in the shuffle at stage t are explicitly chosen to meet the conditions of the lemma. Otherwise, by induction we may assume the result of the lemma at stage t. If νn [s + 1] and νn [s + 1] are empty, there is nothing to show. So assume that this is not the case; we check that if νn[s + 1] = u1 , u2 , u3 and μ n [s + 1] = v1 , v2 , v3 , then for each i ≤ 3 we have ν(ui )[s] = μ(vi )[s]. If s+1 is an even ν-recovery stage for Nn , νn [s+1] is of the form xl , pνσ [s], yk , and μ n [s+1] = xl , f (pνσ )[s], yk , and since xl and yk are fresh components it follows that each component of νn[s + 1] has the same members as the corresponding component of μ n [s + 1]. The case for an even μ-recovery stage is essentially the same. If s + 1 is an odd ν-recovery stage for Nn , then t is an even ν-recovery stage, and so νn [t] is of the form xˆl , pνσ [t − 1], ykˆ , and μ n [t] is xˆl , f (pνσ )[t − 1], ykˆ . Since pμσ [t] = f (pνσ )[t − 1] and ν(pνσ )[t − 1] = μ(f (pνσ ))[t − 1], we then have ν(xˆl )[t] = μ(pμσ )[t]. That is, f (xˆl )[t] = pμσ [t]. So f (xˆl )[s] = pμσ [s]. Since νn [s + 1] = xl , pνσ , xˆl and μ n [s + 1] = xl , f (pνσ )[s], pμσ [s] and xl is a fresh component, it is clear that each of the components of νn [s + 1] has the same members as the corresponding component of μ n [s + 1]. The odd μ-recovery is essentially the same. 2

70

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

Corollary 3.4. Suppose that for each t < s + 1 there is a unique isomorphism ft : ν[t] → μ[t]. Fix n ≤ s, and let αs+1  n = σ. Assume s + 1 is not a σ-initialization stage. If q is a component in ηn [s + 1], where η is either ν or μ, then either q is a σ-reserved component, or at the most recent σ-stage t0 < s + 1 which is a recovery stage for Nn , q was a component in ηn [t0 ]. If, in addition, q is part of ηm [t] at some stage t < s + 1, then m = n and αt  m = σ. Proof. The proof of Lemma 3.3 identifies the components used in each shuffle, and the first claim follows easily from this. For the second claim, suppose that q is a component of ηn [s + 1], where η is either μ or ν. If q has previously been part of a shuffle, then it was part of ηn [t0 ] at the most recent σ-stage t0 < s + 1 which is a recovery stage for Nn , since these are the only components in ηn [s + 1] which have ever been part of a shuffle. So the first stage t at which q is part of a shuffle is a σ-stage, and q is part of ηn [t]. At that stage, it is clear q is not part of ηm [t] for any m = n. The result follows. 2 Our next goal is to check that the shuffling action carried out during the construction preserves rigidity of ν (and μ) at each stage of the construction. We begin by establishing some limits on how elements are propagated between components of ν by the shuffling process. Lemma 3.5. Let s + 1 be some stage of the construction such that for each t < s + 1, there is a unique isomorphism ft : ν[t] → μ[t]. Suppose that p is a component of ν which is part of νn [t0 ] at some σ-stage t0 ≤ s + 1, where σ = αt0  n. Suppose that q is a component which is part of the right shuffle at stage s + 1, and that p ∈ ν(q)[s + 1] but p ∈ / ν(q)[s]. Then s + 1 is a σ-stage and either q is a member of νn [s + 1], or q is the rightmost component of νm [s + 1] for some m < s, or is of the form ce,j or dj . Proof. We work by induction on s. Assume the result for all shuffles at stages t ≤ s. Note that q must be immediately to the left of a component x with p ∈ ν(x)[s]. Applying the inductive hypothesis and Corollary 3.4 to x, we see that s + 1 is a σ-stage and that either x is a member of νn [s + 1], or was the rightmost member of νr [t] at some stage t < s + 1 for some r < n. In the latter case, we observe that the only way that x can be part of a shuffle again is if s + 1 is an odd μ recovery stage for Nr , and x is the leftmost component of νr [s + 1]. In either case it is clear that q is either the rightmost component of νm [s + 1] for some m < n, or is a component of the form ce,j or dj . 2 We are now able to see that precious components pνσ,s and pντ,s may be distinguished by specific elements; we will also use this to show that these components remain distinguishable at the end of the construction. Lemma 3.6. Suppose |σ| = n, and that s + 1 is some stage of the construction such that for each t < s + 1, there is a unique isomorphism ft : ν[t] → μ[t]. Suppose t0 < s + 1 is a σ-initialization stage, p = pνσ,t0 , and that τ = σ. Suppose s + 1 is a τ -stage and a recovery stage for Nm , where m = |τ |. Then p ∈ / ν(q)[s + 1] ν μ / ν(pτ )[s + 1] and p ∈ / μ(pτ )[s + 1] at any stage s + 1. for any component q in νm [s + 1]. Furthermore, p ∈ Proof. Once again, we proceed by induction on s. The idea is essentially the same as that used in the proof of Lemma 3.5. If q is a component in νm [s + 1] and p ∈ ν(q)[s + 1], then s + 1 is a σ-stage, and so n = m lest τ = σ. Then q’s position in the shuffle is immediately to the left of a component x with p ∈ ν(x)[s]. By inductive hypothesis, x must be a member of νn [s + 1], and, being to the right of q, must be the leftmost component of νn [s + 1]. Unless s + 1 is an odd μ-recovery stage for Nn , x is of the form xl and has never been part of a shuffle before. If this stage is an odd μ-recovery stage for Nn , then x is of the form ykˆ , and has been part of one previous shuffle, but that shuffle cannot possibly have led to p ∈ ν(x)[s] being true. This is enough to prove the result, and the second statement about precious components follows immediately. 2

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

71

If, in the above lemma, s + 1 is not a σ-initialization stage, a straightforward induction will show that p ∈ ν(pνσ )[s + 1] and p ∈ μ(pμσ )[s + 1]. So we are able to use the element p to distinguish precious components corresponding to σ with those corresponding to any τ = σ. We have already seen that ν and μ are isomorphic at each stage of the construction. Now we check that there is a unique isomorphism fs : ν[s] → μ[s] at each stage s of the construction, which requires more subtle reasoning. We will in fact prove a slightly stronger statement: that if x and y are distinct components of ν then ν(x)[s]  ν(y)[s]. We will find it useful to note that for each q, ν(q)[s + 1] = {q} if and only if μ(q)[s + 1] = {q}, and furthermore that if this is the case, then q ∈ ν(x)[s + 1] only for x = q. Lemma 3.7. Suppose s + 1 is some stage of the construction such that for each t < s + 1, there is a unique isomorphism ft : ν[t] → μ[t]. Suppose that ν(x)[s]  ν(y)[s] for each x = y. Then ν(x)[s + 1]  ν(y)[s + 1] for each x = y. Thus by induction on s, there is a unique isomorphism fs : ν[s] → μ[s] at every stage s of the construction. Proof. Let y be a component of ν. We will argue that ν(x)[s + 1]  ν(y)[s + 1] for any x = y. In the case that y has never been part of a shuffle by the end of stage s + 1 it is easy to see that ν(x)[s + 1]  ν(y)[s + 1]. Likewise if y is not used in a shuffle at stage s + 1, the result of the lemma follows from assuming it at stage s. In the case that s + 1 is the first stage at which y is part of a right shuffle, let q be the component immediately to the right of y in the shuffle. Then ν(y)[s + 1] = {y} ∪ ν(q)[s], so the only other component which could possibly embed into y is q itself; however applying the lemma to q at stage s, we can see that ν(q)[s]  ν(q)[s + 1] but that y ∈ / ν(q)[s + 1]. This proves the result in that case. Otherwise, suppose that y has previously been used in a shuffle, and is part of νn [s + 1], and that αs+1  n = σ. Let x be some other component of the structure. If x has never been part of a shuffle before stage s + 1 it is clear that ν(x)[s + 1]  ν(y)[s + 1]. If x was previously in νm [t] at some stage t < s for some m = n, then let τ be αs+1  m. Let t0 < s + 1 be the most recent τ -initialization stage and let q = pντ [t0 ]. At one of the stages s +1 and t, x must have been either the leftmost or middle element of νm [s +1] (no element is ever the rightmost element more than once). At that stage, either q was already a member of ν(x), or was enumerated into it. But q ∈ / ν(y)[s] by Lemma 3.6. Thus we are left with a single case: x must also be a member of νn [s + 1], and both x and y have been part of the shuffle in ν at a stage before s + 1. This stage is therefore an odd recovery stage for Nn . We see that the components x and y are adjacent in the shuffle. Let w be the component immediately to the right of rightmost of the two. Either w is fresh, or is the leftmost component of νm [s + 1] for some m > n. In either case, ν(y)[s] and ν(x)[s] have empty intersection with ν(w)[s]. First suppose that x is to the right of y. Then ν(y)[s + 1] also has empty intersection with ν(w)[s]. It follows that ν(x)[s + 1]  ν(y)[s + 1]. On the other hand, if y is to the right of x in the shuffle, then inductive hypothesis that ν(x)[s]  ν(y)[s] and the fact ν(w)[s] and ν(y)[s] are disjoint shows that ν(x)[s + 1]  ν(y)[s + 1]. This concludes the induction. 2 At this point, we check that the right shuffle in ν and the left shuffle in μ carried out at a σ-recovery stage s + 1 are the only two ways in which a structure isomorphic to ν[s] can be extended to get one isomorphic to ν[s + 1]. It is this fact which gives the notions of ν and μ recovery meaning: if σ is of length e, then at a σ0-stage which is not an initialization stage, ρe has switched from following one structure to follow the other instead. Lemma 3.8. If the components involved in the right shuffle at stage s + 1 are n0 , . . . , nd , and we define n−1 = nd , then for 0 ≤ i ≤ k, ν(q)[s] ⊆ ν(ni )[s + 1] only for q = ni and q = ni−1 . Proof. Fix some component ni involved in the right shuffle.

72

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

If ni is part of the shuffle for the first time at stage s + 1, then ni ∈ ν(ni )[s + 1] and ni ∈ ν(ni−1 )[s + 1], but this element belongs to no other components of ν. So ν(ni )[s] ⊆ ν(nj )[s + 1] only for j = i and j = i − 1. If ni is part of νn [s +1] for some n, and nj is a component in the right shuffle which is not part of νn [s +1], but for which ν(ni )[s] ⊆ ν(nj )[s + 1], then Lemma 3.5 shows that nj is either the rightmost member of νm [s + 1] for the greatest m < n such that νm [s + 1] is nonempty, or in case there is no such m, nj is the component of form ce,j or de involved in the right shuffle at this stage. In either case, ν(nj )[s] ∩ν(ni )[s] = ∅ whereas ν(ni )[s] ⊆ ν(nj )[s + 1] = ν(nj )[s] ∪ ν(nj+1 )[s]. Thus ν(nj+1 )[s] ⊆ ν(ni )[s], and by Lemma 3.7, j + 1 = i. So assume ni has been used in the right shuffle at a stage prior to s + 1, and that ni and nj both belong to νn [s + 1] for the same n. If s + 1 is an even ν- or μ-recovery stage for Nn , νn [s + 1] is of the form xl , p, yk , where xl and yk are αs+1  n-reserved. In this case, we must have ni = p. Let v be the component immediately to the right of yk in the right shuffle. Then v ∈ ν(yk )[s + 1], whereas v ∈ / ν(p)[s + 1] by Lemma 3.5. This is all that is necessary to check in this case. Suppose s + 1 is an odd ν-recovery stage for Nn . Then let t + 1 < s + 1 be the most recent αs+1  n-stage which is a recovery stage for Nn , and suppose that νn [t + 1] is xˆl , pνσ [t], ykˆ . Then νn [s + 1] is of the form xk , pνσ [s], xkˆ , where xl is αs+1  n-reserved, and pνσ [t] = pνσ [s]. As noted in the proof of Lemma 3.7, we have ν(pνσ )[s + 1]  ν(xˆl )[s]. In addition, we may note that xˆl ∈ ν(xˆl )[s], whereas xˆl ∈ / ν(xl )[s] ∪ ν(pνσ )[s] = ν(xl )[s + 1]. So ν(xˆl )[s]  ν(xl )[s + 1]. This is sufficient to complete this case. If s + 1 is an odd μ-recovery stage for Nn , similar reasoning implies the result. 2 We can get some extra intuition for how the recovery process at σ-stages plays out in ρe for |σ| = e by looking at the images of the precious components in ρe . At consecutive σ stages which are recovery stages for Ne , the image in ρe of the precious component currently under consideration does not change; that is, if we let pσ [s] = hη (pησ )[s] at each σ stage which is an η-recovery stage for Ne , then pσ does not change between consecutive recovery stages. This preservation of the image is disrupted if the strategy for σ is interrupted by a higher priority action, which requires us to select new precious components. In that case, the next σ-stage at which Ne recovers is declared a σ-initialization stage. Lemma 3.9. Let σ be of length e, and suppose s + 1 is a σ-stage of the construction which is an η-recovery stage for Ne . Suppose that pσ is the component of ρe such that hησ (pησ )[s] = pσ . Suppose t + 1 > s + 1 is the next σ-stage which is a recovery stage for Ne , and that t + 1 is a σ0-stage. Suppose that αt0 >L σ for t ≤ t0 ≤ s + 1, and that at such stages t0 we do not attempt to meet Sθ for any θ ≤L σ. Let ι be μ if η is ν and ν if η is ν. Then hι (pισ )[t] = pσ [t]. Proof. As always, we will treat the ν-recovery case, and leave the similar μ case to the reader. If t + 1 is a σ0-stage, then hνσ [s]  hνσ [t]. Suppose that the components in the right shuffle at stage t + 1 are n0 , . . . , nd , and that for j ≤ d, f (nj )[t] = mj . Of the components involved in the shuffle in ν at stage s + 1, the components which are σ-marked before the shuffle form a contiguous “block” in the shuffle: that is, they are na , na+1 , . . . nb for some a, b ≤ d. Those in νi [s + 1] for some i ≥ n are all σ-marked whereas for i < n, none of the components of νi [s + 1] are σ-marked. Of the remaining components of the form ae,j , be,j , and ce,j or dj used in the right shuffle at this stage, either all or none are σ-marked. There are components qa , qa+1 , . . . , qb of ρe such that for a ≤ j ≤ b, ρe (qj )[s] ⊇ ν(nj )[s], i.e. hνσ (nj )[s] = qj . Because t + 1 is a σ-stage and recovery stage for Ne , each such qj is in the range of hνσ [t]. Each qj must satisfy either ρe (qj )[t] ⊇ ν(nj )[t] = μ(mj+1 )[t], or ρe (qj )[t] ⊇ ν(nj−1 )[t] = μ(mj )[t], by Lemma 3.8 (here we take 0 − 1 to mean d, to take into account the cyclic nature of the shuffle). But hνσ [t] includes every qj in its range, and is one-to-one, and hνσ [t] ⊃ hνσ [s] by assumption. So for each qj , we must have ρe (qj )[t] ⊇ ν(nj−1 )[t] = μ(mj )[t].

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

73

Suppose nj = pνσ [s], so that hνσ,s (pνσ,s ) = pσ , which we have referred to as qj earlier. Then pμσ [t] = fs (nj ) = mj , and thus hμσ (pμσ )[t] = mj = pσ . 2 We wish to check that the structures ν and μ are both isomorphic and rigid at the end of the construction. That they have the same finite components is clear, since the structures are isomorphic at each stage of the construction, and the isomorphism will eventually stabilize on those components. Thus we now focus on the infinite components. We will see that the infinite components are precisely those of the form pησ [t], where σ1 ≺ T P , t + 1 is the last σ0-stage, and is an η-recovery stage, as well as their images in the other structure. Of course, this requires us to check that for such a component, we actually build an isomorphic copy in the other structure. This is guaranteed by the usage of even and odd stages. We now demonstrate that these shuffles have the intended effect. Specifically: at odd recovery stages, we realign the precious components Lemma 3.10. Suppose that |σ| = n and that t + 1 is a σ0-stage, and hence an even η-recovery stage, where η is either ν or μ. Suppose that s + 1 > t + 1 is a σ1- or σ2-stage, and that for t + 1 < t0 < s + 1, αt0 ≥L σ1. If t + 1 is a ν-recovery stage for Nn then pνσ,t+1 = pνσ,s+1 . If, in addition, s + 1 is an even ν-recovery stage for Nn , then pμσ,t+1 = f (pνσ )[t] = f (pνσ )[s] = pμσ,s+1 . If t +1 is a μ-recovery stage for Nn then pμσ,t+1 = pμσ,s+1 . If, in addition, s + 1 is an even μ-recovery stage for Nn , then pνσ,t+1 = f −1 (pμσ )[t] = f −1 (pμσ )[s] = pνσ,s+1 . In either even recovery case, fs (pνσ,t+1 ) = pμσ,t+1 . If s + 1 is an odd recovery stage for Nn then fs (pνσ,t+1 ) = pμσ,t+1 . Proof. We give the proof in the case that t + 1 is an even ν recovery stage for Nn . First, note that pνσ,t+1 = pνσ,s+1 , since we do not redefine this element during a run of ν recoveries for Nn . If s + 1 is an even ν-recovery stage for Nn , let s1 +1 < s2 +1 < s +1 be consecutive among σ-stages which are ν-recovery stages for Nn after stage t +1, so that s1 +1 is an even ν-recovery stage. Suppose that νn [s1 +1] = xˆl , pνσ,s1 , ykˆ . Then μ n [s1 + 1] = xˆl , f (pνσ )[s1 ], ykˆ . We have fs1 +1 (xˆl ) = f (pνσ )[s1 ] = pμσ,s1 +1 . In addition, fs1 +1 (xˆl ) = fs2 (xˆl ), and pμσ,s1 +1 = pμσ,s2 . Note that νn [s2 + 1] is of the form xl , pνσ,s2 , xˆl , and μ n [s2 + 1] = xl , f (pνσ )[s2 ], pμσ,s2 which μ ν ν ν ν is the same as xl , f (pσ )[s2 ], f (pσ )[s1 ]. So pσ,s+1 = f (pσ )[s] = f (pσ )[s2 + 1] = fs2 +1 (pνσ,s2 ) = f (pνσ )[s1 ], with the last equality following from the form of νn [s2 + 1] and μ n [s2 + 1]. So pμσ,s+1 = pμσ,s1 +1 , and therefore it follows by induction that pμσ,t+1 = f (pνσ )[t] = f (pνσ )[s] = pμσ,s+1 . Note that s2 + 1 is an odd recovery stage, and that fs2 (pνσ,t+1 ) = ykˆ = pμσ,t+1 , a disagreement which occurs prior to every odd ν recovery stage. The case for μ-recovery is very similar. 2 We are now ready to confirm that the characterization of the infinite components offered above is correct. We first note that the only components which can possibly be infinite are those associated to strings σ for which σ1 ≺ T P . Lemma 3.11. Fix σ, and suppose that |σ| = n, and that q is a component in νn [s + 1] or μ n [s + 1] at infinitely many σ-stages s + 1. Then σ1 ≺ T P . Proof. Let q be as above and assume q is a component in ηn [s + 1] at infinitely many σ-stages s + 1. It cannot be the case that σ L T P  n, there are infinitely many stages t which are τ -stages for some τ t0 . If η is ν, suppose that t0 + 1 is an even μ-recovery stage for Nn , so that t1 + 1 is the first ν-recovery stage for Nn after t0 + 1, and that t2 + 1 is the first μ-recovery stage for Nn after t1 + 1. Suppose that q is

74

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

in νn [t0 + 1], but has been shuffled at a stage prior to stage t0 + 1. Then q = f −1 (pμσ )[t0 ], since this is the only such component in νn [t0 + 1]. Note that for q to also be in νn [t1 + 1] it must be the case that q = pνσ,t1 and hence q = pνσ,t2 . Note that f (pνσ )[t2 ] = pμσ,t2 . The only component in νn [t2 + 1] which has been part of a shuffle by the end of stage t2 is f −1 (pμσ )[t2 ]. Thus it follows that q cannot be a member of νn [t2 + 1]. If η is μ, the argument is essentially symmetrical. Thus a component can only be a member of ηn [t] for infinitely many t if σ1 ≺ T P . 2 We now complete our characterization of the infinite components; this includes the usage of Lemma 3.10 to check that each infinite component occurs in both copies of our structure, but also that our structure does not contain two copies of the same identical infinite component (which is needed to ensure rigidity of the structure). Lemma 3.12. Suppose that |σ| = n and that σ1 ≺ T P . Let t + 1 be the final σ0-stage of the construction. If t + 1 is a ν-recovery stage for Nn then pνσ [t] is the only component which is in νn [s + 1] at infinitely many stages s + 1, and f (pνσ )[t] is the only component in μ n [s + 1] at infinitely many stages. In addition ν(pνσ,t ) = μ(ft (pνσ,t )). If t + 1 is a μ-recovery stage for Nn then pμσ [t] is the only component in μ n [s + 1] at −1 μ infinitely many stages s + 1 and f (pσ )[t] is the only component which is in νn [s + 1] at infinitely many stages. In addition μ(pμσ,t ) = ν(ft−1 (pμσ,t )), and these are the only infinite components of ν and μ which contain the element pνσ [t]. Proof. As usual, we will only present the ν case, since the μ case is essentially identical. Suppose that t + 1 is an ν-recovery stage for Nn . Then each σ-stage after t which is a recovery stage for Nn is also a ν-recovery stage for Nn . There are no stages s > t + 1 at which we attempt to meet Sτ for any τ ≤L σ, nor at which αs t + 1. Furthermore, it is the only such component. This is because the only other components which are used in νn[s + 1] at such σ-stages are of the form xl or yk , the former being used in two shuffles, and the latter in one. If τ >L σ and |τ | = n, then no component can be part of νn [s + 1] at infinitely many τ -stages, since we reset the precious components and τ -reserved components at each σ-stage. Now we deal with the other structure, μ. If s + 1 > t + 1 is a σ1-stage which is an even ν-recovery stage for Nn , then pμσ,s+1 = f (pνσ )[s] = f (pνσ )[t] which is therefore part of μ n [s + 1] at each such stage. Therefore μ ν ν we have ν(pσ,t )[s] = μ(pσ,s+1 )[s] at such stages and hence ν(pσ,t ) = μ(ft (pνσ,t )). On the other hand, at even ν-recovery stages s +1, fs (pνσ,s ) is the only non-fresh component in μ n [s +1], and therefore that it is the only component which is part of μ n infinitely often. This establishes which components can be part of shuffles in μ infinitely often, and that (at the end of the construction) μ(pμσ,t ) = ν(ft−1 (pμσ,t )). Finally, Lemma 3.6 shows that these are the only infinite components in either structure which can possibly contain the element pνσ [t]. 2 Note that because a component of ν or of μ can only grow by participating in a shuffle, the above lemma characterizes the infinite components, and shows how to distinguish between them. This is enough to conclude that the structures ν and μ are rigid and isomorphic. Corollary 3.13. The structures ν and μ are Friedberg enumerations of the same set, and furthermore for components x = y we have ν(x)  ν(y), and hence there is a unique homomorphic embedding f : ν → μ, which is an isomorphism. We now check that the requirements Pe and Se are met, by induction on e.

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

75

Lemma 3.14. For each e there is at most one stage at which we attempt to meet Pe, which thereafter remains satisfied, and ϕe is not an isomorphism from ν to μ. Proof. Suppose that at some σ-stage t + 1 we attempt to meet Pe . At the end of stage t + 1 we declare that Pe is satisfied and will never attempt to meet Pe again. At stage t + 1 we have some j such that ϕe (be,j ) = be,j , where ν(be,j )[t] = μ(be,j )[t] = {be,j }, and include ae,j , be,j , and ce,j in the shuffle at this stage to ensure that ν(be,j )[t + 1] = μ(be,j )[t + 1]. The component be,j will never be used in a right shuffle again, so ft (be,j ) = f (be,j ) = ϕe (be,j ). Thus ϕe is not an isomorphism from ν to μ. 2 Lemma 3.15. For σ t0 at which we attempt to meet Sσ . Such a stage t1 is the only stage after t0 at which R(σ) can ever again increase. The result then follows by induction on the length of σ. 2 Lemma 3.16. Each requirement Pe is satisfied. Proof. We have seen in Lemma 3.14 that if we ever act to meet Pe then it remains satisfied throughout the construction. We must check that such action occurs, if required. Let σ = T P  e, and assume s to be a stage such that after stage s we never attempt to meet a requirement Pi with i < e or Sτ with |τ | ≤ e, and such that αt ≥L σ for all t ≥ s. Let e, n be such that ae,n , be,n , and ce,n are all fresh numbers greater than R(σ), and are not β-marked for any β s at which ϕe,t (be,n ) = be,n , Pe is the highest priority requirement which requires attention, and we therefore act to meet it. 2 We now check that an uninjured attempt to meet Sσ will have the desired effect at the end of the construction. Lemma 3.17. Let σ = T P  e. Suppose that s + 1 is a stage of the construction after which we never attempt to meet a requirement of the form Pj for any j ≤ e, nor any requirement of the form Sτ for τ
76

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

We then set Rs+1 (σ) = k. Since Sσ is never injured, it follows that the only components q < k of ν/μ which can be part of the right/left shuffle at a stage s0 > s +1 are those which are s0 -predicted to be precious by σ. Those are the same components which are s-predicted to be precious. Furthermore, for τ s we have fσ,s0  Rs+1 (σ) = fσ,s+1  Rs+1 (σ). Finally, any component q which is s0 -predicted to be precious by σ at each stage s0 > s satisfies fσ,s+1 (q) = f (q). Since these are the only components smaller than Rs+1 (σ) which are ever shuffled after stage s + 1, we have g f , as desired. 2 Lemma 3.18. Every requirement Se is met, that is, f ≤T ∅ and f  ∅ . Proof. Firstly, note that f ≤T ∅ , since f (x) = y is true precisely when fs (x) = y for infinitely many s, i.e. when (∀t)(∃s > t)[fs (x) = y], which is a Π02 condition. Let C = {e | (∃t)(∀s > t)e ∈ Cs (x)}. Note that C is Σ01 and hence C ≤T ∅ . We will show f T C. If σ = T P  e, suppose that t0 is a stage after which we never attempt to meet Pj for any j < i or Sτ for any τ t0 we have αs ≥ σ. Then after stage t0 the active witness wσ,n for σ-diagonalization does not change. If Sσ ever requires attention at a σ-stage s + 1 > t0 , we act to meet it, in which case by Lemma 3.17, g ≺ f , where as usual g is the function we use at stage s + 1 to meet Sσ . So Φfe (wσ,n ) = 0, since g is chosen to force this. But wσ,n ∈ Cs+1 . We must now show that Φfe = C, even if we never succeed at permanently satisfying Sσ . So suppose that f k Φe is total. Choose k and s0 to be large enough that Φfe,s (wσ,n ) ↓, and θ ≺ T P long enough that σ ≺ θ 0 and that for each infinite component q < k of ν there is some τ ≺ θ such that q = pντ [t] at infinitely many stages t. Let s > s0 be a stage so large that for each t > s, αt ≥L θ, that no finite component q < k of ν is part of a shuffle after stage s, and that after stage s, we never again attempt to meet a requirement Pi for i ≤ e, nor Sτ for any τ s, we have fθ,t  k = f  k, by choice of k, s, and θ. At the first such stage, Φfeθ k (wσ,n )[t] ↓, by our choice of s. Either we successfully meet Sσ at this stage, and enumerate wσ,n into C, or Sσ does not require attention. In the latter case Φfe (wσ,n ) = Φfeθ k (wσ,n )[t] ↓ = Ct (wσ,n ), and we never enumerated wσ,n into C. So Φfe (wσ,n ) = C(wσ,n ), as desired. 2 This concludes our discussion of the Pe and Sσ requirements. All that remains is to check the Ne requirements: that either ν and μ are not isomorphic to ρe , or that one of them is computably isomorphic to ρe . Which of these situations occurs depends on T P (e). We first address the case in which σ2 ≺ T P for some σ of length e, and eventually some finitary obstruction prevents ρe being isomorphic to our structures. Lemma 3.19. Suppose that σ is of length e and that σ2 ≺ T P . Then ρe is not isomorphic to ν (or to μ). Proof. Let s be such that for t > s, αt >L σ2 and such that after stage s we do not attempt to meet Sτ for any τ ≤L σ. Let t0 + 1 < s be the final σ-stage which is a recovery stage for Ne . Note that after stage s, no elements are ever enumerated into any σ-marked component of ν. Let M be the set of components of ν which are ever σ-marked. If at some σ-stage t + 1 > s there is more than one embedding of the components in M into ρe [t], then there is some q ∈ M such that ν(q) = ν(q)[t] ⊆ ρe (x)[t] for two different components x of ρe . This implies ρe and ν are not isomorphic. If at no σ-stage t + 1 > s is there a homomorphic injection of the components in M into ρe [t], then there is no homomorphic injection of ν into ρe , either. Otherwise, at some first σ-stage t + 1 > s there is a unique homomorphic injection hνβ [t] mapping the components in M to components of

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

77

ρe , but range(hνσ )[t0 ]  range(hνσ )[t]. Let x ∈ range(hνσ )[t0 ] − range(hνσ )[t]. Say x = hνσ (q)[t0 ]. Let u be the component immediately to the left of q in the shuffle carried out at stage t0 + 1. Then aside from q, u is the only component of ν with ν(q)[t0 ] ⊆ ν(q)[t]. This component is also a member of M . So ρe contains three components y with ν(q)[t0 ] ⊆ ν(y)[t]: hνσ,t0 (q), hνσ,t (q), and hνσ,t (u). No component of ν containing the element q can ever be shuffled after stage t0 + 1, since they are all σ-marked. Thus ν(q)[t0 ] is only a subset of the two components q and u of ν. Thus ρe and ν cannot be isomorphic. 2 In the case that T P (e) = 0 we will see that ρe and ν are not isomorphic, because there is an infinite component in ρe which is not present in ν. Here, it is important that the shuffles used to build our structures interact correctly with the recovery procedure. In particular, suppose that |σ| = e, and that s + 1 < t + 1 are consecutive among σ-stages at which Ne recovers. If t + 1 is a σ0-stage and an η-recovery stage for Ne , but not a σ-initialization stage, then we have hησ [s]  hησ [t]. That is, the computable structure ρe has not followed the shuffle in η. Our goal will be to check that ρe has instead followed the shuffle in the other structure. Lemma 3.20. If σ is of length e and σ0 ≺ T P then ρe is not isomorphic to ν. Proof. Suppose that σ0 ≺ T P . Choose t to be large enough that at stages s ≥ t, αs ≥L σ0, and that at stages s ≥ t we do not attempt to meet Sτ for any τ ≤L σ. Let t0 + 1 > t be a σ0-stage. Then t0 + 1 is an η-recovery stage for Ne , where η is either μ or ν. Let pσ be the component of ρe for which we have hησ (pησ )[t0 ] = pσ [t0 ]. Let t1 + 1 > t0 + 1 be the next σ0-stage. Note that t1 + 1 is an ι-recovery stage, where ι is μ if η is ν and ι is ν if η is μ. We have hησ (pμσ )[t1 ] = pισ [t1 ], where ι is ν if η is μ and is μ if η is ν. Thus ρe (pσ )[t1 ] ⊇ ι(pισ )[t1 ], and η(pησ [t0 ] is a proper subset of ι(pισ )[t1 ]. Let ti be the ith σ0-stage at which we perform a right shuffle after t0 . Then η(pησ )[t0 ] ⊂ ι(pισ )[t1 ] ⊂ η(pησ )[t2 ] ⊂ ι(pισ )[t3 ] · · · ⊆ ρe (pσ ), and ρe (pσ ) is infinite. There is no infinite component q of ν such that ν(pνσ )[ti ] ⊆ η(q) for any i, because such a component would by Lemma 3.5 need to be part of νe [s] at infinitely many σ-stages s, but by Lemma 3.11 that implies σ1 ≺ T P , contrary to our assumption. 2 Finally, we deal with the case in which T P (e) = 1. Lemma 3.21. If σ is of length e and σ1 ≺ T P , then if ρe is isomorphic to ν and μ, it is computably isomorphic to one of them. Proof. Let t0 be a stage such that for t > t0 , αt ≥L σ1, and after which we never attempt to meet Sτ for any τ ≤L σ. Suppose that ν, μ, and ρe are all isomorphic (or else there is nothing to show). We will be able to computably determine an isomorphism hη : η → ρe , for η equal to one of ν and μ. We will specify a finite set Dη of components of η, for both choices of η, and show that each component of η which is not in Dη is eventually σ-marked. If τ t0 . Put each component of η which is ever τ -marked into Dη . Put pητ [t0 ] into Dη . If τ2 σ, then only finitely many components of η are ever τ -marked. Put them into Dη . If τ1 σ, say |τ | = i. There is a single component which is part of ηi [t] at infinitely many stages t. Put that component into Dη . Note that a component is in Dμ precisely if it is of the form f (q) for some q ∈ Dν . Any component of ν other than those in Dν will eventually be σ-marked at some stage. The components of μ other than those in Dμ also are all eventually σ-marked. Now, let η be such that eventually every σ-stage which is a recovery stage for Ne is an η-recovery stage. Each component of η is either a member of Dη or is σ-marked at some stage.

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

78

Let hησ =



hησ [s]. Then hησ has domain ω \ Dη , and furthermore is a computable homomorphic

σ1-stages s>t0

embedding of those components of η into ρe . In addition, if η and ρe are isomorphic, it is the only such homomorphic embedding. If η and ρe are isomorphic, rigidity of η implies there is only one isomorphism h : η → ρe , and h ⊇ hησ . Since Dη is finite, and hησ is computable, it follows that h is computable too. 2 This concludes the verification that our construction succeeds in meeting the requirements of form Nn, Se , and Pe . It follows that ν is a c.e. Friedberg enumeration of a set S for which G(S) has computable dimension 2, and that the isomorphism between the computable copies of G(S) corresponding to ν and μ has degree d ≤ 0 and d  0 , as required by Theorem 3.1. 4. Computable dimension 3 This section is devoted to the proof of our second theorem, which we repeat here. Theorem 4.1. There exists a rigid structure of computable dimension 3 such that if d0 , d1 , and d2 are the degrees of isomorphisms between distinct representatives of the three computable equivalence classes, then each di < d0 ⊕ d1 ⊕ d2 ≤ 0 . Note that in Theorem 4.1, any of the isomorphisms is computable from the other two, by performing the appropriate composition. So each di is computable from the join of the other two degrees. It follows that the degrees di are incomparable. One standard method for getting a structure of computable dimension 3 is to take a symmetric product of two copies of a structure of computable dimension 2. However, that will not be useful to us, since if the degree of categoricity of the structure of computable dimension 2 is f , the symmetric product will have three copies up to computable isomorphism, but the degree of categoricity between any two inequivalent copies will still be f . Our strategy for the proof of Theorem 4.1 is similar to the two-structure construction in the previous section, but we must make some significant changes to allow us to work with three structures instead of two. In the two structure construction, we are able to ensure that every shuffle in ν is to the right, and likewise that all of the shuffles in μ are to the left. However, we are now building three structures, so at each stage, our shuffles in two of the structures must be in the same direction. Note that if we always perform shuffles in the same direction in some fixed pair of our structures, those two structures would necessarily be computably isomorphic. Indeed, for each pair of structures, we must arrange that there are infinitely many stages at which the shuffles in those structures are in opposite directions. To do so, we will need to perform both left and right shuffles in all of our structures. Our three isomorphic structures will be called ν i , where 0 ≤ i ≤ 2. We treat the numbering as being modulo 3 under addition, so that for any i, ν i , ν i+1 , and ν i+2 will refer to our three distinct structures in some order. As before, we will work with c.e. binary relations, and build Friedberg enumerations of a set S. (One could equally well work with graphs and build computable copies of G(S) instead.) Once again, we will ensure that no pair of our structures is computably isomorphic, and that the structure we are building has computable dimension 3. The isomorphism from ν i to ν j will be denoted by f i,j ; these indices will also be interpreted modulo 3. We will have two kinds of requirement, as follows: Ne : If ρe is a Friedberg enumeration of S, then ρe is computably isomorphic to ν i for some i.

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

79

In addition to these requirements, we also wish to ensure that if i and j are distinct, then f i,j di+1 for each i, because the requirements Qe,i collectively ensure that di  di+1 . Thus the requirements are sufficient to guarantee that the degrees d0 , d1 , d2 of the isomorphisms between distinct representatives of the three computable equivalence classes satisfy di < d0 ⊕ d1 ⊕ d2 , as required. After the construction it will not be hard to check that di ≤ 0 for each i. The requirements (Qe,i )e∈ω also guarantee that di = 0. Thus we do not need additional requirements to ensure our structures are not computably isomorphic. We will build the structures ν i stage-by-stage, as before, and at each stage s will let fsi,j be the unique isomorphism from ν i [s] to ν j [s]. Note that fsi,i is always the identity function. We will let xe , ye , ze , we for e ∈ ω be natural numbers, all chosen distinctly. These will refer to different types of component in our structure. As before, each string σ of length e will correspond to a guess about the recovery patterns for the structures ρj for j ≤ e. Each stage s + 1 will be a associated to a string αs+1 ∈ 3<ω of length s + 1, as well as its initial segments β. As before, these strings will encode the strategy we are using to meet the requirements Ne at this stage. The interpretations are much as they were in the two structure construction. If β is of length e, we refer to β0- and β1-stages as recovery stages for Ne , because they are stages at which there are maps hiβ from the β-marked components of ν i into ρe which show that ρe resembles our structure. At each such stage, we regard the computable structures ρe as each following one of our structures ν i , and will refer to the stage as an i-recovery stage for Ne . If β is of length e, then a β1-stage is one at which the structure ρe recovers in a manner matching the way we have extended the structure ν i that ρe was following at the last β-stage at which Ne had a recovery. We say that ρe has recovered to follow ν i again, and we work towards making ρe and ν i computably isomorphic. At a β0-stage, ρe recovers, but its recovery does not match the structure ν i which it was most recently following. We say that ρe is following one of the other two structures ν k . We will choose ν k so that at the most recent β-stage at which Ne had a recovery, the shuffles in ν i and ν k were in opposite directions. We then work toward ensuring that ρe is not isomorphic to our structure. We interpret 3<ω as a tree of strategies, and let T P = lim inf s αs+1 be the true path, which corresponds to the strategy which succeeds. For each σ and i, we will specify a precious component piσ [s] of ν i at each stage s of the construction. We begin by setting piσ [0] = zσ,0 for each σ. These components will play a role analogous to the precious components of the previous construction. Our construction bears a strong resemblance to that carried out in the first part of the paper. However, we must use a modified version of the Goncharov construction [8], to allow for shuffles occurring in both directions. Other than that, the main change is that the Se requirements have been replaced by the new Qe,i requirements. Each requirement Qe,i will be split into different versions Qτ,i , where τ ∈ 3<ω is of length e. If σ
80

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

i,j We will use functions fτ,s which guess at the isomorphism f i,j between the two structures ν i and ν j . i,j The functions fτ,s will be modified from the current isomorphism f i,j by incorporating guesses about which components of our structures should be infinite, based on the assumption that τ ≺ T P . At a τ -stage s + 1, i,j for σ1 τ , we will set fτ,s+1 (piσ,t+1) = pjσ,t+1 , where t + 1 < s + 1 is the most recent σ0-stage, on the assumption that these components are infinite. There are finitely many other elements on which we will i,j not define the map fτ,s+1 , because we know that their current images are incorrect, but do not have any information about what the correct image should be. Other than that, the modified map will agree with the function fsi,j . When meeting the requirement Qτ,i we will have a specified active witness w for τ -diagonalization, which is of the form wτ,n for some n. Prior to this attempt to meet the requirement, the witness will never have been part of a shuffle, so we will initially have f i,i+1 (w) = w. Our goal in meeting the requirement Qτ,i will be to ensure that either

Φfe

i+1,i+2

(w) ↑

or Φfe

i+1,i+2

(w) ↓ = f i,i+1 (w).

This requirement will only require attention if we discover a possible future state in the construction in which Φfe

i+1,i+2

(w) ↓= w.

If this happens, we will need to perform a diagonalization, which will take the form of an additional shuffle designed to preserve the threatening computation we found, but to nullify the threat by ensuring that w = f i,i+1 (w). At a stage s + 1 at which we are working on the requirement Qτ,i , we search for some partial function g such that Φge (w) ↓= w, and which is a plausible initial segment of the isomorphism f i+1,i+2 . We use the i+1,i+2 predictions fθ,s for θ  τ to help us decide which strings could be initial segments of the isomorphism. We then act by performing a shuffle to ensure that g ≺ fτi+1,i+2 [s + 1]. At this stage, we will not involve w i,i+1 (w). We will apply restraint to ensure that the initial segment in the shuffle, and will have g(w) = w = fs+1 g is protected. The procedure used at this stage will strongly resemble that used to meet the requirements Sτ of the previous construction. We will perform a right shuffle in ν i and ν i+1 , and a left shuffle in ν i+2 . It is vital that the shuffles in ν i+1 and ν i+2 are in opposite directions here, as we are trying to control an initial segment of f i+1,i+2 , and therefore must alter the isomorphism between those two structures. As in the two i+1,i+2 i+1,i+2 structure construction, we will want to ensure fθ,s  k = fτ,s+1  k, for some appropriately chosen k i,i+2 and θ  τ . Note that f also changes at this stage, but our requirement Qτ,i does not care about this isomorphism. Having identified the threatening string g, we then wait for a later τ -stage, which will provide us with the opportunity to perform a diagonalization shuffle which arranges that w = f i,i+1 (w). The diagonalization will consist of a right shuffle in ν i , and left shuffles in ν i+1 and ν i+2 . At this stage, and only this stage, we include w in our shuffle. We will have components called companions to w which are on either side of it in the shuffle. By performing shuffles in the same direction in ν i+1 and ν i+2 , we avoid disrupting the computation given by the initial segment g which we found earlier. At the same time, we include w in our shuffles, and the shuffles in ν i and ν i+1 are in opposite directions. This will cause the image of w under f i,i+1 to change, so that f i,i+1 (w) is no longer equal to w. Thus Φge (w) = f i,i+1 (w), and we succeed at meeting Qτ,i . We will then of course continue to protect the computation given by g, as well as its disagreement with f i,i+1 on w. Note that we do not have a lot of choice in terms of the directions of shuffles we carry out: the shuffles carried out in ν i+1 and ν i+2 when we first attempt to meet the requirement must be in opposite directions, and, at the diagonalization stage the shuffles carried out in ν i+1 and ν i+2 must be in the same direci+1,i+2 tion, to preserve the initial segment g = fτ,s+1  k which is providing us a computation to diagonalize

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

81

Fig. 5. At stage s+1 we detect a potential initial segment g which threatens Qτ,i , and take action. The shuffles in ν i+1 and ν i+2 are in opposite directions, which causes the isomorphism between them to change, and our shuffle is chosen so that fτi+1,i+2 [s + 1]  k = g. The map fτi,i+1 does not change at this stage.

Fig. 6. At a later stage t + 1 we perform a diagonalization for the sake of Qτ,i , to nullify the threat detected at stage s + 1. Because the shuffles in ν i+1 and ν i+2 are in the same direction, f i+1,i+2 [t] = f i+1,i+2 [t + 1]. Thus we preserve the initial segment which threatened Qτ,i , i.e. fτi+1,i+2 [t + 1]  k = g. By involving the witness w in the shuffle, we get f i,i+1 [t + 1](w) = f i,i+1 [t](w).

against. However, the shuffle in ν i must be in the opposite direction to that in ν i+1 , in order to ensure that f i,i+1 (w)[t + 1] is no longer equal to w. We will simply adopt the convention that when we attempt to meet Qτ,i we always perform a right shuffle in ν i . This convention determines the direction of nearly all of the shuffles carried out during the construction. i+1,i+2 If τ ≺ T P and the requirement Qτ,i is never injured or attended to after stage s, then g = fτ,s+1 k i+1,i+2

will truly be equal to f i+1,i+2  k. Furthermore, we will have Φfe (w) ↓ = f i,i+1 (w) and hence have met Qe,i . If a requirement Qτ,i is injured for any reason, we will abandon all progress which we have made towards meeting it, and choose a new active witness. If τ ≺ T P then the requirements of the form Qτ,i will only be injured finitely often. In Figs. 5 and 6 we illustrate the directions in which we shuffle in each of our structures while acting to meet Qτ,i . If τ0 ≺ T P , and |τ | = e, then the computable structure ρe is not isomorphic to our structures. The reason for this is essentially the same as it was in the two structure construction. We use functions hiτ mapping the τ -marked components of ν i to components of ρe to determine what kind of recovery stage we are at. Consider a τ0-stage s + 1 which is an i-recovery stage (that is, a stage at which we believe ρe is following ν i ), and let pτ be the component of ρe with hiτ0 (piτ )[s + 1] = pτ . We can regard the component pτ as the copied version of our precious component in the computable structure ρe. For each j = i, we will choose pjτ [s + 1] = f i,j (piτ )[s]. Suppose the next τ0-stage t + 1 is a j-recovery stage. Then ρe has recovered to follow ν j , rather than ν i . This will force hjτ (piτ )[s] = pτ , because exactly one of hiτ (piτ )[s] and hjτ (pjτ )[s] is equal to ρe , and we will see that the other choice is incompatible with s + 1 being a τ0-stage. This procedure is repeated infinitely often as ρe switches its recovery between the different structures, which leads to creation of an infinite component pτ of ρe which is not present in our structures. There is an additional hazard to using three structures in our construction, which is the following: if we have τ0 ≺ T P for some string of length e, then there are infinitely many τ -recovery stages, but at each τ0-stage, ρe switches to follow a different structure. At these stages, we are discarding our old precious components. As in the two structure construction, our goal is to fool ρe into building an infinite component which is in some sense the limit of the precious components which we discard throughout the construction. However, if we did not go to any effort to avoid it, it is conceivable that ρe might always switch between following the same two of our structures, and that the third structure’s shuffles might be in the same direction as the structure that ρe follows at every τ0-stage. That would ruin our strategy, because we would fall into our own trap: we would end up building an infinite component in that third structure which is not present in the other two. To avoid this phenomenon, we work to arrange that if τ0 ≺ T P then the structure ρe follows each of our structures ν i at infinitely many stages. It is for this reason that when we have a choice of which structure to declare ρe to follow, we choose the one for which the most recent recovery to that

82

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

structure was earliest. We will observe that if t + 1 is a τ0-stage at which ρe switches from following ν i to another structure, then no component of ν i which is part of a shuffle in ν i at a τ -stage before t + 1 can be part of a shuffle in ν i at a τ -stage after stage t + 1, which is why having infinitely many recoveries to each structure prevents us from accidentally building an infinite component in one of the structures. As before, we will meet the requirements Ne passively by building our structures using shuffles and keeping track of recovery stages. If |τ | = e, then at each τ -recovery stage, we will include a triple νn of elements in the shuffle for the sake of τ . If s + 1 is a τ1-stage and an i-recovery stage for Ne , then we believe piτ,s will be an infinite component of ν i . We will include piτ,s as the middle element of νei [s + 1]. If we do this infinitely often, we will indeed build an infinite component. We must also build an identical infinite component q in ν j for each j = i. We do so using a method akin to the odd/even recovery stages in the two-structure construction. However, the process must be made more intricate to account the fact that we must now keep track of three structures, as well as allowing for shuffles in each structure to occur in either direction. If, at stage s + 1 q = f i,j (piτ )[s], then if we include piτ,s in νe [s + 1], we must also involve q in the shuffle in νej [s + 1], in order to preserve the isomorphism between the two structures. If these shuffles are in i,j opposite directions, then q = f i,j (piτ )[s + 1]. If s + 1 is a τ1-stage, our map fτ1 has made a commitment i i to not only the fact that ν (pτ,s ) should be infinite, but also to what its image in ν j should be. We may have committed to ensuring f i,j (piτ ) = q, which our shuffle has just disrupted. If so, we must correct this. We must then use q in a later shuffle to realign the map. We can only do so at a τ1-stage t + 1 at which the shuffles in ν i and ν j are in opposite directions. At that point we will include both fti,j (piτ,t ) and q in the shuffle in ν j . This allows us to reverse the unwanted change to f i,j , so that q = f i,j (piτ )[t + 1] once more. When we want to reinclude an element in a later shuffle, we will do so by referring to it as being in a τ -queue. The τ -queues will consist of one τ -i-queue for each structure ν i , and we will put at most one component into each τ -queue at a time. The reinclusion of the components in the queues is analogous to the process used at odd stages of the two structure construction. Indeed, our intention is that if τ ≺ T P and q is realigned to match our prediction f i,j (piτ,s ) = q infinitely often throughout the construction, then we will have f i,j (piτ,s ) = q. There are two major complications to this procedure. The first is that we will not know ahead of time which directions our shuffles are in, and therefore cannot plan in advance when to reincorporate elements from the queues into a shuffle. The second is that because we have three structures, the strategy corresponding to τ1 will make predictions about components in all three structures, and so at a τ1-stage t + 1, we must work to arrange that f i,j (piτ,t+1 ) = qj and f i,k (piτ,t+1 ) = qk , for some elements qj and qk of ν j and ν k , respectively. This means that when we are reincluding a component from one of our queues into a shuffle we must pay attention to the direction of the shuffles in all three structures. In particular, when the component to reinclude was most recently shuffled, one of the three structures had a shuffle in the opposite direction to the other two. We can only reinclude the component in a shuffle at a later stage where the same structure has a shuffle in the opposite direction to the other two structures. This will be indicated by the τ -i-queues, as follows: the component which we place into a τ -i-queue will be a member of ν i, and we are waiting until a stage at which the shuffle in ν i is in the opposite direction to that of the other structures before we reinclude the element. The reinclusion procedure will depend on whether we are performing a left or right shuffle in ν i at the reinclusion stage. If |τ | = e and ρe is following ν i at the beginning of a τ1-stage t + 1, then a component q in the τ -j-queue i,j for j = i is one for which we have set fτ1 (piτ )[t] = q, while a component q in the τ -i-queue is one for which i,j i,j i we have f (q)[t] = fτ1 (pτ )[t], for both of the numbers j = i. That is: q is simultaneously the current image of two elements which we have promised are both the image of piτ . It is in this case that it is most important that we correctly shuffle q to realign both isomorphisms f i,j simultaneously. We check in Lemma 4.4 that the reinclusion has the desired effect of aligning the isomorphism f i,j correctly.

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

83

4.1. Formal construction As in our two-structure construction, we define strings αs+1 at each stage, in order to specify what kinds of recovery have occurred at that stage. They are defined as follows: Every stage of the construction is a λ-stage. Stage 0: We say that hiβ [0] is the empty function for 0 ≤ i ≤ 2 and for every β. Stage s + 1: Suppose that s + 1 is a β-stage for some β with |β| < s. Let e = |β|. For 0 ≤ i ≤ 2 let B i be the set of components of ν i which are β-marked by the end of stage s. We say that stage s + 1 is a recovery stage for Ne if, for 0 ≤ i ≤ 2, there exists a unique map hiβ [s] : B i → ρe such that ρe (hiβ (x))[s] ⊇ ν i (x)[s] for each x ∈ B i , and furthermore that if t + 1 < s + 1 is the most recent β-stage which is a recovery stage for Ne , then range(hηβ )[t] ⊆ range(hηβ )[s]. If s + 1 is a β-stage which is a recovery stage for Ne , and β was not active at the end of stage s, say s + 1 is a 0-recovery stage, a β-initialization stage, and a β0-stage. If s +1 is a β-stage which is a recovery stage for Ne , and β was active at the end of stage s, let t +1 < s +1 be the most recent β-stage which was a recovery stage for Ne . Suppose t + 1 was an i-recovery stage for Ne . If hiβ [s] ⊇ hiβ [t], then say s + 1 is a β1-stage, and an i-recovery stage for Ne . If hiβ [s]  hiβ [t], choose k ≤ 2 such that the shuffles in ν i and ν k were in opposite directions at stage t + 1. If this is true of two numbers, choose k so that the most recent β-stage prior to t + 1 which is a k-recovery stage for Ne is as early as possible (if there has been none yet, say the most recent was t = 0). Say s + 1 is a k-recovery stage for Ne , and a β0-stage. If s + 1 is not a recovery stage for Ne , then we say stage s + 1 is a β2-stage. Let αs+1 be the unique string of length s + 1 such that s + 1 is an αs+1 -stage. Note that s + 1 is a σ-stage iff σ αs+1 . i,j At each stage s + 1 we define fσ,s as follows: for τ1 σ, let t + 1 ≤ s be the most recent τ0-stage. Then j i,j i for each i and j set fσ,s (pτ,t+1 ) = pτ,t+1 , and say that σ s-predicts piτ,t+1 to be precious. If q is a component i,j of ν i such that fsi,j (q) = pjτ,t+1 for some j, let fσ,s (q) be undefined. For each other component q of ν i , set i,j fσ,s (q) = fsi,j (q). As before, the components which we predict to be precious are precisely those which we believe will be infinite at the end of the construction. At each stage we define restraint rs (σ) and set Rs (σ) = max{rs (τ ) | τ ≤L σ}. We now give the construction. Stage 0: We set ν i (q) = {q} for each q and for 0 ≤ i ≤ 2. Set r(σ)[0] = 0 for all σ ∈ 3<ω . Recall that we have defined piσ = zσ,0 for each i and σ. For 0 ≤ i ≤ 2, λ-mark the precious components piλ,0 in ν i . For the least components of form xl and yk , λ-mark them in each ν i and say they are λ-reserved. For 0 ≤ i ≤ 2, say that wλ,i is the active witness for λ-i-diagonalization, and λ-mark the component wλ,i in ν j for 0 ≤ j ≤ 2. Say that none of the requirements Qτ,i are currently satisfied. Say that the τ -i-queue is empty for each τ ∈ 3<ω and each i such that 0 ≤ i ≤ 2. Stage s + 1: First activate the relevant strategies: if σ = αs+1  e and s + 1 is a recovery stage for Ne , declare σ to be active, if it is not already active. We check on the status of the requirements Qτ,i for each τ αs+1 and 0 ≤ i ≤ 2, so that we can decide which to meet. Condition 4.2. Suppose τ αs+1 is of length e and Qτ,i is not currently satisfied. For each θ  τ say that a component q of ν i+1 is θ-unpredictable if there is some σ such that σl θ, where l is either 0 or 1, and such that q is either σ-reserved, or is of the form f j,i+1 (pjσ )[s] for some j, and θ does not s-predict q to be precious. Suppose wτ,n is the active witness for τ -i-diagonalization. Check whether there is some θ such that τ θ αs+1 , k ≤ s, and g such that:

84

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

i+1,i+2 (1) g = fθ,s k (2) If x is a component of ν i+1 which is θ-unpredictable, then k ≤ x (3) Φge (wτ,n )[s] ↓= wτ,n .

If such θ, k, and g exist say that Qτ,i requires attention. Find the shortest τ αs+1 such that for some least i, Qτ,i requires attention. At stage s + 1 we will set the use for Qτ,i , or, if we have already done so and have not canceled that use, we diagonalize for Qτ,i . Case 1: Setting the use for Qτ,i . Let g and θ be as specified in Condition 4.2. Suppose that |τ | = e and |θ| = d. We will be performing a right shuffle in ν i and in ν i+1 , and a left shuffle in ν i+2 . We will define a finite sequence νnj [s + 1] of components in each ν j for each j and for n < s + 1. Let σ = αs+1  n. Let xl and yk be the σ-reserved components. For each n < e, do as follows: • If s + 1 is a σ2-stage, let νnj be empty for each j. Then for each j let pjσ,s = pjσ,s+1 . • If s + 1 is a σ0-stage and an h-recovery stage for Nn , empty the σ-queues, and for each j, let νnj = xl , f h,j (phσ )[s], yk . Let phσ,s+1 = phσ,s , and for j = h let pjσ,s+1 = f h,j (phσ )[s]. • If s + 1 is a σ1-stage and an h-recovery stage for Nn , check whether there is some number q in the σ-(i + 2)-queue. If there is, remove q from the σ-(i + 2)-queue. If h = i + 2, we are performing a right shuffle in ν h at this stage. In that case, for each j let νnj = xl , f h,j (phσ )[s], fsi+2,j (q). On the other hand, if h = i + 2, we are performing a left shuffle in ν h at this stage. If so, for each j let νnj = fsi+2,j (q), f h,j (phσ )[s], yk . If there is no number q in the σ-(i + 2)-queue, then for each j set νnj = xl , f h,j (phσ )[s], yk . Let phσ,s+1 = phσ,s , and for j = h let pjσ,s+1 = f h,j (phσ )[s]. Now for e ≤ n < s + 1, do as follows: If σ1  θ, let νnj be empty for each j (this includes the case that d ≤ n < s + 1). If σ1 θ, let i+2 t + 1 < s + 1 be the most recent σ0-stage of the construction. Check whether fsi+1,i+2 (pi+1 σ,t+1 ) = pσ,t+1 . If j j i+1,j i+1 i+2,j i+2 so, let νn [s + 1] be empty for each j. If not, then let νn [s + 1] = xl , fs (pσ,t+1 ), fs (pσ,t+1 ) for each j. This concludes the specification of the elements to be shuffled. Perform a right shuffle in ν i of the components ν0i , ν1i , . . . , νsi . Perform a right shuffle in ν i+1 of the components ν0i+1 , ν1i+1 , . . . , νsi+1 . Perform a left shuffle in ν i+2 of the components ν0i+2 , ν1i+2 , . . . , νsi+2 . j,i+1 Let u be the largest number such that for some j such that 0 ≤ j ≤ 2, and some x < k, fs+1 (x) = u. Now set rs+1 (τ ) = max(u, rs (τ )) and rs+1 (σ) = rs (σ) for each σ = τ . Say that we have set the use for that Qτ,i . Proceed to the clean-up phase. Case 2: Diagonalizing for Qτ,i . We will be performing a right shuffle in ν i and a left shuffle in ν i+1 and i+2 ν . As before, let |τ | = e. We will define νnj [s + 1] for each j and for n < s + 1. For each n < s + 1, do as follows: Let σ = αs+1  n. Let xl and yk be the σ-reserved components. • If s + 1 is a σ2-stage, let νnj be empty for each j. For each j let pjσ,s = pjσ,s+1 . • If s + 1 is a σ0-stage and an h-recovery stage for Nn , then for each l, let νnl = xl , f h,l (phσ )[s], yk . Empty the σ-i-queue. • If s +1 is a σ1-stage and an h-recovery stage for Nn , check whether there is a number q in the σ-i-queue. If so, remove q from the σ-i-queue. If h = i, we are performing a right shuffle in ν h at this stage. If so, for each j let νnj = xl , fsh,j (phσ ), fsi,j (q). Otherwise h = i and we are performing a left shuffle in ν h at this stage. If so, for each j let νnj = fsi,j (q), fsh,j (phσ ), yk . If there is no number q in the σ-i-queue, then for each j set νnj = xl , fsh,j (phσ ), yk . Let phσ,s+1 = phσ,s , and for j = h let pjσ,s+1 = f j,m (phσ )[s]. Let the active witness for τ -i-diagonalization be wτ,n , with companions wτ,m0  < wτ,m1  .

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

85

Perform a right shuffle in ν i of the components wτ,m0  , wτ,n , wτ,m1  , ν0i , ν1i , . . . , νsi . Perform a left shuffle in ν i+1 of the components wτ,m0  , wτ,n , wτ,m1  , ν0i+1 , ν1i+1 , . . . , νsi+1 . Perform a left shuffle in ν i+2 of the components wτ,m0  , wτ,n , wτ,m1  , ν0i+2 , ν1i+2 , . . . , νsi+2 . Declare Qτ,i to be satisfied. Proceed to clean-up phase. Clean-up phase after working on Qτ,i We begin the clean-up phase by updating the queues. Let m be such that the shuffle in ν m at stage s + 1 is in the opposite direction to that in the other two structures. Let t + 1 < s + 1 be the most recent σ0-stage, if there has been one, and suppose that t + 1 is an h-recovery stage. For each n ≤ e do as follows: Let σ = αs+1  n. Suppose that xl and yk are the σ-reserved components. Declare any component which is involved in the shuffle to no longer be σ-reserved for any σ. • If σ2 αs+1 do nothing to the σ-queues. • If σ0 αs+1 or σ1 αs+1 , and h = m, then let f h,m (phσ )[t] = q m . If f h,m (phσ )[s] = q m , add q m to the σ-m-queue. • If σ0 αs+1 or σ1 αs+1 , and h = m, then for each j = m let f h,j (phσ )[t] = q j . If f h,j (phσ )[s] = q j j,h for each such j, then let q = fs+1 (q j ) and add q to the σ-h-queue (we will see that q is independent of the choice of j here). If f h,j (phσ )[s] = q j for one j = h then add q j to the σ-j-queue for that j. If f h,j (phσ )[s] = q j for both j = h then make no additions to any σ-queues. We now complete the definition of rs+1 . We set rs+1 (σ) = 0 for each σ >L τ . Then, for any σ such that we have not yet defined rs+1 (σ), set rs+1 (σ) = rs (σ). For each σ ≥L τ , do as follows: Declare any σ-reserved components to be no longer σ-reserved. Declare σ to be inactive. Empty each σ-j-queue. Then choose some fresh unmarked component zσ,k > R(α)[s + 1] and for each j set pjσ [s + 1] = zσ,k . For each σ >L τ , and each j do as follows: Declare each Qσ,j to be unsatisfied, and if we have set a use for the requirement, cancel it. Declare that there is no active witness for σ-j-diagonalization. For each j > i, if we have set the use for Qτ,j , cancel that use. Declare Qτ,j unsatisfied. Declare that there is currently no active witness for τ -j-diagonalization. For each σ and j such that there is currently no active witness for σ-j-diagonalization, choose a fresh unmarked number wσ,n > R(α)[s + 1] as the active witness for σ-j-diagonalization. We now specify the marking in the structures. If we set the use for Qτ,i at this stage, choose two fresh unmarked numbers wτ,m0  > wτ,m1  > R(α)[s +1] as companions to the active witness for τ -i-diagonalization. Then τ -mark them. j,k For each σ αs+1 , each k, and each j, σ-mark the components fs+1 (pjσ,s+1 ), and each active witness for σ-k-diagonalization. For l < e, let τ  l = σ. If s +1 is a recovery stage for Nl , do as follows: for each j, σ-mark each component q of ν j which is part of the shuffle at this stage, except for those such that for some β ≺ σ and some k, q = f k,j (pkβ,s+1 ), q is the active witness for τ -k-diagonalization, or q is a companion to the active witness for τ -k-diagonalization, and those for which there is some β ≺ σ such that q is β-reserved. For each β such that |β| ≤ s + 1, do as follows: if there are no β-reserved components, choose fresh unmarked components xl and yk which are larger than R(α)[s + 1]. Then β-mark those components in each structure and declare them β-reserved. Then β-mark the active witness for β-j-diagonalization. Finally, for each component of a structure ν j which has been β-marked in the clean-up phase, σ-mark it for each σ ≺ β such that σ0 β or σ1 β. j,k Now for each component q of each structure ν j which is β-marked, β-mark the component fs+1 (q) of ν k for each k.

86

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

4.2. Verification Our verification will be as similar as possible to that of the previous construction, and, when possible, we refer the reader to the first construction for details. As in the first construction, we immediately note that if s + 1 is a σ-stage, then at both the beginning and end of stage s + 1 we have fresh σ-reserved components xl and yk which are σ-marked but not τ -marked for any τ >L σ. Furthermore, for each q, and each i and j, ν i (q)[s + 1] = {q} if and only if ν j (q)[s + 1] = {q}. If this is the case, then q ∈ ν i (x)[s + 1] only for q = x. We also note that because of the way we have chosen our shuffles, we clearly meet the condition of Remark 3.2 at each stage of the construction: that is, if the components involved in the shuffle carried out in ν j at stage s + 1 are uj0 , . . . , νnj , then for each k, and each m ≤ n, ν j (ujm )[s] = ν k (ukm )[s]. Thus if ν j [s] and ν k [s] are isomorphic, so are ν j [s + 1] and ν k [s + 1]. Of course, our specification of the shuffles themselves requires that there is a unique isomorphism f j,k [s + 1] at each stage s + 1 of the construction. As in the first construction, we will first work on verifying this. Each component can be included in shuffles for the sake of at most one σ, a statement which we formalize below. Remark 4.3. Suppose that for each t ≤ s and each i, j there is a unique isomorphism fti,j : ν i [t] → ν j [t]. Fix i n ≤ s, and let αs+1  n = σ. Suppose 0 ≤ i ≤ 2 and that q is part of νni [s + 1]. If q is part of νm [t] at some stage t < s + 1 then m = n and αt  n = σ. We need to check that the queues behave correctly. In particular, if s + 1 is a σ1-stage and h-recovery h,j stage for Ne , where |σ| = e, then we believe that phσ is an infinite component, and fσ1 predicts some component to be the image of phσ under f h,j ; the elements in the σ-queues are precisely those which we need to reinclude in a shuffle in order to correct our isomorphism to match that prediction (although s + 1 may not be an appropriate stage to make that reinclusion). Lemma 4.4. Suppose that for each t ≤ s and each i, j there is a unique isomorphism fti,j : ν i [t] → ν j [t]. Suppose that s + 1 is an h-recovery stage for Nn , and that αs+1  n = σ. Suppose that s + 1 is a σ1-stage. h,j h Let t0 < s + 1 be the most recent σ0-stage, and for each j let q j = f h,j (phσ )[t0 ] = fσ1 (pσ ). Then each σ-queue contains at most one component at the beginning of stage s +1. If there is a component q = phσ,s of ν h such that for both i = h, fsi,h (q i ) = q, then q is the only element in the σ-h-queue at the beginning of stage s + 1, and the other two σ-queues are empty. Otherwise, for i = h, if f h,i (phσ )[s] = q i , q i is in the σ-i-queue, and if not, the σ-i-queue is empty. Proof. Each recovery stage for Nn between t0 and s + 1 is a σ1-stage, so phσ,s+1 = phσ,t0 . We work by induction on s. Let t + 1 < s + 1 be the most recent h-recovery stage for Nn such that αt+1  n = σ. Let j be such that the shuffle in ν j is in the opposite direction to the shuffles in the other two structures at stage t + 1. We will check that the components in the σ-i-queues at the end of stage t + 1 are the ones which the lemma claims to be present at the beginning of stage s + 1. We treat stage t0 as the base case. Since this is a σ0-stage, we empty the σ-queues before performing a shuffle. At the end of the shuffle, if j = h, then there is a component q of ν j which is the image of q i in both of the other structures ν i . We put q into the σ-h-queue. If j = h, then q j = f h,j (phσ )[t], and the σ-j-queue is empty, while for the third structure ν i other than ν j and ν k , we have q i = f h,j (phσ )[t], and put q i into the σ-i-queue, while the other σ-queues are empty. This means that the elements in the queues at the beginning of the next σ1-stage are exactly as expected. We now proceed with the inductive step. As with the base case, our analysis of the situation depends on whether j = h.

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

87

Firstly, suppose j = h. If at the start of stage t + 1 the σ-queues are all empty, by inductive hypothesis f h,i (phσ )[t] = q i for each i. Because the shuffle in ν h at stage s + 1 is in the opposite direction to that in i,h the other two structures, there is a component q = phσ,t+1 of ν h such that for each i = h, ft+1 (q i ) = q. We add q to the σ-h-queue. At the start of stage s + 1 this is the only element in any σ-queue. Furthermore, i,h we have ft+1 (q i ) = fsi,h (q i ) = q = phσ,s , as required. If at the start of stage t + 1 the σ-i-queue is nonempty for one i = h, then by inductive hypothesis h,i h f (pσ )[t] = q i , and q i is in the σ-i-queue. Let 0 ≤ k ≤ 2, where k is equal to neither i nor h. Then fth,k (phσ,t0 ) = q k by hypothesis, and because the shuffles in ν h and ν k are in opposite directions at stage h,k h t + 1, ft+1 (pσ,t0 ) = q k . We put q k in the σ-k-queue at this stage. Furthermore, we do not use any elements from any of the σ-queues in our shuffles at stage t + 1, so the only component which is part of νni [t + 1] and which has previously been part of a shuffle is f h,i (phσ )[t] = q i . Therefore fsi,h (q i ), fsk,h (q k ), and phσ,s are all distinct, as required. If at the start of stage t + 1 the σ-i-queues are nonempty for both i = h, then the element in each of these σ-i-queues is q i . For each such i, f h,i (phσ )[t] = q i . Note that the two values of fti,h (q i ) are distinct by hypothesis. For each i, the element q i is not used in the shuffle in ν i at stage t + 1 and therefore the elements fsi,h (q i ) are still distinct at the beginning of stage s + 1, neither is equal to phσ,t0 , and each q i is still in the σ-i-queue at the start of stage s + 1. Finally, suppose that there is an element q in the σ-h-queue at the beginning of stage t + 1. Then q is the only element in any σ-queue. Then phσ,t0 = q = fti,h (q i ) for each i = h, and by including q in the shuffle i,h in ν h we ensure that for each i = h we have fsi,h (q i ) = ft+1 (q i ) = phσ,t0 . We remove q from the σ-h-queue, leaving all of the σ-queues empty at the beginning of stage s + 1 as required. Now suppose that j = h. If at the start of stage t + 1 the σ-j-queue and σ-h-queue are both empty, then f h,j (phσ )[t] = f h,j (phσ )[t0 ] and we add q j to the σ-j-queue at stage t + 1. Our shuffle at this stage ensures h,j ft+1 (phσ,t0 ) = fsh,j (phσ,t0 ) = q j . If at the start of stage t + 1, q j is in the σ-j-queue, then we have ftj,h (q j ) = phσ,t0 and our choice of shuffle j,h ensures that fsj,h (q j ) = ft+1 (q j ) = phσ,t0 , and we remove q j from the σ-j-queue. Suppose that i is the index of the third structure, equal to neither j nor h. In each of the above cases, if q i is in the σ-i-queue at the beginning of stage t + 1, then fsh,i (phσ,t0 ) = f i,h (phσ,t0 ) = q i , and q i is still in the σ-i-queue at the beginning of stage s + 1, whereas if the σ-i-queue is empty, fsh,i (phσ,t0 ) = f i,h (phσ,t0 ) = q i , and the σ-i-queue is still empty at the beginning of stage s + 1. Finally, suppose that at the start of stage t + 1 there is an element q = phσ,t0 in the σ-h-queue (and hence no other elements in any σ-queues). Then we have fth,i (q) = q i for each i = h and since q is not used in the h,i shuffle in ν i at this stage we ensure that fsh,i (q) = ft+1 (q) = q i for each such i. At the beginning of stage s + 1, q is still in the σ-h-queue, as required. 2 By observing which components can be the images of precious components and which components can be put into σ-queues, we may rule out the possibility of certain components ever being part of a shuffle at a later stage, by noting that only those components which are precious or placed into a queue are used in a shuffle more than once, and then eliminating those components which do not have either of these properties. Remark 4.5. Suppose that for each t ≤ s and each i, j there is a unique isomorphism fti,j : ν i [t] → ν j [t]. Suppose further that at some stage t + 1 < s + 1, νni [t + 1] is nonempty. If we perform a right shuffle in ν i at stage t then the rightmost component of νni [t + 1] is not used in a shuffle at any later stage, and if we perform a left shuffle in ν i at a stage t then the leftmost component of νni [t + 1] is not used in a shuffle at any later stage. We now state a lemma analogous to one from the previous construction, which is used later to show that the components of our structures remain distinguishable from each other.

88

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

Lemma 4.6. Let s + 1 be some stage of the construction such that for each t < s + 1, there is a unique isomorphism fti,j : ν i [t] → ν j [t] for each i and j. Suppose that p is a component of ν i which is part of νni [t0 ] at some σ-stage t0 ≤ s + 1, where σ = αt0  n. Suppose that q is used in the shuffle in ν i at stage s + 1 and that p ∈ ν i (q)[s + 1] but p ∈ / ν i (q)[s]. Then s + 1 is a σ-stage and q is one of the following: (1) a member of νni [s + 1], (2) an element of the form wτ,n , i [s + 1] (3) or, if we are performing a right shuffle in ν i at stage s + 1, q is the rightmost component of νm for some m < s, i [s + 1] for (4) or, if we are performing a left shuffle in ν i at stage s + 1, q is the leftmost component of νm some m < s. Proof. This is essentially the same as Lemma 3.5; we are enumerating the elements which can be immediately to the left or right of a component which already contains q, according to whether this is a stage at which we are performing a right or left shuffle in ν i , and use induction together with the fact that in all but the first case, the elements can never be part of a shuffle after stage s + 1. 2 Lemma 4.7. Let s + 1 be some stage of the construction such that for each t < s + 1, there is a unique isomorphism fti,j : ν i [t] → ν j [t] for each i and j. Suppose t0 < s + 1 is the most recent σ-initialization stage, p = piσ [t0 ], and that τ = σ. Then p ∈ / pjτ [s + 1] for any j. However, if s + 1 is not a σ-initialization stage j then p ∈ pσ [s + 1] for each j. Proof. See the proof of Lemma 3.6. Lemma 4.6 should be used instead of Lemma 3.5. 2 Lemma 4.8. Let s + 1 be some stage of the construction such that for each t < s + 1, there is a unique isomorphism fti,j : ν i [t] → ν j [t] for each i and j. Fix some i. Suppose that ν i (x)[s]  ν i (y)[s] for each x = y. Then ν i (x)[s + 1]  ν i (y)[s + 1] for each x = y. Thus by induction on s, for each i and j, ν i [s] and ν j [s] are rigid isomorphic structures for each s. Proof. See Lemma 3.7, although note that “left” and “right” may need to be interchanged depending on the direction of the shuffle carried out in ν i . Lemma 4.7 should be used in place of Lemma 3.6. 2 We now state the lemma which guarantees that the structure ρe can only recover in two different ways, either by following the structure(s) in which we perform a left shuffle, or by following the structure(s) in which we perform a right shuffle. Of course, by convention, we regard ρe as following only one structure at a time, even though the shuffle in that structure might be in the same direction as that in another structure. Lemma 4.9. Suppose that the components involved in the shuffle in ν i at stage s + 1 are n0 , . . . , nk , and define n−1 = nk , and nk+1 = n0 . If we perform a right shuffle in ν i at stage s +1, then for 0 ≤ j ≤ k, ν i (q)[s] ⊆ ν i (nj )[s +1] only for q = nj and q = nj−1 . If we perform a left shuffle in ν i at stage s + 1, then for 0 ≤ j ≤ k, ν i (q)[s] ⊆ ν i (nj )[s + 1] only for q = nj and q = nj+1 . Proof. The proof is essentially that of Lemma 3.8, using Lemmas 4.6 and 4.8 instead of Lemmas 3.5 and 3.7. 2 Before checking that we build the correct components in our structures, we need to notice that the requirements Qτ,i act in a finitary manner on and to the left of the true path.

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

89

Lemma 4.10. Suppose that σ t, after the last time we meet any of the requirements Qσ,i , rs (σ) has settled on its final value. 2 We wish to check that the infinite components are precisely the ones we expect: that is, only those which are predicted precious by some σ ≺ T P at all sufficiently large stages. We split this across two lemmas. First, we check that if q is part of νei [s] at infinitely many σ-stages, where |σ| = e then σ1 ≺ T P . This is less obvious than it was in the two structure construction. The problem which might arise is that we could have σ0 ≺ T P and from some point onward, the recoveries might always alternate between two of our structures, ignoring the third. In that case, if the third structure’s shuffles were always aligned in exactly the right way, we might accidentally shuffle some component infinitely often. We now show that that is impossible. Lemma 4.11. Fix σ, and suppose that |σ| = e. For each i, if q is a component of νei [s] at infinitely many σ-stages of the construction, then σ1 ≺ T P . Proof. As in the two-structure construction, it is easy to check that if σ L T P  e each component of ν i can be part of at most finitely many shuffles. Now suppose σ0 ≺ T P , that for s > t we have αs  e ≥ σ, and that after stage t we never act for the sake of Qτ,i for any τ ≤L σ. Let t ≤ t0 + 1 < t1 + 1, where t0 + 1 and t1 + 1 are successive σ0-stages of the construction. Suppose that t0 + 1 is an h-recovery stage for Ne . Let s + 1 < t1 + 1 be the most recent σ-stage which is a recovery stage for Ne . Then t1 + 1 is a j-recovery stage for Ne , where j is a number such that the shuffles in ν h and ν j at stage s + 1 are in opposite directions. If there are two such numbers j, then t1 + 1 is a j-recovery stage for the j such that the most recent σ-stage which is a j-recovery stage for Ne is earliest. Thus phσ,s+1 = f j,h (pjσ )[s + 1] = f j,h (pjσ )[t1 ]. Because we empty the σ-queues at stage t1 + 1, it is clear that no component can be part of νeh [T ] at a σ-stage T < t1 + 1 and at a σ-stage T ≥ t1 + 1. From this it follows that if there are infinitely many σ0-stages which are h-recovery stages for Ne then no component will be part of νeh [s] at infinitely many stages s of the construction. Suppose then that ν h , ν i and ν j are our three structures, that σ0 ≺ T P and that there are only finitely many σ0-stages which are i-recovery stages for Ne . Then from some point onward, all σ0-stages alternate between h- and j-recovery stages for Ne . Suppose as before that t0 + 1 < t1 + 1 are successive σ0-stages of the construction after stage t, that t0 + 1 is an h-recovery stage for Ne , and that s + 1 < t1 + 1 is the most recent σ-stage which is a recovery stage for Ne . Assume that after stage t there are no more σ0-stages which are i-recovery stages for Ne , and that the most recent σ0-stage prior to t0 + 1 is a j-recovery stage for Ne . Then at stage s + 1 the shuffles in ν h and ν i are in the same direction, since otherwise t1 + 1 would be an i-recovery stage for Ne . Let q i = f h,i (phσ )[t0 ].

90

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

If q i = f h,i (phσ )[s] then q i = f h,i (phσ )[s + 1] because the shuffles in ν i and ν h are in the same direction at stage s + 1. Then q i = f j,i (pjσ )[t1 ]. If q i = f h,i (phσ )[s], then because the shuffles in ν i and ν h are in the same direction at stage s + 1, we do not include any elements from the σ-i-queue or σ-h-queue in any shuffles at this stage. Thus q i cannot be part of νni [s + 1], and so q i = f j,i (pjσ )[t1 ], since that component is part of νni [s + 1]. In either case it follows that no component can be part of νni [T ] at a σ-stage T < t1 + 1 and a σ-stage T ≥ t1 + 1. Once again, we can use the fact that there are infinitely many σ0-stages to see that there is no component of ν i which is part of a shuffle at infinitely many stages of the construction. 2 We now wish to complete our classification of the infinite components in our structures. As in the first construction, there are two things to do: checking that we get no additional unexpected infinite components (which was mostly handled in the previous lemma), and checking that each infinite component built in one of our structures occurs in all three. Before we do so, we note that any time we place a component into a σ-queue, it is because we wish to include it in another shuffle, and suspect it may be an infinite component. So we need to check that no component which should be infinite becomes permanently stuck in a σ-queue, since that would prevent the creation of an infinite component in one of our structures, which would therefore no longer be isomorphic to the other structures. To prove this, we will need to check that eventually there will be a σ-stage at which the shuffles in our structures are in the appropriate directions to allow the component to be removed from its queue. This follows from a straightforward observation. Let σ ≺ T P . There are infinitely many reductions Φe which are the identity operator. Suppose σ ≺ τ ≺ T P and that |τ | is such an e. Then Qτ,i eventually will require attention, and we will diagonalize for this requirement. At that stage, which is a σ-stage, the shuffle in ν i is in the opposite direction to the shuffles in the other two structures. This shows that there are infinitely many opportunities to reinclude any element from a σ-queue in a shuffle. Lemma 4.12. Suppose that σ1 ≺ T P , that |σ| = e, and that for s + 1 > t + 1, αs+1 ≥ σ1 and that after stage t + 1 we do not act for a requirement of the form Qτ,i for τ σ. Suppose furthermore that t + 1 is the last σ0-stage of the construction, and an h-recovery stage for Ne . For each i = h let q i = f h,i (phσ )[t]. Then for s > t, phσ [t] = phσ [s], and this is the only component which is part of νnh at infinitely many σ-stages. Likewise, for each i = h, q i is part of νni [s + 1] at infinitely many σ-stages s + 1 > t, and is the only component for which this is true. Finally, there are infinitely many σ-stages s + 1 > t at which q i is h,i part of the shuffle in ν i and fs+1 (phσ,t ) = q i . Thus ν i (q i ) = ν h (phσ,t ). Proof. Let σ, t and q i be as stated. It is clear that phσ,t = phσ,s for s ≥ t and that this component is part of νnh [s] at infinitely many σ-stages s. For i = h, q i is part of νni [t + 1]. To show that q i is part of νni [s + 1] at infinitely many σ-stages, we work by induction. So suppose that at some σ-stage s + 1 ≥ t + 1, q i is part of νni [s + 1], and that fsh,i (phσ,t ) = q i . If the h,i shuffles in ν h and ν i are in the same direction at stage s + 1, then fs+1 (phσ,t ) = q i , and q i will also be part of the shuffle in ν i at the next σ-stage. So we assume that the shuffles in ν h and ν i are in opposite directions at stage s + 1. If the shuffle in ν i is in the opposite direction to both of the other shuffles at stage s + 1, we add q i to the σ-i-queue. If s0 + 1 > s + 1 is the next σ1-stage at which the shuffle in ν i is in the opposite direction to the shuffles in the other two structures, then q i is still in the σ-i-queue at the start of stage s0 + 1, and is included in the shuffle in ν i at stage s0 + 1. Thus fsh,i (phσ,t ) = q i . 0 +1 h Otherwise the shuffle in ν at stage s + 1 is in the opposite direction to the shuffles in both of the other structures at that stage. Let ν j be the third of our structures, and let q j = fth,j (phσ,t ). If fsh,j (phσ,t ) = q j then there is already an element in the σ-j-queue at the beginning of stage s + 1, and at this stage we add q i to

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

91

the σ-i-queue, and wait for a stage at which the shuffle in ν i is in the opposite direction to the shuffles in the other two structures, at which point we include q i in the shuffle in ν i as above. If s0 + 1 > s + 1 is the next stage at which we include q i in the shuffle in ν i , then once again we have fsh,i (q) = fsh,i (phσ,t ) = q i . Finally, 0 +1 0 +1 h,j h j i,h i if fs (pσ,t ) = q , then after the shuffle at stage s +1 we let q be the number such that fs (q ) = fsj,h (q j ) = q and add q to the σ-h-queue. Once again, we are eventually guaranteed a stage s0 + 1 at which the shuffle in ν h is in the opposite direction to that in the other two structures, and will include q in the shuffle in ν h and q i in the shuffle in ν i at stage s0 + 1, and arranging that fsh,i (q) = fsh,i (phσ,t ) = q i . 0 0 +1 This exhausts all possible cases, and shows that q i is included in shuffles in ν i at infinitely many σ1-stages s at which fsh,i (phσ,t ) = q i , and so ν i (q i ) = ν h (phσ,t ), as required. Now we check that phσ,t is the only component in νnh [s + 1] at infinitely many stages, and likewise that for each i = h, q i is the only component which is part of νni [s + 1] at infinitely many stages s + 1 of the construction. In the case of νnh , suppose that q = phσ,t is a component which is a member of νnh [s + 1] at some σ-stage s + 1 > t. Note that the only way that this component can be part of νnh [s0 + 1] at some later σ-stage h,j s0 + 1 > s + 1 is if at stage s + 1 we add fs+1 (q) to the σ-j-queue for some j. Let s0 + 1 be the first such stage. Observe that if we are performing a right shuffle in ν h at that stage, then q is the rightmost component in νnh [s0 +1], whereas if we are performing a left shuffle, q is the leftmost component in νnh [s0 +1]. In either case q is never again part of a shuffle, as noted in Remark 4.5. Now suppose that i = h, and that q = q i is part of νni [s + 1] at some stage s + 1 > t. We must show that q is only part of the shuffle in ν i at finitely many stages. Assume that q has already been part of the shuffle in ν i at some previous stage. Let ν j be the third structure other than ν i and ν h . We analyze the situation by breaking it into two cases. The first case is that q = fsh,i (phσ,t ). Then q is the middle element of the triple νni [s + 1]. Let s0 + 1 ≥ s + 1 (phσ,t ) but be the next σ1-stage at which the shuffles in ν h and ν i are in opposite directions. Then q = fsh,i 0 h,i q = fs0 +1 (phσ,t ). The only reason that q can be included in a shuffle again at a future σ-stage s1 + 1 > s0 + 1 (q j ) and q j is in the σ-j-queue at the beginning of stage s1 + 1. We now treat this possibility is if q = fsj,i 1 as our second case. The second case is that q = fsj,i (q j ), and q j is in the σ-j-queue at the beginning of stage s + 1, and s + 1 is a stage at which the shuffle in ν j is in the opposite direction to that of the shuffles in the other two structures. But then if the shuffle performed in ν i at stage s + 1 is a right/left shuffle, then q is the rightmost/leftmost element in νni [s + 1] and is therefore never part of a shuffle at any future stage. Thus we see that q is included in a shuffle at most three times: after being shuffled once, it can be part of the shuffle at most once at a stage at which the first case applies, and then possibly at one more stage for the second case. 2 Lemma 4.13. For each i, if x and y are distinct components of ν i then ν i (x)  ν i (y), and for each i and j there is a unique homomorphic embedding f : ν i → ν j , which is an isomorphism. Proof. It is clear that if either of x or y is finite then ν i (x)  ν i (y). Lemma 4.12 precisely identifies the infinite components of our structures, and shows that we build identical infinite components in each structure. Furthermore, Lemma 4.7 and Lemma 4.8 together show that ν i (x)  ν i (y) if both are infinite. 2 Having verified that our structures are all isomorphic, we return to the requirements Qτ,i. Recall that we have already shown that if τ ≺ T P then Qτ,i is only subject to finite injury. We next check that if τ ≺ T P and we declare Qτ,i satisfied, then unless some higher priority action occurs, we will actually meet the requirement.

92

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

Lemma 4.14. Let τ = T P  e, and suppose 0 ≤ i ≤ 2. Suppose that s + 1 is a stage of the construction such that for t ≥ s + 1, αt ≥L τ , and that after stage s we never attend to a requirement of the form Qσ,j for any σ ≺ τ , nor any requirement of the form Qτ,j for j < i. Suppose that s + 1 is a τ -stage at which Qτ,i requires attention, and at which we set the use for that requirement. Let g be the function of Condition 4.2 which we use when setting the use for Qτ,i at stage s + 1. Suppose wτ,n is the active witness for τ -i-diagonalization i+1,i+2 at stage s + 1. Then g f i+1,i+2 , f i,i+1 (wτ,n ) = wτ,n , and Φfe (wτ,n ) ↓= wτ,n = f i,i+1 (wτ,n ). That is: we meet Qτ,i . i+1 Proof. Let θ, g and k be as in Condition 4.2. Suppose that |θ| = d. We will first show that fτ,s+1 k= i+2 fθ  k. Because of the restrictions placed on g by Condition 4.2, the only components q < k of ν i+1 involved in the shuffle at stage s + 1 are those s-predicted to be precious by θ. Each component q < k of ν i+1 which is i+1,i+2 i+1,i+2 i+1,i+2 s-predicted to be precious by τ has fθ,s (q) = fτ,s (q) = fτ,s+1 (q), since τ θ. j For e ≤ n < d, νn [s + 1] is nonempty for precisely those n such that if σ = θ  n, then σ1 θ and i+2 fsi+1,i+2 (pi+1 σ,t+1 ) = pσ,t+1 , where t + 1 < s + 1 is the most recent σ0-stage of the construction. Our choice i+1,i+2 i+1 i+1 of νni+1 [s + 1] and νni+2 [s + 1] ensures that fs+1 (pσ,t+1 ) = pi+2 σ,t+1 . Thus if q < k is a component of ν i+1,i+2 i+1,i+2 i+1,i+2 which is s-predicted to be precious by θ but not by τ , then fs+1 (q) = fτ,s+1 (q) = fθ,s (q). So i+1,i+2 i+1,i+2 fτ,s+1  k = fθ,s  k. For s0 + 1 > s + 1, αs0 +1 ≥L τ , and s + 1 is a stage after which we never attempt act for a requirement of higher priority than Qτ,i . So for each j, the only components q < Rs+1 (τ ) of ν i+1 which can be part of a shuffle at a stage t > s + 1 are those which are s-predicted to be precious by τ , and the active witness wτ,n for τ -i-diagonalization. The only time we ever use wτ,n in a shuffle is at the next τ -recovery stage s1 + 1 > s + 1, when we act to diagonalize for Qτ,i . So f i,i+1 (wτ,n ) = fsi,i+1 (wτ,n ) = wτ,n . At stage 1 +1 i+1,i+2 i+1 i+2 s1 + 1 the shuffles in ν and ν are in the same direction, so we preserve the initial segment fs+1 k i+1,i+2 i+1,i+2 i+1  k = f  k. After stage s + 1, the only components q < R (τ ) of ν at stage s1 + 1. So fτ,s s+1 τ,s+1 1 +1 which are ever involved in a shuffle are those which are s-predicted to be precious by τ . But Lemma 4.12 i+1,i+2 agrees with f i+1,i+2 on them. shows that these components are shuffled infinitely often and that fτ,s 1 +1 i+1,i+2 So fτ,s  k = g ≺ f i+1,i+2 , and Φfe 1 +1 Qτ,i has been satisfied. 2

i+1,i+2

(wτ,n ) ↓= wτ,n = f i,i+1 (wτ,n ). Thus the requirement

Of course, we may not actually act to meet all requirements of form Qτ,i , where τ ≺ T P . We must check that any requirement which we do not act to met is met by default. Lemma 4.15. For 0 ≤ i ≤ 2, f i+1,i+2 T f i,i+1 . Proof. If τ = T P  e and we set a use and then diagonalize for Qτ,i at a stage after which it is never canceled, then the requirement is met, by the previous lemma. So assume not. Suppose that t0 is a stage such that at stages s + 1 ≥ t0 we never attempt to meet a requirement of the form Qσ,j for any σ
B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

93

pi+1 σ [t] for infinitely many t > t0 , where σ1 θ. Let s > s0 be a stage so large that for t > s, αt ≥L θ, and no finite component q < k of ν i+1 is part of a shuffle after stage s. Then at every θ-stage t > s, we have i+1,i+2 fθ,t  k = f i+1,i+2  k, by choice of k, s, and θ. At the first such stage t, Φfeθ k (wτ,n )[t] ↓= wτ,n . Thus at this stage Qτ,i requires attention, and therefore we act to set a use for it, contrary to our assumption. i+1,i+2 i+1,i+2 (wτ,n ) ↓ = f i,i+1 (wτ,n ) or Φfe (wτ,n ) ↑. Considering every reduction Φe , we So either Φfe have f i+1,i+2 T f i,i+1 . 2 As in the two-structure construction, it is clear that for each i and j, f i,j (x) = y if and only if fsi,j (x) = y for infinitely many s, and thus that f i,j ≤T ∅ . The requirements Qτ,i also ensure that f i,j t0 is a σ-stage of the construction which is an i-recovery stage for Ne . Suppose that pσ is the component of ρe for which hiσ (piσ )[s] = pσ . Suppose t + 1 > s + 1 is the next σ-stage which is a recovery stage for Ne , and that t + 1 is a σ0-stage. Suppose that t + 1 is a j-recovery stage for Ne . Then ν i (piσ )[s]  ν j (pjσ )[t] ⊆ ρe (pσ )[t]. Proof. Let pσ = hiσ (piσ )[t]. As in the two-structure construction, we note that for n ≥ e the components of νni [s + 1] are σ-marked at stage s + 1. Using this together with Lemma 4.9, we see that hiσ [s] ⊆ hiσ [t] if and only if hiσ (piσ )[t] = pσ . Since hiσ [s]  hiσ [t], let j be such that the shuffles in ν j and ν i are in opposite directions at stage s + 1. But pσ is in the range of hiσ [t], and must be the image of a component q of ν j such that ν i (piσ )[s] ⊆ ν j (q)[t] but ν j (q)[t] = piσ [t]. Since pjσ,t = pjσ,s+1 = f i,j (piσ )[s] and the shuffles in ν i and ν j are in opposite directions at stage s + 1, pjσ [s] is the unique component of ν j satisfying this condition. So ν i (piσ )[s]  ν j (pjσ )[t] ⊆ ρe (pσ )[t]. This is true in particular for that j for which t + 1 is a j-recovery stage for Ne . 2 Lemma 4.19. If σ is of length e and σ0 ≺ T P then for each i, ρe is not isomorphic to ν i .

94

B.F. Csima, J. Stephenson / Annals of Pure and Applied Logic 170 (2019) 58–94

Proof. Let t0 be such that t0 + 1 is a σ-stage, that for t ≥ t0 , αt ≥L σ, and that after stage t0 we never attempt to meet Qθ,j for any j and any θ ≤L σ. Suppose that t0 + 1 < t1 + 1 < · · · are all of the σ0-stages of the construction after t0 , and let in be such that tn + 1 is and in -recovery stage for Ne . 0 . Let pσ be the component of ρe such that hiσ0 (pσ )[t0 ] = piσ,t 0 It follows from Lemma 4.18 that we have ρe (pσ )[tn ] ⊇ ν in (piσn )[tn ] for each n. So pσ is an infinite component of ρe such that ρe (pσ ) ⊃ ν i (piσ0 )[t0 ]. However, there is no component q of our structure ν i such that ν i (q) ⊃ ν i (piσ0 )[t0 ], since by Lemma 4.11, no component is part of νei [t] at infinitely many stages t. 2 As noted earlier, these three cases are exhaustive. Thus either our structures ν i are not isomorphic to the computable structure ρe , or one of our structures is computably isomorphic to ρe . Thus we have met each requirement Ne and Qτ,i for τ ≺ T P , and so the verification is complete. References [1] Bernard Anderson, Barbara Csima, Degrees that are not degrees of categoricity, Notre Dame J. Form. Log. 57 (3) (2016) 389–398. [2] Nikolay A. Bazhenov, Iskander Sh. Kalimullin, Mars M. Yamaleev, Degrees of categoricity and spectral dimension, J. Symbolic Logic 83 (1) (2018) 103–116. [3] Peter Cholak, Sergey Goncharov, Bakhadyr Khoussainov, Richard A. Shore, Computably categorical structures and expansions by constants, J. Symbolic Logic 64 (1) (1999) 13–37. [4] Barbara F. Csima, Johanna N.Y. Franklin, Richard A. Shore, Degrees of categoricity and the hyperarithmetic hierarchy, Notre Dame J. Form. Log. 54 (2) (2013) 215–231. [5] Barbara F. Csima, Matthew Harrison-Trainor, Degrees of categoricity on a cone via η-systems, J. Symbolic Logic 82 (1) (2017) 325–346. [6] Ekaterina B. Fokina, Iskander Kalimullin, Russell Miller, Degrees of categoricity of computable structures, Arch. Math. Logic 49 (1) (2010) 51–67. [7] Johanna N.Y. Franklin, Strength and weakness in computable structure theory, in: Adam Day, Michael Fellows, Noam Greenberg, Bakhadyr Khoussainov, Alexander Melnikov, Frances Rosamond (Eds.), Computability and Complexity: Essays Dedicated to Rodney G. Downey on the Occasion of His 60th Birthday, Springer International Publishing, Cham, 2017, pp. 302–323. [8] S.S. Gončarov, The problem of the number of nonautoequivalent constructivizations, Algebra Logika 19 (6) (1980) 621–639, 745. [9] S.S. Goncharov, Limit equivalent constructivizations, in: Mathematical Logic and the Theory of Algorithms, in: Trudy Inst. Mat., vol. 2, “Nauka” Sibirsk. Otdel, Novosibirsk, 1982, pp. 4–12. [10] Valentina S. Harizanov, The possible Turing degree of the nonzero member in a two element degree spectrum, Ann. Pure Appl. Logic 60 (1) (1993) 1–30. [11] Valentina S. Harizanov, Pure computable model theory, in: Handbook of Recursive Mathematics, vol. 1, in: Stud. Logic Found. Math., vol. 138, North-Holland, Amsterdam, 1998, pp. 3–114. [12] Denis R. Hirschfeldt, Degree spectra of relations on computable structures, Bull. Symbolic Logic 6 (2) (2000) 197–212. [13] Denis R. Hirschfeldt, Degree spectra of relations on structures of finite computable dimension, Ann. Pure Appl. Logic 115 (1–3) (2002) 233–277. [14] Denis R. Hirschfeldt, Bakhadyr Khoussainov, Richard A. Shore, A computably categorical structure whose expansion by a constant has infinite computable dimension, J. Symbolic Logic 68 (4) (2003) 1199–1241. [15] Robert I. Soare, Turing computability, in: Theory and Applications of Computability, Springer-Verlag, Berlin, 2016.