Hacker News new | ask | show | jobs
by sgt101 18 days ago
Computation has turned out to be a far more general concept than I think was imagined, up to the point that many computer scientists now seem to equate computation with the functioning of the universe. Recently it's been shown that there are real, physical processes which are undecidable (we cannot know if a latice of atoms has a spectral gap or not, we cannot determine if a specific particle in a fluid flow will reach a specific place or not, we cannot determine if a ray of light will reach a specific target in certain configurations of reflection).

Our world appeared computable, but it isn't, even if P=NP.

9 comments

>Recently it's been shown that there are real, physical processes which are undecidable

I want to push back a bit on this claim along two dimensions.

Imagine a physical Turing machine built out of atoms, gears, levers, and an electron parked on the read/write head and ask whether that electron ever crosses some fixed plane in space, which it does only when the machine enters its halt configuration. That's now a purely physical question about a trajectory (does this electron ever reach a certain target), yet answering it for the whole family of such machines is literally the halting problem, so there's a physical process that's undecidable.

Your examples about physical processes being undecidable are all basically just this... there examples of using reflections of light, or the flow of liquid, etc... and demonstrating that these physical processes in principle are sufficient to model a universal Turing machine.

And while it's fascinating that certain things you may not have expected can be used to model computation, it's misleading, or rather it's too strong of a claim to believe that there exist actual/real physical processes whose outcomes are undecidable. That's a subtle but very common misinterpretation of what undecidability is.

Undecidability, whether in physics or computer science, only applies to the infinitely broad class of a problem as a whole, it never applies to a specific instance of a problem. So it can never be the case that there's a certain configuration of reflections for which it's undecidable whether a ray of light reaches a target. Nor can it be the case that for a specific lattice of atoms, it's undecidable whether it has a spectral gap or not. It can only be the case that for the problem as a whole where the parameter space is entirely unbounded, there is no single algorithm that can decide if a ray of light reaches a specific target for all possible arbitrary (and infinitely many) configurations. Once you fix a specific system, then the undecidability goes away.

Not claiming that you are necessarily making this misconception, but I often see people misinterpret undecidability to mean that there exists a specific problem, like with specific inputs, where it's somehow impossible to know what the answer will be. Undecidability always requires an infinite family of instances, and it's a statement about the nonexistence of a single algorithm that correctly answers every instance in that family. It says nothing about any particular instance being unknowable/undecidable.

I may have been making this claim, I need to think about this for a while and re read what you have written.

This is very helpful though, thank you.

I may be misremembering Godel's proof or misunderstanding your last paragraph, but I thought Godel's proof actually presented a specific undecidable statement. The hope then was that somehow undecidable statements could be cordoned off from decidable statements, and Turing's result showed that that wasn't possible. Perhaps that's what you mean by "the nonexistence of a single algorithm that correctly answers every instance in that family"?
There's no such thing as an undecidable statement. A single statement can't be undecidable. Undecidability is a property of a class of statements.

For example, you can ask whether a Java program, run with infinite memory, will eventually halt. For any particular Java program, there's obviously an algorithm that says whether it halts or not. The algorithm is a single statement, which says either "yes" or "no". Might be hard to figure out which is the correct algorithm, but the Java program is fixed so the algorithm is definitely one of the two.

However, there is no algorithm which can take an arbitrary Java program as input and determine whether it will halt. It's about the class of all possible programs.

That's a different meaning of the word "undecidable". You're talking about undecidable problems [1]. The meaning in Gödel's incompleteness theorem is different and is a synonym with independent [2].

[1] https://en.wikipedia.org/wiki/Undecidable_problem

[2] https://en.wikipedia.org/wiki/Independence_(mathematical_log...

> For any particular Java program, there's obviously an algorithm that says whether it halts or not. The algorithm is a single statement, which says either "yes" or "no".

This isn't true.

In general, if a program hasn't halted yet you don't know if it will.

In particular, consider the Collatz conjecture. You can't even tell if your Java implementation of it will halt for a particular input, until it does.

https://en.wikipedia.org/wiki/Collatz_conjecture

And yet there is a correct algorithm — it's either the const yes algorithm or the const no algorithm.

