Live data from Hacker News

Von Neumann’s critique of automata theory and logic in computer science (1947)

yodaiken.com

21–30 of 35 posts

Re: Von Neumann’s critique of automata theory and logic in computer science (1947)

#21

Controls engineer here. I've often wondered what a theory of computation based in differential equations would look like. We desperately need one. Control theory gives us some tools, but not nearly powerful enough ones. It's fairly clear by now that AI, at least as applied to domains immersed in the natural world, such as robotics and machine vision, is better thought of as analog in nature. Ten years ago I'd go to r…

> I've often wondered what a theory of computation based in differential equations would look like.

The theory of computation is not based on anything; it is fundamental in the sense that it exposes laws of nature (it is heavily based on physical limitations) independent of the means of talking about them. In a very strong sense it is more fundamental than mathematics itself as it is concerned with how hard it is to obtain the answer to a mathematical question without regard to the process of obtaining it. Different representations may, of course, assist us in proving certain theorems in the theory of computation or other areas of computer science.

Re: Von Neumann’s critique of automata theory and logic in computer science (1947)

#22

Controls engineer here. I've often wondered what a theory of computation based in differential equations would look like. We desperately need one. Control theory gives us some tools, but not nearly powerful enough ones. It's fairly clear by now that AI, at least as applied to domains immersed in the natural world, such as robotics and machine vision, is better thought of as analog in nature. Ten years ago I'd go to r…

That is a deep philosophical quest and I find myself attached to it for my whole life. Now I would share some recent observations. A LISP program with one entry function without side effects is the closest bridge between the conventional computation and conventional math. If such a program would consist from only a well known set of math functions (sin, cos etc) then it would be immediately ready for typical math ins…

That arbitrary computation could be described with differential equations is an immediate corollary of Turing's 1936 paper: because a Turing machine could be constructed in the physical world, its operation can be described with differential equations. An immediate corollary of that is that differential equations are undecidable (i.e. differentiability does not give us more power).

For a specific represnetation of TMs with ODEs see: https://link.springer.com/chapter/10.1007%2F11494645_21

Re: Von Neumann’s critique of automata theory and logic in computer science (1947)

#23

Controls engineer here. I've often wondered what a theory of computation based in differential equations would look like. We desperately need one. Control theory gives us some tools, but not nearly powerful enough ones. It's fairly clear by now that AI, at least as applied to domains immersed in the natural world, such as robotics and machine vision, is better thought of as analog in nature. Ten years ago I'd go to r…

You could take a CPU design at the transistor level and use the techniques from SPICE to turn it into a system of ODEs. But that seems like a massive complication that would make it hard to reason about high-level concepts.

Re: Von Neumann’s critique of automata theory and logic in computer science (1947)

#24

If I understand this correctly, Von Neumann is saying that, in the real world, computation will have to be efficient and robust, and so techniques will have to be developed to ensure their efficiency and robustness and that such techniques will necessarily have to be continuous in nature - because combinatorics is too hard to be used for the job. It's important to remember that this was written in 1947. So, a year be…

Yes, I think that at least some of what Von Neumann is calling for is complexity theory.

It's easy to forget how recent complexity theory is. While Hartmanis and Stearns laid the foundations in 1965, its first concrete result came only in '71 (Cook) and '72 (Karp), and it took much longer for more results, and, more importantly, their meaning, to sink in (at least until the '80s if not later) among computer scientists who are not themselves computational complexity researchers. In fact, some of the most basic results complexity researchers rely on are from the mid 80s (circuit complexity), which makes complexity theory one of the youngest fields in computer science. It is about half the age of neural networks, and even younger compared to programming language theory.

Some famous assertions/hypotheses/aspirational programs in computer science, including by people like Dijkstra, Tony Hoare and Robin Milner, predate complexity theory, and should be seen in a different light because of that. And because it is so young compared to other branches of computer science, it is sometimes ignored by researchers working in older disciplines, if only because their own basic results predate complexity theory.

Re: Von Neumann’s critique of automata theory and logic in computer science (1947)

#25
post #16

can someone provide an ELI5 for this critique?

The "normal" physical systems we build (say houses and hydraulic systems) are mostly "continuous". This means small changes in the inputs generally result in small changes in the behaviour of the system. So, for example, if the screws on your kitchen cabinet doors are not tightened quite enough, the cabinet doors might wobble a little -- that is, a small change resulted in a small change.

On the other hand, systems based on digital logic are very "discontinuous". A small changes in an input can result in the system behaving vastly different. A single-bit error in a computer program can result in an if-then-else switching from the true branch to the false branch, and thereby running an entirely different piece of code. So your computer is a single bit flip away from fintech entrepreneurs using your entire bank account to rent AWS time to mine Bitcoin.

In general, we are drawn to discrete logic because it's easy to write programs to do different things based on different inputs. However, von Neumann was worried about this, because no machine works perfectly -- every computer runs with a certain probability of error, and computers run fast enough that even a low probability of error can compounds very quickly. And if a single small error can result in radically different results, how can you trust the result of a computer program?

In this note, written in 1947, he expressed the hope that if you could make computers behave continuously, you could not worry about small errors, because they would only have a small impact on the result.

However, a few years later von Neumann ALSO invented the alternative, modern way of handling these issues! In his 1956 paper _The Synthesis of Reliable Organisms from Unreliable Parts_, he proved that it was possible to use redundancy in a way to drive the error probability arbitrarily low, enough that you COULD trust the output of a computation.

Re: Von Neumann’s critique of automata theory and logic in computer science (1947)

#26
I think that Von Neumann raise three important issues, two of them are largely solved, and one of them is not yet solved.

- Hardware failures

- Complexity theory

- CS and Formal logic is combinatorial rather than analytical, we can't use the powerful tools of mathematical analysis to solve those combinatorial problems.

