多項式時刻にどのような種類の文字列プロパティが検証可能ですか?
-
29-09-2020 - |
質問
問題の文字列とプロパティを潜在的な証明書として与えた場合。このプロパティを持つすべてのプロパティ(サブプロパティとして)が多項式時間で検証可能なすべてのプロパティの分類定理はありますか?
ポリ時刻で検証可能な文字列にはパターンの種類のコレクションがありますか?
自明の特性は、これらのプロパティを持つ文字列の集まりがNPの言語(サブプロパティであるNPに属する)に属することです。
私はより多くのコンクリートを探しています。
これらのプロパティを任意の文字列のポリ時刻で検証できるようにするこれらのプロパティのような文字列プロパティ間の共通スレッドを探しています。
すき。任意の文字列のポリ時期で検証可能であることが保証されるように、帽子から弦のプロパティを選択する方法はあります。
多分複雑さでこれを行う方法がある - あなたが構築することができる唯一のプロパティが(いくつかの制限された言語で)ポリッシュで検証可能なものは?
解決
アルファベット $ \ SIGMA $ を介した文字列のプロパティの確認は、文字列が言語の一部であるかどうかを確認するのと同じ問題です。問題。
言語: $ \ sigma ^ * \ mapsto \ {0,1 \} $
あなたが興味のあるものは「文字列の財産」または他の言葉の「言語のクラス」です。
あなたがおそらく探しているクラスは 'P'です。これは、決定論的チューリングマシン上の多項式時に決定問題を解決できるすべての言語を含みます。興味深いことに、このクラスは、決定問題が多項式回路によって解決できる言語のクラスと同じです。
絶えず境界ループを含むすべてのCプログラムは、例えばpに属する(それらは多項式回路に簡単に変えることができます)。 そこから、多項式時刻で終了する他のループを含めるように言語を拡張することができます。あなたは入れ子のループに注意しなければなりません。この目的のための特別なホア型の論理があります。