We don't _know_ which algorithm it is, but that's not relevant to the definition of undecidability, which only requires that the algorithm exist.

Cheers, I had missed the nuance.
It's a gap between physics and mathematics. Undecidable statements exist mathematically, but don't exist physically: mathematics and physics have different concepts of existence. Ironically, even mathematical universe hypothesis deliberately limits mathematics-as-physics to specifically resemble physics of a spontaneous material world, and this limitation is just an axiom.
> … so there's a physical process that's undecidable.

No, since you cannot physically build a Turing Machine. A Turing machine requires infinite tape. Any physically realizable machine doesn’t have that, so has finite states, so is decidable: enumerate the states in finite time - it halts or repeats, so all programs on a finite state machine are decidable.

Your example is not an undecudable physical process.

Godel things also don’t apply: Godel theorems are about proof of this or that from within the same system. In logic one can prove such things from an outside system, then construct towers, avoiding Godel theorems. Godel theorems also require a model of integers including multiplication (without multiplication, such systems were proven complete and decidable). However the universe does not contain a model of integers, as the physical universe is not unbounded: relativity places a finite limit in spacetime on what can interact.

Mixing math as reality fails at these requirements.

Agreed, and I'll add: the universe is sufficiently messy and complex that some of the claimed undecidability results may never occur in practice.

For your Turing machine example: even if we built such a machine, it would never truly be giving an answer to the halting problem, because any stray cosmic particle could excite the electron and cause it to cross whatever plane.

For a more realistic example: the ground state of an molecule is a physically relevant quantity, and in theory any molecule alone should lose energy and attain it's ground state, even if finding the ground state electronic configuration is undecidable. But in reality, no molecule is ever truly isolated and so would never actually be guaranteed to enter it's ground state (or if it were truly isolated, it would not be observed at all rendering the question moot)

A quantum Turing machine would be needed to simulate a truly quantum process. Stochasticity exists in classical systems, but that's an entirely different type of randomness.
Quantum computation is not super-Turing: anything you could solve with a quantum Turing machine you could also solve with a classical Turing machine, albeit sometimes a lot slower. We know how to emulate quantum systems in classical systems.
Quantum computers can be simulated on classical computers, but it takes exponential time (completely impractical).
I think Gödel undecidable sentence is always relative to a formal system (the title of the paper spoke about systems in the expressive power rank of Russell's Principia, of which he gives one particular example assuming it shows how his methods apply to the whole family of systems), but now Hilbert problem #6 still stands for the lack of a comprehensive axiomatization of Physics, as its modern heir the mass-gap millennium problem, that still also lingers, so we don't have a controllable notion of naked/absolute undecidability for physical phenomena or for arbitrary assertions unbound by explicit logic rules in general.
Also, correct me if I'm wrong, the mass gap problem involves quantum physics, not classical, so the underlying math/logic is different.
mmh I'd don't say that much, I think the logic and math foundations is common in both classic and quantum theories, only content changing, so you would say "import mathlib" from both classic-phys.lean and quant-phys.lean if writing Lean proof assistant code (I am guessing the "import" command). Concepts from linear algebra as eigendecomposition, to say something, will be used in both applications.
If I am wrong, please pardon. I suspect I am. But was this comment edited by Claude? I ask specifically because it is well written, substantive, all which is expected here, but the "push back" part, to me, must be a) an artifact of Claude, either by osmotic assimilation (Which is happening to many innocent users) or b) Claude itself.

Feel free to flag this comment if I get an answer. I do want to know.

No Claude was not involved in any way in me writing it, and honestly it's kind of getting depressing how many comments are constantly questioning peoples use of LLMs.
Just a heads up, "I want to push back on" is an idiom Claude frequently uses.

It is depressing though, writing feels like it's in part becoming a game of outpacing the latest LLM's idiosyncrasies so we can signal authenticity, which perversely, is achieved through using an LLM enough so that you can become familiar with its flavor of communication.

This is what makes me sad about the AI age; many articles now have the same phrasing, the same analogies, the same quips, structure, the same wording; once you start to see it there's no going back.

