As in why bother using real numbers in physics? Mostly because you need them to make the maths rigorous. You can't do rigorous calculus (i.e. real analysis) on rationals alone.
As in why bother using real numbers in physics? Mostly because you need them to make the maths rigorous. You can't do rigorous calculus (i.e. real analysis) on rationals alone.
We don't need reals to make the math rigorous. Only to make the math a lot more tractable.
I've solved multiple continuous value problems by discretizing, applying combinatorics to the techniques, and then taking the limit of the result - you of course get the same result if you had simply used regular integration/differentiation, and it's a lot easier to use calculus than combinatorics.
But the point is the "rational", discretized approach will get you arbitrarily close to the answer.
It's why many analysis textbooks define a (given) real number as "a sequence of converging rational numbers" (before even defining what a limit is).
It's more about derivation of theorems than calculations.
Computation can only use rationals, and of course can get arbitrarily close to an answer because they are dense in the reals.
However, the entire edifice of analysis rests on the completeness axiom of the reals. The extreme value theorem, for example, is equivalent to the completeness axiom; the useful properties of continuous functions break down without it; the fundamental theorem of calculus doesn't work without it; Etc. So if the maths used in your physics (the structure of the theory, not just the calculations you perform with it) relies on these things at all, you're relying on the reals for confidence that the maths is sound.
Now you could argue that we don't need mathematical rigour for physics, that real analysis is a preoccupation of mathematicians, while physicists should be fine with informal calculus. I'm not going to argue that point. I'm just pointing out what the real numbers bring to the table.
Here's Tim Gowers on the subject: https://www.dpmms.cam.ac.uk/~wtg10/reals.html
The uncomputable real numbers always seemed strange to me. I can understand a convergent sequence of rationals, or the idea of a program that outputs a number to arbitrary precision, but something that cannot be computed at all is a very bizarre object. I think NJ Wildberger has some interesting ideas in this area, although I’m not sure I agree with his finititist interpretation in all circumstances. Specifically I don’t think comparisons to the number of atoms in the universe or information theoretic limits on storage based on the volume of the observable universe are interesting considerations here.
To me at least, if you can write down a finite procedure that can produce a number to arbitrary precision, I think it is fair to say the number at that limit exists.
This made me think of a possible numerical library where rather than storing numbers as arbitrary precision rationals, you could store them as the combination of inputs and functions that generate that number, and compute values to arbitrary precision.
> I've solved multiple continuous value problems by discretizing, applying combinatorics to the techniques, and then taking the limit of the result
But taking the limit of a sequence of rationals isn’t guaranteed to remain in the rationals (classic example: https://en.wikipedia.org/wiki/Basel_problem. Each partial sum is rational, but the limit of the partial sums is not)
So, how does that statement rebut “You can't do rigorous calculus (i.e. real analysis) on rationals alone.”?
> But taking the limit of a sequence of rationals isn’t guaranteed to remain in the rationals
I'm not saying it does. What I'm saying is that you can make a correspondence with the reals by using only rationals.
You can define convergence without invoking the reals (Cauchy convergence). If you take any such sequence, you give that sequence a name. That name is the equivalent of a real number. You can then define addition, multiplication - any operation on the reals - with respect to those sequences (again, invoking only rational numbers).
So far, we have two distinct entities: The rationals, and the converging sequences.
Then, if you want, you can show that if you take the rationals and those entities we're calling "converging sequences" together, you can make operations involving the two (e.g. adding a rational to that converging sequence) and eventually build up what we know to be the number line.
You don't need the full set of real numbers to do physics, only the computable subset of the real numbers. Using the full reals is mostly done out of simplicity.
What do you mean by "the computable subset of the reals" formally?
Is sqrt(2) computable?
Is BB(777) computable?
Is [the integer that happens to be equal to BB(777), not that I can prove it, written out in normal decimal notation] computable?
A computable real number is a real number for which a Turing Machine exists that can compute it to any arbitrary precision.
So yes sqrt(2) is computable.
Every BB(n) is computable since every every natutal number can be computed. It's the BB function itself that is not computable in general, not the specific output of that function for a given input.
That doesn’t sound right to me. What about the machines that don’t halt? You can’t compute whether or not to skip them directly.
> A busy beaver hunter who goes by Racheline has shown that the question of whether Antihydra halts is closely related to a famous unsolved problem in mathematics called the Collatz conjecture. Since then, the team has discovered many other six-rule machines with similar characteristics. Slaying the Antihydra and its brethren will require conceptual breakthroughs in pure mathematics.
https://www.quantamagazine.org/busy-beaver-hunters-reach-num...
What specifically doesn't sound right?
The claim is that every bb(n) is computable but I don’t think you can compute bb(6) without knowing which machines won’t halt. That doesn’t seem like a finite calculation?
But given the answer, I suppose you could write a program that just returns it. This seems to hinge on the definition of “computable.” It’s an integer, so that fits the definition of a computable number.
My mistake.
Yes exactly, imagine a function HH(n) that returns 0 if the Turing machine represented by the integer n halts, and 1 if it doesn't.
Then HH the function itself is not computable, but the numbers 0 and 1, which are the only two outputs of HH are computable.
Integers themselves are always computable, even if they are the output of functions that are themselves uncomputable.
Yes. A valid question for a specific n would be whether you can prove the value of BB(n). If you don't care about provability, you can indeed just produce a number that happens to be the right one.
So as you noticed, it only makes sense to talk about whether a function is computable, we can't meaningfully talk of computable numbers.
The main thing to make it clear is that BB(n) for a specific n isn't a function - it's a number. Just like Mult(10,4) isn't a function, it's a number (40).
So a specific BB(n) is just a number and is computable.
Interesting point about BB(n)... Is it known that BB(n) is finite for every n?
I believe it is by definition? The machines that don’t halt are filtered out. The trouble is how to do the filtering.
Yes BB(n) is always a natural number which is by definition finite.
> You can't do rigorous calculus (i.e. real analysis) on rationals alone. Yep, but that wasn't my point.
My point was that it is possible that all values in our universe are rational, and it wouldn't be possible for us to tell the difference between this and a universe that has irrational numbers. This fact feels pretty cursed, so I wanted to point it out.
You can make this statement for any dense subset of the reals, but we don’t because that would be silly.
I think the conceit is supposed to be that analysis—and therefore the reals—is the “language of nature” more so than that we can actually find the reals using scientific instruments.
To illustrate the point, using the rationals is just one way of constructing the reals. Try arguing that numbers with a finite decimal representation are the divine language of nature, for example.
Plus, maybe a hot take, but really I think there’s nothing natural about the rationals. Try using them for anything practical. If we used more base-60 instead of base-10 we could probably forget about them entirely.
I think it makes much more sense to make this statement for the rational numbers: It's the smallest field inside the real numbers that contains the naturals.
So every subset that allows you to do your daily calculations contains the rationals.
They’re a field by construction, and yes, the initial field of characteristic zero, but otherwise don’t arise in any natural way. They’ll be there if you’re studying fields, but exact division by arbitrary integers doesn’t seem to be a very natural property outside the reals. Again, imagine doing any practical computations with rationals and see how far you get before resorting to decimal approximation.
I think teachers lie to children and say that decimals are just another way of representing rationals, rather than the approximation of real numbers that they are (and introduce somewhat silly things like repeating decimals to do it), which makes rationals feel central and natural. That’s certainly how it was for me until I started wondering why no programming languages come with rational number packages.
Here’s my plug for p-adic numbers! So cool