群友转来一段视频,“你真的看懂《皇帝的新装》了吗?"【1】。视频要讲解的是共有知识和公共知识的概念。老康对智力游戏颇感兴趣。下了一个月的功夫,终于闹明白了玄机。
一、红蓝眼睛村的故事
此智力游戏最早是澳大利亚的华裔数学神童陶哲轩在网上贴出来让大家思考【2】,逗大家玩儿的【3】,后来衍生出很多版本和创新【1】【3】【5】。这里基本是【1】的版本,配以老康的叙事方式和想象。
某村有100位村民,5位红眼睛的,95位蓝眼睛的。村里有个古传的严格规矩,不许村民知道自己眼睛的颜色,也不许讨论眼睛这个话题。当然,每位村民可以看到其他99位村民眼睛的颜色。村里没镜子,没有反光的水面;总之,村民没法发现自己眼睛的颜色!体制如此!
一旦某个村民确定了自己眼睛的颜色,他必须当晚午夜自杀,这叫殉规矩!
当然,村民都同你一样聪明透顶,同样诚实、讲逻辑、讲信誉。
为叙述简练,以下“红的”、“蓝的”分别指“红眼睛的村民”和“蓝眼睛的村民”;人物都是男性。 有一天,一位红眼睛的外村人来访;告别酒会上他说:很高兴在村里见到和我眼睛一样颜色的村民!说完他立马后悔了。他知道村里的规矩是不能讨论眼睛的话题。但随后一想,又释然了:他们村里有5位红的,人人能看到有红的;我没有提供任何新的知识啊!
这个智力游戏的迷惑之处就在这里:如果外村人说的是废话一句,为什么第五天晚上会有五位红的村民同时在午夜殉规矩了呢? 是的,村里有5位红的95位蓝的;每位红的只能看到4位红的95位蓝的,但不知道或不确定自己眼睛的颜色。同理,每位蓝的能看到5位红的,94位蓝的,也不知道自己眼睛的颜色。
村里平静,没人殉规矩,因为没人知道自己的眼睛的颜色。外村人的话没有提供任何新知识,但却是个发令枪,发令枪一响,村民开始思考、期盼、怀疑、推理、Action!于是,悲剧开始了。
什么道理呢?
先来假设村里就一位红的,红一。
红一推理:我能看到的99位都是蓝。我一直不知道我的眼睛的颜色。外村人说外乡人说“村里有红”,我自己肯定就是那个红。我怎么这么倒霉啊。于是当天午夜红一殉了规矩。
结论:村里一红,第一天午夜一红殉规矩。
再来假设村里只有两位红眼睛的:红一和红二。
红一思考:外乡人说村里有红的,这不废话吗?我能看得到啊,红二啊!他一直没去殉规矩是因为他不知道自己是红的。外乡人说了村里有红的,按上面的推论,“村里一红,第一天午夜一红殉规矩”。红一期盼红二当晚殉规矩。
红二思考:外乡人说村里有红的,这不废话吗?我能看得到啊,红一啊!他一直没去殉规矩是因为他不知道自己是红的。外乡人说了村里有红的,按上面的推论,“村里一红,第一天午夜一红殉规矩”。红二期盼红一当晚殉规矩。
第二天早晨,还是100位村民:没人殉规矩!
红一纳闷啊,除了红二不守规矩,还有什么可能呢?上面的推论,“村里一红,第一天午夜一红殉规矩”。这个逻辑反过来:第一天午夜一红没殉规矩去,那村里就不是一红! A 导致 B, 非B 导致 非A,简单逻辑。我已经看到红二红了,我也能看到98位蓝。村里不是一红,那唯一的可能是两红,而我一定是那第二红。唉,我怎么这么倒霉啊!
红二也纳闷啊,除了红一不守规矩,还有什么可能呢?上面的推论,“村里一红,第一天午夜一红殉规矩”。这个逻辑反过来:第一天午夜一红没殉规矩去,那村里就不是一红! A 导致 B, 非B 导致 非A,简单逻辑。我已经看到红一红了,我也能看到98位蓝。村里不是一红,那唯一的可能是两红,而我一定是那第二红。唉,我怎么这么倒霉啊!
于是,Action:第二天午夜,红一、红二同时殉规矩去了。
再来假设村里有三位红的,红一、红二,和红三。
红三思考:外乡人说村里有红的,这不废话吗?我能看得到啊,红一和红二啊!他哥俩一直没去殉规矩,是因为他俩不知道或不确定自己是红的。外乡人说了村里有红的,按上面的推理,如果村里两红,那他哥俩会在第二天午夜同时去殉规矩。
红一和红二也有同样的思考。红一期待红二红三第二天午夜殉规矩;红二期待红一红三第二天午夜殉规矩。
第三天早晨起来,还是100位村民:没人殉规矩!
红三奇怪了,除了红一和红二不守规矩外,还会有什么可能呢? 上面的推论:如果村里两红,第二天午夜两红必殉规矩去。这个逻辑反过来:第二天午夜两红没殉规矩去,那村里就不是两红! A 导致 B, 非B 导致 非A,简单逻辑。 我能看到红一红二两红,我也能看到97蓝。那村里只能是三红了,那第三红肯定是我没跑啊!咳,真是倒霉啊!
红一和红二有同样的推理。都确定了自己眼睛的颜色。于是第三天午夜,哥仨同殉规矩去了。
以此类推,村里有五位红眼睛的,他们会在第五天午夜同时殉规矩!
也许这样说更容易明白这个逻辑:
外村人说“村里有红”,带来了连锁反应!
第1天没1人殉规矩,说明村里有2+红。(两红或多于两红)
第2天没2人殉规矩,说明村里有3+红。
第3天没3人殉规矩,说明村里有4+红。
第4天没4人殉规矩,说明村里有5+红。
第5天有5人殉规矩,说明村里就5位红。
就这么简单!
二、数学归纳法
大家都还记得中学学的数学归纳法吧?证明一个公式,起始步骤:证明对某个基数B成立!归纳步骤:假设公式对N>=B成立,证明对N+1也成立。
村里N个红眼睛的在第N天午夜同时殉规距。N是村里红眼村民数,N>=2。
刚才证明了起始步骤,俩红眼,N=2。假设这个公式对N成立,来看N+1的情况。
第N+1位红眼能看到N位红眼。他期待第N天午夜N位红眼同时殉规距。但第N+1天早晨见没人殉规距,他推论村里一定有N+1位红眼而自己必是那第N+1位红眼,于是第N+1天殉规距去了。
所有的N+1位红眼每位都有同样的思考和推论,所以第N+1天午夜N+1位红眼同时殉规距去了。
证毕!
三、共有知识和公共知识
这个悖论常被用来解释公共知识【1】【4】。
前面说“外乡人没有提供任何新的知识” 并不很准确。知识的认知有其层次【4】。也许应该说“外乡人提供了深层次的知识”。
还是以红蓝眼睛村为例。 再次假设村里只有两位红的:红一和红二。
红一能看到红二红,红二也能看到红一红。98位蓝的能看到他们俩都是红的。
所以村里人人知道“村里有红”。
“村里有红”是个共享知识,或者说是“一级知识” 【4】。
红一思考:我知道“村里有红”甚至能看到红二是红的。但我不知道或不能确定红二知道“村里有红”。红二看不到他自己的颜色;我也不知自己的颜色,我不知道红二看到的我是红还是蓝。
红二思考:我知道“村里有红”甚至能看到红一是红的。但我不知道或不能确定红一知道“村里有红”。红一看不到他自己的颜色;我也不知自己的颜色,我不知道红一看到的我是红还是蓝。
这时外乡人发话了:“村里有红!”
红一接着思考:啊哈!这会儿我知道红二知道“村里有红”了!他能看到其他98蓝。他要看到我是蓝,那他就知道他自己是红;当晚午夜他就殉规矩去了;他也可能看到我是红,但我自已并不确定我是红,我不必今晚殉规矩!明天再说吧!
红二接着思考:啊哈!这会儿我知道红一知道“村里有红”了!他能看到其他98蓝。他要看到我是蓝,那他就知道他自己是红;当晚午夜他就殉规矩去了;他也可能看到我是红,但我自已并不确定我是红,我不必今晚殉规矩!明天再说吧!
外乡人的话提升了知识的层次,一级到二级。
一级知识:人人都知道“村里有红”,但不是人人都知道人人都知道“村里有红”。
二级知识:人人都知道人人都知道“村里有红”。
第二天早晨起来,还是100位村民:没人殉规矩!红一红二都认了栽,知道了自己是红的,第二天午夜殉了规矩。
再假设村里只有三位红:红一,红二,和红三。 每个红能看到另外两个红。所以:
一级知识:人人都知道“村里有红”。
红一知道红二知道村里有红的,因为红二能看到红三是红的。 红一知道红三知道村里有红的,因为红三能看到红二是红的。
每个红的能看到另外两个红的,其中任何一个红得能看到第三个红的。所以:
二级知识:人人都知道人人都知道“村里有红”。
红一知道红二不知道或不确定红三知道“村里有红”。
红一知道红三不知道或不确定红二知道“村里有红”。
人人都知道不是人人都知道人人都知道“村里有红”。
这时外乡人发话了:“村里有红!”。
红一知道红二知道红三知道“村里有红”。
红一知道红三知道红二知道“村里有红”。
红二,红三有有同样的推理,所以:
三级知识:人人都知道人人都知道人人都知道“村里有红”。
红一期望红二和红三第二天午夜殉规矩。但第三天他们俩都活着,于是红一认了栽知道自己是红的,第三天午夜红一殉了规矩。
红二,红三有有同样的推理,他们也在第三天午夜殉了规矩。
归纳起来,村里有N个红眼睛时,村民们已有N-1级的共有知识,外村人的话把最深一层的“不是人人都知道人人都知道转换成“人人都知道人人都知道。或者说把最深一层的共有知识转换成了N级的公共知识。
注:看官说了,不对啊,你说 :红一知道红二不知道或不确定红三知道‘村里有红’”,可红三能看到红一和红二,当然知道村里有红了!
上面只列出了两条推理链,是红一打头的两条推理链。还有红二打头两条推理链和红三打头两条推理链。一共六条推理链,每条链的长度为三。
你说的“红三 能看到红一和红二”在红三打头两条推理链上。每条推理链有类似归纳和递归的作用。
N=99 就有99!=99*98*97*...*2.*1条长度为99的推理链 。这些推理链是并行的有限互独立的。
N=3时就有3!=3*2*1=6条推理链,每条长度为3。
老康相信,外乡人的话提供了新信息,信息通过这些推理链传播给每位红眼睛的村民,同时又瞬时。
共有知识(Mutual Knowledge)和公共知识(Common Knowledge)属于逻辑学和博弈学的范畴,老康一无所知!
四、公众呐喊与社会变化
红蓝眼睛村是个假设的封闭社会。外乡人的“呐喊”似乎并没有提供新的知识(“村里有红”),但却使这个封闭开社会开始发生变化。
你完全可以设计出不同的游戏规则和规矩建立一个不同的社会模型:比如一旦村里人完成了某项任务就提干了,入党了,升学了,移民了,发财了等等。
社会、社团、组织要发展,来自内部的推动力当然很重要。但对一个僵化的组织或社会,外界的呐喊有时也起关键作用,只要内部的人听得见,即使你认为你的呐喊只是在重复人人都已经知道的知识。
老康的兴趣只在这段智力游戏上。章法和社会构建的事情还是留给社会学家吧!
五、《我不是药神》
多年来人人都知道病人“买不起药”的问题;政府也知道人人知道“买不起药”的问题;人人知道政府也知道“买不起药”的问题。“买不起药”是个共有知识。
电影《我不是药神》这个外乡人横空出世了。可以说电影充满了“负能量”:指责政府、社会、药厂、医院,还把救人的天使绳之以法。
但电影上演后没几天政府就出台了一系列措施解决“买不起药”的问题,病人受益。“负能量”变成了“正能量”。
为什么?
当政府知道了全体人民都知道了政府早就知道了这个“买不起药”问题后还是无动于衷保持沉默,那它还是人民政府吗?
《我不是药神》的丰功伟绩就在于它帮助完成了把“买不起药”这个共有知识转变成共公知识进而触发了政府的“殉规矩”!
听到政府宣布采取措施解决“买不起药”问题时,我的第一反应是政府能让民众推着走也好。人民也希望过好日子,这与那片儿“不忘(的)初心” 是一致的。
期望影视界的朋友多拍些关心人民群生活推动政府多为人民多谋福利的优秀影视剧。老康叩谢!
【思考题】
1:“一旦某个村民确定了自己的颜色当晚午夜必须殉规矩”。那些蓝眼睛的村民的命运如何?
2:原题假定所有村民都同样聪明绝顶、守规矩、讲逻辑。万一有个村民不够聪明或不守规矩或不讲逻辑呢?(看官不可引申到世贸村去!)
【PS】红蓝眼睛村的故事也告诉我们:不守规则、不讲逻辑、甚至装逼往往能得到更好的结果。至于是否对其他村民公平、村子是否还能保持平衡,WHO CARES!
【参考】 【1】 李永乐:你真的看懂《皇帝的新装》 了吗? https://nhacchobe.net/video/b7NZfkqFc6k/2018.html
【2】陶哲轩(Terry Tao) :The blue-eyed Islanders Puzzle https://terrytao.wordpress.com/2008/02/05/the-blue-eyed-islanders-puzzle/
【3】知乎论坛:一个关于数学归纳法的悖论问题 https://www.zhihu.com/question/21262930/
【4】MediaWiki: Common knowledge https://en.wikipedia.org/wiki/Common_knowledge_(logic)
【5】Scott Alexander: IT WAS YOU WHO MADE MY BLUE EYES BLUEHTTP://SLATESTARCODEX.COM/2015/10/15/IT-WAS-YOU-WHO-MADE-MY-BLUE-EYES-BLUE/
【鸣谢】多谢转来视频的群友,使我接触到了新知识。也感谢和我讨论的群友,使我学习消化了这些新知识!群友的“发令枪”一说醍醐灌顶,使我豁然开朗!
【抵赖】 老康一贯现学现卖、急用先学。缪误之处敬请指正!老康这厢有礼了!
2018年9月1日波士顿
作者投稿