I actually laughed quite a lot to begin with, GPT models saying things like "...might look like P, but is NP wearing a hat and a lab coat..." and "...is a haunted house disguised as a git repository..."; but alas when you've heard them a million times everywhere it really starts to bite.

The other day, while reading, my AI-dar triggered on some typical claudisms, but then I remembered I was reading from a paper book that was printed in 1997...
Unsettling. I hereby commit to self doubt on this matter exclusively. I will leave this fight to others.

What was the book in 1997? That's about the time of my first UAP sighting.

Yeah, that's why I invited the flag. But do not overlook how fucking depressing the endless LLM generated comments actually are too.

My apologies, and I do appreciate your reply.

How to build a Turing machine to tell which one of ten atoms of a radioactive element decays next?
That would be a quantum Turing Machine as radioactivity is a quantum process.
How would that work as current understanding from quantum theory is that we cannot predict which atom decays next? Is there a quantum algorithm that can do that?
The decay process is calculated as

sqrt(1-exp(-t/T))|1> + sqrt(exp(-t/T))|0>

How do you use that to predict which atom decays next?
It can be the case that both:

- The physics of the universe can be completely modeled as computation, and

- It's possible to pose undecidable problems about the way the universe unfolds

This is intrinsic to the idea of undecidability even for Turing machines, e.g. "we equate computation with the functioning of Turing machines, but there are real processes executable in Turing machines that are undecidable".

A key thing about the undecidability problem wrt physics is preparation of the initial state. In math and computer science it is relatively straightforward to prepare such problems now (though this represented an enormous leap conceptually), but the "undecidability" of all physical problems relies on construction of materials that are clearly unconstructable - systems of infinite negentropy (eg Turing machines), infinite mass (the lattice), bespoke local interactions etc. Problems standing in the way of physics decidability are typically chaos, far from equilibrium mechanics, elementary SNR considerations and so forth, not problems of logic.
In physics we don't talk about decidability, but solvability.
Of course, if our universe is undecidable it must be the case that computable processes can be executed within it, and it might be the case that all of the processes that are ever executed within it are computable... but it might be that some of the processes that are executed are not computable... because the machine may.. or may not?
I think there's an equivocation of "computable" going on here. Mathematicians talk about a lot of things like "uncomputable sequences" but that is usually making a statement about the sequence, not necessarily any individual member. The Busy Beaver sequence is uncomputable. You can, however, quite trivially compute BB(2), even in your head if you're a bit careful. You can set up individual elements of an uncomputable sequence in our universe, and you may be unable to state in advance what the system would do with anything less than simply letting it run and see what happens due to the complexity of the system, but being a member of an uncomputable sequence doesn't mean that you can't in fact set those things up and watch them run. The Universe doesn't throw an "UncomputableCircumstance" exception or anything. It just keeps advancing to the next state. Your inability to make certain statements about that next state or some future state is not its problem.
There's no way to empirically spot an uncomputable process, since it would require infinitely-many observations.

For example, if aliens claim their machine solves the halting problem, we could test it on millions of inputs whose halting/not-halting behaviour we already know; but even if it works for all of them, there's no way to know that it works for all inputs. For all we know, it might be a huge lookup table which happens to cover all of those inputs we tried.

No, you can prove things hold in the abstract mathematically, don't need to resort to physical systems.
I was responding to this part:

> if our universe is undecidable

My point is, there would be no way to empirically test this; and therefore, it would make no observable difference, there would be no way to exploit/utilise such effects, etc.

In essence: there's no way to tell the difference between a real halting oracle (which would imply an undecidable universe), versus a computable approximation which just-so-happens to be more powerful/sophisticated than the approximations we compare it against.

Sure, we can prove that some abstract systems are undecidable and that others aren't. Yet that distinction is inherently unfalsifiable, and hence physically "useless".

Quantum mechanics is intrinsically probabilistic.
Deterministic processes can be modeled probabilistically and are computable, so existence of a probabilistic model doesn't say much about computability.
Undecidability is a problem of answer-extraction from a process, it doesn’t preclude the process from executing deterministically. The universe could well be the live execution of a deterministic, even basic algorithm, with all kinds of questions about its execution being undecidable.
Both P and NP are computable. That is, a Turing machine can compute both of them.

