1

The Field $\mathbb{Q}$ has the useful property that you can represent each element in a canonical way (in the sense that the represenation is equal if and only if the element is the same) using a finite number of bits for each element, and there are algorithmic ways to perform the group operations (addition, multiplication, additive/multiplicative inverse) in finite time. (The representation being the fraction $\frac pq$ where $\gcd(p,q) = 1$ and $q>0$, then using any big-integer bit representation for $p$ and $q$).

The Field $\mathbb{R}$ is a strict superset, but there are elements which do not have a representation in a finite number of bits (as there are only countably infinite sequences of finite number of bits, but there are uncountably infinite real numbers).

But are there other strict supersets of $\mathbb{Q}$ (which are subsets of $\mathbb{R}$) that are Fields and where you can find such a representation?

How about the Algebraic numbers? I am not sure if you can find canonical representations there (if you have two polynomials, can you tell if they share a solution?). Or are there other options? The larger the set, the better.

Background of my question is the fact that for most computer algebra systems you can find two real expressions $A$ and $B$ so that the computer algebra system is unable to simplify $A - B$ to zero, yet a mathematician can prove that these values are the same. And for rational numbers no such expressions exist (as you can always simplify the expressions to a fraction and then cross-multiply the numerator/denominators and compare the results - not considering the runtime of the algorithm; of course if the numbers are too large, cross-multiplication may take longer than the universe exists).

And my question is if there is any strict superset of the rational numbers where you could expect from a "good" computer algrebra system to always be able to answer this question correctly.

mihi
  • 223
  • 2
    Well, the Gaussian numbers, ${a+bi,|,a,b\in \mathbb Q}$ work, no? As does every finite extension of $\mathbb Q$. – lulu Jul 30 '22 at 17:38
  • Do you consider constants like pi, e, gamma, etc to be "finitely representible"? If so, extensions by those would count too. I know this isn't your question, but if all finitely representible expressions had a canonical form, that might pretty much solve all math. – Barry Carter Jul 30 '22 at 18:05
  • The computable numbers form a field and are representable by definition. – CyclotomicField Jul 30 '22 at 18:12
  • 1
    Indeed, any $\mathbb Q(\alpha_1,\dots,\alpha_n)$ has this property, for complex $\alpha_i,$ whether they are algebraic or trascendental. – Thomas Andrews Jul 30 '22 at 18:19
  • @CyclotomicField You're right, which begs the question: can you give an example of noncomputable number without using Cantor's diagonal argument or something? Maybe using the decimal representation of halting numbers appended together? Or rejecting the Axiom of Choice and finding a number in the set bigger than |N but smaller than |R? – Barry Carter Jul 30 '22 at 18:19
  • @BarryCarter Any such argument will rely on contradiction since you can't construct an unconstructable number. You don't require a diagonal argument to show that the reals are uncountable and that is sufficient to show that uncomputable numbers exist. – CyclotomicField Jul 30 '22 at 18:23
  • @BarryCarter Sum of the inverses of the Busy Beaver numbers is noncomputable because otherwise one could solve the halting problem. – QC_QAOA Jul 30 '22 at 18:23
  • As a note, the concept of a canonical representation is a little unusual: is i + 1 more canonical than 1 + i? What if there are multiple infinite sums that yield the same result? Do we choose the shortest representation and break ties using a sorting order? – Barry Carter Jul 30 '22 at 18:24
  • @QC_QAOA You'd have to show that sum converges, but just make it the square of the inverse and you're right – Barry Carter Jul 30 '22 at 18:25
  • @CyclotomicField but can you find canonical representations for them? – mihi Jul 30 '22 at 18:54
  • @mihi Godel numbering should do the trick. – CyclotomicField Jul 30 '22 at 19:03
  • @CyclotomicField Canonical in the sense that ($\sqrt{6-4\sqrt{2}}$ and $(2-\sqrt{2})$ will receive the same Gödel number? – mihi Jul 30 '22 at 19:10
  • We can certainly tell whether or not two polynomials with coefficients in $\mathbb Q$ have a common root (without a canonical form for a possible root) by applying the Euclidean algorithm in $\mathbb Q[x]$... – paul garrett Jul 30 '22 at 19:21
  • 1
    Nobody mentioned $\Bbb{Q}(\pi)$ ? It is isomorphic to the field of rational functions $\Bbb{Q}(x)$ where "represent with finitely many bits" clearly applies. – reuns Jul 30 '22 at 20:24

1 Answers1

1

The algebraic numbers do have a canonical representation. For example (and sticking purely in $\mathbb{R}$), the polynomial $x^5-3x^4+2x+1$ has $3$ real roots which we can denote

$$\alpha_1=[1,-3,0,0,2,1,1]$$

$$\alpha_2=[1,-3,0,0,2,1,2]$$

$$\alpha_3=[1,-3,0,0,2,1,3]$$

Here, the first $6$ numbers correspond to the polynomial and the last number corresponds to the placement of the real root along the number line (from $-\infty$ to $\infty$). Now, in order to find the $n$th root to an arbitrary accuracy (without consideration of efficiency) it suffices to note that for

$$P(x)=A\prod_{i=1}^n (x-\alpha_i)=\sum_{i=0}^n a_i x^i$$

we have

$$\min(\{|\alpha_i-\alpha_j|:i\neq j\})>\sqrt{6}n^{-\frac{n+1}{2}}\max(\{|a_i|:0\leq i\leq n\})^{1-n}$$

See this paper for this results and other results like it. Next, we can use the fact that there is an upper and lower bound on the size of roots of polynomials (in terms of coefficients). If we denote these root bounds

$$-B<\alpha_i<B$$

and

$$M=\sqrt{6}n^{-\frac{n+1}{2}}\max(\{|a_i|:0\leq i\leq n\})^{1-n}$$

Then one algorithm to find every polynomial root is to subdivide $[-B,B]$ into $4B/M$ subdivisions and then conclude by Sturm's Theorem that a root does/does not exist in a particular subdivision.


To tell whether two representations are actually describing the same number, do the following: let the polynomials in question be defined as

$$P(x)=\sum_{i=0}^n a_i x^i$$

$$Q(x)=\sum_{i=0}^m b_i x^i$$

and

$$A=\sqrt{6}n^{-\frac{n+1}{2}}\max(\{|a_i|:0\leq i\leq n\})^{1-n}$$

$$B=\sqrt{6}m^{-\frac{m+1}{2}}\max(\{|b_i|:0\leq i\leq m\})^{1-m}$$

$$C=\frac{\min(A,B)}{4}$$

To test whether $\alpha$ (a root of $P(x)$) is a root in $Q(x)$:

$1)$ Compute $\alpha^{'}$ (perhaps as the midpoint of a subdivision for a which a root is known to reside in) such that $|\alpha-\alpha^{'}|<\frac{C}{2}$

