私は、Graph 3-Coloralibity問題の自己還元性に興味があります。
グラフ3-Coloralibity問題の定義。
無向グラフが与えられた場合、隣接するノードが同じ色にならないようにノードを赤、緑、青に着色する方法はありますか?
自己還元可能性の定義。
オラクルチューリングマシンTMが存在し、L = L(T ^ L)であり、長さnの任意の入力x に対して、T ^ L(x)がオラクルに最大nの単語の単語を問い合わせる場合、言語は自己還元可能です。-1。T L = L (T L)x n T L(x )n − 1
グラフ3の色分け可能性が自己還元可能であることを非常に厳密かつ正式な方法で示したいと思います。
SATの自己還元性の証明を例として使用できます(SATの自己還元性)。
私の意見では、グラフ3色の自己還元性の証明の一般的な考え方は、いくつかの点でSAT自己還元性の証明とは異なります。
- SATにはリテラルごとに2つの選択肢(trueまたはfalse)があり、Graph 3-colorabilityには3つの選択肢(つまり、赤、緑、青)があります。
- SATリテラルの選択は相互に独立しており、グラフ3の色の選択可能性は厳密に依存します。隣接ノードは異なる色でなければなりません。このプロパティは、すべての色の反復を少なくするのに役立つ可能性があります。
証明の一般的な考え方。
頂点色を示します。これは、次のいずれかの値(赤、緑、青)を取ることができます。任意の頂点色を付けて、与えられたグラフからグラフを定義し、を「赤」に割り当て、色付きの頂点を持つグラフをオラクルの入力に配置します。oracleが1と答えた場合、つまり変更されたグラフがまだ3 色可能である場合、現在の割り当てを保存し、新しい頂点を開始します。異なる頂点任意に選択して、色頂点 v i G ′ G v 0 c v 0 G ′ v 0 v 1 v 1隣接する頂点の色に応じて。oracleが0と答えた場合、つまり、前の割り当てで3つの色分けができなかった場合は、3つの色のセットから異なる色を選択しますが、隣接する頂点の色に従っています。
以前の証明は数学的に頑強ではなく、問題はそれをどのように改善し、より正式で数学的に厳密にするかです。新しい頂点に既に色付けされた頂点のエッジがない場合と、新しい頂点が既に色付けされた頂点に隣接している場合を区別する必要があるようです。
さらに、グラフ3の色分け可能性が下方自己還元可能であることを証明したいと思います。
下方自己還元可能な言語の定義。
言語は、最短のクエリの結果を使用してかどうかを多項式時間で決定できる場合、下方自己還元可能であると言います。のx ∈ A
アイデアはシンプルで直感的であるように見えます。任意の頂点のカラーリングから開始し、各反復でカラー頂点を1つ追加し、グラフがまだ3色であるかどうか、オラクルによってチェックします。
しかし、証明を厳密に書く方法と、グラフの適切なエンコーディングを見つける方法がより重要です。
要するに、私はグラフ3の色分け可能性が自己縮小可能であり、厳密かつ形式的に自己縮小可能であることを示したいと思います。
ご意見をお聞かせください。
更新:
下方自己還元性
下方自己還元性は決定問題に適用され、オラクルはより短い入力で同じ意思決定問題に答えます。下方自己還元のプロセスの最後に、適切な色割り当てが必要です。
すべての3- 頂点が4つ以上ある色付け可能なグラフは、同じ色の2つの頂点があります。明らかに、3つの色と4つ以上の頂点があるため、隣接していないいくつかの頂点が同じ色を持っている可能性があります。結果として同じ色でとをマージした場合、グラフが3-着色可能であるという理由だけで、グラフが3-着色可能であるという理由だけで、とに隣接するすべての頂点の正しい割り当てが存在します。と同じ色なので、マージするxは、Y 、X 、Y 、X 、Y 、X 、Y 、X 、Y xは、Y Gは、xはY G ' G ' G '頂点の色を変更する必要はありません。すでに正しく色付けされた頂点の間にエッジを追加するだけです(私はそれが最良の説明ではないことを知っています。誰かがそれをよりよく説明できれば感謝します)。すべての反復で、グラフ隣接しない2つの頂点を取得し、とをマージして、oracleへの短い入力であるグラフを取得します。Oracleは、3色かどうかを答えます。今の問題は、設定する前にされた神託の入力に私はのマージされた頂点とテスト着色色べきで、それは3・彩色変更色ではないですが、それを正しく実装する方法を、私はそれのために右のエンコーディングが必要な場合は、。
自己還元可能性
最初に、与えられたグラフが3色分け可能かどうかを確認する必要があるため、oracleの入力に設定します。oracleが3色分け可能かどうかを答え、yesの場合は処理を開始します。3つの色分け可能なグラフでは、隣接していない2つの頂点が同じ色になることがあります。反復で実行する必要がある自己還元性のプロセス。与えられたグラフ小さなサブグラフから始め、反復ごとにから頂点をもう1つ追加できると思います。並列では、すでに色付けされた頂点の割り当てを維持する必要があります。残念ながら、まだ完全にはわかりません。ヘルプとヒントをいただければ幸いです。G ' G G G '