ON COHESIVE POWERS OF LINEAR ORDERS

Abstract Cohesive powers of computable structures are effective analogs of ultrapowers, where cohesive sets play the role of ultrafilters. Let 
$\omega $
 , 
$\zeta $
 , and 
$\eta $
 denote the respective order-types of the natural numbers, the integers, and the rationals when thought of as linear orders. We investigate the cohesive powers of computable linear orders, with special emphasis on computable copies of 
$\omega $
 . If 
$\mathcal {L}$
 is a computable copy of 
$\omega $
 that is computably isomorphic to the usual presentation of 
$\omega $
 , then every cohesive power of 
$\mathcal {L}$
 has order-type 
$\omega + \zeta \eta $
 . However, there are computable copies of 
$\omega $
 , necessarily not computably isomorphic to the usual presentation, having cohesive powers not elementarily equivalent to 
$\omega + \zeta \eta $
 . For example, we show that there is a computable copy of 
$\omega $
 with a cohesive power of order-type 
$\omega + \eta $
 . Our most general result is that if 
$X \subseteq \mathbb {N} \setminus \{0\}$
 is a Boolean combination of 
$\Sigma _2$
 sets, thought of as a set of finite order-types, then there is a computable copy of 
$\omega $
 with a cohesive power of order-type 
$\omega + \boldsymbol {\sigma }(X \cup \{\omega + \zeta \eta + \omega ^*\})$
 , where 
$\boldsymbol {\sigma }(X \cup \{\omega + \zeta \eta + \omega ^*\})$
 denotes the shuffle of the order-types in X and the order-type 
$\omega + \zeta \eta + \omega ^*$
 . Furthermore, if X is finite and non-empty, then there is a computable copy of 
$\omega $
 with a cohesive power of order-type 
$\omega + \boldsymbol {\sigma }(X)$
 .


Introduction
The ultimate inspiration for this work is Skolem's 1934 construction of a countable non-standard model of arithmetic [22].Skolem's construction can be described roughly as follows.For sets X, Y ⊆ N, write X ⊆ * Y if X \ Y is finite.First, fix an infinite set C ⊆ N that is cohesive for the collection of (where f + g and f × g are computed pointwise), and [f ] < [g] ⇔ C ⊆ * {n : f (n) < g(n)}.Using the arithmetical cohesiveness of C, one then shows that this structure is elementarily equivalent to (N, +, ×, <).The structure is countable because there are only countably many arithmetical functions, and it has non-standard elements, such as the element represented by the identity function.See [6] for a further discussion of Skolem's model.
Think of Skolem's construction as a more effective analog of an ultrapower construction.Instead of building a structure from all functions f : N → N, Skolem builds a structure from only the arithmetical functions f .The arithmetically cohesive set C plays the role of the ultrafilter.Feferman, Scott, and Tennenbaum [10] investigate the question of whether Skolem's construction can be made more effective by assuming that C is only r-cohesive (i.e., cohesive for the collection of computable sets) and by restricting to computable functions f .They answer the question negatively by showing that it is not even possible to obtain a model of Peano arithmetic in this way.Lerman [16] investigates the situation further and shows that if one restricts to cohesive sets C (i.e., cohesive for the collection of c.e. sets) that are co-c.e. and to computable functions f , then the first-order theory of the structure obtained is exactly determined by the many-one degree of C. Additional results in this direction appear in [12,13].
Dimitrov [4] generalizes the effective ultrapower construction to arbitrary computable structures.These cohesive powers of computable structures are studied in [3,5,8] in relation to the lattice of c.e. subspaces, modulo finite dimension, of a fixed computable infinite dimensional vector space over the field Q.In this work, we investigate a question dual to the question studied by Lerman.Lerman fixes a computable presentation of a computable structure (indeed, all computable presentations of the standard model of arithmetic are computably isomorphic) and studies the effect that the choice of the cohesive set has on the resulting cohesive power.Instead of fixing a computable presentation of a structure and varying the cohesive set, we fix a computably presentable structure and a cohesive set, and then we vary the structure's computable presentation.We focus on linear orders, with special emphasis on computable presentations of ω.We choose to work with linear orders because they are Date: February 23, 2023.
a good source of non-computably categorical structures and because the setting is simple enough to be able to completely describe certain cohesive powers up to isomorphism.This work is a greatly expanded version of the preliminary work of [9].
Our main results are the following.Below, ω, ζ, and η denote the respective order-types of the natural numbers, the integers, and the rationals.For each k ≥ 1, k denotes the order-type of the k-element linear order.
• If C is cohesive and L is a computable copy of ω that is computably isomorphic to the usual presentation of ω (i.e., the immediate successor relation of L is computable), then the cohesive power C L has order-type ω + ζη (Theorem 4.5).
• If C is co-c.e. and cohesive and L is a computable copy of ω, then the finite condensation of the cohesive power C L has order-type 1 + η (Theorem 4.4; see Definition 3.3 for the definition of finite condensation).
• If C is co-c.e. and cohesive, then there is a computable copy L of ω where the cohesive power C L has order-type ω + η (Corollary 5.4).• More generally, if C is co-c.e. and cohesive and X ⊆ N \ {0} is a Boolean combination of Σ 2 sets, thought of as a set of finite order-types, then there is a computable copy L of ω where the cohesive power C L has order-type ω + σ(X ∪ {ω + ζη + ω * }).Here ω * denotes the reverse of ω, and σ denotes the shuffle operation of Definition 6.2.Furthermore, if X is finite and non-empty, then there is a computable copy L of ω where the cohesive power C L has order-type ω + σ(X) (Theorem 6.10).
This work also serves to compare and contrast properties of cohesive powers with those of classical ultrapowers.The key points are the following.Recall that a computable structure is decidable if its elementary diagram is computable and is n-decidable if its Σ n -elementary diagram is computable.These definitions are discussed in more detail in Section 2.
• Classically, an ultrapower of a structure is elementarily equivalent to the base structure by Loś's theorem.Effectively, Loś's theorem holds for cohesive powers of decidable structures (Corollary 2.10).For cohesive powers of n-decidable structures, Loś's theorem need only hold up to ∆ n+3 -expressible sentences.In fact, every Σ n+3 sentence true of an n-decidable structure is also true of all of its cohesive powers (Theorem 2.9), but this is optimal in general (Corollary 4.9).
• Classically, ultrapowers of isomorphic structures over a fixed ultrafilter are isomorphic.Effectively, cohesive powers of computably isomorphic computable structures over a fixed cohesive set are isomorphic (Theorem 2.20).However, it is possible for isomorphic (but not computably isomorphic) computable structures to have non-elementarily equivalent (hence non-isomorphic) cohesive powers over a fixed cohesive set.Together, Theorems 4.5 and 4.8 imply that for every cohesive set C, there are computable copies L 0 and L 1 of ω such that the cohesive powers C L 0 and C L 1 are not elementarily equivalent.This sort of phenomenon can also be witnessed by computable structures whose cohesive powers are completely described.Fix a co-c.e.cohesive set.Example 5.5 shows that for every k ≥ 1, there is a computable copy L of ω with C L ∼ = ω + kη.The order-types ω + kη are pairwise non-elementarily equivalent for k ≥ 1. Theorem 6.10 shows that many more order-types are achievable as cohesive powers of computable copies of ω.
• Classically, the Keisler-Shelah theorem states that two structures are elementarily equivalent if and only if there is an ultrafilter (on a set of appropriate size) over which the corresponding ultrapowers are isomorphic.Effectively, an analogous result holds for decidable structures: decidable structures A and B are elementarily equivalent if and only if C A ∼ = C B for every cohesive set C (Theorem 2.22, which is essentially due to Nelson [20] in a slightly different context).If A and B are computable structures that are not necessarily decidable, then the effective version of the Keisler-Shelah theorem can fail in either direction.As explained in the previous bullet, there are many examples of elementarily equivalent computable linear orders having non-isomorphic cohesive powers.Example 5.5 also shows that it is possible for non-elementarily equivalent computable linear orders to have isomorphic cohesive powers.
Most interestingly, if the cohesive set is assumed to be co-c.e., then we obtain the n = 0 case as well as an additional level of saturation: cohesive powers of n-decidable structures over co-c.e.cohesive sets are Σ n+1 -recursively saturated (Theorem 2.18).This work is organized as follows.Section 2 presents the basic theory of cohesive products and cohesive powers, focusing on analogs of Loś's theorem, substructures, saturation, and isomorphisms.Section 3 concerns the cohesive powers of computable linear orders in general.Section 4 concerns the cohesive powers of computable copies of ω.In Section 5, given a co-c.e.cohesive set C, we construct a computable copy L of ω whose cohesive power C L has order-type ω + η.Section 6 leverages the construction of Section 5 to shuffle various patterns of finite order-types into cohesive powers of computable copies of ω.

