魔方和群论
暑假课程预告
报告人:顾险峰 美国纽约州立大学石溪分校计算机系,哈佛大学数学科 学和应用中心客座教授
时间: 2018年7月8日、15日、22日、29日 每周日 14:30-16:00
地点: 清华大学近春园西楼三层报告厅
题目: 计算共形几何
直播: online.conformalgeometry.org
魔方是广大人民群众喜闻乐见的智力玩具,无数人沉浸其中,废寝忘食,痴迷不已。但是绝大多数魔方爱好者通过识别模式,运用记忆的口诀来解魔方,对于口诀如何得来,如何创造新的诀窍并没有深入思考。这里,我们希望能够用魔方来揭示其背后更加普适的规律,从而可以将其思想深化和推广,应用于更加复杂的场景。我们主要用群论来进行探讨。
群论本质上是描述大自然中的对称性,探究各种变换中存在的内在结构。群论是现代数学不可或缺的工具,更是现代物理的理论基础。但是群论相对抽象,难以琢磨,比较难以入门。魔方这一游戏足够精巧,能够反映出群论大部分的思想,同时也足够复杂,使得群论能够得以运用。因此,通过深入思考魔方就可以便捷地领悟到群论的要义。
群论的基本概念
一个群(Group)由集合G和乘法算子*构成,满足:
封闭性(closure)
结合律(associative)
单位元(identity element)
逆元(invrese element)
令S是群G的子集,如果G中的任意一个元素都可以表示成S中元素及其逆元的有限乘积,则我们说S生成(generate)了G。由S生成的子群记成
一个群(G,*)作用(action)在一个非空几何A是一个映射
如果G作用在集合A上,那么
群中两个元素
令
令
; ,这里 是A的单位元; , 是A的正规子群。
对称群
n个字母排列(permutation)在复合(composition)下构成n阶对称群,记成
一个k-轮换
任何一个排列可以分解成分离的轮换之积。例如,
可以分解为轮换之积
任意一个置换
魔方状态表示
图1. 魔方(Rubik's Cube)的初始状态。
如图1所示,魔方整体是一个立方体,被分成
魔方的每个侧面可以整体转动,顺时针转动90度的操作被称为是基本操作,依次记为
我们将魔方拆开,再重新组装回去,所有的角块和棱块的位置被打乱。同时每一角块的三个面的顺序也被旋转,每个棱块的两个面也被颠倒,如此得到了魔方的一个状态(state)。所有的状态构成魔方的状态空间,记为
图2. 角块上的位置标记。
为了精确描述魔方的状态,我们将魔方的54个面进行位置标记。在魔方群的作用下,6个中心块上的面位置不动,因此我们只需标记余下48个面。魔方群的每个操作可以被等价地表示成1到48的一个排列,即对称群
另外一种更为直观的方法是将角块和棱块进行位置标记。如图2所示,对于每个角块我们任意选择一个面写上位置序号,共有8个角块从1到8排列。
图3. 棱块上的位置标记。
如图3所示,对于每个棱块,我们任意选择一个面写上位置序号,共有12个棱块从1到12排列。我们将初始状态定义的标记方式记为魔方坐标系,在操作中,魔方的角块和棱块在变动,但是魔方坐标系保持不动。
假设
某一个角块的位置,这样操作
图4. 定向标记。
如图4所示,我们为每个面添加另外一种标记,称之为定向标记。考察每个角块,带有位置标记的面上定向标记为0,另外两个面上标记为1和2,使得角块定向标记为{01,2}的三个面顺时针排序。同样,考察每个棱块,带有位置标记的面上定向标记为0,另外的面上标记为1。我们用向量
合法状态的必要条件
假设
我们考察角块定向的变化。假设
这里
比如,我们令h为基本操作,即魔方群的生成元,得到如下运算规则:
我们看到
由此,我们得到一个状态
,角块和棱块排列的奇偶性相同; ,角块的总扭转为0; ,棱块的总翻转为0.
如果一个状态
交换子和共轭 Commutator & Conjugate
魔方群非常庞大,我们需要寻找符合人类直觉的关键几个操作:3个角块位置(position)的轮换(cycle),3个棱块位置的轮换,两个角块定向(orientation)的旋转(twist),两个棱块定向的翻转(flip)。这几个关键复杂操作由简单操作依照两条法则合成:交换子(commutator)和共轭(conjugate)。交换子可以生成3-轮换,共轭可以实现坐标变换。
交换子 魔方群一个非阿贝尔群,给定两个操作
共轭
角块位置3-轮换
我们下面用交换子和共轭来构造关键操作。首先,我们构造角块3-轮换。
图5. 操作
由
图6. 交换子
图7.
棱块位置3-轮换
我们将和Front面、Back面中间的一层顺时针旋转90度,这一操作记为
图8.
图9.
角块定向旋转
图10. 符号定向标记。
为了考虑角块和棱块定向的变换,我们需要使用更为复杂的标记法,如图10所示。在初始位置,魔方的顶(底、左、右、前、后)侧面(side)的每个面(facet)都标记成U(D、L、R、F、B)。每个角块可以由其所有面(facet)的标记有序组来表示。例如,第一个角块
每个操作被表示成循环之积,例如
图11.
如图11所示,
图12.
考察操作
即ufl逆时针旋转120度,ubr顺时针旋转120度,如图13所示。
图13. 角块定向旋转操作。
我们可以用共轭的方法实现任意一对角块定向的旋转。例如,
图14. 角块定向旋转操作。
经过共轭操作,我们可以实现任意两个角块定向的旋转,一个顺时针,另外一个逆时针旋转120度。
棱块定向翻转
图15.
图15详细解释了
如图16所示,4次幂消去4-循环,我们得到
图16.
同理,如图17所示,
图17.
图18. 棱块定向翻转,
两种操作复合之后,我们得到非常简洁的棱块定向翻转公式:
经过共轭操作,我们可以实现任意两个棱块定向的同时翻转。
合法状态的充分条件
给定一个魔方状态
,角块和棱块排列的奇偶性相同; ,角块的总扭转为0; ,棱块的总翻转为0.
我们来构造魔方群中的一个操作
我们分4步来构造,这种构造方法实际上给出了解魔方的一种算法。
1. 角块位置归位 如果
将
2. 棱块位置归位 我们将
3. 角块定向归位 我们将
4.棱块定向归位 我们将
经过上面4不操作之后,我们将魔方变换到初始状态。由此,我们证明了魔方的基本定理。
定理(魔方基本定理)魔方状态
,角块和棱块排列的奇偶性相同; ,角块的总扭转为0; ,棱块的总翻转为0.
魔方群的结构
通过以上分析,我们看到魔方群可以分解成位置变换群,和定向变换群的半积(semi-product)。位置变换群可以分解成角块位置变换群,棱块位置变换群和的
定理(魔方群结构)魔方群可以分解为:
角块位置3-循环生成了
1981年7月,Thistlethwaite 给出了魔方群的另外一种分解方法,将魔方群分解成系列嵌套子群,
Thistlethwaite的思想就是逐步降解魔方所处的群到更小的子群,最后到单位子群,也即还原状态。Thistlethwaite的思想已经被消化成人类可用的算法,52步之内可以解出所有状态。
上帝之数
我们看到,如果将魔方拆解,重新组装,总共会有
因此得到
SuperFlip需要至少20步才能被解决。
图19. SuperFlip。
总结
这里我们应用群论的基本知识来证明魔方的可解性,其基本思想是将魔方群分解成较为简单的子群的乘积,然后构造每个子群的生成元。生成元的构造过程中主要使用了交换子和共轭的方法,化繁为简。这种方法具有很强的普适性,可以直接推广到其他复杂情形。
请长按下方二维码,选择 “识别图中二维码”,即可关注。
【老顾谈几何】邀请国内国际著名纯粹数学家,应用数学家,理论物理学家和计算机科学家,讲授现代拓扑和几何的理论,算法和应用。
回复“目录”,可以浏览往期精华;回复“智商”,可以阅读“如何从大脑形状判断一个人的智商”;回复“象牙塔”,可以阅读“纯粹数学走出象牙塔”;回复“概览”,可以阅读“计算共形几何概览”。