|
|
|
|
|
by wizeman
1307 days ago
|
|
> For your proposed example, a cycle detection program executed on a computer with finite memory cannot analyze all programs the computer can execute That is correct. A cycle detection program that can analyze all input programs with a memory bound of "N bytes" would need more than N bytes of memory to run for some input programs. For example, the tortoise and hare algorithm needs at most 2*N bytes of memory to analyze any program that runs with a memory limit of N bytes. > I'd be curious whether this suffices to convince you the halting problem exists for computers in the real world as well. If not, I'd be curious to read your objections. It does not. That only means that you if you, say, want to analyze how a program behaves when ran in a computer with 16 GB of state, you need to analyze it on a computer that has more than 16 GB of state. It would be an incredibly useful analysis if we could discover time-efficient algorithms to accomplish this. |
|
Then we must differ on what the "halting problem" refers to. I would say that a computer suffers from the halting problem if there is no program it can run that can determine whether arbitrary programs it can run halt or not. You seem to agree that this is the case for a computer with a fixed amount of memory (as you say, a computer with more memory is needed to analyze all programs for such a computer).
I can then only ask what is this thing that is not the halting problem (as I understand it) that you think does not exist for computers in the real world?