Live data from Hacker News

Computation as a universal and fundamental concept

ergo.org

41–50 of 183 posts

Re: Computation as a universal and fundamental concept

#41
post #34
post #9

Something has always nagged me about the halting problem, might be my mis-understanding of the problem space but; - You have a piece of software - That software does in memory compute only - The software does not touch any peripherals, networking, or any other external source which introduce unpredictability (x) I'm convinced that somehow this can be solved/proven whether the execution will halt or not. (x) The secon…

For the finite case, the more relevant question is, can you predict whether or not the computation will halt in less time than 1. executing the algorithm and 2. checking whether or not the algorithm ever loops? Bear in mind checking whether or not the algorithm ever loops means taking the full state of the system and checking against a database of all previous states of the system. Bear in mind that the Atari 2600, a…

Thank you for your insightful answer, in reduction; "Don't fight a god, you won't win, and you'll definitely die in the process!"

The approach you describe though is brute force. I don't think (if there even is an answer to this problem) that it can be brute forced; that's where you run into the limits of hardware/computation/energy and start talking about timeframes which exceed the life of the universe.

I think brute force might be a useful tool in places to validate results, but if there _is_ an answer to this problem it's purely mathematical.

Apologies for sounding both excited and naive; these sorts of challenges make me happy in strange ways that no other thing does!

Re: Computation as a universal and fundamental concept

#42
post #2

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 rea…

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).

Re: Computation as a universal and fundamental concept

#43
post #32

Is 'computation' really universal and fundamental? Turing machines, lambda calculus, algorithmic notations, they're all human-made formalisms. Are the halting problem and the limits of computability actually constraints that exist only within these human-made formal systems? When we constrain a formalism to reduce complexity, it feels like necessity emerges from within those constraints. For example, when we say 'CRU…

Ahhh this is fantastic thank you; it _is_ hard to reconcile whether problems come with the original topic or whether they are introduced by the abstraction that we _need_ to make in order to quantify a thing/explain it to ourselves and others.

Regarding the downcast/upcast; I think it _can_ be possible to do this successfully;

> I have a glass, I throw it at a hard surface. What will happen? Well (duh) the glass will (most likely) break.

This hypothesis completely ignores nearly 100% of all relevant physics and the laws surrounding the problem; the arrangement of air molecules, the arrangement of the molecules in the glass, the physical forces governing me, it reduces the entire equation down to some really basic napkin physics.

But; does the outcome work? Has my interpretation of the universe and its physics actually predicted what will happen?

Probably a stupid example, but I think that a lossy picture of the universe can still yield a correct answer.

I can't physically run a simulation of the entire universe in my brain, as my brain is part of that same universe. Lossy representations/models are a necessity in the thinking-ham bound world in which we exist.

Re: Computation as a universal and fundamental concept

#44
post #4
post #2

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 rea…

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.

Re: Computation as a universal and fundamental concept

#45
post #41
post #34

Earlier quoted context omitted.

For the finite case, the more relevant question is, can you predict whether or not the computation will halt in less time than 1. executing the algorithm and 2. checking whether or not the algorithm ever loops? Bear in mind checking whether or not the algorithm ever loops means taking the full state of the system and checking against a database of all previous states of the system. Bear in mind that the Atari 2600, a…

Thank you for your insightful answer, in reduction; "Don't fight a god, you won't win, and you'll definitely die in the process!" The approach you describe though is brute force. I don't think (if there even is an answer to this problem) that it can be brute forced; that's where you run into the limits of hardware/computation/energy and start talking about timeframes which exceed the life of the universe. I think bru…

There is no general solution other than brute force. That's not a terribly difficult extension of the halting problem, it just takes more paperwork to deal with the edge cases, but you'll get to that result. The same basic technique works: Your supposed solution to the problem is itself some finite program, and you can feed it the "I halt only if I don't halt" problem too. The difference is that brute force is a solution, because now instead of an infinite sequence of programs you have a bounded set of programs. So whatever concrete "I halt only if I don't halt" you pass to someone within the specified limits, there is definitely some answer, but your technique won't be able to tell what it is short of just running it.

