4 ms·
Because the "tape" is infinite, then the possibilities to name individual machines are infinite. I can create the number of a machine which is just a simple non
by leroy-is-here 3y ago
Because the "tape" is infinite, then the possibilities to name individual machines are infinite. I can create the number of a machine which is just a simple non-deterministic finite automata using a Turing Machine description.
My point is that we can always use more powerful machines to describe less powerful ones, but that isn't an indicator that they are then less powerful.
- russdill 3y agoMy point being is that from a computational complexity standpoint, your computer is not a Turing machine, just a very very very large FSM. So it's still very useful to think of it as a Turing machine.
- leroy-is-here 3y agoAgain, if your computer is not a Turing Machine, then it must be able to run programs that the Turing Machine class is not able.
- russdill 3y agoI'm saying that a silicon computer a lower completely class than a theoretical Turing machine, not higher
- leroy-is-here 3y agoI think I agree with you, but maybe not for reasons you agree with. You see, the Turing Machine is a Form, in Plato's sense. I can formulate all of the programs and machines imaginable (at this current moment in our lifetime) with Turing's process for creating machines. The individual machines created from his process may not be able to run Turing-complete code, e.g. a calculator formalized as a Turing Machine. But our machines, our computers, are machines which can accept other machines as input. And even in this limited domain we cannot solve the Halting Problem, so I consider them a part of the Turing Machine class even if they are descendants of Turing's Form. Edit: In more concrete terms, one can design a very simple program in C, but that doesn't mean that C isn't capable of being used to design more complicated programs. It also isn't very useful to measure a _specific_ C program, especially a simple one, as a measure of what _all_ C programs may be able to do. Edit^2: After thinking about this more, I think a better argument is this: it is true that our physical machines must exist in some sort of finite state, but if our big problems (such as the Halting Problem) were merely symptoms of infinity, then we would have solved them by now in our limited and finite domain.
- yarg 3y ago> And even in this limited domain we cannot solve the Halting Problem, so I consider them a part of the Turing Machine class even if they are descendants of Turing's Form. Non-halting finite machines are periodic. The fact that we are unable to detect that they have returned to a prior state is a physical limitation, not a theoretical one.
- russdill 3y agoOk, if you want to create your own definitions and describe how they fit together, that's fine. I was speaking of the formal definitions of computability complexity classes, so I think we were speaking past each other a bit.
- leroy-is-here 3y agoI think your hang-up is one of infinity. Just because we must deal the reality of the finite does not mean our computers are not _capable_. For example, the Turing Machine in our minds is able to run infinitely, but the computer plugged in to my wall cannot because it is dependent on me paying the power bill. Any Turing Machine we will have made into silicon is able to run any Turing Machine we can formulate (at this current moment in time) except only up to a finite point. But we can forever increase that finite point of measure! For example, our computers now may be able to calculate up to N. The next year, we may be able to do N+10000. The following year, N+10000000, and on and on. This is a limit of our reality, but not of the Turing Machine, which our machines must be because they are capable of being extended all the way to infinity, even if we take them there step by step, by adding 1 at a time. Again, if this were a problem of infinity, then we would have limited the domain and solved the issue already. But we can design very simple, very finite Turing Machine programs for which the Halting Problem cannot be solved: while (true) { sleep(1); } edit: you were right -- we are talking past each other. The "finite" in "finite state machine" is not useful here. Any infinite Turing Machine which we have made into silicon is still an infinite Turing Machine, just one we have inherently limited due to our realities of only having so much time or room or resources or whatever else. But a FSM is not one we limited artificially, it is a different class entirely and a class we can completely make into silicon without any sort of loss. Again, if this were a problem of "infinity" then we would have limited the domain by our own choice and solved it, which we have done for machines of a lower complexity, but _not_ for Turing Machines.
- yarg 3y agoThat's not true - even if the computer is Turing equivalent, it's not necessarily a Turing machine. https://en.wikipedia.org/wiki/Turing_completeness#Formal_definitions https://en.wikipedia.org/wiki/Turing_completeness#Formal_def... > Turing equivalence: A Turing-complete system is called Turing-equivalent if every function it can compute is also Turing-computable; i.e., it computes precisely the same class of functions as do Turing machines.
- leroy-is-here 3y agoOur machines _can_ compute any Turing-computable function, except only up to some finite point because we must exist in this reality. Our numbers are infinite, but we do not argue they are not because someone was not able to count up to 999999999999999999999999999!
- yarg 3y agoThat's not even the point - the Turing machine is a specific abstraction. > Turing machines, first described by Alan Turing in Turing 1936–7, are simple abstract computational devices intended to help investigate the extent and limitations of what can be computed. https://plato.stanford.edu/entries/turing-machine/ https://plato.stanford.edu/entries/turing-machine/ Even if we had infinite memory, our computers would be closer to those of the Von Neumann architecture than to Turing machines. > The Von-Neumann architecture is an architecture for constructing actual computers (which implement what the Turing machine describes theoretically). https://stackoverflow.com/questions/2782014/turing-machine-vs-von-neuman-machine https://stackoverflow.com/questions/2782014/turing-machine-v... This is not simple pedantry - Turing never intended for the machine to be built, it was only ever a device intended to explain computability. The theoretical Turing machine can accept a tape for any definable program, but the architecture cannot possibly run efficiently. It was never intended to.
- leroy-is-here 3y agoThe Von Neumann architecture is just a Turing Machine, simply a physical manifestation of one, a physical abstraction. My computer has a “tape” which is 64GB wide because I have 64GB of RAM. If we had infinite memory and infinite symbols (instead of only 2^64), we could build a universal Turing Machine. But that doesn’t mean our physical computers aren’t Turing Machines executing Turing-complete programs that just happen to be in the space of programs executable in a finite time and within the limitations of our current physical realities. I’m not sure who told you that Turing never intended for the machine to be built. He knew that he could not build a machine with infinite tape, as we both know too. But when he built the machine to crack the Enigma Machine, he did this _after_ writing his paper, “On Computable Numbers.” So, he was in effect making a Turing Machine (but he called them a-machines). We literally didn’t have computers before Turing formalized a way to execute them, instruction by instruction, and in detail. Once we had some kind of formal method to do this, physical machines could start being built. Edit: My comments have not shown misunderstanding. There seems to be this consensus that our mathematics here came _after_ our machines. But this is wrong and the implications are tremendous. Our computers we have really are machines which execute other machines. What is the only class of machine that can do that? The Turing Machine. Edit2: I suppose this is an argument of semantics. I didn’t realize. Yes, perhaps our computers are “Turing-equivalent”. I still think the “tape” and “symbol” and all of those things are merely mental variables, which is why I called these things a Form earlier. We built a physical tape, it just took the form of RAM and has much detail that electrical engineers can talk about. We also built symbols, we just called them instructions and placed them into a CPU. All of our physical devices have come from theoretical findings, not vice-versa. https://en.m.wikipedia.org/wiki/The_Treachery_of_Images https://en.m.wikipedia.org/wiki/The_Treachery_of_Images