交互式證明系統

在計算複雜性理論中 ， 交互式證明體系 （ 下簡稱交互證明 ） 是一類計算模型 。 像其它計算模型一樣 ， 我們的目標是對一個語言L ， 和一個給定的輸入x ， 判斷x是否在L中 。 交互式證明體系由兩個實體 ： 驗證者 （ verifier ） 和證明者 （ prover ） 組成 ， 兩者都可以看作是某類圖靈機 。 而它的計算過程爲 ： 給定了輸入x ， 通過驗證者和證明者之間交換信息 ， 最終 ， 由驗證者來根據證明者給出的信息 ， 判斷給定的輸入是不是在語言L中 。 交互證明的基本假設是 ： 證明者在計算能力上是無限的 ， 在概率多項式時間 （ BPP ） 的圖靈機 。 一般來說 ， 對給定的L ， 我們關注的是交互證明中驗證者V這一角色 ， 並對它加以如下的要求 ： 完備性 （ completeness ） ： 如果x ∈ L ， 那麼存在誠實的證明者P ， 使得V與P的交互之後 ， 輸出 “ x ∈ L ” ； 可靠性 （ soundness ） ： 如果x ∉ L ， 那麼對任意的證明者P ， V與P交互之後 ， 輸出 “ x ∈ L ” 的概率很小 （ 可以認爲小於某一常數 ） 。 如果對L ， 這樣的驗證者存在 ， 那麼我們說L有這樣的一個交互體系 。 類似對圖靈機所需的運行時間和空間等加以限制來得到語言的集合 — — 複雜性類一樣 ， 通過改變交互證明中 ， 交互過程的輪數 、 隨機源是公開的還是驗證者所私有的 ， 以及證明者的數目等等參數 ， 我們可以得到不同能力的證明體系 ， 並依據一個語言是不是有這樣參數的交互證明 ， 來定義相應的語言的集合 — — 複雜性類 。 依據交互證明定義的主要複雜性類有IP和AM ， 它們與依據圖靈機定義的經典複雜性類的關係是重要的研究課題 。