For the same reason the halting problem doesn't even have a good heuristic, neither does this. Unpredictable chaos is not an exceptional case, it is the exponentially-normal case. You have to go the other way, and construct programs deliberately designed to have the ability to tell if they halt. The term for that if you want to learn more about it is "non-Turing complete programming language", sometimes called a "sub-Turing" programming language: https://increment.com/programming-languages/turing-incomplet...

You can read that as "this is how hard it is to construct code that we can make execution guarantees about". That focuses on code that is deliberately constructed to be finite in scope and may be something that can be strictly bounded in memory use or time or both. You'll note if you spend any time working with them how hard they are to work with. That's a reflection of the limits of generalizing any such proofs of time or space of a given program.

If there is a general algorithm that does what you think, we don't even have a clue what it would look like. And we have a lot of clues there can't be any such thing.

Re: Computation as a universal and fundamental concept

#46
From my naive pov: Related to computation is the concept of state (I know, functional languages can get away without it, sort of). I always wondered how the universe “knows” the mass of the sun. If there are some underlying functions/computations “running” in the background to keep planets moving and so on, and if the mass of planets is a key element in such computations… then either: the mass is calculated “on the fly” every time (seems expensive) or it’s a variable (how is it updated? Where is it “stored”?)

Re: Computation as a universal and fundamental concept

#47

From my naive pov: Related to computation is the concept of state (I know, functional languages can get away without it, sort of). I always wondered how the universe “knows” the mass of the sun. If there are some underlying functions/computations “running” in the background to keep planets moving and so on, and if the mass of planets is a key element in such computations… then either: the mass is calculated “on the f…

The somewhat abbreviated answer is that the "state" is formalized into the concept of fields. All the physical properties we can observe are from coupling with the relevant fields. The speed at which changes can propagate in fields is C, hence the speed of light being the same value.

Re: Computation as a universal and fundamental concept

#48

From my naive pov: Related to computation is the concept of state (I know, functional languages can get away without it, sort of). I always wondered how the universe “knows” the mass of the sun. If there are some underlying functions/computations “running” in the background to keep planets moving and so on, and if the mass of planets is a key element in such computations… then either: the mass is calculated “on the f…

As far as I understand it, the storage is the space, or rather, spacetime emerges from a system's informational capacity and the degrees of freedom along which information can spread. On the balance all information is retained but undergoes various phase transitions (the 'computations').

Re: Computation as a universal and fundamental concept

#49
There are a lot of long comments basically saying what I am about to say so I will try to keep this brief:

Computation is a metaphysically universal and fundamental concept, since metaphysics is (tautologically) the domain of humans and we use symbolic communication. So of course very general theories of symbolic processes (e.g. Turing machines) are pertinent to the symbolic methodology we use to understand scientific processes.

But it is a fundamental mistake to jump from that to saying computation extends to a law of the universe. Computation reflects laws of the universe, but only in the exact same way that scientific and mathematical human speech do. The mystery (still totally unsolved) is how humans are able to intuitively understand space / time / causality / etc in order to define coherent symbolic rules that reflect real processes. That computers can seemingly always implement these rules having been given the symbols is of philosophical/scientific interest, but it's solipsistic to say it's a fundamental concept of the universe.

Re: Computation as a universal and fundamental concept

#50

From my naive pov: Related to computation is the concept of state (I know, functional languages can get away without it, sort of). I always wondered how the universe “knows” the mass of the sun. If there are some underlying functions/computations “running” in the background to keep planets moving and so on, and if the mass of planets is a key element in such computations… then either: the mass is calculated “on the f…

Functional programming very much has states. But you’re describing the transitions instead of the states directly. What it does is removing the hidden states and effects and makes them typed, explicit and contained
Post reply on HN