You do not have permission to edit this page, for the following reason:

The action you have requested is limited to users in one of the groups: Users, Administrators.


You can view and copy the source of this page.

Templates used on this page:

Return to Rice's Theorem with Examples.

Rice's Theorem[edit]

Reference

Part 1[edit]

Any non-trivial property about the language recognized by a Turing machine is undecidable

For a property to be non-trivial, there should exist at least two Turing machines, the property holding for the language of one (T_{yes}) and not holding for the language of other (T_{no}).

Thus, as per Rice's theorem the language describing any nontrivial property of Turing machine is not recursive. It can either be recursively enumerable or not recursively enumerable. (Obviously there are also other languages which are not recursive)

Part 2[edit]

Any non-monotonic property about the language recognized by a Turing machine is unrecognizable

For a property to be non-monotonic, there should exist at least two Turing machines, the property holding for the language of one (T_{yes}) and not holding for the language of other (T_{no}) and the language of the T_{yes} a proper subset of the language of (T_{no}).

Examples:

L(M) is finite

We can have T_{yes} for \phi and T_{no} for \Sigma^*.

L(M) = {0}

We can have T_{yes} for {0} and T_{no} for \Sigma^*.

L(M) is regular

We can have T_{yes} for \phi and T_{no} for \Sigma^*.

L(M) is not regular

We can have T_{yes} for {a^nb^n|n\ge0} and T_{no} for \Sigma^*.

L(M) is infinite

We cannot have T_{yes} and T_{no} such that L(T_{yes}) \subset L(T_{no}). Hence, this is not a non-monotonic property and Rice's 2^{nd} theorem is not applicable. Still this language is not recursively enumerable.






blog comments powered by Disqus