# Talk:Gravity

I'm somewhat sure that this is "usable". --Ihope127 15:45, 27 Aug 2005 (GMT)

I'd disagree. I haven't yet written a program that loops in any predictable fashion - I've been relying on symmetry to make the equations solvable, but with too much symmetry the language loses its power. --Safalra 16:19, 27 Aug 2005 (GMT)
Hmm, maybe I don't really understand this... at all :-) --Ihope127 16:24, 27 Aug 2005 (GMT)

## Computability

"It can be shown that a Turing machine cannot compute, in the general case, whether even a single collision will ever happen." Why and how? --BodyTag 20:45, 20 Oct 2005 (GMT)

Good question. Apparently Penrose proved that certain questions in gravitational systems are undecidable. Unfortunately I can't remember where I read about it. --Safalra 10:28, 21 Oct 2005 (GMT)
But the halting problem for Turing machines is also unsolvable, right? What matters is simply whether a Turing machine can compute it, not whether a Turing machine can solve the Gravity "halting problem". --Ihope127 01:01, 21 Oct 2005 (GMT)
What's the connection? To similuate Gravity on a Turing machine you need to know when and where collisions will happen, and this can't be done. --Safalra 10:28, 21 Oct 2005 (GMT)
Can't you just perform the gravity calculations, check for collisions, perform the calculations, check for collisions, et cetera ad infinitum? --Ihope127 19:16, 21 Oct 2005 (GMT)
No - they're differential equations whose exact solutions are non-computable. (Incidentally, even the solutions of the differential equations for a three-body gravitational system are non-computable.) --Safalra 19:43, 21 Oct 2005 (GMT)
Can't you compute it lazily then, just enough to see if there's a collision "this time"? --Ihope127 20:32, 21 Oct 2005 (GMT)
Although Gravity is truly a unique language, if by "non-computable" we mean "undecidable" (and I think that's reasonable based on what I know about computability of differential equations, and what Safalra has said above,) then yes, it can be simulated by a Turing machine. Remember, "undecidable" is the same as "semi-decidable": we cannot say that any given event will or will not happen, but if some event does happen, we can tell (simply by e.g. running our program and watching it.) So, I think, even in the worst case, we can have a Turing machine generate all possible proofs, one by one, and check each one to see if it is a valid proof that the given Gravity program halts and produces some result (in which case our TM halts and produces that result.) --Chris Pressey 20:24, 5 November 2007 (UTC)

This seems reminiscent of machines I have seen run using chaos theory (based on mathematics like the game of life) such as this one. Are such things listed in this wiki? Are they out of the scope of this wiki? --Stux 01:18, 21 Oct 2005 (GMT)

So the Turing Machine can't simulate it, but can it simulate the Turing Machine?

I just have to say that this is a cool concept... --The Prophet Wizard of the Crayon Cake 21:16, 21 Aug 2006 (UTC)

## Missing syntax info

I'm trying to make a Python implementation of gravity (though not perfect, since there is an accuracy limit on floats). I feel some info is missing on the page about the syntax of the language. It seems to me that the 5 numbers should include location and mass, the 5th number probably being location on one axis since it is different for every line of the given programs. Then there is an arrow, then another 2 numbers, which probably say something about the mass or momentum or something after the collision, and about what output is given. The last one is output, because then the numbers are for ASCII characters in 'Hello World'. Does anyone know about what the 4 first 4 numbers and the number after the arrow indicate?

I have not spent any time looking at this language, but have investigated some other languages by Safalra and had found the original specs archived on the Wayback Machine. I had updated the links for those other languages but not this. The original Gravity specs and proofs were linked to from the archived site so I've just updated the External Resources section - hopefully that has the info you need! Salpynx (talk) 13:33, 29 December 2018 (UTC)
Thank you, that site is really helpful! Superstrijder15 (talk) 20:16, 29 December 2018 (UTC)