$2)$ Use Sturm's Theorem on the interval

$$[\alpha^{'}-C,\alpha^{'}+C]$$

This will tell you if there is a root in this interval.


EDIT: To do field operations ($+,-,\times,/$) it suffices to know a bound on the degree and coefficients of possible polynomials in terms of the input polynomials. That is, given $\alpha$ and $\beta$ roots of

$$P(x)=\sum_{i=0}^n a_i x^i$$

$$Q(x)=\sum_{i=0}^m b_i x^i$$

respectively, we need to know bounds on $k$ and $\max(\{|c_i|:0\leq i\leq k\})$ where

$$R(x)=\sum_{i=0}^k c_i x^i$$

is the polynomial associated with operation (for example $\alpha+\beta$). These bounds exist (see here for some further reading) and are well defined. With these bounds, define

$$K=\text{ maximum such }k$$

$$W=\text{ maximum of}\max(\{|c_i|:0\leq i\leq K\})$$

Then to find the minimum polynomial associated with $\gamma=\alpha *\beta$ (where $*\in \{+,-,\times,/\})$ one simply has to eheck every polynomial with degree less than $K$ and coefficients less than $W$. Define

$$T=\frac{\sqrt{6}K^{-\frac{K+1}{2}}W^{1-K}}{4}$$

and estimate $\gamma$ to a precision

$$|\gamma^{'}-\gamma|<\frac{T}{2}$$

Then check every interval $[\gamma^{'}-T,\gamma^{'}+T]$ on these polynomials and see if there is a root in them. If yes, then you are guaranteed that this is the polynomial for which $\gamma$ is a root.

QC_QAOA
  • 11,796
  • 1
    How can you calculate a canonical representation of group operation of those numbers. Say, I want to calculate $[1,−3,0,0,2,1,1] \cdot [1,−3,0,0,2,1,2] + [1,−3,0,0,2,1,3]$, how can I find a polynomial and root index for the solution (in polynomial time)? – mihi Jul 30 '22 at 18:52
  • In polynomial time? No, I don't know how one would do that for every case. I've edited the post with an algorithm that describes how to find the canonical form after a field operation however. While obviously not optimal, this algorithm will halt. – QC_QAOA Jul 30 '22 at 19:18
  • Thank you for your answer and comment. I hope you are not offended when I tell you that your answer reminds me of that joke of a mathematician staying at a burning hotel who goes back to sleep when he sees a fire extinguisher on the hallway as there exists a well-defined solution :) – mihi Jul 30 '22 at 20:12
  • 1
    @mihi: you can find extensive information about your question by googling for "computation with real algebraic numbers", a topic which has been the subject of a lot of research in the last 60 years or so. You left it to the end of your question and to the tags to hint that your concern is with practical implementations, so don't be surprised that you got an answer providing a proof in principle rather than a pointer to specific implementations. – Rob Arthan Jul 30 '22 at 22:51