何かをチューリングマシンに変える方法について、今ではかなり自信があります。今私の質問は、TMをチューリングマシンの補完物にどのように変換するかです。私が有限オートマトンで覚えていることから、それを補完すると、開始状態を終了状態に変えるだけで、終了状態がある場合は、開始状態にすることができます。チューリングマシンをどのように補完しますか?
たとえば、ここに私は回文の単純なTMがあり、回文が欲しいと思っています '
何かをチューリングマシンに変える方法について、今ではかなり自信があります。今私の質問は、TMをチューリングマシンの補完物にどのように変換するかです。私が有限オートマトンで覚えていることから、それを補完すると、開始状態を終了状態に変えるだけで、終了状態がある場合は、開始状態にすることができます。チューリングマシンをどのように補完しますか?
たとえば、ここに私は回文の単純なTMがあり、回文が欲しいと思っています '
回答:
一般的にはできません。
言語自体のように、それはあなたの言語の補足を半決定的にするでしょう。したがって、両方のマシンを並行して実行することで、どちらも決定可能になります。
もちろん、これは、TMが言語にない単語で必ずしも停止しない半決定可能言語の場合にのみ関係します。
TMが常にyesまたはnoで停止する決定可能な言語がある場合は、yesとnoを交換するだけです。
ただし、注意事項がいくつかあります。
受け入れ構成と非受け入れ構成の互換性
選択したチューリングマシンの定義によっては、非承認構成の受け入れと停止は互換性がない場合があり、したがって互換性がない場合があります。受け入れ状態が使用可能な遷移を持つことが許可されている場合、それを通常の状態にすると、受け入れずに停止するのではなく、単に計算が続行される場合があります。したがって、受け入れと拒否をどのように識別し、それらを交換するかに関して、かなり単純な予防策を講じる必要があります。
非決定的マシン
非決定的なマシンは反マネージャーです。マネージャーが「いいえ」と言った場合は「いいえ」を意味し、「はい」と言った場合は「たぶん」を意味します。
非決定的なマシンは、反対のことを行います。「はい」と言うときは「はい」を意味し、「いいえ」(受け入れられない構成で停止する)と思われるときは「たぶん」を意味します。それが多分意味する理由は、それがいくつかの遷移の異なる非決定論的な選択でイエスと答えたかもしれないということです。実際、非決定的オートマトンは、否定的な答えを与えないようにするべきです。確定的オートマトンでは便利ですが、非確定的オートマトンでは何も意味しません。次の2つの理由により、それらが終了しない場合も「たぶん」です。(1)別の遷移の選択が受け入れを生成した可能性がある、(2)計算が進行する可能性があるため、非受け入れをアサートできない。
したがって、非決定的または非停止デバイスによって認識される言語を補完することは容易ではありません。「はい」と「たぶん」しかないので、単に「はい」と「いいえ」を交換することはできません。Automata Theory Unionによって認識されていない、「いいえ」または「多分」のみに応答する管理用マシンを取得するだけです。オートマトンは、認識される単語がその言語である場合に限り、「はい」を終了して回答することで明確に受け入れる必要があります。場合によっては、いいえと答えることができるのは、決定論的なマシンのボーナスに過ぎません。
したがって、最初にマシンを確定的なマシンに変換する必要があります。次に、マシンが常に停止すると仮定して、(上記の前のポイントを考慮して)受け入れ構成と拒否構成を交換できます。
通常のセットを補完するには、まずそれを認識するDFAを構築するのが便利です。
チューリングマシンは常に確定的なマシンに変換できますが、停止しない可能性があるため、「たぶん」の余地があります。したがって、前述のように、チューリングマシンによって認識される言語を補完することが常に可能であるとは限りません。ただし、(確定した)TMが常にyes / noの応答で停止する可能性があります。