{'fraction_non_alphanumeric': 0.05667839081666579, 'fraction_numerical': 0.011846641118518908, 'mean_word_length': 3.542405214211907, 'pattern_counts': {'":': 1, '<': 36, '<?xml version=': 0, '>': 17, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 39, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Noncomputable functions in the Blum-Shub-Smale model

Working in the Blum-Shub-Smale model of computation on the real numbers, we answer several questions of Meer and Ziegler. First, we show that, for each natural number d, an oracle for the set of algebraic real numbers of degree at most d is insufficient to allow an oracle BSS-machine to decide membership in the set of algebraic numbers of degree d + 1. We add a number of further results on relative computability of these sets and their unions. Then we show that the halting problem for BSS-computation is not decidable below any countable oracle set, and give a more specific condition, related to the cardinalities of the sets, necessary for relative BSS-computability. Most of our results involve the technique of using as input a tuple of real numbers which is algebraically independent over both the parameters and the oracle of the machine.


Introduction
Blum, Shub, and Smale introduced in [2] a notion of computation with full-precision real arithmetic, in which the ordered field operations are axiomatically computable, and the computable functions are closed under the usual operations. A complete account of this model is given in [1]. A program for such a machine consists of a finite set of instructions as described there, and the instructions are allowed to contain finitely many real parameters, since a single real number is viewed as a finite object. The program can add, multiply, subtract, or divide real numbers in its cells, can copy cell, can overwrite the contents of a cell with 0, and can use the relations = and < to compare the contents of two cells, forking according to whether the contents of those cells satisfy that relation. For our purposes, it will be convenient to assume that the forking instructions in the program compare the real number in a single given cell to 0, under either = or < or >. Such a machine has equivalent computing power to machines which can compare the contents of two different cells to each other.
Of course, the BSS model is not the only concept of computation on R, nor should it be considered the dominant model. It corresponds to a view of the real numbers as a fixed structure, perhaps given axiomatically -defined, for instance, as the unique complete Archimedean ordered field, with field operations vouchsafed unto us mathematicians; as opposed to a view of real numbers as objects defined by Cauchy sequences or by Dedekind cuts in the rational numbers Q, with operations derived from the analogous operations on Q. There is no obvious method of implementing BSS machines by means of digital computers. More typically, as in [2,1], one envisions BSS machines as a model for numerical computation in which features of approximation, rounding, and error analysis are treated as a separate posterior analysis. This failure invites a contrast with computable analysis, which treats real numbers as quantities approximated by rational numbers and is intended to reflect the capabilities of digital computers. However, the BSS model is of interest both for the analogy between it and the Turing model, which can be seen as BSS computation on the ring Z/ (2), and because it reflects the intuitions of many mathematicians -dating back to the nineteenth century, and mostly outside of computer science -about the notion of algorithmic computation on R. Some useful further discussion of these questions appears in [14]. This paper will consider sets of algebraic real numbers, and other sets of tuples from R, as oracles for BSS machines, and will examine the relative difficulty of deciding membership in such sets under the BSS model of computation. Several sections compare various sets of algebraic numbers under BSS-oracle computation, using these sets to demonstrate that there exists a rich structure of BSS-semidecidable degrees under BSS reducibility. Later sections consider questions about cardinality: to what extent the complexity of a subset of R (or C) allows us to draw conclusions about its cardinality. The previous paper [11] by Meer and Ziegler focused attention on these issues, and here we answer several of the questions raised there. Our method adapts a known technique from BSS computability, and should be comprehensible to casual readers as well as to logicians and computer scientists. It requires significant use of algebraic properties of the real numbers, in addition to computability, reinforcing the general perception of the BSS model as an essentially algebraic approach to computation on R, treating real numbers as indivisible finite items. In contrast, the use of computable analysis normally results in a more analytic approach to computation on R. We the present authors comprise a number theorist and two computable model theorists with experience in algorithms on (countable) Turing-computable fields, and thus we are more familiar with the algebraic side.
Our notation generally follows that of [11]. The set of all finite tuples of real numbers is denoted R ∞ ; the inputs and outputs of BSS machines on R all lie in this set, and the collective content of the cells of a BSS machine at a given stage in a computation may also be regarded as an element of R ∞ . We use A to denote the set of all real numbers which are algebraic over the subfield Q of rational numbers. A is partitioned into subsets A =d , for each natural number d, so that A =d contains those algebraic real numbers of degree exactly d over Q. (Recall that the degree of x over Q is the vector space dimension over Q of the field Q(x) generated by x; equivalently, it is the degree of the minimal polynomial of x in Q[X].) We also write A ≤d = ∪ c≤d A =c , the set of algebraic real numbers of degree ≤ d. (In [11], this set was called A d ; our notation is intended to distinguish A =d from A ≤d .) By the definition of degree, A =0 is empty, and A =1 contains exactly the rational numbers themselves. We mention [13] as an excellent source for these and other algebraic preliminaries, and [5] for more advanced questions about algorithms on fields.
The following lemma is well known, and clear by induction on stages. It reflects the fact that the four field operations are the only operations which a BSS machine is able to perform. Lemma 1.1. If M is a BSS machine using only the real parameters z in its program, then at every stage of the run of M on any input x, the content of every cell lies in the field Q( z, x).
It is immediate from this lemma that the set A cannot be the image of N under any BSS-computable function, as it is not contained within any finitely generated field. (We will tend to use N to denote the subset of R consisting of the nonnegative integers, as here, whereas ω will denote the same set when not sitting inside of R.) We say that A is not BSS-countable. On the other hand, A does satisfy the definition of BSS semidecidability, which is the best analogue of Turing-computable enumerability and has been studied more closely in the literature.
there exists a (partial) BSScomputable function with domain S, and BSS-countable if there exists a partial BSScomputable function mapping N onto S. A set S is BSS-decidable if its characteristic function χ S is BSS-computable.
It is immediate that S is BSS-decidable if and only if both S and (R ∞ − S) are BSSsemidecidable. This justifies the analogy between BSS-semidecidability in R ∞ and computable enumerability in ω, and also dictates the use of the prefix "semi." The term BSScountable, on the other hand, suggests that the set can be listed out, element by element, by a BSS machine, which is precisely the content of the definition above. (The related term BSS-enumerable has been used by other authors to denote the image of R ∞ under a BSS-computable partial function.) In the context of Turing computation, computable enumerability and semidecidability are equivalent, but in the BSS context, the set A distinguishes the two notions, being BSS-semidecidable but not BSS-countable. (On the other hand, every BSS-countable set is readily seen to be BSS-semidecidable.) The semidecision procedure for A is well-known: take any input x, and go through all nonzero polynomials p(X) ∈ Q[X], computing p(x) for each. If ever p(x) = 0, the machine halts. The ability to go through the polynomials in Q[X] follows from the BSS-countability of Q[X], which in turn follows from the BSS-countability of Q. (A similar result applies to the set of algebraically dependent tuples in R ∞ ; see for instance [7].) The two questions which gave rise to this paper were posed by Meer and Ziegler in [11]. Both use the notion of a BSS reduction, analogous to Turing reductions. An oracle BSS machine is essentially a BSS machine with the additional ability to take any finite tuple (which it has already assembled on the cells of its tape), ask an oracle set A whether that tuple lies in A, and fork according to whether the answer is positive or negative. The oracle A should be a subset of R ∞ , of course, and we will write M A to represent an oracle BSS program (or machine) equipped with an oracle set A. More precisely, Definition 1.3. An oracle BSS machine using an oracle set B ⊆ R ∞ is a BSS machine with an additional type of node called an oracle node. This node branches according as x ∈ B, where x is some previously computed element.
(This is exactly the definition given in [11], and is equivalent to any reasonable formalization of the implicit definition given in Problem 10.2 of [2].) Oracle BSS programs can be enumerated (by tuples from R ∞ ) in much the same manner as regular BSS programs. If B ⊆ R ∞ and the characteristic function χ B can be computed by an oracle BSS machine M A with oracle A, then we write B ≤ BSS A, and say that B is BSS-reducible to A, calling M the BSS reduction of B to A. Should B ≤ BSS A and also A ≤ BSS B, we write A ≡ BSS B and call the two sets BSS-equivalent. All this is exactly analogous to oracle Turing computation on subsets of ω. The first question regards the connection of this reducibility with algebra. Question 1. Let A ≤d be the set of algebraic numbers with degree (over Q) at most d. Then is it true that A ≤0 < BSS A ≤1 < BSS · · · A ≤n < BSS · · ·?
That A ≤d−1 ≤ BSS A ≤d is immediate for all d; see Lemma 5.2 below. The focus of the question is on the lack of any reduction in the opposite direction.
Meer and Ziegler credit the second question to an anonymous referee of [11].
Question 2. Let A be the set of algebraic numbers in R, i.e. those which are roots of a nonzero polynomial in Q[X]. Also, let H be the Halting Problem for BSS computation on R, as described in [11] (Actually, a passing implicit reference is made to this set in [2, §8], in the guise of the halting set of a universal machine). Is it true that H ≤ BSS A? And more generally, could any countable subset of R ∞ contain enough information to decide H?
and halts if ever p(x) = 0. Then x ∈ A iff the program P halts on input x. (Similarly, every BSS-semidecidable set is BSS-decidable in H, and indeed 1-reducible to H in the BSS model.) Again, the question focusses on the lack of any reduction in the opposite direction.
Section 2 gives the basic technical lemma used in this paper to address such questions, and Section 4 applies it to give a positive answer to Question 1. To aid the reader's comprehension, Section 3 describes the solution to Question 1 in the specific case A ≤2 < BSS A ≤1 . Section 5 considers other possible reductions among the sets A =d for different values of d, and among unions of these sets. As a corollary, we define a new embedding of the partial order (P(ω), ⊆) into the partial order of the BSS-semidecidable degrees under BSS reducibility. Such embeddings, including the similar one already derived in [11], reveal a high level of complexity within the latter structure. In Section 6, we answer Question NONCOMPUTABLE FUNCTIONS IN THE BLUM-SHUB-SMALE MODEL 5 2 by showing that no countable subset of R ∞ contains enough information to decide the halting problem in the BSS model. We also prove there a theorem relating BSS degrees to cardinality, showing that for infinite subsets S ⊆ R and C ⊆ R ∞ , if S ≤ BSS C, then the local cardinality (in a technical sense defined in that section) of S cannot be greater than the (global, i.e. usual) cardinality of C. Finally, in Section 8, we offer analogies of these observations for BSS computation on the complex numbers, where the situation is far less messy.

BSS-Computable Functions At Transcendentals
Here we introduce our basic method for showing that various functions on the real numbers fail to be BSS-computable. In Sections 3 and 4, this method will be extended to give answers about BSS-computability below certain oracles. However, even the non-relativized version yields straightforward proofs of several well-known results about BSS-decidable sets, as we will see shortly after describing the method.
In many respects, our method is equivalent to the method, used by many others, of considering BSS computations as paths through a finite-branching tree of height ω, branching whenever there is a forking instruction in the program. However, we think that the intuition for our method can be more readily explained to a mathematician unfamiliar with computability theory. Our main lemma says that near any transcendental input in its domain, the values in a BSS-machine computation must be defined by rational functions of the input. Where previous proofs usually made arguments about countable sets of terminal nodes in the tree of possible computations, we simply use the transcendence of this element. Lemma 2.1. Let M be a BSS-machine, and z the finite tuple of real parameters mentioned in the program for M . Suppose that y ∈ R m+1 is a tuple of real numbers algebraically independent over the field Q = Q( z), such that M converges on input y. Then there exists ǫ > 0 and rational functions f 0 , . . . , f n ∈ Q( Y ), (that is, rational functions of the variables Y with coefficients from Q) such that for all x ∈ R m+1 with | x − y| < ǫ, M also converges on input x with output f 0 ( x), . . . , f n ( x) ∈ R n+1 .
Proof. The intuition is that by choosing x sufficiently close to y, we can ensure that the computation on x branches in exactly the same way as the computation on y, at each of the (finitely many) branch points in the computation on y. More formally, say that the run of M on input y halts at stage t, and that at each stage s ≤ t, the non-zero cells contain the reals f 0,s ( y), . . . , f ns,s ( y) . Lemma 1.1 shows that all f i,s ( y) lie in the field Q( y), so each f i,s may be viewed as a rational function of y with coefficients in Q. Indeed, each rational function f i,s is uniquely determined in Q( Y ), since y is algebraically independent over Q.
Let i,s (0) with f i,s ∈ F is closed in R m+1 , and by algebraic independence, y does not lie in U , so there exists an ǫ > 0 such that the ǫ-ball B ǫ ( y) = { x ∈ R m+1 : | x− y| < ǫ}, does not intersect U , and is contained within the domain of each f i,s ∈ F . Indeed, for all f i,s ∈ F and all x ∈ B ǫ ( y), f i,s ( x) and f i,s ( y) must have the same sign, since B ǫ ( y) is a path-connected set. Now fix any x ∈ B ǫ ( y). We claim that in the run of M on input x, at each stage s ≤ t, the cells will contain precisely f 0,s ( x), . . . , f ns,s ( x) and the machine will be in the same state in which it was at stage s on input y. This is clear for stage 0, and we continue by induction, going from each stage s < t to stage s + 1. If the machine executed a copy instruction or a field operation in this step, then the result is clear, by inductive hypothesis. Otherwise, the machine executed a fork instruction, comparing some f i,s ( x) with 0. But we saw above that f i,s ( x) and f i,s ( y) have the same sign (or else f i,s (y) = 0, in which case f i,s is the constant function 0), so in both runs the machine entered the same state at stage s + 1, leaving the contents of all cells intact. This completes the induction, and leaves us only to remark that therefore, at stage t, the run of M on input x must also have halted, with f 0,t ( x), . . . , f n,s ( x) in its cells as the output.
(If our BSS machines were allowed to compare the contents of two cells under = or <, as is standard, then our set F would have to consist of all nonconstant differences (f i,s − f j,s ). The proof would still work, but the method above is simpler.) Lemma 2.1 provides quick proofs of several known results, including the undecidability of every proper subfield F ⊂ R.
Corollary 2.2. No BSS-decidable subset S ⊆ R n can be both dense and co-dense in R n .
Proof. Since the characteristic function χ S is BSS-computable, say by a machine with parameters z, Lemma 2.1 shows that for every y ∈ R n with coordinates algebraically independent over z, χ S is constant in some neighborhood of y.
Indeed, the same proof shows that any BSS-computable total function with discrete image must be constant on each of the ǫ-balls given by Lemma 2.1.

Corollary 2.3.
Define the boundary of a subset S ⊆ R n to be the intersection of the closure of S with the closure of its complement. If S is BSS-decidable, then there is a finite tuple z such that every point on the boundary of S has coordinates algebraically dependent over z. In particular, if M computes χ S , then its parameters may serve as z.
Proof. This is immediate from Lemma 2.1.
Of course, Corollaries 2.2 and 2.3 have been deduced long since from other known results, in particular from the Path Decomposition Theorem described in [1]. We include them here because of the simplicity of these proofs, and because they introduce the methods to be used in the following sections.

Application to Algebraic Numbers of Degree 2
We know that A ≤1 ≤ BSS A ≤0 , since A ≤0 = ∅ and A ≤1 = Q and it is already known (and seen again in Corollary 2.2 above) that Q is BSS-undecidable. To introduce our main result, we prove the corresponding result one level further up. The proof constitutes a simple introduction to the method we used in the abstract [3] to prove the full Theorem 4.1. In the next section, we will give a separate new proof of Theorem 4.1, more elegant than the first one but less transparent, especially for readers not expert in field theory, who may prefer to look up the proof in [3].
Proof. Suppose that M is an oracle BSS machine with real parameters z, such that M Q computes the characteristic function of A ≤2 . (Of course A ≤1 is just Q itself.) Fix any y ∈ R which is transcendental over the field Q = Q( z), and run M Q on input y. Of course, this computation must halt after finitely many steps and output 0. As in the proof of Lemma 2.1, we set F to be the finite set of all nonconstant rational functions f ∈ Q(Y ) such that f (y) appears in some cell during this computation. Again, there is an ǫ > 0 such that all x within ǫ of y satisfy f (x) · f (y) > 0 for all f ∈ F . However, it is no longer sufficient for us to run M Q on an arbitrary x ∈ B ǫ (y) ∩ A ≤2 , because such an x might lie in Q, or might have f (x) ∈ Q for some f ∈ F , and in this case the computation on input x might ask its oracle whether f (x) ∈ Q and would then branch differently from the computation on input y. (Of course, for all f ∈ F , f (y) / ∈ Q, since f (y) must be transcendental over Q for nonconstant f .) So we must establish the existence of some ∈ Q for all of the (finitely many) f ∈ F . Of course, we do not need to give any effective procedure which produces this x; its existence is sufficient.
In game-theoretic terms, the opponent first chooses the functions in F , after which we choose x, and then his functions pick out the value of a, based on our x. So we must ensure that our choice of x makes 0 = g(x) − ah(x) for every a ∈ Q.
We need the following lemma from calculus.
Given the collection F , we fix some b ∈ Q such that |y − b| < ǫ 2 and such that b lies in the domain of every f ∈ F and all f ′ (b) = 0. Since each f ∈ F is differentiable and nonconstant, each f rules out only finitely many values, and F is finite, so such a b must exist. Now Lemma 3.2 makes it clear that for some sufficiently small , which is the minimal polynomial of x and of x, over Q as well as over Q. For each f ∈ F , we apply the division algorithm: with r g (X) and r h (X) both linear polynomials. We write r g (X) = g 1 X + g 0 and r h (X) = and this equation can be re-expressed as Here both expressions in parentheses lie in Q, but we chose u with √ u / ∈ Q, and so But this immediately shows that r g (X) = g 1 X + g 0 = ah 1 X + ah 0 = ar h (X), contradicting the statement above that r g (X) is not a scalar multiple of r h (X).
With this contradiction, we see that f (x) / ∈ Q (and indeed f (x) / ∈ Q). Since this holds for all f ∈ F , and since |x − y| < ǫ, it is now clear (just as in Lemma 2.1) that the computation M Q (x) follows the exact same path as M Q (y), and outputs the same answer. However, y / ∈ A ≤2 since y was transcendental over Q, Thus the machine M with oracle Q did not compute the characteristic function of A ≤2 .

Application to Algebraic Numbers in General
Proof. The two statements in the theorem are equivalent, because . We prove the latter.
As usual, suppose that M is an oracle BSS machine which, given oracle A ≤d−1 , computes A =d . Let z be the finite tuple of real parameters used by M , and set Q = Q( z), the field generated by these parameters. Then its algebraic portion Q ∩ Q is also finitely generated, since subfields of finitely generated fields are finitely generated, (see [12,Thm. 3 Being an algebraic extension, Q ∩ Q thus has finite dimension over Q, so Q cannot contain d-th roots of all prime numbers. Theorem 9.1 from Chapter 6 of [9] shows that there exists a prime whose real d-th root α satisfies [Q(α) : Q] = d. We also fix any real number y transcendental over Q, and let F be the set of all nonconstant rational functions f ∈ Q(X) such that f (y) appears in some cell during the run of M on input y with oracle A ≤d−1 . By assumption this run halts and outputs 0, so F is a finite set. As before, we fix ǫ > 0 such that f (x) · f (y) > 0 for all x ∈ B ǫ (y). Fix any b ∈ Q with |b − y| < ǫ 2 and with f ′ (b) = 0 for all f ∈ F . (Each such f is a nonconstant rational function, and so f ′ (X), being rational and nonzero, can only have finitely many roots.) Now there exist d distinct embeddings σ j : Q(α) → Q, with j = 1, . . . , d. With Q and Q(α) linearly disjoint, each σ j extends to an embedding σ j : Q(α) → Q(α), with σ j ↾ Q being the identity, and these are all the embeddings (over Q) of Q(α) into its algebraic closure.
Lemma 4.2. In this situation, let S be the set of rational numbers c such that β c = f (b+cα) has degree < d over Q. Then S is finite.
Hence some σ j(c) embeds Q(α) into its algebraic closure and equals the identity on Q(β c ) but not on Q(α). But α has only d conjugates over Q, so if S were infinite, it would contain an infinite subset S ′ for which one particular embedding .
So the equation f (b + X) = f (b + γX) holds whenever X = cα with c ∈ S ′ . Since S ′ is infinite, this must be an identity of rational functions, and by differentiating it (and recalling that γ = 1), we see that f ′ (b) = 0, contradicting our choice of b.
So we may fix some positive rational c < ǫ |2α| such that for all f ∈ F , f (b + cα) has degree ≥ d over Q. (In fact, this degree must then equal d, and f (y) have the same sign and both lie outside of the oracle set A ≤d−1 . Therefore the computation of M on input x with oracle A ≤d−1 halts and outputs 0, yet x ∈ A =d , so this machine does not decide the set A =d .
Thus we have a positive answer to Problem 1. Meer and Ziegler also posed a similar problem: whether A ≤d ≡ BSS A =d for every d. They had noted that this holds when d ≤ 2, but in fact it holds for no other d than those. Since A ≤d ≡ BSS A ≤d−1 ⊕ A =d , the problem essentially asks whether A ≤d−1 ≤ BSS A =d . In the next section, Theorem 5.3 will use the same technique as Theorem 4.1 to show that for

Results on Sets of Degrees
Now we create more general versions, mostly along the same lines as Theorem 4.1. To make the notation as powerful as possible, we extend it: for any subset S ⊆ ω, we will write A S = ∪ d∈S A =d , the set of all algebraic real numbers whose degrees over Q lie in S.
Lemma 5.1. For every S ⊆ ω, A S is a BSS-semidecidable set, and the semidecision procedure is uniform in one real parameter for S.
Proof. The BSS machine M with range A S has one real parameter z S = n∈S 2 −n , whose binary representation forms a code for the set S ⊆ ω. From this parameter, given any n, the machine can determine whether or not n ∈ S. On input x, the machine searches through all irreducible h(X) ∈ Q[x] until it finds one with h(x) = 0. Then it uses z S to decide whether deg(h) ∈ S, and halts only on a positive answer. (It was known as far back as 1882, in the work [8] of Kronecker, that there is a decision procedure for irreducibility of polynomials in Q[X].) Our first result on these BSS-semidecidable sets is immediate.
Proof. With an A T oracle, a BSS machine can decide whether an input x lies in A T . If it does not (and S ⊆ T ), then x / ∈ A S ; whereas if it does, then one merely searches for the minimal polynomial of x in Q, and checks whether its degree lies in S. (For this purpose, the machine needs the parameter z S from Lemma 5.1.) Proof. Essentially the same construction as in Theorem 4.1 applies, and we use the same notation. In addition to the argument given there, we must show that for every f ∈ F , f (x) cannot lie in the new oracle set A S , as opposed to A ≤d−1 , which was the oracle used in Theorem 4.1. For this purpose, a few revisions are needed. First, with Q still denoting the field generated by the parameters of M , we let K = Q ∩ Q, and let F K = F ∩ K(X) be the set of nonconstant functions in K(X) appearing in the computation by M A S on the transcendental input y. Now K is a finite algebraic extension of Q within R, and we let L be the Galois extension of Q generated by K within the complex field C. Moreover, we will choose our x to have degree d not only over Q, and not only over Q, but also over L. Since L and Q are both finitely generated, this can be done. Now let f ∈ F and consider a = f (x). First, if f / ∈ F K , then every expression of f (X) involves transcendentals over Q. Suppose that f (X) = f * (t 1 , . . . , t m , X), where f * = g * h * ∈ K(T 1 . . . , T m , X) and {t 1 , . . . , t m } (which we write as { t}) is algebraically independent over Q. If a = f (x) = f * ( t, x) lies in A, then g * ( t, x) = ah * ( t, x), so all coefficients in g * ( T , x) − ah * ( T , x) are zero, which can happen for only finitely many values of x (since f is nonconstant). So, in the revised proof, we make sure to avoid those finitely many values of x (for each f ∈ F − F K ) when making our choice of x close to y.
Next we suppose that a = f (x) for an f ∈ F K . The same proof as in Theorem 4.1 shows that L(a) cannot be a proper subfield of L(x). (The argument there for Q goes through now with Q replaced by L.) Now, however, it is not guaranteed that a has degree < d over L, and so it is possible that L(a) = L(x). In this case, we know that [L(a) : L] = [L(x) : L] = d, and so a has minimal polynomial q(X) ∈ L[X] of degree d. If a is transcendental over Q, then of course a / ∈ A S ; so assume a is algebraic, and let p(X) ∈ Q[X] be the minimal polynomial of a over Q. Then p(X) is just the product of q(X) with several images of q(X) under automorphisms of L. Specifically, if E is the subfield of L generated by the coefficients of q(X), then p(X) = Π σ∈G q σ (X), where G is a set of representatives for the right cosets of Gal(L/E) in Gal(L/Q), and where q σ (X) is the image of q(X) under the map σ on its coefficients. (This formula for the minimal polynomial p(X) of the roots of q over the smaller subfield Q requires the extension Q ⊆ L to be Galois. This is why we used the Galois extension L, rather than just the fields K or Q.) It follows that deg(p(X)) = d · [E : Q]. Since S contains no nonzero multiples of d, we see that deg(p(X)) / ∈ S, and hence a / ∈ A S . The rest of the proof then proceeds exactly as in Theorem 4.1.
For reference in Theorem 5.14, we note that in the above proof, when L(a) = L(x), we showed that [Q(a) : Q] = d · [E : Q] is a multiple of d by a factor ≤ [L : Q]. Here all that was needed was for [Q(a) : Q] to be a multiple of d, but there we will need uniformity in the size of the multiple.
We will see below that the converse of Lemma 5.2 fails. However, we can prove a substitute for it, which yields the same principal results (Corollaries 5.5 and 5.7, below) that one would have derived from the converse. This allows us to show that the BSS-semidecidable degrees, which form the analogue for BSS computation of the computably enumerable Turing degrees, are a structure of significant complexity. In [11,Theorem 16], Meer and Ziegler showed that there exist uncountably many BSS-semidecidable degrees, pairwise incomparable with each other, and Corollary 5.5 (below) could also be proven using their sets Q √ p , and unions of those sets, in place of the sets A =p and their unions. In the case of additive BSS-machines, some related results appear in [6].
Corollary 5.5. There exists a subset L of the BSS-semidecidable degrees such that as partial orders, (L, ≤ BSS ) is isomorphic to (P(ω), ⊆).
Proof. We have (P(ω), ⊆) ∼ = (P(P ), ⊆), and Theorem 5.4 shows that the latter partial order embeds into the BSS-semidecidable degrees via the map S → A S . In Corollary 5.5, the isomorphism respects partial orders, but it is open whether it maps meets and joins within the lattice (P(ω), ⊆) to meets and joins within the upper semilattice of the BSS degrees, or within the sub-upper semilattice of the BSS-semidecidable degrees.
By adding the following elementary set-theoretic fact to Corollary 5.5 we create a different proof of [11,Thm. 16].
The remainder of this section is devoted to the question of when we can have A S ≤ BSS A T without having S ⊆ T . The restriction on S in Theorem 5.3 is that it does not contain any multiples of d. This leaves open the full converse of Lemma 5.2, and it is natural to conjecture that A S ≤ BSS A T if and only if S ⊆ T . The authors were surprised to find that this conjecture fails, and moreover, that it can fail even for finite sets S. To introduce this failure, we give a specific example, which builds on a technique introduced by Meer and Ziegler in [11,Lemma 17], in which they proved that A =1 ≤ BSS A =2 .
Proof. The machine for this reduction, with oracle A =6 , is simple. It has 3 √ 2 as a parameter, and on input x, it asks its oracle whether x + 3 √ 2 ∈ A =6 . If not, then it outputs "No" immediately; while if so, then it searches through the irreducible polynomials in Q[X] until it finds the minimal polynomial h(X) of x, and then outputs "Yes" if h has degree 2 and "No" otherwise.
To see that this procedure computes A =2 correctly, we consider the algebraicity of the input x. If x / ∈ A, then x + 3 √ 2 is certainly also transcendental, hence / ∈ A =6 , and the machine outputs "No." If x ∈ A (ω−{2}) , then the machine must output "No": either immediately, if x + 3 √ 2 / ∈ A =6 , or else after finding the minimal polynomial of x. Finally, if x ∈ A =2 , then we claim that x + 3 √ 2 ∈ A =6 , and so the machine goes into its search for the minimal polynomial of x, and finds that x ∈ A =2 .
The only special aspect of the numbers 2 and 6 here was that 6 2 is an integer relatively prime to 2.
Proposition 5.9. Let p and q be any positive, relatively prime integers. Then A =p ≤ BSS A =pq .
Proof. The exact same proof as in Proposition 5.8, with 2 replaced by p, 6 by pq, and 3 √ 2 by any element of A =q one may choose.
The preceding argument can be uniformized, via a specific effective version of the Theorem of the Primitive Element. The basic result was proven by Kronecker; we suggest [5, Lemma 17.12] for a description. Here we simply adapt that proof to the BSS setting.
Theorem 5.10 (Effective Theorem of the Primitive Element, after Kronecker). There is a BSS-computable function which, given any two finite (possibly empty) tuples x 1 , . . . , x n and y 1 , . . . , y m of real numbers such that {x 1 , . . . , x n } is algebraically independent over Q and all y i are algebraic over Q(x 1 , . . . , x n ), outputs a single real number z such that Q( x, y) = Q( x, z). (This z is called a primitive element for the field Q( x, y) over Q( x).) Proof. We use the procedure from [5, Lemma 17.12], with K = Q( x), noting that this K has a (Turing-computable) splitting algorithm, uniformly in n, so that our machine can begin by finding the minimal polynomial of each y i over K(y 1 , . . . , y i−1 ), for i = 1, . . . , m. It can also find the minimal polynomial f (Y ) of the element y = T 1 y 1 + · · · + T m y m over the function field K(T 1 , . . . , T m ), clearing denominators so that f ∈ K[ T , Y ]. As argued in [5], for any a 1 , . . . , a m ∈ K such that ∂f ∂Y (a 1 , . . . , a m , a 1 y 1 + · · · + a m y m ) = 0, the element z = a 1 y 1 + · · · + a m y m generates K( y) = Q( x, y) over K, and our machine will output such a z.
For BSS machines, finding an appropriate tuple a 1 , . . . , a m requires the machine to enumerate the elements of K, searching for such a tuple. Recall that a set S ⊆ R ∞ is BSS-countable if there exists a BSS machine M such that S is the image of the set N under M . Uniform BSS-countability in an input is then defined in the natural way: a collection S x of sets, indexed by elements x of R ∞ , is uniformly BSS-countable in these tuples if there is a BSS machine M ′ such that for all indices x, S x = {outputs M ′ ( x, j) : j ∈ N}. It is clear that the fields K = Q( x) above are BSS-countable uniformly in x, and so our machine can search through elements of K m to find the requisite tuple. Proof. For n = 1, . . . , N , fix parameters z n = n √ 2 ∈ R, so each Q(z n ) is an extension of degree n over Q. On input x, our machine computes a primitive element a n for each of the fields Q(x, z n ), using Theorem 5.10, and checks whether any of the N elements a n lies in the oracle set A T . If any one does, we know x is algebraic, so we search for the minimal polynomial of x over Q and output "yes" or "no" depending on whether or not its degree is in S.
Suppose that no a n lies in A T . In this case the machine program outputs "no." Since this clearly is the correct answer when x is transcendental, we consider x algebraic of some degree d over Q. Proof. The "only if" direction follows from Theorem 5.3. For the "if" direction, let q = r p . We start with parameters z 0 , . . . , z n , where n = 2 p − 2 and z i is the positive real q-th root of the i-th prime number: On input x, this machine asks its A =r -oracle whether any of the elements a ij = z i + jx lies in A =r , where i and j are integers satisfying 0 ≤ i ≤ n and 1 ≤ j ≤ q(p − 1) + 1. If not, it outputs "No," while if (z i + x) ∈ A =r , it finds the minimal polynomial of x over Q and outputs "Yes" or "No" depending on whether that polynomial has degree p.
Once again, this machine clearly outputs "No" whenever x (and hence all a ij ) are transcendental, and clearly outputs the correct answer whenever it actually searches for the minimal polynomial of x (because it only does so when x is algebraic). The crucial situation is that in which x is algebraic and no a ij lies in A =r , so that the output "No" comes immediately. We must show that no such x can lie in A =p .
So suppose x ∈ A =p . Then the minimal polynomial h(X) ∈ Q[X] of x has exactly 2 p − 2 nontrivial factors in Q[X], corresponding to the proper nonempty subsets of the set of all p roots of h(X) in the algebraic closure Q. Now h has no proper factors in Q[X], hence any proper factor of h in one Q(z i )[X] cannot lie in any other Q(z j )[X], (since Q(z i ) ∩ Q(z j ) = Q), leaving at least one i ≤ n such that Q(z i )[X] contains no proper factors of h at all. We fix this i, and note that then the field Q(x, z i ) has degree p over Q(z i ) (since h(X) remains irreducible in Q(z i )[X]), hence has degree pq = r over Q.
Now we claim that for this i, there exists at least one j ∈ ω with 1 ≤ j ≤ q(p − 1) + 1 such that a ij = z i + jx is a primitive generator of Q(x, z i ). This a ij must then lie in A =r , so this will complete the proof. The necessary result follows from the proof given in [13, §6.10] of the Theorem of the Primitive Element. Specifically, it is shown there (with ∆ = Q being separable) that Q(x, z i ) has a primitive generator of the form z i + cx, with c ∈ Q, and indeed that there are at most q(p − 1) values of c in Q for which z i + cx fails to be a primitive generator. Since we tested q(p − 1) + 1 different values of j, at least one a ij does generate Q(x, z i ), hence has degree r over Q as required.
We can generalize Proposition 5.12 to finitely many degrees. Proof. Let S − T = {p 1 , . . . , p k }, so that (The set on the right is clearly the least upper bound under ≤ BSS of A S∩T and the sets A =p i .) Now A S∩T ≤ BSS A T by Lemma 5.2, and by assumption, for each p i , there is some In the preceding construction, each element of (S − T ) requires its own parameters in the given BSS reduction. However, Proposition 5.11 showed that in certain cases the reduction can be done uniformly, and so (S − T ) need not be finite. Next we show here that the uniformity in Proposition 5.11 was essential.
Proof. We prove the contrapositive, assuming that there is no such N . Suppose an oracle BSS machine M with parameters z computes χ A S from oracle A T . Let Q = Q( z) as usual, and let L be the normal closure of Q ∩ A within C. Thus L is a Galois extension of Q. By assumption we may fix some d ∈ S such that {d, 2d, . . . , [L : Q] · d} ∩ T = ∅. Running our usual argument with any y ∈ R transcendental over Q, we get an ǫ and a finite set F ⊂ Q(Y ). Now suppose x ∈ A =d lies in B ǫ (y) and has degree d over L as well as over Q.
) is a proper subfield of L(x). But now, using the same argument as in Theorem 5.3 for the choice of x, and referring to the note at the end of the proof of that theorem, we see that the case of a proper subfield may be avoided, and that when L(f (x)) = L(x), the degree of f (x) over Q equals d · [E : Q]. Recall that E was the subfield of L generated by the coefficients of the minimal polynomial of f (x) over L. Therefore [E : Q] ≤ [L : Q], and so d · [E : Q], the degree of f (x) over Q, does not lie in T , by our choice of d. Hence f (x) / ∈ A T , and the usual argument then shows that the computation M A T (x) proceeds along the same path as for y, hence outputs 0, even though x ∈ A =d ⊆ A S .
For the converse of Theorem 5.14, one would need to uniformize the construction in Proposition 5.12, along the lines of Proposition 5.11. We leave this question for another time.

Countable Oracle Sets
It is natural to think of countability of a subset S ⊆ R ∞ as a limit on the amount of information which can be encoded into S. This intuition requires significant restating before it can be made into a coherent (let alone true) statement, but we will give a reasonable version in this section. So far, all our oracle sets have been of the form A S , for various S ⊆ ω, and so they have all been countable. In [11], it was asked whether there could exist a countable set C ⊆ R ∞ such that the halting problem H for BSS computation on R satisfies H ≤ BSS C. We will show that the answer to this question is negative. For a definition of H in this context, we refer the reader to [11]. Since it is equiconsistent with ZFC for the Continuum Hypothesis to be false, we will make our arguments applicable to all infinite cardinals κ < 2 ω , countable or otherwise. Many of the results of the present and subsequent sections were first announced in [4].
First, of course, every subset of R ∞ is BSS-equivalent to its complement, and so countability and co-countability impose the same restriction on information content. Of course, many sets of size continuum, with equally large complements, are quite simple: the set of positive real numbers, for example, is BSS-decidable, hence less complex than the countable set A. So it is not possible to prove absolute results relating cardinality and co-cardinality (within R ∞ ) to BSS reducibility, but nevertheless, we can produce theorems expressing the intuition that countable sets are not highly complex in the BSS model. This process will culminate in Theorem 6.4 below, but first we show that with a countable oracle, one cannot decide the BSS halting problem H. We conjecture that H is not an upper bound on the degree of a countable set, i.e. that such a set can still be BSS-incomparable with H, but it certainly constitutes progress just to know that the upper cone of sets above H contains no countable sets.
We note that by BSS-equivalence, these conditions also ensure |R ∞ − C| = 2 ω , and ensure |R m − C| = 2 ω whenever C ⊆ R m .
Proof. Let C ⊆ R ∞ have cardinality < 2 ω , and suppose that M is an oracle BSS machine such that M C computes the characteristic function of H. We fix a program code number p for the program which takes inputs x 1 , x 2 ∈ R 2 , searches through nonzero polynomials q in Q[Y 1 , Y 2 ], and halts iff it finds one with q(x 1 , x 2 ) = 0. Since the program coded by p uses no real parameters, p may be regarded as a natural number, but in our argument it can equally well be a tuple p from R ∞ , with one or several real numbers coding program parameters. Then the elements of C, the finitely many parameters z of M , and the parameters, if any, in the program coded by p together generate a field E ⊆ R which also has cardinality < 2 ω , and so R is an extension of infinite transcendence degree (indeed of degree 2 ω ) over this E. (Since C ⊆ R ∞ , we need to be precise: E is generated by the coordinates p 1 , . . . , p j and z 1 , . . . , z k of the tuples p and z, and the coordinates of each tuple in C.) Now fix a pair y 1 , y 2 of real numbers algebraically independent over E. Hence p, y 1 , y 2 / ∈ H, so M C on this input halts after finitely many steps and outputs 0. We fix the finitely many functions f i,s ( Y ) ∈ E(Y 1 , Y 2 ) such that f i,s (y 1 , y 2 ) appears in the i-th cell at stage s during this computation. (The program code p ∈ E ∞ will stay fixed throughout this proof, so we may treat it as part of the function f i,s , rather than as a variable.) As usual, F will be the set of those functions f i,s which are not constants in E, and we fix an ǫ > 0 such that whenever x 1 , x 2 ∈ R 2 with x 1 ∈ B ǫ (y 1 ) and x 2 ∈ B ǫ (y 2 ), every f ∈ F satisfies f (x 1 , x 2 )·f (y 1 , y 2 ) > 0. Write each f ∈ F as a quotient f = g h with g, h ∈ E[Y 1 , Y 2 ], and let n be the greatest degree of Y 2 in all of these finitely many polynomials g and h.
Now choose x 1 ∈ R to be transcendental over E and within ǫ of y 1 , and pick x 2 within ǫ of y 2 such that x 2 is algebraic over Q(x 1 ) but has degree > n over E(x 1 ). For instance, let x 1 = y 1 and x 2 = m √ x 1 +b, where m > n is prime and b ∈ Q is selected to place x 2 ∈ B ǫ (y 2 ). The subfield E(x 1 ) of R contains no nontrivial m-th roots of unity, nor any m-th roots of x 1 (by our choices), so the Galois group of the splitting field of (Y m − x 1 ) over E(x 1 ) is just the Galois group of its splitting field over Q(x 1 ), which acts transitively on the roots. Thus this polynomial is irreducible over E(x 1 ), and so x 2 has degree m over E(x 1 ).
Thus, for any f ∈ F , if a = f (x 1 , x 2 ) ∈ E, then 0 = g(x 1 , x 2 ) − ah(x 1 , x 2 ). Since f is nonconstant, g is not a scalar multiple of h, and so (g − ah) would then be a nonzero polynomial in E[Y 1 , Y 2 ] of degree ≤ n, contradicting our choice of x 2 . Hence f (x 1 , x 2 ) / ∈ E for every f ∈ F . But then the oracle computation M C ( p, x 1 , x 2 ) must follow the same path as M C ( p, y 1 , y 2 ) and give the same output, namely 0. Since p, x 1 , x 2 ∈ H, this proves that M C does not compute the characteristic function of H.
Indeed the preceding proof shows slightly more than was stated. Corollary 6.2. If C ⊆ R ∞ is a set such that H ≤ BSS C, then R has finite transcendence degree over the field K generated by (the coordinates of the tuples in) C, and also has finite transcendence degree over the field generated by the complement of C.
Proof. Given an oracle BSS machine M which computes H from oracle C, let E be the extension field K( z, p), with K as defined in the corollary. If R had transcendence degree ≥ 2 over this E, then the proof of Theorem 6.1 would go through: we could choose y 1 , y 2 ∈ R algebraically independent over E, say with y 1 > 0, and then let x 1 = y 1 and x 2 = b + m √ x 1 , with m > n prime, as in the proof, and with b ∈ Q selected to put x 2 ∈ B ǫ (y 2 ). But this would show that M C does not compute H. So R has transcendence degree ≤ 1 over this E, and therefore is algebraic over E(t) = K(t, z, p) for some t ∈ R.
Since C is BSS-equivalent to its complement, the same proof applies to (R ∞ − C), and also to (R m − C) if C ⊆ R m .
As we consider the general case of a BSS computation of the characteristic function χ S of a set S ⊆ R using an oracle C of infinite cardinality κ < 2 ω , the following definition will be useful. If κ < 2 ω , then such U and V must be disjoint, since (U ∩ V ) is open with |U ∩ V | ≤ |U ∩ S| + |V ∩ S| ≤ κ. So the definition roughly says that up to sets of size κ, each of S and S is equal to an open subset of R. It is not equivalent to weaken the requirement |R − (U ∪ V )| ≤ κ in Definition 6.3, for instance by requiring that |U ∩ V | < 2 ω . For a counterexample, let V = ∅ and let U be the complement S C of the Cantor middle-thirds set S, which contains all real numbers x whose non-integer part x − ⌊x⌋ has a ternary expansion in only 0's and 2's. Thus U ∩ S = V ∩ § C = U ∩ V = ∅, yet this S is not locally of bicardinality ≤ ω (nor ≤ any other κ < 2 ω ), as shown in full in Lemma 7.3 below.
The local bicardinality of S is the least cardinal κ such that S is locally of bicardinality ≤ κ.
The property of having local bicardinality ≤ κ does not appear to us to be equivalent to any more easily stated property, and we are not aware of it having been used (or even stated) elsewhere in the literature. The same definition in higher dimensions completely loses its power: any connected component U 0 of U must have boundary ∂U 0 with U 0 ∩ ∂U = V ∩ ∂U 0 = ∅, since U and V are open and disjoint. But then |∂U 0 | ≤ |R n − (U ∪ V )| ≤ κ, which is feasible in R 1 but not in higher dimensions, unless U or V were empty or κ = 2 ω . Thus, in R n with n > 1, every set of local bicardinality < 2 ω has either cardinality < 2 ω or co-cardinality < 2 ω . Nevertheless, within R 1 , this is exactly the condition needed in our general theorem on cardinalities.
Theorem 6.4. If C ⊆ R ∞ is an oracle set of infinite cardinality κ < 2 ω , and S ⊆ R is a set with S ≤ BSS C, then S must be locally of bicardinality ≤ κ. The same holds for oracles C of infinite co-cardinality κ < 2 ω .
Proof. Again let z be the parameters used by the oracle BSS machine M which, given oracle C, computes χ S . Then for any input y ∈ R transcendental over the subfield E of cardinality κ generated by z and the individual coordinates of all elements of C, there will again exist a finite set F y ⊆ E(X) as above, and an ǫ > 0 such that f (x) · f (y) > 0 for all x ∈ B ǫ (y) and f ∈ F y . For each such y, let B(y) be an open interval of length less than the corresponding ǫ, such that B(y) contains y and has rational end points. Now if x ∈ B(y) is also transcendental over E, then the computation of χ S (x) using this machine and the C-oracle proceeds along the same path as the computation for y, since f (x) / ∈ E for all f ∈ F y . (Indeed, this would hold whenever x ∈ B(y) has degree > n over E, where n is the maximum degree of all numerators and denominators of elements of F y .) This shows that χ S (x) = χ S (y) for all such x. Since only κ-many elements of B(y) can be algebraic over the size-κ field E, it follows that either S ∩ B(y) or S C ∩ B(y) has size ≤ κ. Now if t ∈ B(y 0 ) ∩ B(y 1 ) is transcendental over E, then t follows the same computation path as both y 0 and y 1 , implying that χ S (y 0 ) = χ S (y 1 ) whenever B(y 0 ) ∩ B(y 1 ) = ∅, and therefore that either B(y 0 ) ∩ S and B(y 1 ) ∩ S both have size ≤ κ, or else B(y 0 ) ∩ § C and B(y 1 ) ∩ § C both have size ≤ κ. So when we set we will have U ∩ V = ∅. Here the unions are over those y ∈ R transcendental over E (as B(y) is not defined for any other y), and so the complement R − (U ∪ V ) is a subset of the algebraic closure of E, which has size κ. Moreover, being a union of open intervals B(y) with rational end points, U in fact equals the union of countably many such intervals, say U = ∪ i∈ω B(y i ) for some sequence y 0 , y 1 , . . .. Since each B(y i ) has intersection of size ≤ κ with S (and since κ ≥ ω), so does the entire union U . Likewise | § C ∩ V | ≤ κ, proving the theorem.
The claim about oracles of co-cardinality κ follows from applying the same argument to the oracle (R ∞ − C), which is BSS-equivalent to C. If C ⊆ R m for some m, then the same holds of (R m − C).
Notice that the set S of smaller complexity must be a subset of R, whereas C is allowed to contain tuples from R ∞ . We conjecture that to extend the theorem to sets S ⊆ R ∞ , we would need to allow R ∞ − (U ∪ V ) to be a size-κ union of proper algebraic varieties defined over the field generated by C. It is an open question (of interest only under ¬CH) whether it is equivalent, for the purposes of this conjecture and Theorem 6.4, to replace To understand that this theorem cannot readily be stated using a simpler property than Definition 6.3, consider the BSS-computable set containing those x ∈ (0, 1) which have a binary expansion with an even number of zeroes following the decimal point, along with all translations of this set by integers. The closure of S is just S ∪ Z, but any open set containing any integer z would intersect each of S and § C in 2 ω -many points. So the theorem cannot require the complement R ∞ − (U ∪ V ) to be finite, let alone empty. With such tricks one can create examples defying most conceivable simplifications of Theorem 6.4.
In the next section we discuss the Cantor set, which is often another useful counterexample in this vein.

The Cantor Set
As an example of a set of local bicardinality 2 ω , we consider the Cantor set C, well known as a set of measure 0 within R which nevertheless has cardinality 2 ω . By definition, C contains all real numbers x ∈ [0, 1] having ternary expansions in only 0's and 2's. One usually views C as the set of numbers in the unit interval [0, 1] which remain after ω-many iterations of deleting the open "middle third" of each interval (starting with the middle third ( 1 3 , 2 3 ) of [0, 1]). It is clear from this description that C is co-semidecidable in the BSS model: even a Turing machine could enumerate the end points of all those middle-third intervals to be deleted. Hence f C is 1-reducible to the complement H C , forcing C ≤ BSS H. The natural next question, whether H ≤ BSS C, was settled by Yonezawa in [15], and we thank the anonymous referee of [4] who pointed out the necessary result there.
Since the BSS-semidecidable set Q must be ≤ BSS H, this immediately answers the question: H ≤ BSS C would imply Q ≤ BSS C, contradicting Theorem 7.1.
Now we consider the local bicardinality of C. The next lemma, combined with Theorem 6.4, immediately proves that C is not BSS-decidable, nor even BSS-semidecidable, in any oracle of size < 2 ω . Lemma 7.3. The Cantor set C has local bicardinality 2 ω .
Proof. Suppose C were locally of bicardinality ≤ κ < 2 ω . Then we would have open disjoint sets U and V satisfying Definition 6.3, and C, having size 2 ω , would have to intersect V in some point x, since C − V ⊆ (U ∩ C) ∪ (U ∪ V ) C and the right-hand side has size ≤ κ. The open set V would then contain an ǫ-ball around x.
However, every open interval around x intersects each of C and C C in 2 ω -many points. (To see this, just consider all y whose ternary expansions match that of x for sufficiently many places to lie within that interval.) Therefore |V ∩ C C | = 2 ω , yielding a contradiction.
Corollary 7.4. The Cantor set C is not BSS-semidecidable below A, or below any other oracle of cardinality < 2 ω .
Proof. This simply means that no function which is BSS-computable in the oracle A can have C as its domain. Indeed, if it did, then C ≤ BSS A, since C and C C would both be A-semidecidable. By Lemma 7.3, we know that C has local bicardinality 2 ω , so that by Theorem 6.4 we have |A| ≥ 2 ω , contrary to the assumption. The same holds for any other oracle of size < 2 ω . Corollary 6.2, our natural hope for reproving Yonezawa's result that H ≤ BSS C by the methods of this paper, fails to do so, for the field generated by C does not satisfy the hypothesis there. It seems counterintuitive that a set of measure 0 could generate such a large field, so we prove it here. (The authors assume that this fact has been proven long since, and would appreciate a reference for it.) Lemma 7.5 (Folklore). The Cantor set C generates the entire field R. Indeed, it generates R as a ring.
Proof. The argument is best understood by seeing an example. Here we begin with an element of [0, 1], chosen arbitrarily, in ternary form: 0.2201020001211 . . . = 0.2200020000200 . . . +0.0001000001011 . . . = 0.2200020000200 . . . +(0.0002000002022 . . .) · 1 2 Since 1 2 lies in every subfield of R, this shows that this number is generated from C by field operations. Indeed, since 1 2 = 2 · 1 4 = 2 · (0.020202 . . .), the number is generated from elements of C by ring operations. The same process can be applied to any element of [0, 1], so C generates the entire unit interval, and hence all of R. (In particular, let x ∈ [0, 1], and write x as x 1 + x 2 , where each non-zero ternary digit of x i is equal to i. Now x ′ 1 = 2x 1 is in C, and 1 4 is in C. Thus, x = x 2 + ( 1 4 + 1 4 )x ′ 1 is in the subring generated by C.)

A Nicer Situation: the Complex Numbers
BSS computation has also been widely considered on the field C of complex numbers. The principal differences are the algebraic closure of C and the consequent impossibility of any order on C compatible with the field operations. Of these, the second is probably the more significant difference. With no order available, BSS machines on C can only make comparisons of cell contents under = (and can compute the four field operations, of course).
To help show the importance of this difference, we demonstrate here how much easier the questions of Section 6 become when considered on C. The following is the analogue in C of Theorem 6.4.
Theorem 8.1. If C ⊆ C ∞ is an oracle set of infinite cardinality κ < 2 ω , and S ⊆ R is a set with S ≤ BSS C, then either S or its complement must have cardinality ≤ κ. The same holds for oracles C of infinite co-cardinality κ < 2 ω .
Proof. If the machine M with parameters z computes χ S from oracle C, consider any two inputs x, y ∈ C which are both transcendental over the field F generated by z and all components of tuples in C. One immediately sees that the computations of M C on each of these inputs follow the same path, with the cell contents at each stage given by rational functions f with coefficients in Q( z). With x transcendental over F , the only way for f (x) to lie in F is for f to be constant, in which case f (y) is the same constant. Thus the oracle questions in the two computations always yield the same answers, and so χ S (x) = M C (x) = M C (y) = χ S (y), since the possible output values for M C are just 0 and 1, which are both in the field F . So S contains either all such transcendentals, or else none of them. Since there are only κ-many elements of C algebraic over the size-κ field F , the theorem follows.
So, without the order < requiring inputs to be chosen within ǫ of other inputs, the result involves no local bicardinality whatsoever. We consider this theorem on C to be the best starting point for a generalization to sets S ⊆ C ∞ BSS-decidable below oracles of cardinalities < 2 ω . As stated above, the theorem is false for such S; indeed, in C 2 , the zero set of any finite collection of polynomials in C[X, Y ] is decidable, and even when the collection contains just a single nontrivial polynomial, this set has both cardinality and co-cardinality 2 ω . The correct analogy should be that points in C should be considered as varieties there (after all, the singletons are exactly the irreducible affine varieties in C 1 ), and that the generalization of Theorem 8.1 to C n should not concern the cardinality of S, but rather the least possible cardinality of a set of irreducible varieties such that S is a Boolean combination of those varieties.