有一个市镇,只有一家旅馆,这个旅馆与通常旅馆没有不同,只是房间数不是有限而是无穷多间,房间号码为1,2,3,4,……我们不妨管它叫希尔伯特旅馆。 有一天开大会,所有房间都住满了,后来来了一位客人,一定要住下来。 旅馆老板于是引用“旅馆公理”说:“满了就是满了,非常对不起!”正好这时候,聪明的旅馆老板女儿来了,她看见客人和她爸爸都很着急,就说:“这好办,请每位顾客都搬一下,从这间房搬到下一间”。 于是1号房间的客人搬到2号房间,2号房间的客人搬到3号房间……依此类推。 最后1号房间空出来,请这位迟到的客人住下了。
第二天,又来了一个庞大的代表团要求住旅馆,他们声称有可数无穷多位代表一定要住,这又把旅馆老板难住了。 老板的女儿再一次来解围,她说:“您让1号房间客人搬到2号,2号房间客人搬到4号,…,K号房间客人搬到2K号,…,这样,1号,3号,5号,…房间就都空出来了,代表团的代表都能住下了。 ”
这一天,这个代表团每位代表又出新花招,他们想每个人占可数无穷多间房安排他们的亲朋好友,这回连老板的女儿也被难住了。 聪明的女儿想了很久,终于想出了办法。 她把第一个客人的第一间房记做(1,1),第二间房记做(1,2),第K间房记作(1,K)…,第二个客人的第一间房记作(2,1),第二间房记做(2,2),…,这样就有一串两个号码的房间。 现在把它按1,2,3,4,…排好,按箭头的顺序排号:(1,1)住1号,(1,2)住2号,(2,1)住3号,(3,1)住4号,(2,2)住5号,…问题不就又解决了吗!
这个故事说明了无穷集合和有限集合的一个特点,即有限集合不能通过单映射映射到自己的真子集合,而无穷集合可以通过单映射映射到自己的真子集合。 (单映射是指,设F是集合A到集合B的映射,对B中的一个象,它在A中只有唯一元素作为原象,就称F是单映射。 )