Cohesive products and powers of computable structures
We assume familiarity with the basic concepts and notation from computability theory and computable structure theory.Comprehensive references include [17,23,24] for computability theory and [1,18] for computable structure theory.See also [11] for a survey of computable structure theory.
Throughout, N denotes the natural numbers, and ω denotes its order-type when thought of as a linear order.For each n ≥ 2, we use x 0 , . . ., x n−1 : N n → N to denote the usual computable bijective n-tupling function, which we may assume is increasing in all coordinates.For each i < n, π i denotes the corresponding projection function onto coordinate i.For X ⊆ N and n ∈ N, X↾n denotes the set X ∩ {0, 1, . . ., n − 1}.Often we consider expressions of the form lim n∈C f (n), lim sup n∈C f (n), lim inf n∈C f (n), etc., where f : N → N is some function and C ⊆ N is an infinite set.For this, let n 0 < n 1 < n 2 < • • • be the elements of C listed in increasing order.Then lim n∈C f (n) means lim i→∞ f (n i ), and lim sup n∈C f (n) and lim inf n∈C f (n) are interpreted similarly.Notice that for functions f : N → N, lim n∈C f (n) = ∞ if and only if lim inf n∈C f (n) = ∞.
We denote partial computable functions by ϕ, ψ, etc.For a partial computable function ϕ, ϕ(n)↓ means that ϕ halts on input n, thus producing an output, and ϕ(n)↑ means that ϕ does not halt on input n.The notation ϕ ≃ ψ means that ϕ and ψ are equal partial functions: for every n, either ϕ(n)↓ = ψ(n)↓ or both ϕ(n)↑ and ψ(n)↑.We also use the ≃ notation to define one partial computable function in terms of another.For example, 'let ϕ(n) ≃ ψ(n) + 1' means compute ϕ(n) by running ψ(n) and adding 1 to the output if ψ(n) halts.As usual, (ϕ e ) e∈N denotes the standard effective enumeration of all partial computable functions, and ϕ e,s (n) denotes the result (if any) of running ϕ e on input n for s computational steps.Sometimes we also write ϕ 0 , . . ., ϕ n−1 to refer to an arbitrary list of partial computable functions.The usage of subscripts will be clear from context.
Throughout, we consider only first-order languages L and finite first-order L-formulas.For k ∈ N, we sometimes use the abbreviation ∃ ≥k x Φ(x) to express that there are at least k distinct x for which Φ(x) holds: Similarly, we use the abbreviation ∃ =k x Φ(x) to express that there are exactly k distinct x for which Φ(x) holds: ∃ =k x Φ(x) ≡ ∃ ≥k x Φ(x) ∧ ¬∃ ≥k+1 x Φ(x).We point out that, for example, if Φ(x) is a Σ 1 formula, then ∃ ≥k x Φ(x) is equivalent to a Σ 1 formula and ∃ =k x Φ(x) is equivalent to the conjunction of a Σ 1 formula and a Π 1 formula.In a slight abuse of the terminology, we say that a formula is ∆ n if it is logically equivalent to both a Σ n formula and a Π n formula.So if Φ(x) is Σ 1 , then then ∃ =k x Φ(x) is ∆ 2 .
Fix a computable language L. A computable L-structure A consists of a non-empty computable domain A ⊆ N and a uniformly computable interpretation of all relation, function, and constant symbols of L. We often denote the domain of a structure A by |A|.A computable L-structure A is decidable if there is an algorithm which, given a formula Φ(x 0 , . . ., x m−1 ), with all free variables displayed, and a sequence of parameters a 0 , . . ., a m−1 each from |A|, determines whether or not A |= Φ(a 0 , . . ., a m−1 ).Likewise, a computable L-structure A is n-decidable if there is such an algorithm determining whether or not Σ n formulas with parameters from |A| hold in A. In other words, a computable structure is a structure having a computable atomic diagram (or, equivalently, a computable quantifier-free diagram); a decidable structure is a structure having a computable elementary diagram; and an n-decidable structure is a structure having a computable Σ n -elementary diagram.A 0-decidable structure is the same thing as a computable structure.Similarly, a sequence (A i : i ∈ N) of L-structures is uniformly computable, uniformly decidable, or uniformly n-decidable if the respective sequence of atomic, elementary, or Σ n -elementary diagrams is uniformly computable.
We find it convenient to extend the decidability terminology to individual formulas and to computable sequences of formulas that are not necessarily all members of some fixed syntactic class.Say that a computable sequence of formulas (Φ i : i ∈ N) is uniformly decidable in a computable L-structure A if there is an algorithm that, given a subformula Ψ( y) of Φ i for some i (including of course the possibility Ψ = Φ i ) and an appropriate sequence of parameters a from |A|, determines whether or not A |= Ψ( a).The reason for including the decidability of subformulas is to permit inductive arguments and to ensure that we can effectively search for witnesses to existential quantifiers.These properties are used in the subsections on analogs of Loś's theorem and on saturation below, for example.Formally, (Φ is computable.In the case of sequences of structures, say that a computable sequence of formulas is computable.In the case of a single formula Φ (and its subformulas), we simply say that Φ is decidable in a computable L-structure A and that Φ is uniformly decidable in a uniformly computable sequence (A n : n ∈ N) of L-structures.In a decidable structure, every computable sequence of formulas is uniformly decidable.In an n-decidable structure, every computable sequence of Σ n formulas (indeed, every computable sequence of Boolean combinations of Σ n formulas) is uniformly decidable.
Cohesive products and cohesive powers.More generally, a straightforward induction shows that if C is a cohesive set and X is a Boolean combination of c.e. sets, then either C ⊆ * X or C ⊆ * X.Notice that if C is cohesive and X is a Boolean combination of c.e. sets, then C ∩ X being infinite implies that C ⊆ * X.We use quantifiers ∀ ∞ n and ∃ ∞ n as abbreviations for 'for almost every n' and 'there are infinitely many n.'So for example, ( Definition 2.2.Let L be a computable language.Let (A n : n ∈ N) be a uniformly computable sequence of L-structures with corresponding uniformly computable sequence of non-empty domains • Let D be the set of partial computable functions ϕ such that ∀n Here we think of R An (ϕ 0 (n), . . ., ϕ m−1 (n)) as including the condition that ϕ i (n)↓ for each i < m.
• Let f be an m-ary function symbol of L.
and notice that C ⊆ * dom(ψ) because C ⊆ * dom(ϕ i ) for each i < m.Define f C An by • Let c be a constant symbol of L. Let ψ be the total computable function defined by ψ(n) = c An , and define c C An = [ψ].In the case where A n is the same fixed computable structure A for every n, the cohesive product If ϕ is a partial computable function satisfying the relaxed condition, let ψ be the partial computable function given by Then ψ satisfies the original condition, and ψ = C ϕ.
We often consider cohesive powers of computable structures by co-c.e.cohesive sets.The co-c.e.cohesive sets are exactly the complements of the maximal sets, which are the co-atoms of the lattice of c.e. sets modulo finite difference (see [23,Section X.3]).Such sets exist by a well-known theorem of Friedberg (see [23,Theorem X.3.3]).Cohesive powers are intended to be effective analogs of ultrapowers, so in light of this analogy, it makes sense to impose effectivity on the cohesive set, which plays the role of the ultrafilter, as well as on the base structure itself.Technically, it helps to be able to learn what numbers are not in the cohesive set C when building a computable structure A so as to influence C A in a particular way.Cohesive products by co-c.e.cohesive sets also have the helpful property that every member of the cohesive product has a total computable representative.Let (A n : n ∈ N) be a uniformly computable sequence of structures with non-empty domain |A n | for each n, and let a n be the first element of |A n | for each n.Suppose that C is co-c.e. and cohesive, and let ϕ : N → N be a partial computable function representing an element [ϕ] of C A n .Then C ⊆ * dom(ϕ), so let N be such that (∀n As with structures and their ultrapowers, a computable structure A always naturally embeds into its cohesive powers.For a ∈ |A|, let f a be the total computable function with constant value a. Then for any cohesive set C, the map a → [f a ] embeds A into C A. This map is called the canonical embedding of A into C A. If A is finite and C is cohesive, then every partial computable function ϕ : N → |A| with C ⊆ * dom(ϕ) is eventually constant on C. In this case, every element of C A is in the range of the canonical embedding, and therefore A ∼ = C A. If A is an infinite computable structure, then every cohesive power C A is countably infinite: infinite because A embeds into C A, and countable because the elements of C A are represented by partial computable functions.See [4] for further details.
Analogs of Loś's theorem.A restricted form of Loś's theorem holds for cohesive powers.Let L be a computable language, let A be an n-decidable L-structure, and let C be cohesive.We show that for every Σ n+3 sentence Φ, A |= Φ implies that C A |= Φ.It follows that A and C A agree on all ∆ n+3 sentences.It also follows that if A is decidable, then A and C A are elementarily equivalent.Thus for decidable structures, we recover the full Loś theorem (for first-order logic).These results update Dimitrov's fundamental theorem of cohesive powers [4], which is the 0-decidable case: if A is a computable L-structure, C is cohesive, and Φ is a Σ 3 sentence, then A |= Φ implies that C A |= Φ.In general, the fundamental theorem of cohesive powers is the best possible analog of Loś's theorem.In Sections 4, 5, and 6, we see several examples of computable linear orders L where the Π 3 sentence "every element has an immediate successor" is true of L but false of some cohesive power of L. For sequences of structures, we show that if (A i : i ∈ N) is a sequence of uniformly n-decidable L-structures, C is cohesive, and Φ is a Π n+2 sentence, then C ⊆ * i : A i |= Φ implies that C A i |= Φ.This updates the fundamental theorem of cohesive products from [7], which is the 0-decidable case.In Section 4, we show that the fundamental theorem of cohesive products is best possible by uniformly computing a sequence of finite linear orders (L i : i ∈ N) such that for every cohesive set C, the cohesive product C L i is a linear order with no maximum element.Lemma 2.3.Let L be a computable language, let (A n : n ∈ N) be a uniformly computable sequence of L-structures, and let C be cohesive.Let t(v 0 , . . ., v m−1 ) be a term, with all variables displayed.Let Let ψ be the partial computable function given by Proof.The proof is a straightforward induction on the construction of the term t, using Definition 2.2.
Lemma 2.4.Let L be a computable language, let (A n : n ∈ N) be a uniformly computable sequence of L-structures, and let C be cohesive.Let Φ(v 0 , . . ., v m−1 ) be a formula (with all free variables displayed) that is uniformly decidable in (A n : n ∈ N).Then for any Proof.Proceed by induction on the construction of the formula Φ.For the base case, assume that Φ(v 0 , . . ., v m−1 ) is the atomic formula R t 0 (v 0 , . . ., v m−1 ), . . ., t ℓ−1 (v 0 , . . ., v m−1 ) , where R is either a relation symbol from L or equality, and t 0 , . . ., t ℓ−1 are terms whose variables are among v 0 , . . ., v m−1 .For each i < ℓ, define as in Lemma 2.3 so that t C An i We consider the inductive cases for the connectives ∧ and ¬ and for the quantifier ∃.
) .Formulas Φ 0 and Φ 1 are uniformly decidable in (A n : n ∈ N) because they are subformulas of Φ.Thus the induction hypothesis yields that

First suppose that
).The formula Ψ is uniformly decidable in (A n : n ∈ N) because it is a subformula of Φ.Thus the induction hypothesis yields that Conversely, suppose that C ⊆ * n : . The formula Ψ(x, v 0 , . . ., v m−1 ) is uniformly decidable in (A n : n ∈ N), so we may define a partial computable function θ by The assumption C ⊆ * n : A n |= ∃x Ψ(x, ϕ 0 (n), . . ., ϕ m−1 (n)) implies that C ⊆ * dom(θ).We therefore have that
(1) For any (2) For any Proof.For item (1), suppose that The set is a Boolean combination of c.e. sets, so by cohesiveness, either C ⊆ * X or C ⊆ * X.If C ⊆ * X, then because C ⊆ * dom(ϕ i ) for each i < m and C ⊆ * dom(ψ i ) for each i < k, we would have that As Ψ is uniformly decidable in (A n : n ∈ N), we could then argue as in the ∃ case of the proof of Lemma 2.4 and simultaneously define partial computable functions θ i for i < ℓ as follows.Given n, search for the first sequence a 0 , . . ., a ℓ−1 ∈ |A n | ℓ such that and set θ i (n) = a i for each i < ℓ.Then by Lemma 2.4, which contradicts ( * ).Thus we cannot have C ⊆ * X, so it must be that C ⊆ * X. Therefore as desired.Item (2) follows from item (1).Suppose that ).The formula ¬Ψ is uniformly decidable in (A n : n ∈ N) because Ψ is, so applying item (1) to ¬Ψ yields that because the two sets are disjoint.Lemma 2.6.Let L be a computable language, let (A n : n ∈ N) be a uniformly computable sequence of L-structures, and let C be cohesive.Let Φ(v 0 , . . ., v m−1 ) be a formula that is logically equivalent to a formula of the form ∃ x ∀ y Ψ 0 ( x, y, v 0 , . . ., v m−1 ) and to a formula of the form ∀ x ∃ y Ψ 1 ( x, y, v 0 , . . ., v m−1 ), where Ψ 0 and Ψ 1 are uniformly decidable in (A n : n ∈ N).Then for any Proof.The '⇒' implication is by Lemma 2.5 item (1) and the equivalence of Φ( v) with ∃ x ∀ y Ψ 0 ( x, y, v).The '⇐' implication is by Lemma 2.5 item (2) and the equivalence of Φ( v) with ∀ x ∃ y Ψ 1 ( x, y, v).
The following theorem refines the fundamental theorem of cohesive products from [7].
Theorem 2.7.Let L be a computable language, let (A i : i ∈ N) be a sequence of uniformly n-decidable L-structures, and let C be cohesive.
Proposition 4.10 below shows that Theorem 2.7 is tight in general.We now switch from cohesive products to cohesive powers.Lemma 2.8.Let L be a computable language, let A be a computable L-structure, and let C be cohesive.Let Φ be a sentence of the form ∀ x ∃ y ∀ z Ψ( x, y, z), where Ψ( x, y, z) is decidable in A.
Proof.Suppose that C A |= Φ. Write x = x 0 , . . ., x m−1 .For each i < m, fix an a i ∈ |A|, and let ϕ i be the constant function with value a i .Then by Lemma 2.5 item (1) applied to the formula ∃ y ∀ z Ψ( x, y, z) and the sequence of structures (A n : n ∈ N) where A n is A for each n.It must therefore be that A |= ∃ y ∀ z Ψ(a 0 , . . ., a m−1 , y, z).The sequence a 0 , . . ., a m−1 ∈ |A| was arbitrary, so we have shown that The next theorem is our version of Loś's theorem for cohesive powers of n-decidable structures, which refines the fundamental theorem of cohesive powers from [4].
Theorem 2.9.Let L be a computable language, let A be an n-decidable L-structure, and let C be a cohesive set.
Proof.Item (1) is the special case of Theorem 2.7 item (3) in which each structure A i is A. Item (2) follows from item (3) because if Φ is a ∆ n+3 sentence, then both Φ and ¬Φ are logically equivalent to Σ n+3 sentences.For item (3), consider the sentence ¬Φ, which is logically equivalent to a Π n+3 sentence Θ.The sentence Θ thus has the form ∀ x ∃ y ∀ z Ψ( x, y, z), where Ψ( x, y, z) is Σ n .The formula Ψ( x, y, z) is decidable in A because A is n-decidable.Therefore C A |= Θ implies that A |= Θ by Lemma 2.8.The contrapositive yields that A |= Φ implies that C A |= Φ. Corollary 4.9 below shows that Theorem 2.9 item (3) is tight in general.As mentioned above, we recover Loś's theorem for all first-order sentences when we consider cohesive powers of decidable structures.This is essentially the same as Nelson's [20, Theorem 0.5].See also [4].
Corollary 2.10.Let L be a computable language, and let C be a cohesive set.
(1) Let (A i : i ∈ N) be a sequence of uniformly decidable L-structures, and let Φ(v 0 , . . ., v m−1 ) be a formula with all free variables displayed.Then for any In particular, if Φ is a sentence, then (2) If A is a decidable L-structure, then A and C A are elementarily equivalent.
Proof.Item (1) follows from Theorem 2.7 because the structures (A i : i ∈ N) are uniformly n-decidable for every n.Item (2) follows from the special case of item (1) in which A i is A for each i.Item (2) also follows from Theorem 2.9 item (2) because A is n-decidable for every n.
We pause to point out that we can recover a version of Skolem's countable non-standard model of arithmetic by relativizing everything to 0 (ω) , the ω th Turing jump of 0. Let N = (N, +, ×, <) denote the standard model of arithmetic.Then N is a decidable structure relative to 0 (ω) .Therefore N ≡ 0 (ω) C N for any C that is cohesive relative to 0 (ω) by the relativized version of Corollary 2.10.Thus 0 (ω) C N is a countable non-standard model of arithmetic.The superscript 0 (ω) in 0 (ω) C N indicates that we relativize the cohesive power construction to 0 (ω) by requiring that C be cohesive for the collection of sets that are c.e. relative to 0 (ω) and by building the cohesive power from functions that are partial computable relative to 0 (ω) .
Reducts, substructures, and disjoint unions.Cohesive products respect reducts of computable structures.Let L ⊆ L + be two languages, and let A be an L + -structure.Then the reduct A↾L of A to L is the L-structure obtained from A by forgetting about the symbols of L + \ L. If L ⊆ L + are computable languages and A is a computable L + -structure, then A↾L is a computable L-structure.
Many of our arguments make implicit use of the following proposition.
Proposition 2.11.Let L ⊆ L + be computable languages, let (A n : n ∈ N) be a uniformly computable sequence of L + -structures, and let C be a cohesive set.Then Thus in the case of a single computable L + -structure A, Proof.The L-structures C (A n ↾L) and C A n ↾L share the same domain, which is the set of all = C -equivalence classes [ϕ] of partial computable functions ϕ such that ∀n (ϕ(n)↓ → ϕ(n) ∈ |A n |) and C ⊆ * dom(ϕ).One then checks that the identity map is the desired isomorphism.
Cohesive powers respect computable substructures and finite disjoint unions of computable structures.
Proposition 2.12.Let L be a computable language with a unary relation symbol U .Let (A n : n ∈ N) be a uniformly computable sequence of L-structures, and suppose that {a ∈ |A n | : A n |= U (a)} forms the domain of a computable substructure B n of A n for every n.Let C be a cohesive set.Then Proof.Let f be an m-ary function symbol of L, and let Recall that B n is the substructure of A n with domain {a ∈ |A n | : A n |= U (a)} for each n, and let D be the substructure of ) .In view of the comment following Definition 2.2, the domains of C B n and of D are in both cases the = C -equivalence classes of partial computable functions We usually apply Proposition 2.12 in the case of a single computable structure A. In this situation, the proposition says that if A is a computable structure, if {a ∈ |A| : A |= U (a)} forms the domain of a computable substructure B of A, and if Definition 2.13.Let L be a relational language, and let A 0 , . . ., A k−1 be L-structures for some k > 0. The disjoint union of A 0 , . . ., A k−1 is the L-structure i<k A i with domain i<k ({i} × |A i |) defined as follows.For every m-ary relation symbol R and every (i 0 , x 0 ), . . ., In the case of computable L-structures A 0 , . . ., A k−1 for a computable relational language L, one may use the pairing function to compute a copy of i<k A i .Thus if A 0 , . . ., A k−1 are computable structures, then so is i<k A i .Proposition 2.14.Let L be a computable relational language, let A 0 , . . ., A k−1 be computable L-structures for some k > 0, and let C be cohesive.Then , where U 0 , . . ., U k−1 are k fresh unary relation symbols.
Expand i<k A i to a computable L + -structure by interpreting U i as the domain of A i for each i < k: ) holds for all j < m: The L + -sentences in ( * ) and (⋆) are Π 1 , therefore C ( i<k A i ) also satisfies all of these sentences by Theorem 2.9 item (2).For each i < k, let Saturation.There are many classical results concerning the saturation of ultraproducts.See, for example, [2, Section 6.1].One well-known result is that, for a countable language, ultraproducts over countably incomplete ultrafilters are always ℵ 1 -saturated (see [2,Theorem 6.1.1]).Here we show that cohesive products of uniformly decidable structures are always recursively saturated (which is essentially due to Nelson [20]) and that, for n > 0, cohesive products of uniformly n-decidable structures are always Σ n -recursively saturated.Furthermore, we show that if the cohesive set is assumed to be co-c.e., then we obtain the n = 0 case and can also squeeze one more level of saturation out of the cohesive product: cohesive products of uniformly n-decidable structures over co-c.e.cohesive sets are always Σ n+1 -recursively saturated.
We follow the terminology of [15, Section 11.2] regarding types and saturation.Beware that what we call a type over a structure A, other authors may call a type over a finite set {c 0 , . . ., c ℓ−1 } of parameters from A. Let L be a language, and let A be an L-structure.Consider a set p( x) = p(x 0 , . . ., x m−1 ) of formulas of the form Φ( x; c) = Φ(x 0 , . . ., x m−1 ; c 0 , . . ., c ℓ−1 ) in the language L ∪ {c 0 , . . ., c ℓ−1 }, where x 0 , . . ., x m−1 are m fixed variables and c 0 , . . ., c ℓ−1 are ℓ fixed parameters from |A| that are identified with fresh constant symbols.Such a set p( x) is called a type over A if it is finitely satisfied in A: for every Φ 0 ( x; c), . . ., When discussing a formula Φ( x; c) of a type p( x), we write Φ( x; y) for the corresponding L-formula, with fresh variables y in place of the constants c.We sometimes write p( x; c) or p( x; y) in place of p( x) when we want to emphasize the type's parameters or the corresponding variables.
Lemma 2.15.Let L be a computable language, let (A n : n ∈ N) be a uniformly computable sequence of L-structures, and let C be cohesive.Let p( x; c) be a computable type over C A n with computable enumeration (Φ i : i ∈ N).Assume that the formulas be the parameters of the type p( x; c), so that for each k.To ease notation, pack ψ 0 , . . ., ψ ℓ−1 into a single partial computable function ψ : Define a partial computable function ϕ : N → N m as follows.Given n, first search for the greatest k ≤ n such that This search is effective on account of the uniform decidability assumption.If such a k is found, search for the first tuple a = a 0 , . . ., a m−1 such that This means that for almost every n ∈ C with n ≥ k, the initial search in the computation of ϕ(n) succeeds and finds a k with k ≤ k ≤ n.Thus C ⊆ * dom(ϕ) and Items (1) and (3) of the next theorem are essentially [20, Theorem 2.2].
Theorem 2.16.Let L be a computable language, and let C be a cohesive set.
(1) Let (A i : i ∈ N) be a sequence of uniformly decidable L-structures.Then C A i is recursively saturated.
(2) Let (A i : i ∈ N) be a sequence of uniformly n-decidable L-structures for an n > 0.
(3) Let A be a decidable L-structure.Then C A is recursively saturated.
(4) Let A be an n-decidable L-structure for an n > 0.
Proof.Item (1) follows directly from Lemma 2.15 because every computably enumerable sequence of formulas is uniformly decidable in (A i : i ∈ N).Item (2) also follows from Lemma 2.15.If (Φ i : i ∈ N) is a computable enumeration of Σ n formulas and n > 0, then is a computable enumeration of (formulas that are logically equivalent to) Σ n formulas and hence is uniformly decidable in (A i : i ∈ N).Items ( 3) and ( 4) are the special cases of items ( 1) and ( 2) in which A i is A for each i.
If we restrict to co-c.e.cohesive sets, then we can include n = 0 and improve Σ n -recursive saturation to Σ n+1 -recursive saturation in Theorem 2.16 items ( 2) and ( 4).
Lemma 2.17.Let L be a computable language, let (A n : n ∈ N) be a uniformly computable sequence of L-structures, and let C be co-c.e. and cohesive.Let p( x; c) be a computable type over C A n consisting of formulas of the form ∃ z Φ( x, z; c), with computable enumeration (∃ z i Φ i ( x, z i ; c) : i ∈ N).Further assume that the formulas (Φ i ( x, z i ; y) : i ∈ N) are uniformly decidable in the structures (A n : n ∈ N).Then C A n realizes p( x; c).
be the parameters of the type p( x; c), so that for each k.As in the proof of Lemma 2.15, let ψ : N → N ℓ be the partial computable function given by ψ(n) ≃ ψ 0 (n), . . ., ψ ℓ−1 (n) .Notice that C ⊆ * dom(ψ), and write − → [ψ] as an abbreviation for The goal is to partially compute a function θ : N → N m so that C ⊆ * dom(θ) and for each i.The set for each i by cohesiveness.Letting ϕ j = π j •θ for each j < m, we therefore have that for each i by Lemma 2.6.
The strategy for partially computing θ is to keep track of the numbers k that are covered, meaning that it looks like there is an As the computation progresses, a k that is covered may become uncovered because the n that covers it is enumerated in the complement of C. When this happens, we note the least k that becomes uncovered, we search for the first n > k where θ(n) is not yet defined, it looks like n ∈ C, and there looks to be an a ∈ N m such that A n |= i<k ∃ z i Φ i ( a, z i ; ψ(n)), and we attempt to cover k again by setting θ(n) = a.This strategy eventually succeeds because if n 0 ∈ C is sufficiently large and we never choose a smaller member of C to cover k, then we eventually choose n 0 to cover either k or an even bigger number.
Formally, let W denote the c.e. set C, and let (W s ) s∈N be a computable ⊆-increasing enumeration of W .Let (U k : k ∈ N) be the uniformly c.e. sequence of sets given by To partially compute θ, we compute an increasing sequence θ 0 ⊆ θ 1 ⊆ θ 2 ⊆ • • • of finite approximations to θ. Start at stage 0 with θ 0 = ∅.At stage s, we have θ s and we define θ s+1 .
Say that n covers k at stage s if If there is an n that covers k at stage s, then also say that k is covered at stage s.Let k 0 s be the least number that is not covered at stage s.
, and such that a, n ∈ U ks,s for some a.If there is such an n, let a be the first corresponding a, and extend θ s to θ s+1 by setting θ s+1 (n) = a.If there is no such n, then set θ s+1 = θ s .Go to stage s + 1.This completes the partial computation of θ.
If n covers k at some stage s, there could be a later stage t > s at which n does not cover k because n ∈ W t .However, if n ∈ C, then n / ∈ W t for every t, so k stays covered by n forever.
Claim.Every k is eventually covered by an n ∈ C.
Proof of Claim.Proceed by induction on k.Let s 0 be a stage by which all k < k have been covered by members of C. Let c be the greatest member of C covering a k < k at stage s 0 , and let s 1 > s 0 be a stage such that W s 1 ↾c = W ↾c. Then k s ≥ k at all stages s > s 1 .By assumption, and therefore by Lemma 2.6.To see that Lemma 2.6 applies here, pull the ∃ z i quantifiers out in front of the conjunction.The resulting formula has the form ∃ w Ψ( w; y), where Ψ is uniformly decidable in (A n : n ∈ N).Let n 0 be least such that n 0 > k, such that n 0 ∈ C, such that θ s 1 (n 0 )↑, such that ψ(n 0 )↓, and such that If θ s (n 0 )↓ for the first time at some stage s > s 1 , it is to cover some j ≥ k.As n 0 ∈ C, we have that n 0 covers j and therefore covers k at all later stages.Let s 2 > s 1 be large enough so that W s 2 ↾n 0 = W ↾n 0 and so that there is an a with a, n 0 ∈ U k,s 2 .Consider stage s 2 .If k is not covered at stage s 2 , then it must be that θ s 2 (n 0 )↑.In this case, k s 2 = k, and n 0 is least such that n 0 > k s 2 , n 0 / ∈ W s 2 , θ s 2 (n 0 )↑, and a, n 0 ∈ U ks 2 ,s 2 for some a.So θ s 2 +1 (n 0 ) is defined to cover k at stage s 2 .
Suppose instead that k is covered at stage s 2 .In this case, let n 1 be least such that there is a stage s 3 ≥ s 2 at which n 1 covers k.If n 1 ∈ C, then this is as desired.Otherwise, n 1 ∈ W , in which case there is a least s > s 3 with n 1 ∈ W s .The number n 1 covers k at stage s − 1, but by choice of n 1 , no n < n 1 covers k at stage s.Thus k 1 s = k, so k s = k.If θ s (n 0 )↓, then n 0 must already cover k, as noted above.If θ s (n 0 )↑, then n 0 is least such that n 0 > k s , n 0 / ∈ W s , θ s (n 0 )↑, and a, n 0 ∈ U ks,s for some a.So θ s+1 (n 0 ) is defined to cover k at stage s.This completes the proof of the claim.
To finish the proof, consider the formula ∃ z i Φ i .By the claim, every k is eventually covered by an n ∈ C. Thus for every k > i, there is an n > k with n ∈ C, θ(n)↓, and θ(n), n ∈ U k .Thus C ⊆ * dom(θ) by cohesiveness, and as desired.
Theorem 2.18.Let L be a computable language, and let C be a co-c.e.cohesive set.
(1) Let (A i : i ∈ N) be a sequence of uniformly n-decidable L-structures.Then C A i is Σ n+1 -recursively saturated.
(2) Let A be an n-decidable L-structure.Then C A is Σ n+1 -recursively saturated.
Proof.Item (1) follows from Lemma 2.17.A computable Σ n+1 -type can be computably enumerated as (∃ z j Φ j : j ∈ N), where Φ j is Π n for every j.The formulas (Φ j : j ∈ N) are then uniformly decidable in (A i : i ∈ N) because (A i : i ∈ N) is a uniformly n-decidable sequence of structures.Item (2) is the special case of item (1) in which A i is A for each i.
The n = 0 case of Theorem 2.18 is particularly noteworthy.
Corollary 2.19.Let L be a computable language, and let C be a co-c.e.cohesive set.
(1) Let (A i : i ∈ N) be a uniformly computable sequence of L-structures.Then (2) Let A be a computable L-structure.Then C A is Σ 1 -recursively saturated.
Isomorphisms.Classically, an isomorphism between two structures induces an isomorphism between the corresponding ultrapowers over a fixed ultrafilter.In the effective case, a computable isomorphism between two computable structures induces an isomorphism between the corresponding cohesive powers over a fixed cohesive set.This fact essentially appears in [4], but we include a proof here for completeness.
Theorem 2.20.Let L be a computable language, let A 0 and A 1 be computable L-structures that are computably isomorphic, and let C be cohesive.
Proof.We first prove the theorem under the assumption that L is a relational language.Let A 0 and A 1 be computable L-structures, and let f : where U 0 and U 1 are fresh unary relation symbols and R f is a fresh binary relation symbol.Expand A 0 ⊔ A 1 to a computable L + -structure by interpreting U 0 and U 1 as the domains of A 0 and A 1 and by interpreting R f as the graph of f .
• R f is single-valued on its domain: • R f is injective on its domain: • R f respects the relations of L: for every m-ary relation symbol S ∈ L, The above properties constitute a collection of Π 2 L + -sentences that hold in A 0 ⊔ A 1 , so they also hold in the cohesive power C (A 0 ⊔ A 1 ) as an L + -structure by Theorem 2.9 item (2).For each i < 2, let D i denote the substructure of C (A 0 ⊔ A 1 ) with domain given by U i : f is the graph of an isomorphism between the reducts D 0 ↾L and D 1 ↾L.
Now suppose that L contains constant and function symbols in addition to relation symbols.For uniformity of argument, treat constant symbols as 0-ary function symbols.Let L rel be the relational language obtained from L by replacing each m-ary function symbol f by a fresh (m + 1)-ary relation symbol G f whose intended interpretation is the graph of f .We may translate any L-structure A into an L rel -structure A rel with the same domain by defining = y for every m-ary function symbol f ∈ L and every x 0 , . . ., x m−1 , y ∈ |A|.Conversely, suppose that A is an L rel -structure such that for every m-ary function symbol f ∈ L, G f is the graph of a function: Then we may translate A into an L-structure A fun with the same domain by defining f A fun (x 0 , . . ., x m−1 ) to be the unique y such that G A f (x 0 , . . ., x m−1 , y) for every m-ary function symbol f ∈ L and every x 0 , . . ., x m−1 ∈ |A|.If A and B are isomorphic L-structures, then the isomorphism is also an isomorphism between A rel and B rel as L rel -structures.Conversely, if A and B are isomorphic L rel -structures such that G f is the graph of a function in both structures for every function symbol f ∈ L, then the isomorphism is also an isomorphism between A fun and B fun as L-structures.
If L is a computable language and A is a computable L-structure, then L rel is a computable language and A rel is a computable L rel -structure.Let L be a computable language, let A and B be computably isomorphic L-structures, and let C be a cohesive set.Then A rel and B rel are computably isomorphic computable L rel -structures, so C A rel ∼ = C B rel as L rel -structures.For each function symbol f ∈ L, G f is the graph of a function in A rel and in B rel .Therefore G f is the graph of a function in C A rel and in C B rel by Theorem 2.9 item (2) because the statement "G f is the graph of a function" is expressible by a Π 2 L rel -sentence.Therefore ( C A rel ) fun ∼ = ( C B rel ) fun as L-structures.It is straightforward to check that C A rel = ( C A) rel and therefore that ( C A rel ) fun = C A; and similarly for B. Thus Recall that a computable structure A is called computably categorical if every computable structure that is isomorphic to A is isomorphic to A via a computable isomorphism.It follows from Theorem 2.20 that if A is a computably categorical computable structure and C is cohesive, then C A ∼ = C B whenever B is a computable structure isomorphic to A.
Corollary 2.21.Let L be a computable language, let A be a computably categorical computable L-structure, let B be a computable L-structure that is isomorphic to A, and let C be cohesive.Then  We show that for every with the same type.A symmetric argument shows that the same holds with the roles of A and B reversed.As in the proofs of Lemmas 2.15 and 2.17, let ϕ : N → N m be the partial computable function be a computable enumeration of all formulas with m free variables.
Define a partial computable function ψ : N → N m as follows.If ϕ(n)↓, then for each i ≤ n, use the decidability of A to determine whether Consider the formula Φ i , and suppose that } by Corollary 2.10.Thus for sufficiently large n ≥ i with n ∈ C, we have that Θ i = Φ i in the computation of ψ(n), and therefore ψ(n) is defined so that Again, the decidability assumption in Theorem 2.22 is essential, as we shall see examples of isomorphic (and hence elementarily equivalent) computable linear orders having non-elementarily equivalent (and hence non-isomorphic) cohesive powers.We shall also see examples of non-elementarily equivalent computable linear orders having isomorphic cohesive powers.

