考慮一個傳統的猜數遊戲。 A 、 B 兩名玩家事先約定一個正整數 N ,然後 A 在心裡想一個不超過 N 的正整數 x , B 則需要通過向 A 提問來猜出 A 心裡想的數。 B 的問題只有唯一的格式:先列出一些數,然後問 A 「x 是否在這些數里」, A 則需要如實回答「是」或者「否」。顯然, B 是保證能猜到 x 的,只需要依次詢問「x 是否等於 1 」,「x 是否等於 2 」即可。由於 B 可以精心選出滿足某種特徵的所有數,詢問 x 是否在這些數里,因而 B 還可以做得更好。例如當 N = 16 時, B 第一次可以問「x 是否小於等於 8 」,或者等價地,「x 是否屬於 {1, 2, 3, 4, 5, 6, 7, 8} 」;接下來,根據 A 的回復繼續細問「x 是否小於等於 4 」或者「x 是否小於等於 12 」,以此類推。另一種方法則是詢問「x 的二進位表達的第一位是否是 1」,「x 的二進位表達的第二位是否是 1」,以此類推,從而獲得 x 的二進位表達的所有數位,便能推出 x 來。
現在,有意思的問題來了。假設 A 可以偶爾說謊(但保證不會連續說謊兩次),那麼 B 還能通過詢問猜出 A 所想的數嗎?如果願意的話, B 可以詢問任意多次。
Sroan指著一塊手錶的表面對Pasber說:「請你在表面上表示小時的12個數字中默認一個數字。現在我手中有一枝鉛筆。當我的鉛筆指著表面上的一個數字時,你就在心裡默念一個數。我將用鉛筆指點表面上的一系列不同的數,你跟隨我在心裡默念一系列數。注意,你必須從比你默認的數字大1的那個數字開始默念,例如,如果你默認的數字是5,你就從6 開始念,然後按自然數順序朝下念,我指表面上的數,你默念心裡的數,我顯然不知道你心裡默念的是什麼數,當你念到20 時,就喊『停』,這時我手中的鉛筆,一定正指著你最初默認的數。」 Pasber認為這是不可能的,因為Sroan並不知道自己從哪個數字開始默念。但出乎意料的是,當他按Sroan所說的操作一遍后,Sroan手中的鉛筆正指著他心裡默認的那個數字!
想想看,Sroan是如何做到這一點的?