This reminds me of a remark of Paul Erdős about the Collatz conjecture: "Mathematics may not be ready for such problems." EDIT: text format

Re: Von Neumann’s critique of automata theory and logic in computer science (1947)

#27

Controls engineer here. I've often wondered what a theory of computation based in differential equations would look like. We desperately need one. Control theory gives us some tools, but not nearly powerful enough ones. It's fairly clear by now that AI, at least as applied to domains immersed in the natural world, such as robotics and machine vision, is better thought of as analog in nature. Ten years ago I'd go to r…

The theory of computation doesn't really have anything to do with math. It's based on logic, machines, automata, etc. You can use it for math but, in principal it has nothing to do with math. For example, the automata may not be calculating anything. It may be describing a process of doing something more abstract.

Solving DE in computation is an interesting point to make tho. I've seen analysis style arguments, like real analysis or calculus, in symbolic languages like lisp.

Actually, there's a really interesting set of papers very much related to this topic. Link below.

http://strictlypositive.org/calculus/

Re: Von Neumann’s critique of automata theory and logic in computer science (1947)

#28
post #21

Controls engineer here. I've often wondered what a theory of computation based in differential equations would look like. We desperately need one. Control theory gives us some tools, but not nearly powerful enough ones. It's fairly clear by now that AI, at least as applied to domains immersed in the natural world, such as robotics and machine vision, is better thought of as analog in nature. Ten years ago I'd go to r…

> I've often wondered what a theory of computation based in differential equations would look like. The theory of computation is not based on anything ; it is fundamental in the sense that it exposes laws of nature (it is heavily based on physical limitations) independent of the means of talking about them. In a very strong sense it is more fundamental than mathematics itself as it is concerned with how hard it is to…

Theory of computation is based in mathematics/logic. It is a part of mathematics just like computer science is a field of mathematics. I'm not sure I agree that it is more fundamental than mathematics since it is a part of mathematics. You can't have a theory of computation without mathematics. Just like you can't have the field of cryptography without mathematics. Theory of computation and cryptography are built on top of fundamental ideas of mathematics. How can that translate into theory of computation being more fundamental. It's like saying a molecule is more fundamental than an electron or proton.

Re: Von Neumann’s critique of automata theory and logic in computer science (1947)

#29
post #21

Earlier quoted context omitted.

> I've often wondered what a theory of computation based in differential equations would look like. The theory of computation is not based on anything ; it is fundamental in the sense that it exposes laws of nature (it is heavily based on physical limitations) independent of the means of talking about them. In a very strong sense it is more fundamental than mathematics itself as it is concerned with how hard it is to…

Theory of computation is based in mathematics/logic. It is a part of mathematics just like computer science is a field of mathematics. I'm not sure I agree that it is more fundamental than mathematics since it is a part of mathematics. You can't have a theory of computation without mathematics. Just like you can't have the field of cryptography without mathematics. Theory of computation and cryptography are built on…

> You can't have a theory of computation without mathematics.

You're right that you can't have a theory without some language to talk about it (and it also requires people to come up with it, so is psychology more fundamental than physics?), but the theory of computation is about the laws that govern the power of mathematics. I.e. mathematics (and the universe) was constrained by computation long before anyone knew that. On the other hand, Turing was very careful not to rely on any mathematical and even logical results in his 1936 paper, not even on the principle of explosion (which is used in modern formulations of the halting theorem), precisely because he knew he wanted to get at the fundamental limitations of the very process of deduction itself (he does say that the theorem can be proven using the principle of explosion, but that would be "unsatisfying"). Turing showed that if a premise can be written as some string of symbols and so can the conclusion, then, due to constraints on the mind and body of the mathematician writing them, the process of deduction is subject to the laws of computation. This applies without any need to describe what the symbols represent, if they represent anything at all.

While the theory of computation does use concepts such as functions or sets, it knowingly treats them as higher level ideas than computation. I.e. a number or a set or a function is a name given by humans to something that can be computed or an abstraction of such a thing (so we can talk of non-computable things).

And if you want to include TOC as part of mathematics (some do, some don't), then it is its most fundamental part, more fundamental than formal logic (some people include that in mathematics, but most don't), which is subject to the laws of computation but not vice-versa.

Re: Von Neumann’s critique of automata theory and logic in computer science (1947)

#30
post #29

Earlier quoted context omitted.

Theory of computation is based in mathematics/logic. It is a part of mathematics just like computer science is a field of mathematics. I'm not sure I agree that it is more fundamental than mathematics since it is a part of mathematics. You can't have a theory of computation without mathematics. Just like you can't have the field of cryptography without mathematics. Theory of computation and cryptography are built on…

> You can't have a theory of computation without mathematics. You're right that you can't have a theory without some language to talk about it (and it also requires people to come up with it, so is psychology more fundamental than physics?), but the theory of computation is about the laws that govern the power of mathematics. I.e. mathematics (and the universe) was constrained by computation long before anyone knew t…

Psychology and physics are two independent and different fields. Physics wasn't built on top of psychology and vice versa. What language of psychology do you need to talk about physics and vice versa? Newtonian physics and einstein physics or quantum physics may be better examples? Or psychology with developmental psychology, behavioral psychology, etc.

Are you saying Turing, the world famous mathematician, didn't use any mathematical ideas? Are you talking about "On Computable Numbers, with an Application to the Entscheidungsproblem" where he laid out the algorithm to the Turing machine? Are you saying there was no logic behind the Halting Problem? You do realize that his 1936 was filled with mathematical proofs? The paper you referenced is one of the world's most famous mathematical papers. Just because it isn't full of numbers doesn't mean it's not mathematics. Do you think Euclid's elements is part of mathematics?

Post reply on HN