Linear orders and their cohesive powers
We investigate the cohesive powers of computable linear orders, with special attention to computable linear orders of type ω.A linear order L = (L, ≺) consists of a non-empty set L equipped with a binary relation ≺ satisfying the following axioms.
• ∀x Additionally, a linear order L is dense if ∀x∀y∃z (x ≺ y → x ≺ z ≺ y) and has no endpoints if ∀x∃y∃z (y ≺ x ≺ z).Rosenstein's book [21] is an excellent reference for linear orders.As is customary, ω denotes the order-type of (N, <), ζ denotes the order-type of (Z, <), and η denotes the order-type of (Q, <).That is, ω, ζ, and η denote the respective order-types of the natural numbers, the integers, and the rationals, each with their usual order.We refer to (N, <), (Z, <), and (Q, <) as the usual presentations of ω, ζ, and η, respectively.Recall that every countable dense linear order without endpoints has order-type η (see [21,Theorem 2.8]).Furthermore, every computable countable dense linear order without endpoints is computably isomorphic to (Q, <) (see [21,Exercise 16.4]).
To help reason about order-types, we use the sum, product, and reverse of linear orders as well as condensations of linear orders.Definition 3.1.Let L 0 = (L 0 , ≺ L 0 ) and L 1 = (L 0 , ≺ L 1 ) be linear orders.
• The product L 0 L 1 of L 0 and L 1 is the linear order P = (P, ≺ P ), where Note that, by (fairly entrenched) convention, L 0 L 1 is given by the product order on L 1 × L 0 , not on L 0 × L 1 .
• The reverse L * 0 of L 0 is the linear order R = (R, ≺ R ), where R = L 0 and x ≺ R y if and only if y ≺ L 0 x.(We warn the reader that the * in the notation L * 0 is unrelated to the * in the notation X ⊆ * Y .) If L 0 and L 1 are computable linear orders, then one may use the pairing function to compute copies of L 0 + L 1 and L 0 L 1 .Clearly, if L is a computable linear order, then so is L * .Definition 3.2.Let L = (L, ≺ L ) be a linear order.A condensation of L is any linear order M = (M, ≺ M ) obtained by partitioning L into a collection M of non-empty intervals and, for intervals The most important condensation is the finite condensation.Definition 3.3.Let L = (L, ≺ L ) be a linear order.For x ∈ L, let c F (x) denote the set of y ∈ L for which there are only finitely many elements between x and y: The set c F (x) is always a non-empty interval because x ∈ c F (x).The finite condensation c F (L) of L is the condensation obtained from the partition {c F (x) : x ∈ L}. and c F (ω + ζη) ∼ = 1 + η.Notice that for an element x of a linear order L, the order-type of c F (x) is always either finite, ω, ω * , or ζ.
We often refer to the intervals that comprise a condensation of a linear order as blocks.For the finite condensation of a linear order L, a block is a maximal interval I such that for any two elements of I, there are only finitely many elements of L between them.Let C be a cohesive set.It follows from Theorem 2.7 that if (L n : n ∈ N) is a uniformly computable sequence of linear orders, then C L n is again a linear order because linear orders are axiomatized by Π 1 sentences.Likewise, if (L n : n ∈ N) is a uniformly computable sequence of dense linear orders without endpoints, then C L n is again a dense linear order without endpoints because dense linear orders without endpoints are axiomatized by Π 2 sentences.In particular, if L is a computable linear order, then C L is a linear order; and if L is a computable dense linear order without endpoints, then C L is a dense linear order without endpoints.
The case of Q = (Q, <) is curious and deserves a digression.We have seen that if A is a finite structure, then A ∼ = C A for every cohesive set C. For Q, C Q is a countable dense linear order without endpoints, and hence isomorphic to Q, for every cohesive set C. Thus Q is an example of an infinite computable structure with Q ∼ = C Q for every cohesive set C. That Q is isomorphic to all of its cohesive powers is no accident.By combining Theorem 2.9 with the theory of Fraïssé limits (see [14,Chapter 6], for example), we see that a uniformly locally finite ultrahomogeneous computable structure for a finite language is always isomorphic to all of its cohesive powers.Recall that a structure is locally finite if every finitely-generated substructure is finite and is uniformly locally finite if there is a function f : N → N such that every substructure generated by at most n elements has cardinality at most f (n).Notice that every structure for a finite relational language is uniformly locally finite.Also recall that a structure is ultrahomogeneous if every isomorphism between two finitely-generated substructures extends to an automorphism of the whole structure.Proposition 3.4.Let A be an infinite uniformly locally finite ultrahomogeneous computable structure for a finite language, and let C be cohesive.Then A ∼ = C A.
Proof.The structure A is ultrahomogeneous, so it is the Fraïssé limit of its age (i.e., the class of all finitely-generated structures embeddable into A).By [14, Theorem 6.4.1] and its proof, the first-order theory of A is ℵ 0 -categorical and is axiomatized by a set T of Π 2 sentences.Thus if B is any countable model of T , then A ∼ = B. We have that C A |= T by Theorem 2.9 item (2), so A ∼ = C A. Proposition 3.4 implies that if a uniformly locally finite computable structure for a finite language is a Fraïssé limit, then it is isomorphic to all of its cohesive powers.Thus computable presentations of the Rado graph and the countable atomless Boolean algebra are additional examples of computable structures that are isomorphic to all of their cohesive powers.Examples of this phenomenon that cannot be attributed to ultrahomogeneity appear in Sections 4 and 5.
Returning to linear orders, it is helpful to recall the following well-known lemma stating that a strictly order-preserving surjection from one linear order onto another is necessarily an isomorphism.
Cohesive powers commute with sums, products, and reverses.Theorem 3.6.Let L 0 and L 1 be computable linear orders, and let C be cohesive.Then (1) Proof.We give proofs in the style of that of Theorem 2.20.For alternate proofs, see [9,Theorem 6].
For (1), let M = L 0 + L 1 .Expand the disjoint union L 0 ⊔ L 1 ⊔ M by adding unary relation symbols L 0 , L 1 , and M that are interpreted as |L 0 |, |L 1 |, and |M|; and by adding a 2-ary relation symbol R f that is interpreted as the graph of the function f : Furthermore, R f is the graph of a function f from |L 0 ⊔ L 1 | onto |M| with the following properties, which together witness that M ∼ = L 0 + L 1 as linear orders.
• ∀x∀y All of the above is expressible by a Π 2 sentence.By Proposition 2.12, the substructures of C (L 0 ⊔L 1 ⊔ M) corresponding to L 0 , L 1 , and M are isomorphic to C L 0 , C L 1 , and C M. By Theorem 2.9 item (2), C L 0 , C L 1 , and C M are linear orders as {≺}-structures, and For (2), let M = L 0 L 1 .Expand the disjoint union L 0 ⊔ L 1 ⊔ M by adding unary relation symbols L 0 , L 1 , and M that are interpreted as |L 0 |, |L 1 |, and |M|; and by adding a 3-ary relation symbol R f that is interpreted as the graph of the function f : with the following property, which witnesses that M ∼ = L 0 L 1 as linear orders.
All of the above is expressible by a Π 2 sentence.By Proposition 2.12, the substructures of C (L 0 ⊔L 1 ⊔ M) corresponding to L 0 , L 1 , and M are isomorphic to C L 0 , C L 1 , and C M. By Theorem 2.9 item (2), C L 0 , C L 1 , and C M are linear orders as {≺}-structures, and R C (L 0 ⊔L 1 ⊔M) Expand the disjoint union L 0 ⊔ M by adding unary relation symbols L 0 and M that are interpreted as |L 0 | and |M|; and by adding a 2-ary relation symbol R f that is interpreted as the graph of the function f : |L 0 | → |M| inside L 0 ⊔ M given by f ( 0, x ) = 1, x .In L 0 ⊔ M, the ≺ relation is a linear order when restricted to |L 0 | or |M|, and R f is the graph of a function f from which witnesses that M ∼ = L * 0 as linear orders.All of the above is expressible by a Π 2 sentence.By Proposition 2.12, the substructures of C (L 0 ⊔ M) corresponding to L 0 and M are isomorphic to C L 0 and C M. By Theorem 2.9 item (2), C L 0 and C M are linear orders as {≺}-structures, and R C (L 0 ⊔M) Sections 4, 5, and 6 concern calculating the order-types of cohesive powers of computable copies of ω.To do this, we must be able to determine when one element of a cohesive power is an immediate successor or immediate predecessor of another, and we must be able to determine when two elements of a cohesive power are in different blocks of its finite condensation.
In a cohesive power C L of a computable linear order L, [ϕ] is the immediate successor of [ψ] if and only if ϕ(n) is the immediate successor of ψ(n) for almost every n ∈ C. Therefore also [ψ] is the immediate predecessor of [ϕ] if and only if ψ(n) is the immediate predecessor of ϕ(n) for almost every n ∈ C. Lemma 3.7.Let (L n : n ∈ N) be a uniformly computable sequence of linear orders, let C be cohesive, and let [ψ] and [ϕ] be elements of C L n .Then the following are equivalent. ( Proof.That x is the ≺-immediate successor of y is a Π 1 property of x and y.Therefore items (1) and ( 2) are equivalent by Theorem 2.7 item (3).The set is the intersection of a c.e. set and a co-c.e.set, so items (2) and (3) are equivalent by cohesiveness.Lemma 3.8.Let (L n : n ∈ N) be a uniformly computable sequence of linear orders, let C be cohesive, and let [ψ] and [ϕ] be elements of C L n .Then the following are equivalent. ( Proof.We show that the following are equivalent for each fixed k ∈ N. That an interval (x, y) in a linear order contains at least k distinct elements for a fixed k is a Σ 1 property of x and y.Therefore items (i) and (ii) are equivalent by Theorem 2.7 item (3).The set {n : |(ψ(n), ϕ(n)) Ln | ≥ k} is c.e., so items (ii) and (iii) are equivalent by cohesiveness.
It now follows that items (1)-( 3) are equivalent.Item (1) holds if and only if item (i) holds for every k; item (2) holds if and only if item (ii) holds for every k; and item (3) holds if and only if item (iii) holds for every k.
The finite condensation of a cohesive product of computable linear orders by a co-c.e.cohesive set is always dense.Theorem 3.9.Let (L n : n ∈ N) be a uniformly computable sequence of linear orders, and let C be a cohesive set.If either (L n : n ∈ N) is uniformly 1-decidable or C is co-c.e., then c F ( C L n ) is dense.
Proof.The cohesive product C L n is Σ 1 -recursively saturated by Theorem 2.16 item (2) in the uniformly 1-decidable case and by Corollary 2.19 item (1) in the co-c.e.case.Thus it suffices to show that if M = (M, ≺ M ) is a Σ 1 -recursively saturated linear order, then c F (M) is dense.To see this, let a, b ∈ M be such that a Î M b.For each k ∈ N, let Φ k (x; a, b) be the following formula (with parameters a and b) expressing that there are at least k elements between a and x and at least k elements between x and b:

Cohesive powers of computable copies of ω
We investigate the cohesive powers of computable linear orders of type ω.Observe that an infinite linear order has type ω if and only if every element has only finitely many predecessors.We rely on this characterization throughout.Though not part of the language of linear orders, every linear order L has an associated immediate successor relation S L ⊆ |L|× |L|, where S L (a, b) holds for a, b ∈ |L| if and only if b is the ≺ L -immediate successor of a.As explained in [19, Section 3], a computable linear order L is 1-decidable if and only if the immediate successor relation S L is computable.It is straightforward to check that a computable copy L of ω is computably isomorphic to the usual presentation (N, <) if and only if S L is computable.Thus the computable copies of ω that are computably isomorphic to the usual presentation are exactly the 1-decidable copies of ω.
We show that if L is a computable copy of ω that is computably isomorphic to the usual presentation, then every cohesive power of L has order-type ω + ζη (Theorem 4.5).This is to be expected because ω + ζη is familiar as the order-type of every countable non-standard model of Peano arithmetic (see [15,Theorem 6.4]).However, being computably isomorphic to the usual presentation is not a characterization of the computable copies of ω having cohesive powers of order-type ω + ζη.We show that there is a computable copy of ω that is not computably isomorphic to the usual presentation, yet still has every cohesive power isomorphic to ω +ζη (Theorem 4.7).Thus to compute a copy of ω having a cohesive power not of type ω +ζη, one must do more than simply arrange for the immediate successor relation to be non-computable.We show that for every cohesive set C, there is a computable copy L of ω such that the cohesive power C L does not have order-type ω + ζη (Theorem 4.8).However, we also show that whenever L is a computable copy of ω and C is a co-c.e.cohesive set, the finite condensation c F ( C L) of the cohesive power C L always has order-type 1 + η (Theorem 4.4).
First, a cohesive power of a computable copy of ω always has an initial segment of order-type ω.
Lemma 4.1.Let L be a computable copy of ω, and let C be cohesive.Then the image of the canonical embedding of L into C L is an initial segment of C L of order-type ω.
Proof.Let a 0 ≺ L a 1 ≺ L a 2 ≺ L • • • be the (not necessarily computable) listing of |L| in ≺ L -increasing order.The image of the canonical embedding consists of those elements of the form [ψ a k ], where ψ a k is the total computable function with constant value a k .
For each k ∈ N, we have that ) by Theorem 2.9 item (1).That is, for each k ∈ N, there are exactly k many elements of C L that are Let L be a computable copy of ω, let C be cohesive, and let ϕ : N → |L| be any total computable bijection.Then [ϕ] is not in the image of the canonical embedding of L into C L, so it must be ≺ C L -above every element in the image of the canonical embedding.Thus C L is of the form ω + M for some non-empty linear order M. By analogy with the terminology for models of arithmetic, we call the elements of the ω-part of C L (i.e., the image of the canonical embedding) standard and the elements of the M-part of C L non-standard.In terms of the finite condensation, we have that c F ( C L) ∼ = 1 + N for some linear order N .Call the block corresponding to 1 the standard block and the blocks corresponding to N the non-standard blocks.Lemma 4.3 below implies that N is always infinite and therefore that M is always infinite as well.
Lemma 4.2.Let L = (L, ≺ L ) be a computable copy of ω, let C be cohesive, and let [ϕ] be an element of The following Lemma 4.3 says that if L is a computable copy of ω and C is cohesive, then C L has neither a least nor a greatest non-standard block.If L is 1-decidable or C is co-c.e., then this can be proved by a saturation argument similar to that given in the proof of Theorem 3.9.Instead, we give a hands-on proof that works for all computable L ∼ = ω and all cohesive C. Lemma 4.3.Let L = (L, ≺ L ) be a computable copy of ω, let C be cohesive, and let [ϕ] be a non-standard element of C L. Then there are non-standard elements [ψ − ] and is cofinal in L by letting x 0 = ℓ 0 and by letting each x i+1 be the <-least number with max If the computable linear order L is 1-decidable or the cohesive set C is co-c.e., then between any two blocks there is a third.We therefore have the following theorem.
Theorem 4.4.Let L be a computable copy of ω, and let C be a cohesive set.If either L is 1-decidable or C is co-c.e., then c F ( C L) has order-type 1 + η.
Proof.By Lemma 4.1, the standard elements of C L form an initial block.By Theorem 3.9 and Lemma 4.3, the non-standard blocks of C L form a countable dense linear order without endpoints.
Thinking in terms of blocks, showing that a linear order M has type ω + ζη amounts to showing that M consists of an initial block of order-type ω followed by densely (without endpoints) ordered blocks of type ζ.Theorem 4.5.Let L be a computable copy of ω that is computably isomorphic to the usual presentation, and let C be cohesive.Then C L has order-type ω + ζη.
Proof.As explained above, it follows from [19, Section 3] that a computable copy L of ω is computably isomorphic to the usual presentation if and only if L is 1-decidable.Thus we show that if L is a 1-decidable copy of ω and C is cohesive, then C L ∼ = ω + ζη.
Let L be a 1-decidable copy of ω, and let C be cohesive.By Lemma 4.1 and Theorem 4.4, C L consists of an initial standard block of order-type ω followed by a densely (without endpoints) ordered collection of non-standard blocks.It remains to show that each non-standard block has order-type ζ.To do this, it suffices to show that every non-standard element of C L has an ≺ C L -immediate successor and an ≺ The linear order L is 1-decidable and the relevant formula is Σ 2 , so [ϕ] has a ≺ C L -immediate successor in C L by the n = 1 case of Theorem 2.9 item (1).Now additionally suppose that [ϕ] is not the

so [ϕ] has an ≺
C L -immediate predecessor in C L by Theorem 2.9 item (1).It follows that if [ϕ] is non-standard, then it has both an ≺ C L -immediate successor and an ≺ C L -immediate predecessor in C L, which completes the proof.
We can calculate the order-types of the cohesive powers of many other computable presentations of linear orders by combining Theorems 2.20, 3.6, 4.5, and the fact that C Q ∼ = η.(1) C N * ∼ = ζη + ω * : This is because (2) C Z ∼ = ζη.This is because Z is computably isomorphic to N * + N, so (3) C (ZQ) ∼ = ζη.This is because Recall that, by Proposition 3.4, an ultrahomogeneous computable structure for a finite relational language, like the computable linear order Q, is isomorphic to each of its cohesive powers.Notice, however, that the computable linear orders ZQ and N + ZQ are not ultrahomogeneous, yet nevertheless are isomorphic to each of their respective cohesive powers.Thus it is also possible for a non-ultrahomogeneous computable structure to be isomorphic to each of its cohesive powers.
Notice also that C N and C (N + ZQ) both have order-type ω + ζη.Similarly, C Z and C (ZQ) both have order-type ζη.Thus it is possible for non-isomorphic linear orders to have isomorphic cohesive powers.In Section 5, we give an example of a pair of non-elementarily equivalent linear orders with isomorphic cohesive powers.Now we give an example of a computable copy of ω that is not computably isomorphic to the usual presentation, yet still has all its cohesive powers isomorphic to ω + ζη.Theorem 4.7.There is a computable copy L of ω such that • L is not computably isomorphic to the usual presentation of ω, yet • for every cohesive set C, the cohesive power C L has order-type ω + ζη.
Proof.We use a classic example of a computable copy of ω with a non-computable immediate successor relation.Fix any non-computable c.e. set A, and let f : N → A be a computable bijection.Let L = (N, ≺ L ) be the linear order obtained by ordering the even numbers according to their usual order and by setting 2a Then L is a computable linear order of type ω.Let S L denote the immediate successor relation of L. Then A ≤ T S L (in fact, A ≡ T S L ) because a ∈ A if and only if ¬S L (2a, 2a + 2).Thus S L is not computable, so L is not computably isomorphic to the usual presentation of ω.
Let C be cohesive.We show that C L ∼ = ω + ζη.To do this, expand the language to {≺, E, R}, where E is a unary relation and R is a binary relation.Expand L by interpreting E as the evens and by interpreting R as the immediate successor relation among the evens: In L, if z is not in the substructure B, then z is the unique element ≺ L -between two consecutive elements of B. That is, L satisfies the following Π 2 sentences.
By Theorem 2.9 item (2), C L also satisfies these sentences.Thus in C L, if some [ϕ] is not in the substructure D, then [ϕ] is the unique element ≺ C L -between two consecutive elements of D. As D ∼ = ω + ζη, we may conclude that C L ∼ = ω + ζη as well.Now we show that for every cohesive set C, there is a computable copy L of ω such that C L is not isomorphic, indeed, not elementarily equivalent, to ω + ζη.The strategy is to arrange for the element [id] of C L represented by the identity function id : N → N to have no ≺ C L -immediate successor.This exhibits an elementary difference between C L and ω + ζη because every element of ω + ζη has an immediate successor.This also shows that Theorem 2.9 item (3) is tight: "every element has an immediate successor" is a Π 3 sentence that is true of L but not of C L.
Theorem 4.8.Let C be any cohesive set.Then there is a computable copy L of ω for which C L is not elementarily equivalent (and hence not isomorphic) to ω + ζη.
Proof.Let (ϕ e ) e∈N denote the usual effective list of all partial computable functions, and recall that ϕ e,s (n) denotes the result of running ϕ e on input n for s computational steps.We compute a linear order L = (N, ≺ L ) of type ω such that for every ϕ e : ( * ) By Lemma 3.7, achieving ( * ) for ϕ e ensures that [ϕ e ] is not the ≺ C L -immediate successor of [id] in C L. Therefore, achieving ( * ) for every ϕ e ensures that [id] has no ≺ C L -immediate successor in C L. Thus C L is not elementarily equivalent to ω + ζη because every element of ω + ζη has an immediate successor, which is a Π 3 property.
Fix an infinite computable set R ⊆ C. Such an R may be obtained, for example, by partitioning N into the even numbers R 0 and the odd numbers R 1 .By cohesiveness, C ⊆ * R i for either i = 0 or i = 1, in which case R 1−i ⊆ * C. Thus we may take R to be an appropriate tail of R 1−i .
Define ≺ L in stages.By the end of stage s, ≺ L will have been defined on X s × X s for some finite X s ⊇ {0, 1, . . ., s}.As the construction progresses, at some stage we may notice an e and n such that ϕ e (n) = a looks like the ≺ L -immediate successor of n, where n may or may not be in C. In this case, we want to add an m to the order and set n ≺ L m ≺ L a to help achieve ( * ) for ϕ e .If we choose an m that may be in C, then at some later stage there may be an i for which ϕ i (m) = a looks like the ≺ L -immediate successor of m, and then we would want to add another element ≺ L -below a.If this happens infinitely often, then we would add infinitely many elements ≺ L -below a, in which case L would not be a copy of ω.We avoid this problem by choosing m from R, which is safe because R ⊆ C. Since we know that m / ∈ C, we do not need to worry about it when trying to achieve ( * ).At stage 0, set X 0 = {0} and define 0 ⊀ L 0. At stage s > 0, start with X s = X s−1 , and update X s and ≺ L according to the following procedure.
(1) If ≺ L has not yet been defined on s (i.e., if s / ∈ X s ), then update X s to X s ∪ {s} and extend ≺ L to make s the ≺ L -greatest element of X s .
(2) Consider each e, n < s in order.For each e, n < s, if (a) ϕ e,s (n)↓ ∈ X s , (b) ϕ e (n) is currently the ≺ L -immediate successor of n in X s , (c) n / ∈ R, and (d) n is not L -below any of 0, 1, . . ., e, then let m be the <-least element of R \ X s , update X s to X s ∪ {m}, and extend ≺ L so that n ≺ L m ≺ L ϕ e (n).This completes the construction.
We claim that for every k, there are only finitely many elements ≺ L -below k.It follows that L has order-type ω.Say that ϕ e acts for n and adds m when ≺ L is defined on an m ∈ R to make n ≺ L m ≺ L ϕ e (n) as in (2).Let s 0 be a stage with k ∈ X s 0 .Suppose at some stage s > s 0 , an m is added to X s and m ≺ L k is defined.This can only be due to a ϕ e acting for an n / ∈ R and adding m at stage s.Thus at stage s, it must be that n ≺ L k because n ≺ L m ≺ L k. Therefore it must also be that e < k, for otherwise k would be among 0, 1, . . ., e, and condition (d) would prevent the action of ϕ e .Furthermore, m is chosen from R, so only elements of R are added ≺ L -below k after stage s 0 .All together, this means that an m can only be added ≺ L -below k after stage s 0 when a ϕ e with e < k acts for an n ≺ L k with n / ∈ R. Each ϕ e acts at most once for each n, and no new n / ∈ R appears ≺ L -below k after stage s 0 .Thus after stage s 0 , only finitely many m are ever added ≺ L -below k.
Finally, we claim that ( * ) is satisfied for every ϕ e .Given e, let ℓ be the ≺ L -maximum element of {0, 1, . . ., e}.Observe that almost every n ∈ N satisfies n ≻ L ℓ because L ∼ = ω.So suppose that n ≻ L ℓ and n ∈ C. If ϕ e (n)↓, let s be large enough so that e, n < s, ϕ e,s (n)↓, n ∈ X s , and ϕ e (n) ∈ X s .Then either ϕ e (n) is already not the ≺ L -immediate successor of n at stage s + 1, or at stage s + 1 the conditions of (2) are satisfied for e, n , and an m is added such that n ≺ L m ≺ L ϕ e (n).This completes the proof.Corollary 4.9.Theorem 2.9 item (3) cannot be improved in general: there is a computable linear order L, a cohesive set C, and a Proof.Let C be any cohesive set, and let L be a computable copy of ω as in Theorem 4.8 for C. Let Φ be a Π 3 sentence in the language of linear orders expressing that every element has an immediate successor.Then L |= Φ, but C L |= Φ. Corollary 4.9 may also be deduced from Lerman's proof of Feferman, Scott, and Tennenbaum's theorem that no cohesive power of the standard model of arithmetic is a model of Peano arithmetic (see [16,Theorem 2.1]).Lerman uses Kleene's T predicate to give a somewhat technical example of a Π 3 sentence that holds in the standard model of arithmetic but fails in every cohesive power.Our proof of Corollary 4.9 is more satisfying because it witnesses the optimality of Theorem 2.9 item (3) with a natural Π 3 sentence in the simple language of linear orders.In the next section, we enhance the construction of Theorem 4.8 to compute a copy L of ω with C L ∼ = ω + η under the additional assumption that the given cohesive set C is co-c.e.
Finally, we show that Theorem 2.7 concerning cohesive products is also tight by uniformly computing a sequence of finite linear orders (L n : n ∈ N) such that for every cohesive set C, the cohesive product C L n is a linear order with no maximum element.Thus the Σ 2 sentence "there is a maximum element" is true in L n for each n (because each L n is finite), whereas the Π 2 sentence "there is no maximum element" is true in C L n for every cohesive set C. Although each linear order L n has a maximum element, the sequence of maximum elements is not computable.Proposition 4.10.There is a uniformly computable sequence of finite linear orders (L n : n ∈ N) such that for every cohesive set C, the cohesive product C L n is a linear order with no maximum element.Therefore Theorem 2.7 cannot be improved in general.
Proof.For each n, let L n = (L n , ≺) be the linear order with domain that is ordered by the usual order by taking ≺ equal to < on L n .To compute whether a given t > 0 is in L n , first run ϕ e (n) for t steps for each e < n.Then for each such ϕ e (n) that halts within t steps, find the s such that ϕ e (n) halts in exactly s steps, and compute the number s + ϕ e (n) + 1.If any of these numbers is t, then t ∈ L n .Otherwise t / ∈ L n .Notice that each e < n contributes at most one element t to L n , so L n has at most 1 + n elements.
Let C be cohesive, and consider an element [ϕ e ] of C L n .We show that [ϕ e ] is not the ≺ C Ln -greatest element of C L n and therefore that C L n has no ≺ C Ln -greatest element.If n > e is a sufficiently large member of C, then ϕ e (n)↓ ∈ L n .This means that there is a least s such that ϕ e,s (n)↓ and therefore that there is a t ∈ L n with ϕ e (n

5.
A computable copy of ω with a cohesive power of order-type ω + η Given a co-c.e.cohesive set, we compute a copy L of ω for which C L has order-type ω + η.In order to help shuffle various linear orders into cohesive powers in Section 6, we in fact compute a linear order L = (L, ≺ L ) along with a coloring function F : L → N that colors the elements of L with countably many colors so as to induce a coloring with a certain density property on C L. Let O = (L, N, ≺ L , F ) be a colored linear order, and let L = (L, ≺ L ).We may think of O as the disjoint union L ⊔ N expanded to include F .Thus if O is a computable colored linear order and C is a cohesive set, then the cohesive power C O consists of a linear order C L, a set C N thought of as a collection of colors, and a (graph of a) function F C O : | C L| → | C N| thought of as a coloring of C L. This is by Proposition 2.14 and by Theorem 2.9 item (2), as F being the graph of a function from the substructure given by L into the substructure given by N can be expressed by a Π 2 sentence.In C O, we denote elements of C L by [ϕ] and elements of C N by δ .Call a color δ ∈ | C N| a solid color if δ is eventually constant on C (i.e., if δ is in the range of the canonical embedding of N into C N). Otherwise, call δ a striped color.Finally, call a colored linear order O = (L, N, ≺ L , F ) a colored copy of ω if L ∼ = ω.Definition 5.2.Let O = (L, N, ≺ L , F ) be a computable colored copy of ω, and let L denote (L, ≺ L ).Let C be a cohesive set.Call the cohesive power C O colorful if the following items hold.
• For every pair of non-standard elements ) is a computable colored copy of ω and C is cohesive, then C O being colorful means that the solid colors occur densely in the non-standard part of C L and also that between any two elements of the non-standard part of C L there is an element with a striped color.Notice that we do not require any individual striped color to occur densely in the non-standard part of C L. If C is a co-c.e.cohesive set, then the first bullet of Definition 5.2 implies the second.This can be seen by a saturation argument, if one generalizes Lemma 2.17 to allow types over C O with an infinite sequence of parameters ([θ i ] : i ∈ N) represented by a uniformly partial computable sequence (θ i : i ∈ N).Here the relevant parameters would be the non-standard elements [ϕ] and [ψ] and the sequence of solid colors.The type would then describe an element between [ϕ] and [ψ] whose color is not among the solid colors.
In Section 6, we show that replacing each point of L by some finite linear order depending on its color has the effect of shuffling these finite orders into the non-standard part of C L. Theorem 5.3.Let C be a co-c.e.cohesive set.Then there is a computable colored copy O of ω such that C O is colorful.
Proof.We construct a computable copy L = (L, ≺ L ) of ω with L = N and a function F : L → N so that O = (L, N, ≺ L , F ) is a computable colored copy of ω for which C O is colorful.We are working with a co-c.e.cohesive set, so recall that in this situation every element [ϕ] of C L has a total computable representative by the discussion following Definition 2.2.Recall also that an element The goal of the construction is to arrange, for every pair of total computable functions ϕ and ψ with lim n∈C ϕ(n ( * ) Suppose we achieve ( * ) for ϕ and ψ, where lim n∈C ϕ(n and and let θ(n) be the first (if any) such k found.In this case we would have and Notice that ϕ represents both an element [ϕ] of the linear order C L and a color ϕ from C N. As a color, Thus between [ψ] and [ϕ] there are elements of C L of every solid color and also at least one element of a striped color.Therefore achieving ( * ) suffices to prove the theorem, provided we also arrange L ∼ = ω.Let W denote the c.e. set C, and let (W s ) s∈N be a computable ⊆-increasing enumeration of W .Let (A i,0 , A i,1 ) i∈N be a uniformly computable sequence of pairs of sets such that • for each i, A i,0 and A i,1 partition N into two pieces (i.e., A i,1 = A i,0 ) and This can be accomplished by partitioning N into successive pieces of size 2 i , letting A i,0 consist of every other piece, and letting A i,1 = A i,0 .
In this proof, denote the projection functions associated to the pairing function •, • by ℓ and r, for left and right, instead of by π 0 and π 1 .So ℓ( x, y ) = x and r( x, y ) = y.
The tension in the construction is between achieving ( * ) and ensuring that for every z, there are only finitely many x with x ≺ L z. Think of a p ∈ N as coding a pair (ϕ ℓ(p) , ϕ r(p) ) of partial computable functions for which we would like to achieve ( * ), with ϕ ℓ(p) playing the role of ψ and ϕ r(p) playing the role of ϕ.We assign the partition (A 2p,0 , A 2p,1 ) to ϕ ℓ(p) and the partition (A 2p+1,0 , A 2p+1,1 ) to ϕ r(p) .The sets {n : ); and similarly for ϕ r(p) and (A 2p+1,0 , A 2p+1,1 ).As the construction proceeds, we consider each p paired with larger and larger guesses N of a threshold by which the cohesive behavior of ϕ ℓ(p) and ϕ r(p) begins with respect to the partitions (A 2p,0 , A 2p,1 ) and (A 2p+1,0 , A 2p+1,1 ).The pair p, N means we guess that there is an For each fixed p, the pairs p, 0 , p, 1 , p, 2 , . . .all try to achieve ( * ) for ϕ ℓ(p) and ϕ r(p) .If N is too small, then pair p, N eventually stops acting.If N is big enough, then pair p, N eventually settles on the correct sides (a, b) of the partitions (A 2p,0 , A 2p,1 ) and (A 2p+1,0 , A 2p+1,1 ).
To help satisfy ( * ), eventually pair p, N will want to add an element k 0 between some ϕ ℓ(p) (n) and ϕ r(p) (n) for an n that looks like it may be in C.However, later some pair q, M (possibly even with q = p) may want to add an element k 1 between some ϕ ℓ(q) (m) and ϕ r(q) (m) for an m that looks like it may be in C, and it may also so happen that ϕ r(q) (m) = k 0 .In this case, q, M would add k 1 ≺ L k 0 .If this behavior were to continue, then it would lead to a descending sequence which means that L would not have order-type ω.To avoid these descending sequences, pair p, N tries to choose the k that it adds to avoid the images ϕ ℓ(q) (C) and ϕ r(q) (C) for all q corresponding to higher-or-equal priority pairs q, M ≤ p, N .To do this, first, for each such q, pair p, N looks up the most recent guess (a q , b q ) of sides such that ϕ ℓ(q) (C) ⊆ * A 2q,aq and ϕ r(q) (C) ⊆ * A 2q+1,bq made by any of the q, M ≤ p, N for this q.Then pair p, N chooses k ∈ q,M ≤ p,N A 2q,1−aq ∩ A 2q+1,1−bq from the opposite sides of all these partitions in an attempt to avoid ϕ ℓ(q) (C) and ϕ r(q) (C) for every q, M ≤ p, N .The staggering of the partitions ensures that there are infinitely many such k to choose among.We now give the construction.Define ≺ L and F in stages.By the end of stage s, ≺ L will have been defined on X s × X s , and F will have been defined on X s for some finite X s ⊇ {0, 1, . . ., s}.
At stage 0, set X 0 = {0} with 0 ⊀ L 0 and F (0) = 0.At stage s > 0, initially set X s = X s−1 .If s / ∈ X s , then add s to X s , define it to be the ≺ L -maximum element of X s , and define F (s) = 0. Then proceed as follows.
Consider each pair p, N < s in order.Think of p, N as coding a pair (ϕ ℓ(p) , ϕ r(p) ) of partial computable functions and a guess N of a threshold by which the cohesive behavior of ϕ ℓ(p) and ϕ r(p) begins with respect to the partitions (A 2p,0 , A 2p,1 ) and (A 2p+1,0 , A 2p+1,1 ) as described above.The pair p, N demands action if there is an (a, b, n) ∈ {0, 1} × {0, 1} × {N, N + 1, . . ., s} meeting the following conditions.
If p, N demands action, let (a p , b p , n) ∈ {0, 1} × {0, 1} × {N, N + 1, . . ., s} be the lexicographically least witness to this, call (a p , b p , n) the action witness for p, N , call the first two coordinates (a p , b p ) of the action witness the action sides for p, N , and call the last coordinate n of the action witness the action input for p, N .
Let r be the <-greatest number for which there is an M with r, M ≤ p, N .For each q ≤ r, let (a q , b q ) be the most recently used action sides by any pair of the form q, M with q, M ≤ p, N .If no q, M ≤ p, N has yet demanded action, then let (a q , b q ) = (0, 0 which exist because the intersection is infinite and X s is finite.Add k 0 , . . ., k c to X s .Let x ∈ X s be the current ≺ L -greatest element of the interval (ϕ Also set F (k i ) = i for each i ≤ c, and say that p, N has acted and added k's.This completes the construction.
The constructed L is a computable linear order.We show that L ∼ = ω by showing that for each z, there are only finitely many elements ≺ L -below z.So fix z.Note that z appears in X s at stage s = z at the latest, so we consider the development of the construction at stages s > z.
Consider the actions of a pair p, N .If p, N ≥ z and p, N acts at stage s > z with action input n, then, by condition (5), it must be that z ≺ L ϕ ℓ(p) (n) ≺ L ϕ r(p) (n).In this case, the action adds elements to X s and places them ≺ L -between ϕ ℓ(p) (n) and ϕ r(p) (n) and hence places them ≺ L -above z.Therefore, only the actions of p, N with p, N < z can add elements ≺ L -below z at stages s > z.
We show that each p, N < z only ever acts to add finitely many elements k ≺ L z.It follows that there are only finitely many elements ≺ L -below z because the p, N ≥ z add no elements ≺ L -below z after stage z, and each p, N < z adds only finitely many elements ≺ L -below z.So let p, N < z, and assume inductively that there is a stage s 0 > z such that no pair q, M < p, N acts to add elements k ≺ L z after stage s 0 .
Notice that a given n can be the action input for p, N at most once.If p, N demands action with action input n at stage s, it adds elements of every color ≤ max < {ϕ ℓ(p) (n), ϕ r(p) (n)} to X s and places them ≺ L -between ϕ ℓ(p) (n) and ϕ r(p) (n).Thus condition (4) is never again satisfied for p, N with action input n at any stage t > s.
Suppose that either ϕ ℓ(p) (m)↑ or ϕ r(p) (m)↑ for some m.Then no n ≥ m can be an action input for p, N because condition (1) always fails when n ≥ m.Thus only finitely many numbers n can be action inputs for p, N .Because each of these n can be an action input for p, N at most once, the pair p, N demands action only finitely many times.Thus in this case, p, N adds only finitely many elements ≺ L -below z.
We now focus on the case in which both ϕ ℓ(p) and ϕ r(p) are total.By cohesiveness, let (a, b) ∈ {0, 1} × {0, 1} be such that ( ).The following Claims 1-3 establish that p, N adds only finitely many elements ≺ L -below z.
First, consider all pairs p, M < z with this fixed p.
Claim 1.There is a stage s 1 ≥ s 0 such that for every M with p, M < z, whenever p, M demands action at a stage s ≥ s 1 , it always has action sides (a, b).
Proof of Claim 1.There are only finitely many p, M < z, so it suffices to show that for each p, M < z, there is a stage t such that p, M has action sides (a, b) whenever it demands action (if it ever demands action) after stage t.
Let m be the least member of C with m ≥ M , ϕ ℓ(p) (m) ∈ A 2p,a , and ϕ r(p) (m) ∈ A 2p+1,b .Then whenever p, M demands action and the action witness (a p , b p , n) has n ≥ m, it must be that (a p , b p ) = (a, b) because otherwise condition (3) would fail.Suppose, for example, that p, M demands action at stage s with action witness (a p , b p , n) where n ≥ m and a p = 1 − a. Then M ≤ m ≤ n and ϕ ℓ(p) (m) ∈ A 2p,1−ap , but m / ∈ W s because m ∈ C. Thus condition (3) fails, so p, M could not have demanded action with action witness (a p , b p , n).The assumption b p = 1 − b in place of a p = 1 − a leads to the same contradiction.On the other hand, each n < m can be the action input for p, M at most once.Therefore, there is a stage t ≥ s 0 such that whenever p, M demands action at a later stage s ≥ t, the action witness must have action input n ≥ m and therefore must have action sides (a, b).
Assume that p, N demands action infinitely often because otherwise we can immediately conclude that it adds only finitely many elements ≺ L -below z.Let s 1 be as in Claim 1, let t > s 1 be a stage at which p, N demands action, and let s 2 = t + 1.Then p, N has action sides (a, b) at stage t < s 2 , and whenever some p, M < z demands action at a stage s ≥ s 2 > s 1 , it also has action sides (a, b).Thus at every stage s ≥ s 2 , the most recently used action sides by a p, M < z is always (a, b).Claim 2. Suppose that an element k is added to X s and k ≺ L z is defined at some stage s ≥ s 2 .Then Proof of Claim 2. We already know that if q, M ≥ z, then q, M does not add elements k ≺ L z after stage s 2 .Thus we need only consider pairs q, M < z.For these pairs, we have assumed inductively that if q, M < p, N , then q, M does not add elements k ≺ L z after stage s 2 .Thus we need only consider pairs q, M with p, N ≤ q, M < z.Suppose such a q, M acts after stage s 2 .When q, M chooses the k's to add, it uses an r ≥ p in the intersection (⋆) because p, N ≤ q, M .The action of pair q, M must use (a p , b p ) = (a, b).This is because after stage s 2 , (a, b) is always the most recently used action sides by the pairs of the form p, K with p, K < z.Because p, N ≤ q, M < z, it is thus also the case that (a, b) is always the most recently used action sides by the pairs of the form p, K ≤ q, M at every stage after s 2 .Thus when q, M acts at some stage s ≥ s 2 , it uses (a p , b p ) = (a, b), and therefore the k's it adds to X s are chosen from A 2p,1−a ∩A 2p+1,1−b , as claimed.
We can now show that p, N adds only finitely many elements k ≺ L z.
Claim 3. The pair p, N adds only finitely many elements k ≺ L z.
Proof of Claim 3. Suppose that p, N acts at some stage s ≥ s 2 , adds an element k to X s , and defines k ≺ L z. Then at stage s, the action witness for p, N must be (a, b, n) for some n, where ϕ ℓ(p) (n) = x for some x ∈ A 2p,a , ϕ We have shown that for every z, no p, N ≥ z adds an element ≺ L -below z after stage z and that each p, N < z adds only finitely many elements ≺ L -below z.Thus for every z, only finitely many elements are ever added ≺ L -below z.Therefore L ∼ = ω.Now let ϕ and ψ be total computable functions with lim n∈C ϕ(n) = lim n∈C ψ(n) = ∞.We complete the proof by showing that ( * ) is satisfied for ϕ and ψ.Assume that (∀ ∞ n ∈ C)(ψ(n) ≺ L ϕ(n)), for otherwise ( * ) vacuously holds.Let p be such that ϕ ℓ(p) = ψ and ϕ r(p) = ϕ.By cohesiveness, let (a, b) ∈ {0, 1} × {0, 1} and N ∈ N be such that, for all n ∈ C with n > N , ϕ ℓ(p) (n) ∈ A 2p,a and ϕ r(p) (n) ∈ A 2p+1,b .Let n 0 ≥ N be large enough so that for all n ∈ C with n ≥ n 0 , ϕ ℓ(p) (n) is not L -below any of 0, 1, . . ., p, N .To choose n 0 , notice that the set Z of elements that are L -below any of 0, 1, . . ., p, N is finite because Suppose that n ∈ C and n ≥ n 0 , and furthermore suppose for a contradiction that there is a Then conditions (1)-( 5) are satisfied by (a, b, n) at all sufficiently large stages s.Condition (1) is satisfied because ϕ ℓ(p) and ϕ r(p) are total.Condition (2) is satisfied because n ≥ N and n ∈ C. Condition (3) is satisfied by the choice of N .Condition (4) is satisfied by the assumption that there is no k with ϕ ℓ(p) (n) ≺ L k ≺ L ϕ r(p) (n) and F (k) = d and hence there is no such k at every stage s in which both ϕ ℓ(p) (n) and ϕ r(p) (n) are present in X s .Condition ( 5) is satisfied by the choice of n 0 .Each m < n can be the action input for p, N at most once, and, at sufficiently large stages, (a, b) is the only possible action sides for p, N .Thus at some stage the pair p, N eventually demands action with action witness (a, b, n).The action of p, N defines ϕ ℓ(p) (n) ≺ L k ≺ L ϕ r(p) (n) and F (k) = d for some k, which contradicts that there is no such k.This shows that ( * ) holds for ϕ = ϕ r(p) and ψ = ϕ ℓ(p) , which completes the proof.
Let C be a co-c.e.cohesive set, and, by Theorem 5.3, let O = (L, N, ≺ L , F ) be a computable colored copy of ω for which C O is colorful.Then L = (L, ≺ L ) is an example of a computable copy of ω with C L ∼ = ω + η. (1) There is a countable collection of computable copies of ω whose cohesive powers over C are pairwise non-elementarily equivalent.Let k ≥ 1, and let k denote the k-element linear order 0 < 1 < • • • < k − 1 as well as its order-type.Then kL has order-type ω because L has order-type ω, and C k ∼ = k by the discussion following Definition 2.2.Using Theorem 3.6, we calculate The linear orders ω + kη for k ≥ 1 are pairwise non-elementarily equivalent.The sentence "there are x 0 ≺ • • • ≺ x k−1 such that every other y satisfies either y ≺ x 0 or x k−1 ≺ y; if y ≺ x 0 , then there is a z with y ≺ z ≺ x 0 ; and if x k−1 ≺ y, then there is a z with x k−1 ≺ z ≺ y" expressing that there is a maximal block of size k is true of ω + kη, but not of ω + mη if m = k.Thus 1L, 2L, . . . is a sequence of computable copies of ω whose cohesive powers C (kL) are pairwise non-elementarily equivalent.
(2) It is possible for non-elementarily equivalent computable linear orders to have isomorphic cohesive powers.Consider the computable linear orders L and L+Q.They are not elementarily equivalent because the sentence "every element has an immediate successor" is true of L but not of L + Q.However, using Theorem 3.6 and the fact that C Q ∼ = η, we calculate Thus the cohesive powers C L and C (L + Q) of L and L + Q are isomorphic.

Shuffling finite linear orders into cohesive powers of ω
The goal of this section is to prove that if X ⊆ N \ {0} is a Boolean combination of Σ 2 sets, thought of as a set of finite order-types, and C is a co-c.e.cohesive set, then there is a computable copy L of ω for which C L has order-type ω + σ(X ∪ {ω + ζη + ω * }).Here σ denotes the shuffle operation (see Definition 6.2 below).We prove this in a modular way by abstracting the cohesive set away from the computable copy of ω being constructed.The key technical step is Lemma 6.9, which states that from a computable colored copy O of ω and a Boolean combination of Σ 2 sets X ⊆ N \ {0}, we can construct a computable copy L of ω such that C L ∼ = ω + σ(X ∪ {ω + ζη + ω * }) whenever C is a cohesive set for which C O is colorful.Combining Lemma 6.9 with Theorem 5.3 then gives the desired result.
Given a linear order L and a sequence of linear orders (M ℓ : ℓ ∈ |L|) indexed by |L|, the generalized sum of (M ℓ : ℓ ∈ |L|) over L is obtained by replacing each element ℓ of L by a copy of M ℓ .Definition 6.1 (see [21,Definition 1.38]).Let L be a linear order, and let (M ℓ : ℓ ∈ |L|) be a sequence of linear orders indexed by |L|.The generalized sum ℓ∈|L| M ℓ of (M ℓ : ℓ ∈ |L|) over L is the linear order S = (S, ≺ S ) defined as follows.Write L = (L, ≺ L ), and write M ℓ = (M ℓ , ≺ M ℓ ) for each ℓ ∈ L. Generalized sums generalize both the sum and product constructions of Definition 3.1.View the ordinary sum L 0 + L 1 as the generalized sum ℓ∈|2| L ℓ of L 0 and L 1 over the 2-element linear order 2 = ({0, 1}, <); and view the product L 0 L 1 as the generalized sum ℓ∈|L 1 | L 0 of copies of L 0 over L 1 .We may also use generalized sums to define shuffles.
The shuffle σ(X) of an at-most-countable non-empty collection X of linear orders is obtained by densely coloring Q with colors from X and then replacing each q ∈ Q by its color.Definition 6.2 (see [21,Definition 7.14]).Let X be a non-empty collection of linear orders with |X| ≤ ℵ 0 .Let f : Q → X be a function such that f −1 (M) is dense in Q for each linear order M ∈ X.Let S = q∈Q f (q) be the generalized sum of the sequence (f (q) : q ∈ Q) over Q.By density, the order-type of S does not depend on the particular choice of f .Therefore S is called the shuffle of X and is denoted σ(X).
We usually think of X in a shuffle σ(X) as a collection of order-types instead of as a collection of concrete linear orders.
Let L be a computable linear order, and let (M ℓ : ℓ ∈ |L|) be a uniformly computable sequence of linear orders.Then one may use the pairing function to compute a copy of ℓ∈|L| M ℓ .Likewise, if (M n : n ∈ N) is a uniformly computable sequence of linear orders, then one may compute a function f : Q → N such that f −1 (n) is dense in Q for each n ∈ N and thereby compute a copy of σ({M n : n ∈ N}).
Let C be co-c.e. and cohesive, let L be the linear order from Corollary 5.4 for C, and consider the linear order 2L from Example 5.5 item (1).We can think of 2L as being obtained from L by replacing each element of L by a copy of 2. This operation of replacing each element by a copy of 2 is reflected in the cohesive power, and we have that C (2L) ∼ = ω + 2η.
Again let C be co-c.e. and cohesive, and now consider the computable colored copy O = (R, N, ≺ R , F ) of ω from Theorem 5.3.Let R denote (R, ≺ R ).Collapse F into a coloring G : R → {0, 1}, where G(r) = 0 if F (r) = 0 and G(r) = 1 if F (r) ≥ 1.Then the coloring G C O of C R induced by G uses exactly two colors: 0 represented by the constant function with value 0, and 1 represented by the constant function with value 1.Both of these colors occur densely in the non-standard part of C R. Compute a linear order L by starting with R, replacing each r ∈ R with G(r) = 0 by a copy of 2, and replacing each r ∈ R with G(r) = 1 by a copy of 3. The cohesive power C L reflects this construction, and we get the linear order obtained from C R by replacing each point of G C O -color 0 by a copy of 2 and replacing each point of G C O -color 1 by a copy of 3. Thus we have a computable copy L of ω with C L ∼ = ω + σ({2, 3}).Using this strategy, we can shuffle any finite collection of finite linear orders into a cohesive power of a computable copy of ω.
To make the above argument precise and to generalize it to more complicated shuffles, we first show that cohesive powers of linear orders respect generalized sums.Let L be a computable linear order, and let (M ℓ : ℓ ∈ |L|) be a uniformly computable sequence of linear orders indexed by |L|.We wish to show that for any cohesive set C, To do this, we must first explain what we mean by the structure C M θ(n) .Intuitively, C M θ(n) is the cohesive product of the sequence of structures M θ(0) , M θ(1) , M θ(2) , . . .over C, where Formally, let L be a computable language, and let (A n : n ∈ I) be a uniformly computable sequence of L-structures indexed by a computable set I ⊆ N. Let C be a cohesive set, and let θ : N → I be a partial computable function with C ⊆ * dom(θ).Then C A θ(n) is defined as in Definition 2.2, except one now considers the = C -equivalence classes of partial computable functions ϕ such that dom(ϕ) ⊆ dom(θ), ∀n (ϕ(n)↓ → ϕ(n) ∈ |A θ(n) |), and C ⊆ * dom(ϕ).The results of Section 2 hold for these generalized cohesive products of the form C A θ(n) with minor modifications to the proofs.For example, one must now consider sets of the form n : A θ(n) |= Φ(ϕ 0 (n), . . ., ϕ m−1 (n)) for various L-formulas Φ and partial computable functions ϕ 0 , . . ., ϕ m−1 , where A θ(n) appears in place of A n .If Φ is uniformly decidable in (A n : n ∈ I), then the preceding set remains c.e.
If θ 0 , θ 1 : N → I are two partial computable functions with C ⊆ * dom(θ 0 ), C ⊆ * dom(θ 1 ), and In fact, we are even justified in writing C A θ 0 (n) = C A θ 1 (n) because every element of either structure can be represented by a partial computable ϕ with C ⊆ * dom(ϕ) ⊆ dom(θ 0 ) ∩ dom(θ 1 ).In particular, the structure Lastly, we point out that if C is a co-c.e.cohesive set with C ⊆ * dom(θ), then the generalized cohesive product C A θ(n) can be realized as a cohesive product of the form C B n .The argument is similar to the argument that every element of a cohesive product by a co-c.e.cohesive set has a total computable representative.Fix any computable L-structure D. Let N be such that (∀n > N )(n ∈ C → θ(n)↓).Define the uniformly computable sequence of L-structures (B n : n ∈ N) by . Again, we may even write C B n = C A θ(n) because every element of either structure can be represented by a partial computable ϕ with C ⊆ * dom(ϕ) ⊆ dom(θ).
We are now prepared to show that the cohesive power of a generalized sum is a generalized sum of cohesive products in the way indicated above.The method of Theorem 3.6 becomes unwieldy in this situation because of the infinite sequence of structures to juggle, so we opt for a more hands-on proof.Theorem 6.3.Let L be a computable linear order, and let (M ℓ : ℓ ∈ |L|) be a uniformly computable sequence of linear orders indexed by |L|.Let C be a cohesive set.Then Proof.To ease notation, let The goal is to show that A ∼ = B.
To show that F is an isomorphism, it suffices to show that F is surjective and order-preserving by Lemma 3.5.
For surjectivity, consider an element as desired.
Notice that Theorem 3.6 items (1) and ( 2) follow from Theorem 6.3 by viewing ordinary sums and products of linear orders as generalized sums of linear orders.
We now show how to shuffle finitely many finite order-types into the cohesive power of a computable copy of ω.Lemma 6.4.Let (M n : n ∈ I) be a uniformly computable sequence of linear orders indexed by a computable I ⊆ N, and let M n denote the domain of M n for each n ∈ I. Let C be a cohesive set.Let θ : N → I be a partial computable function with C ⊆ * dom(θ).Suppose that there is a k > 0 such that Proof.As explained at the beginning of Section 2, the property "there are exactly k distinct elements" can be expressed by a ∆ 2 sentence Φ.We have that C ⊆ * {n : M θ(n) |= Φ} by assumption.Therefore C M θ(n) |= Φ by Theorem 2.7 item (3).Thus C M θ(n) is a linear order with exactly k elements.So C M θ(n) ∼ = k.Lemma 6.5.Let k 0 , . . ., k N be non-zero natural numbers, and let O be a computable colored copy of ω.There is a computable copy L of ω (constructed from O) such that for every cohesive set C, if C O is colorful, then C L has order-type ω + σ({k 0 , . . ., k N }).Proof.Let O = (R, N, ≺ R , F ) be a computable colored copy of ω, and let R denote (R, ≺ R ).For k > 0, let k = ({0, 1, . . ., k − 1}, <) denote the usual presentation of the k-element linear order.Let (M r : r ∈ R) be the uniformly computable sequence of linear orders where M r = k F (r) if F (r) < N and M r = k N if F (r) ≥ N .Let L be the generalized sum L = r∈R M r .The linear order L is obtained from the copy R of ω by replacing each element of R by a finite linear order.Thus L is infinite, and every element has only finitely many predecessors.So L is a computable copy of ω.
Let C be a cohesive set for which C O is colorful.We need to show that C L has order-type ω + σ({k 0 , . . ., k N }).
By Theorem 6.3, To ease notation, let Z denote the linear order denote the standard and non-standard parts of C R, respectively.Then let so that Z ∼ = Z std + Z nonstd .Consider the sum condensation c Σ (Z) of Z.We show that the order-type of the block C M θ(n) of the sum condensation corresponding to Notice that block C M θ(n) is a finite linear order for every [θ] ∈ | C R|. Thus Z std is a generalized sum of finite linear orders over the copy | C R| std of ω, so Z std ∼ = ω.
Think of the sum condensation c Σ (Z nonstd ) as being colored by F C O , where the block and that each solid color occurs densely.By Claims 1 and 2, the order-type of block Thus as a linear order, C M θ(n) must consist of an initial block of order-type ω, a final block of order-type ω * , and intermediate blocks of order-type ζ.We show that the blocks of C M θ(n) are dense.
If C were co-c.e. or the sequence (M n : n ∈ I) were uniformly 1-decidable, then we could use a saturation argument to conclude that the blocks of C M θ(n) are dense.However, C is not necessarily co-c.e., and, although each individual structure M n is finite and hence decidable, the sequence (M n : n ∈ I) need not be uniformly 1-decidable.We therefore resort to an ad hoc argument. Let Define a partial computable function ρ as follows.Given n, if θ(n)↓, ϕ(n)↓, ψ(n)↓, and again by Lemma 3.8.Therefore the blocks of C M θ(n) are dense.As a linear order, C M θ(n) is countably infinite, has a least block of order-type ω, has a greatest block of order-type ω * , has intermediate blocks of order-type ζ, and the blocks are dense.Thus C M θ(n) has order-type ω + ζη + ω * as a linear order.In Lemma 6.6, it is necessary that the structures (M n : n ∈ I) satisfy additional assumptions (such as being models of Γ) beyond merely being finite linear orders.For example, recall from Proposition 4.10 that a cohesive product of finite linear orders need not have a maximum element.Lemma 6.7.Let O be a computable colored copy of ω.There is a computable copy L of ω (constructed from O) such that for every cohesive set C, if C O is colorful, then C L has order-type ω + (ω + ζη + ω * )η, which is the same as ω + σ({ω + ζη + ω * }).
Proof.Let O = (R, N, ≺ R , F ) be a computable colored copy of ω, and let R denote (R, ≺ R ).Let (M r : r ∈ R) be the uniformly computable sequence of linear orders where M r = r + 1 for each r ∈ R. Let L be the generalized sum L = r∈R M r .Then L is a computable copy of ω.
Let C be a cohesive set for which C O is colorful.We need to show that C L has order-type ω + (ω + ζη + ω * )η.
By Theorem 6.3, As in the proof of Lemma 6.  Lemma 6.4.This means that Z std is a generalized sum of finite linear orders over a copy of ω, so Case 1: M r is still {0, . . ., k 0 − 1} at the beginning of stage s, (∃a < r)(∀b < s) P (F (r), a, b) holds, and (∀a < r)(∃b < s) Q(F (r), a, b) holds.In this case, let s < x 0 < x 1 < • • • < x F (r)−k 0 −1 be the F (r) − k 0 least numbers x > s for which it has not yet been decided whether x ∈ M r .Add x 0 , . . ., x F (r)−k 0 −1 to M r so that M r = {0, . . ., k 0 − 1, x 0 , . . ., x F (r)−k 0 −1 }.Extend ≺ to agree with the usual order on {0, . . ., k 0 −1, x 0 , . . ., x F (r)−k 0 −1 }, and extend S to be the corresponding successor relation.So S(k 0 −1, x 0 ) holds, and S(x i , x i+1 ) holds for all i < F (r)−k 0 −1.Finally, define T 1 (x) to hold if and only if x = x F (r)−k 0 −1 , and define T 2 (x) to hold of no x ∈ M r .Go on to stage s + 1. Observe that |M r | = F (r) at the end of stage s.
To see that M r |= Γ at the end of stage s, observe that no elements were added to M r between its initialization and the start of stage s.Thus at the start of stage s, T 0 (x) holds of one element, and T 1 (x) and T 2 (x) hold of no element.During stage s, a new greatest element x F (r)−k 0 −1 is added, and T 1 (x) is defined to hold of exactly this element.Also, T 2 (x) still holds of no element at the end of stage s.One may now check that M r |= Γ.Notice that x 0 > ℓ m−1 as well, as otherwise ℓ m−1 would not have been least when it was added to M r .Add x 0 , . . ., x r−m to M r so that M r = {ℓ 0 , . . ., ℓ m−1 , x 0 , . . ., x r−m }.Extend ≺ to agree with the usual order on {ℓ 0 , . . ., ℓ m−1 , x 0 , . . ., x r−m }, and extend S to be the corresponding successor relation.So S(ℓ m−1 , x 0 ) holds, and S(x i , x i+1 ) holds for all i < r − m.If there is no x for which T 1 (x) holds, then define T 1 (x) to hold if and only if x = x r−m and define T 2 (x) to hold of no x ∈ M r .If there is already an x for which T 1 (x) holds, then define T 2 (x) to hold if and only if x = x r−m .Go on to stage s + 1. Observe that |M r | = r + 1 at the end of stage s.
Notice that Case 1 and Case 2 can occur at most one time each.After Case 1 occurs, M r is never again {0, . . ., k 0 − 1}, so Case 1 never occurs again.After Case 2 occurs, we never again have |M r | ≤ r, so Case 2 never occurs again.Thus prior to stage s, Case 2 cannot have occurred (as it is occurring now at stage s), and Case 1 can have occurred at most once.If Case 1 did not occur before stage s, then no elements were added to M r between its initialization and the start of stage s.The situation is then analogous to that of Case 1.We define T 1 (x) to hold of exactly the new greatest element x r−m that is added at stage s, and we define T 2 (x) to hold of no element.If instead Case 1 did occur before stage s, then at the start of stage s, T 0 (x) and T 1 (x) hold of exactly one element each, and T 2 (x) holds of no element.During stage s, a new greatest element x r−m is added, and T 2 (x) is defined to hold of exactly this element.In either situation, one may check that M r |= Γ.This concludes the construction of (M r : r ∈ R).In the computation of M r for a given r ∈ R, Case 1 and Case 2 can occur at most once each, as observed in the discussion of Case 2 above.Therefore elements are added to M r at most twice, so it is finite.It also follows that M r |= Γ at the end of the construction because M r |= Γ at every stage.
We show that the above items ( 1 Let L be the generalized sum r∈R (M r ↾≺) of the sequence (M r : r ∈ R), viewed as a sequence of finite linear orders, over the linear order R as indicated above.Then L is a computable copy of ω.Let C be a cohesive set for which C O is colorful.We need to show that C L has order-type ω + σ(X ∪ {ω + ζη + ω * }).
Theorem 6.3 gives us that, as linear orders, As in the proofs of Lemmas 6.5 and 6.7, let Z denote the linear order  Lemma 6.9.Let X ⊆ N \ be a Boolean combination of Σ 2 sets, thought of as a set of finite order-types.Let O be a computable colored copy of ω.There is a computable copy L of ω (constructed from O) such that for every cohesive set C, if C O is colorful, then C L has order-type ω + σ(X ∪ {ω + ζη + ω * }).
Proof.The X = ∅ case is Lemma 6.7, so we may assume that X = ∅.Let k 0 be the least element of X.By putting X in disjunctive normal form and noticing that finite intersections of Σ 2 sets are Σ 2 and that finite intersections of Π 2 sets are Π 2 , we may write X as a finite union X = i<N X i , where each X i is the intersection of a Σ 2 set and a Π 2 set.It is convenient to further assume that k 0 ∈ X i for each i < N .
Compute each M r as in the proof of Lemma 6.8, but for set X π 0 (G(r)) and color F (r) = π 1 (G(r)).
We end with the main result of this section by combining Theorem 5.3 with Lemmas 6.5 and 6.9.Theorem 6.10.Let X ⊆ N \ {0} be a Boolean combination of Σ 2 sets, thought of as a set of finite order-types.Let C be a co-c.e.cohesive set.Then there is a computable copy L of ω where the cohesive power C L has order-type ω + σ(X ∪ {ω + ζη + ω * }).Moreover, if X is finite and non-empty, then there is also a computable copy L of ω where the cohesive power C L has order-type ω + σ(X).
Proof.Let C be a co-c.e.cohesive set.By Theorem 5.3, let O be a computable colored copy of ω such that C O is colorful.Let X ⊆ N \ {0} be a Boolean combination of Σ 2 sets.Let L be the computable copy of ω constructed from O for X as provided by Lemma 6.9.Then C L ∼ = ω+σ(X∪{ω+ζη+ω * }).If X is finite and non-empty, then we may alternatively apply Lemma 6.5 instead of Lemma 6.9 to obtain a computable copy L of ω with C L ∼ = ω + σ(X).
arithmetical sets: for every arithmetical A ⊆ N, either C ⊆ * A or C ⊆ * A. Next, define an equivalence relation = C on the arithmetical functions f : N → N by f = C g if and only if C ⊆ * {n : f (n) = g(n)}.Then define a structure on the = C -equivalence classes [f ] by [f ] + [g] = [f + g], [f ] × [g] = [f × g]

Definition 2 . 1 .
An infinite set C ⊆ N is cohesive if for every c.e. set W , either C ⊆ * W or C ⊆ * W .
[ϕ] ∈ | C A n | : C A n |= U ([ϕ]) forms the domain of a substructure D of C A n , and C B n ∼ = D.

Theorem 2 . 22 .
Let L be a computable language, and let A and B be decidable L-structures.Then A ≡ B if and only if for every cohesive set C, C A ∼ = C B. Proof.In general, say that two structures M and N have the same types (without parameters) if for every sequence a = a 0 , . . ., a m−1 of elements of |M|, there is a corresponding sequence b = b 0 , . . ., b m−1 of elements of |N | such that for every formula Φ(x 0 , . . ., x m−1 ) with m free variables, M |= Φ(a 0 , . . ., a m−1 ) ⇔ N |= Φ(b 0 , . . ., b m−1 ), and similarly with the roles of M and N reversed.Now recall [15, Corollary 15.15], which states that if M and N are countable recursively saturated L-structures, then M ∼ = N if and only if M and N are elementarily equivalent and have the same types.For the forward direction, let A and B be decidable L-structures that are elementarily equivalent, and let C be cohesive.Then C A and C B are countable, are elementarily equivalent by Corollary 2.10 (which yields that C A ≡ A ≡ B ≡ C B), and are recursively saturated by Theorem 2.16.Thus to conclude that C A ∼ = C B, it suffices to show that C A and C B have the same types.
By the decidability of B, search for the first b such that B |= i≤n Θ i ( b), and define ψ(n) = b.On the other hand, if ϕ(n)↑, then ψ(n)↑.
by a similar argument.Thus [ψ 0 ], . . ., [ψ m−1 ] has in C B the same type that [ϕ 0 ], . . ., [ϕ m−1 ] has in C A, as desired.For the converse, let A and B be decidable L-structures, and suppose that C A ∼ = C B for every cohesive set C. Fix any cohesive set C. Then A ≡ C A ≡ C B ≡ B by Corollary 2.10.
For a linear order L = (L, ≺), we use the usual interval notation (a, b) L = {x ∈ L : a ≺ x ≺ b} and [a, b] L = {x ∈ L : a x b} to denote open and closed intervals of L. Sometimes it is convenient to allow b a in this notation, in which case, for example, (a, b) L = ∅.The notation |(a, b) L | denotes the cardinality of the interval (a, b) L .The notations min ≺ {a, b} and max ≺ {a, b} denote the minimum and maximum of a and b with respect to ≺.
For elements a and b of L, we write a Î L b if the interval (a, b) L (equivalently, the interval [a, b] L ) in L is infinite.For a ≺ L b, we have that a Î L b if and only if a and b are in different blocks.See [21, Chapter 4] for more on condensations.

Lemma 3 . 5 .
Let L = (L, ≺ L ) and M = (M, ≺ M ) be linear orders.If f : L → M is surjective and satisfies

Example 4 . 6 .
Let C be a cohesive set.Let N, Z, and Q denote the usual presentations of ω, ζ, and η.
a) ⇔ a = 2n for some n R L (a, b) ⇔ a = 2n and b = 2n + 2 for some n.Now consider the substructure B of L with domain {a ∈ |L| : E L (a)} and the substructure D of C L with domain [ϕ] ∈ | C L| : E C L ([ϕ]) .As a linear order, B is computably isomorphic to the usual presentation of ω.Therefore D ∼ = C B ∼ = ω + ζη as linear orders by Proposition 2.12 and Theorem 4.5.

Definition 5 . 1 .
A colored linear order is a structure O = (L, N, ≺ L , F ), where L = (L, ≺ L ) is a linear order and F is (the graph of) a function F : L → N, thought of as a coloring of L.Here the language includes unary relation symbols for L and N and a binary relation symbol for F in addition to the binary relation symbol ≺.
Fix any color d, and let δ be the constant function with value d.Partially compute a function θ(n) by searching for a k with ψ(n) ≺ L k ≺ L ϕ(n) and F (k) = d.If there is such a k, let θ(n) be the first such k.Property ( * ) and the assumption lim n∈C ϕ r(p) (n) = y for some y ∈ A 2p+1,b , and x ≺ L y L z.The action then places k's of each color d ≤ max < {x, y} in the interval (x, y) L .If p, N acts again at some later stage t > s with some action input m, then again ϕ ℓ(p) (m) ∈ A 2p,a and ϕ r(p) (m) ∈ A 2p+1,b .However, it cannot again be that ϕ ℓ(p) (m) = x and ϕ r(p) (m) = y because condition (4) would fail in this situation.Thus when adding a number k ≺ L z, the action input n used by p, N specifies a pair (x, y)= (ϕ ℓ(p) (n), ϕ r(p) (n)) ∈ A 2p,a × A 2p+1,b with x ≺ L y L z, and each such pair can be specified by p, N at most once.By Claim 2, every element added ≺ L -below z after stage s 2 is in A 2p,1−a ∩ A 2p+1,1−b .Therefore there are only finitely many pairs (x, y) ∈ A 2p,a × A 2p+1,b with x ≺ L y L z, and therefore p, N can only add finitely many elements k ≺ L z.

Corollary 5 . 4 .
Let C be a co-c.e.cohesive set.Then there is a computable copy L of ω where the cohesive power C L has order-type ω + η.Proof.Let C be co-c.e. and cohesive.Let O = (L, N, ≺ L , F ) be the computable colored copy of ω from Theorem 5.3 for C. Let L denote the computable copy L = (L, ≺ L ) of ω.The cohesive power C L has an initial segment of order-type ω by Lemma 4.1.There is neither a least nor greatest non-standard element of C L by Lemma 4.3.Theorem 5.3 implies that the non-standard elements of C L are dense.So C L consists of a standard part of order-type ω and a non-standard part that forms a countable dense linear order without endpoints.So C L ∼ = ω + η.Example 5.5.Let C be a co-c.e.cohesive set, and let L be a computable copy of ω with C L ∼ = ω +η as in Corollary 5.4.

Case 2 :
(∀a < r)(∃b < s) ¬P (F (r), a, b) holds and |M r | ≤ r at the beginning of stage s.In this case, let m = |M r |, and letℓ 0 ≺ ℓ 1 ≺ • • • ≺ ℓ m−1 be the elements of M r listed in ≺-increasing order.Recall that ≺ and < agree on M r , so alsoℓ 0 < ℓ 1 < • • • < ℓ m−1 .Let s < x 0 < x 1 < • • • < x r−m be the r + 1 − m least numbers x > s for which it has not yet been decided whether x ∈ M r .

Case 3 :
If neither Case 1 nor Case 2 applies, then do nothing more at stage s and go on to stage s + 1.Then M r |= Γ at the end of stage s because M r |= Γ at the start of stage s.
)-(3) hold.For item(1), consider a k ∈ X.If k = k 0 , then |M r | = k whenever r ∈ R and F (r) = k.Suppose instead that k > k 0 .Both ∃a ∀b P (k, a, b) and ∀a ∃b Q(k, a, b) hold because k ∈ X. Suppose that r ∈ R has F (r) = k and is large enough so that (∃a < r)(∀b) P (k, a, b).Then Case 2 never occurs in the computation of M r because (∀a < r)(∃b < s) ¬P (F (r), a, b) always fails.On the other hand, Case 1 occurs at the first stage s such that (∀a < r)(∃b < s) Q(F (r), a, b).Therefore |M r | = k.This shows that (∀ ∞ r ∈ R)(F (r) = k → |M r | = k).For item (2), consider a k < k 0 .Then |M r | = r + 1 whenever r ∈ R, r ≥ k 0 , andF (r) = k.Thus (∀ ∞ r ∈ R)(F (r) = k → |M r | = r + 1).For item(3), consider a k > k 0 with k / ∈ X.Then either ∀a ∃b ¬P (k, a, b) or ∃a ∀b ¬Q(k, a, b).First suppose that ∀a ∃b ¬P (k, a, b) holds.Let r ∈ R have F (r) = k and r ≥ k.Let s be the first stage at which (∀a < r)(∃b < s) ¬P (F (r), a, b) in the computation of M r .Then |M r | ≤ r at the beginning of stage s.This is because Case 2 cannot have occurred before stage s by the choice of s, so either |M r | = k 0 < r (if Case 1 has not occurred by stage s) or |M r | = k ≤ r (if Case 1 has occurred by stage s).Thus Case 2 occurs at stage s, so |M r | = r + 1 at the end of stage s.Neither Case 1 nor Case 2 occurs after stage s because Case 2 occurs at most once and Case 1 cannot occur after Case 2. Thus |M r | = r + 1 at the end of the construction.This shows that (∀ ∞ r ∈ R)(F (r) = k → |M r | = r + 1).Finally, suppose that ∃a ∀b ¬Q(k, a, b) holds but ∀a ∃b ¬P (k, a, b) fails.Thus both ∃a ∀b P (k, a, b) and ∃a ∀b ¬Q(k, a, b) hold.Suppose that r ∈ R has F (r) = k and is large enough so that (∃a < r)(∀b) P (F (r), a, b) and (∃a < r)(∀b) ¬Q(F (r), a, b).Then neither Case 1 nor Case 2 occur at any stage in the computation of M r .Thus |M r | = k 0 .This shows that (∀ ∞ r ∈ R)(F (r) = k → |M r | = k 0 ) and completes the argument that item (3) holds.

8 .
Then L is a computable copy of ω.Let C be a cohesive set for which C O is colorful.Then again C L ∼ = Z std + Z nonstd , where | C R| std and | C R| nonstd denote the standard and non-standard parts of C R,Z std = [θ]∈| C R| std C M θ(n) Z nonstd = [θ]∈| C R| nonstd C M θ(n) ,andZ std ∼ = ω.Again, think of c Σ (Z nonstd ) as being colored by G C O , where the blockC M θ(n) corresponding to [θ] ∈ | C R| nonstd gets color G C O ([θ]).The product C O is colorful, which means that c Σ (Z nonstd ) ∼ = | C R| nonstd ∼ = ηand that each solid color occurs densely.The order-type of blockC M θ(n) for each [θ] ∈ | C R| nonstdcan be determined as in the proof of Lemma 6.8.•If G C O ([θ]) is solid color i, k where k ∈ X i , then C M θ(n) ∼ = k.• If G C O ([θ]) is solid color i, k where k < k 0 , then C M θ(n) ∼ = ω + ζη + ω * .• If G C O ([θ]) is solid color i, kwhere k > k 0 and k / ∈ X i , then C M θ(n) either has order-type k 0 or order-type ω + ζη + ω * .
[2, it is essential that the two structures are isomorphic via a computable isomorphism.In Sections 4, 5, and 6, we see many examples of pairs of computable linear orders that are isomorphic (but not computably isomorphic) to ω but have non-elementarily equivalent cohesive powers.The next theorem says that decidable structures A and B are elementarily equivalent if and only if It is essentially [20, Theorem 2.1], though we give a slightly different proof.Compare this to the Keisler-Shelah theorem, which states that, in general, two structures are elementarily equivalent if and only if there is an ultrafilter (on a set of appropriate size) over which the corresponding ultrapowers are isomorphic (see[2, Theorem 6.1.15]).
C A and C B are isomorphic for every cohesive set C.
The elements of A are of the form[ϕ] A for partial computable functions ϕ with ∀n (ϕ(n)↓ → ϕ(n) ∈ |M|) and C ⊆ * dom(ϕ).The elements of B are of the form [θ] X , [τ ] Y [θ]X for partial computable functions θ and τ with ∀n 5, let Z denote [θ]∈| C R| C M θ(n) ; let | C R| std and | C R| nonstd denote the standard and non-standard parts of C R; and let