Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Yes, running them until they halt is one way of determining that a program halts on a given input. However, we can prove things do or don't halt without that. Consider running, on an idealized machine (so no overflows),

    while(i>0) { i * 2; }
I think you would agree that this clearly never halts for any i > 0, and I think it also clear that we did not determine that by running it until it did not halt (because there is no such point).

Turing proved that for some programs there is nothing we can do but run them and see. That doesn't mean that's all we can ever do.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: