Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Pi is the ratio of a mathematical circle to its diameter, but there are no physical circles which have that ratio as exactly Pi, and even if one existed, you'd never be able to distinguish it from one that was merely equal to Pi to the accuracy you are capable of measuring, because you'd need to measure with infinite precision, which you can't.


Orbits over long stretches of time seem likely to need arbitrarily high amounts of accuracy in pi. Sure you can just pick a rational number close enough for the accuracy you need, but why should the definition of pi need to change based on what you're measuring?


Every simulation picks some rational approximation to Pi, because they have to. Either they will run out of time or space or collapse into a black hole before needing more than a finite number of decimal places, so for all plausible purposes we can make do with the first googleplex digits (or whatever) of Pi.

I guess my argument is, since you can always just pick a rational approximation to Pi, you cannot prove empirically that we live in a universe where more than a finite number of digits of Pi matter. That is, the mathematical irrationality doesn't really matter, physically speaking, since no experiment could ever prove that every digit in Pi actually contributes to the result.

If the universe does have ways to do this, to mix an entire irrational number into a physical outcome, that means hypercomputation is probably possible, since Turing machines definitely can't.

https://en.m.wikipedia.org/wiki/Real_computation


> Every simulation picks some rational approximation to Pi, because they have to.

Your simulation might need to ask for an increasingly tighter bound on the real value of Pi. You can totally do this with no more than the usual rational numbers, but it's not equivalent to "just picking some rational approximation" and running with it, because what accuracy/precision you pick is outcome-dependent and it's always possible to request more.


My point is that there is some finite number of digits your simulation will ever access, whether they're precalculated ahead of time or on done on the fly. If you do it on the fly you can always go back and rerun the computation with the number hardcoded.

There must be some digit after which no computation will ever access, because it will require more negentropy than the entire universe has to even calculate. The digits after that don't matter to the universe.


That seems true, but unsatisfying. If you only consider a finite time, you can only use a finite number of digits is the idea? Or can infinite time also work, because laws of thermodynamics?

Either way though, then doesn't your model of the universe just need an extra parameter, the number of digits to care about? Seems like everything else being equal, the fewer unmotivated parameters in your model, the better. Especially because this would rely on internal details of what happens in the universe, seems unlikely to be true unless this is a simulation.


That’s not isomorphic to the discussion at hand though, which refers to modeling systems. Being able to physically construct an object within epsilon does not imply that you won’t run into precision issues when modeling said object at the same degree of precision.

In other words, cutting your beams to +/- 1/2” may work for each individual beam in a building but that does not imply that your building as a whole can tolerate an average beam length being +.499” above nominal.


>In other words, cutting your beams to +/- 1/2” may work for each individual beam in a building but that does not imply that your building as a whole can tolerate an average beam length being +.499” above nominal.

The stronger version of the argument is that the length of a steel beam cannot be more precise(-ish) than the radius of an iron atom, so only 10-12 decimal places (in meters) are required to fully describe a steel beam's length. Likewise an actual circle's area isn't a function of Pi, but is rather a 'really large number' regular polyhedron. Which could then be approximated by a fairly pedestrian number of decimal points of pi to atomic precision.

That said e.g. orbits are rather smooth, and could probably be considered to be fairly exact w.r.t. an arbitrary reference.


You’d want to generalize that to a beam whose length is a significant portion of the width of the universe (at which point you should also consider relativistic effects, so there’s more math you’ll need to define over the rationals), but even so that’s not addressing the issue at hand which is that you still have to propagate your uncertainty through each calculation. Depending on the function(s) and time steps your uncertainty can quickly blow past the threshold of utility (e.g. in the case of orbits, your uncertainty could end up being numerically greater than your ability to deal with it [meaning your orbital prediction for N bodies after T time has passed is so imprecise that your craft is not capable of intercepting at all potential states]). This is the power of the real numbers, being able to bypass the accumulation of error in some cases.


But you can't actually use real numbers in calculations, you have to use approximations or proceed symbolically as far as possible. Nobody has a real computer[0], so the best you can do is pick a really accurate value for Pi and arrange your calculations as best you can to avoid pathological error propagation.

[0] https://en.m.wikipedia.org/wiki/Real_computation


Right, this is essentially why theoretical and applied mathematics are separate branches. Applied techniques like you described make theory incredibly cumbersome (and, importantly, not better). My argument here is not that applied mathematics is inferior (it’s what my degree is in), just that it’s generally not a good idea to carry applied techniques back into theory.

You start with doing something the most correct way possible on paper and then convert that into the fastest possible method within your allowable bounds on precision and/or convergence. Operational reordering to keep additions in floats with similar exponents is great but you save that concern until it’s time to crunch numbers. When you’re trying to build an entire theory on how something complex works you’ll have a much better time using the available abstractions to manage complexity without getting bogged down in implementation details.

Edit: addressing your point more directly, numerical computation itself must necessarily be done over fixed precision numbers but the tools we use to decide what and how to do that computation come out of theory done over the reals because of those specific properties of the reals. You can make things work over the rationals but the theory is tedious and the results of generally lower utility.


It seems quite likely that cutting off Pi at the quintillionth decimal place will not hurt your simulation simply because your knowledge of the initial conditions in the physical universe won't be exact either. If a quintillion digits aren't enough, run your simulation with another quintillion places. Eventually you will match reality to within the accuracy of your ability to measure.

Any issues introduced by using a finite approximation to Pi will eventually be swamped by the uncertainty in the initial conditions. If there's no uncertainty in the initial conditions, there will still be some finite approximation to Pi that will give you results as accurate as you can measure...


Yes, you can generally find ways to manage life with limited precision. Doing so is useful enough that it’s an entire field (applied mathematics). For many cases though it is a better choice to stick with these particular carefully designed constructs (real, imaginary, and complex numbers) because they are easier to deal with and help keep you from getting bogged down in avoidable numerical tangles. Managing error accumulation is a huge deal for some types of simulations and every little bit counts, to the point of carefully ordering your operations to minimize precision loss with the widest numbers you can afford to use.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: