Example 6.17: We want to decide if M accepts no strings. We construct N that runs M in parallel on all strings. M may loop on all inputs, in which case it will not halt (it's not by itself a decider of the empty TM). If M accepts any string, N accepts. Now query the oracle to see if N is an accepter of anything. If it is, then M's language is not empty. If the oracle says that N is not an acceptor of any string then we "accept" M as member of the class of machines that accepts no strings.
This is an example of using an imaginary oracle to establish relative decidability.
notes10a.htm, this hand crafted HTML file created August 31, 1998.
Last updated May 14, 2011, by
Rick Wagner. Copyright © 1998-2011, all rights reserved.