最早为镜屋问题给出间接解答的是 1958 年 12 月 25 日发表在《新科学家》杂志上的一篇文章。彭罗斯父子——莱昂内尔·彭罗斯和罗杰·彭罗斯怕大家在圣诞节闲得没事做,便提出了好几个谜题。其中一个问题值得我们注意:是否有可能造出一张台球桌,有 A 和 B 两个区域,从 A 区域击出的球永远不可能到达 B 区域(反之亦然)?
这是怎么得出的呢?为了理解这个问题,我们先考察一下正方形镜屋 ABCD 中会有怎样的光路。假设一束激光从顶点 A 射出,如果照到其他任何一个顶点,必会原路反射回来,或者被视为吸收了也可以,反正不影响光路。如果光线射到正方形的一边,那就会发生反射,而且遵循反射定律,即反射角等于入射角。
这一现象也可以解释为:光线射到正方形的一边后,在下一相同正方形镜子中沿直线传播。如果把正方形镜屋复制为无穷多的方格,那么在正方形内折来折去的光路也可以被视为无穷多方格中穿过的一条直线。从点 A 发出的光若要回到点 A ,或者说,这条光若想经过点 A 到达无穷多复制方格中的另一个点 A ,则必须至少一次经过 B 、C 和 D 三顶点之一(图 2.5)。
图 2.5 正方形 ABCD 里的光路图
从点 A 射出的光线要回到点 A ,必须要经过其他顶点。如果把光路视为无穷多方格里的一条直线,就好理解多了。
利用这种性质,我们可以制造一个无法全部照亮的黑屋,方法是将正方形 ABCD 以对称的方式重复多次,让所有顶点 B 、C 、D 都处于房间的角落(图 2.6)。而有两个顶点 A 不在角落。这样一来,如果光线从这两个点 A 中的一点出发,要到达另一点,必须经过其他顶点至少一次。但所有其他顶点都在角落里,光线照到这些顶点就会沿原路反射回去,永远不可能到达另一个 A 点。于是,我们构造出了一个多边形黑屋,其中至少有两点,从这两点出发的光线无法把屋子全部照亮。
图 2.6 32 边形的黑屋
这座黑屋以正方形为基础构造而来。黑屋里有两点,从这两点出发的光线无法照亮整个屋子。从蓝色点 A 出发的光线要到达另一个蓝色点 A' ,必然要经过其他颜色的顶点。但这些点都在角落,照到它们的光线只会反射回起点 A 。