Those quantum processes are interesting. Take the random numbers generated from radioactive decay. They are (after some cleanup) truly random. That is what we think. But how could we tell the difference from pseudorandom numbers, generated by a sufficiently advanced algorithm? We couldnt. So particles could simply be Turing Machines running sufficiently advanced algorithms that we cant reverse engineer. If so, quantum mechanics is computable even if we cant compute it.

(Particles being TMs doesnt mean they are FAs with an infinite tape, but that they are computationally equivalent to TMs.)

There is such thing as a quantum Turing machine you know (Deutsch 1985).
Yes I know.

When I wrote Turing Machine, I was thinking about the classical determinstic Turing Machine.

Im not super knowledgable about Quantum Turing Machines, but as far as I know, they dont do better than the classical deterministic Turing Machines when we are talking about computability.

> up to the point that many computer scientists now seem to equate computation with the functioning of the universe.

Do you think that's a kind of tunnel vision? If the only thing you focus on is computation, you'll probably end up seeing computation everywhere - it became a way of seeing the world.

It is a common accusation. There's a somewhat famous quote I've seen a few times:

"It's interesting to look back through history on this one. Each age has its pinnacle of technology, and each age uses that technology as a metaphor for nature, for the universe. In ancient Greece, the technological marvels were musical instruments and the ruler and compass. The Greek philosophers tried to build an entire cosmology from number, harmony, proportion, form, and so on — from mathematics, basically. Remember the music of the spheres? The Pythagoreans believed that nature was a manifestation of rational mathematics. Later on the pinnacle of technology was the clockwork. Newton wanted a clockwork universe, the entire universe as a gigantic clockwork mechanism, with all the parts interlocking and ticking over with infinite precision. Then in the 19th century along came steam power, and the universe was then depicted as an enormous heat engine, or thermodynamic machine, running down toward its heat death. Today the computer is the pinnacle of technology, so it's now fashionable to talk about nature as a computational process."

Which seems to source from https://www.edge.org/conversation/paul_davies-time-loops .

While "computer" may give us impressions of something with "a CPU" and "RAM" and "a disk drive", it does at least seem plausible that the universe as computation is a plausible base level, though. Unlike "the music of the spheres", which to the extent that it made predictions of the world, it got them wrong in the most basic way, viewing it through a lens of computation allows us to put some quite subtle and interesting limits on things. "Computation" is a pretty flexible substrate; it is difficult to imagine how the proposition "the universe is a computation and subject to the limitations thereto" could be falsified, and if it could, it is difficult to imagine how we would be able to know it was so falsified. Nevertheless the math of computation allows us to say non-trivial things about the universe as a result; it is not a vacuous generalization, though it is certainly a loose one... being able to say yet more concrete things about the nature of the computation, such as "this is exactly how gravity works", has quite a bit more utility.

The universe as a computer/computation has been explored by many (e.g., see John Wheeler and Seth Lloyd). However, the laws of physics give us a lot more predictions, so their explanatory power tend to be greater. For example, the nature of space and time.
The infinite lattice doesn't represent a "real" physical processes, it's just mathematical technique for closing a (fundamentally) quantized combinatorial sum over millions of interacting elements. The gap problem exists in the limit. For real systems the spectrum can be measured (in principle) by probing the ground state. The computational paradigm is incredibly general but only within what's apparently a pretty atypical thermodynamic regime (the ordered universe).
In this case quantum thermo.
One sentence I heard somewhere wraps up the totality of computing:

"If Mathematics is the 'what', Computer Science is the 'how'".

This applies to each and everything.

If two people agreed on that statement, its entirely unclear if they agree with each other and if they found something profound in the first place.

The imo much more foundational relationship not everybody is aware of is https://en.wikipedia.org/wiki/Curry%E2%80%93Howard_correspon...

Undecidable isn't uncomputable.

"Computable" can mean probabilistic, and classical computers can function over probability distributions just fine.

This is incorrect. An undecidable problem is one for which no algorithm can compute the correct result for every given instance. Probabilistic classical computation is irrelevant here.
> Recently it's been shown that there are real, physical processes which are undecidable

According to the currently known laws of physics. Which we know are incomplete/incorrect in several places.