Hacker News new | past | comments | ask | show | jobs | submit login

You cannot ever know for sure that your software is bug free, because no finite system of logic is both true and complete.

At least, that’s my understanding of it.

Not exactly.

For any sufficiently powerful system (Turing completeness is definitely powerful enough) there are statements which are true but cannot be proven by that system. Secondarily, no system can demonstrate its own consistency.

However, if you limit your software enough, you can prove that every possible input is handled correctly. That involves removing Turing completeness. E.g. once you accept a language as a configurator, you can no longer prove that. CSS3 is Turing complete. JSON is not.

One requirement is limiting the size of inputs.

Afaik this is all related to relativity. No good or bad unless unrelated like ++ or -- and we're in a system where, at least humans, only perceive reality as it relates to us. You need air, so do I, together we have a similar need but also together we occupy each other's space and resource

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