【五维魔方】5维3阶魔方复原教程(基于MC7D)
能够玩五维3阶的程序:
MagicCube5D (需科学):http://www.gravitation3d.com/magiccube5d/
MC7D :https://superliminal.com/andrey/mc7d/
MPUlt :https://superliminal.com/andrey/mpu/
MagicCube5D

官网的程序介绍:
http://www.gravitation3d.com/magiccube5d/features.html
MPUlt

MPUlt也是比较眼花的。
本文使用MC7D(推荐使用)。方法仍然是层先法。

参考链接:
https://www.bilibili.com/read/cv10866196
是我之前的4维教程。本文用到的很多4维的公式以及思路等都不再重复。
基础认识
首先理解它如何表示5维:除了原本四个维度,多出了从左到右贯穿的第五个维度。

粉色块与左边的紫色是同一个块,绿色与右边的紫色是同一块。这里含义是:左边位于紫色胞与粉色胞交界处,右边位于紫色胞与绿色胞交界处。
注意MC7D其实展示了9个胞,除了显然的7个胞外,粉红色的胞和深绿色的胞除中心块以及与K胞相交的2色块外,其余都已展示。

此处将第五个维度位于左边的胞叫做W(west)胞,位于右边的叫E(east)胞。
对某个色块按右键,可以将其所在块高亮:

右边show cubies 可以选择显示某几种块:

Highlight by color可以选择仅高亮某几种颜色:

旋转
MC7D没有做旋转动画,因此一开始不好理解。转动n维魔方,就是转动它的n-1维的胞。只要确定 i)被转动的胞,ii)转动的方向,就可以确定这个转动。
‘2 clicks’要求点击同一个胞上的两个色块,同时确定转动的胞与方向。(简单起见,只点击2色块就可以了)
‘3 clicks’第一次点击确定转动的胞,后面点击两个不同的胞确定转动方向。
具体用那种转动自行决定,下面用‘2 clicks’的转动方式,演示魔方的转动。
比如:依次点击Tr 二色块,Tf 二色块:

这就是熟知的Tu旋转。
还有一些没见过的旋转:
依次点击Tu 二色块,Te 二色块(T胞E胞相交的2色块,点击T胞对应部分):

这个旋转看上去在4维里面没有见过,但如果调整视角(按住ctrl依次点击R胞,E胞,L胞)后:

可以发现这就是一次普通的Tf旋转,只不过不在之前的维度进行。这里也是将L与R胞视角替换为W与E胞的例子。
如果依次点击Er 二色块(这个块是R胞旁的小色块,点击该2色块E胞的部分),Ef 二色块:

只要再按住ctrl点击E胞,可以发现这是一次E胞上的旋转:

记号
旋转理解以后便可以引入记号。继续拓展Ray Zhao's Notation。
R(right),L(left),U(up),D(down),F(front),B(back),T(top),K(kata),E(east),W(west)表示十个需要转动的胞。
r,l,u,d,f,b,t,k,e,w 指明另外两个胞,用于指示转动方向。
由于MC7D只能实现每次90度的旋转,没法绕其他轴旋转,因此写法默认Xxx。如:
Trf,表示点击Tr 二色块,再点击Tf 二色块实现的旋转。
Tre,表示点击Tr 二色块,再点击Te 二色块实现的旋转。
Erf,表示点击Er 二色块,再点击Ef 二色块实现的旋转。
为了公式更加易读,不妨就记 Trf 叫做 Tu,Erf 叫做 Eu,这比较符合以前4维的记号。Tre 在4维没有对应,则不更改。因此一个小写和2个小写含义是不同的。
特别地,对于单独一个大写如U,F,R等,如无说明都指Uk,Fk,Rk。(即Urf,Fur,Rfu)
用MX来代表中间层的旋转,具体操作是,按住数字键2点击第一个块,松开之后点击第二个块。
另外,由于关于某些胞的旋转没法一步实现,比如说 (Ter Tu) 这一步,不妨将其简写成(Ter-u)让公式看起来简洁些。
Macros(宏)的使用
Ctrl+M开始定义,先选择若干方块(4个或3个)进行定位,之后记录操作,Ctrl+M结束。个人建议,定位方块永远选择:Tf,Tr,Tu,Te四个二色块。这样不会忘记,不容易点错,而且方便各种镜像以及换视角操作。
Macros Autoref 可以勾选,这样程序会自动定位,不用手动点击定位块。Run By Click可以不勾选,这样方便做逆:

还有一点,MC7D下的5维,实际上还有两种不一样的视角:


这其实不影响宏的执行。程序会将更加靠左的胞判定为W胞,将更加靠右的胞判定为E胞。执行的时候只要明白这一点就行了。
关于公式的镜像翻转
本文的大部分公式,都只给出了部分方向,但是如何进行各种镜像操作?其实有若干方法,一是,将公式中需要镜像的部分对应更改。假设要镜像的是W与E胞,如果是已经用宏定义好了公式,并且选择定位方块是:Tf,Tr,Tu,Te的话,这时候只要不勾选Macros Autoref,定位方块点击Tf,Tr,Tu,Tw,得到的就是将W与E镜像翻转的公式。同理,将公式R与L镜像翻转的话,只要将原本点击Tr变成Tl,其余不变即可。MC7D程序允许在定义宏的时候执行其他宏,所以将镜像的公式定义成新的宏也是很方便的。
另一种方法是,调整魔方视角,对于E胞上的公式,如果按住ctrl,点击U胞两次,点击E胞两次以后,这相当于又是W胞的公式。鼠标左键拖动将魔方上下翻转,也相当于公式左右的翻转,不过对于MagicCube5D就没法这样做了。还有一些公式的逆就是其镜像。具体按实际情况即可。
p.s. 程序默认的E胞绿色与B胞颜色的区分度较小,个人推荐将其设置为白色。
更多的MC7D操作,查阅原网页:
https://superliminal.com/andrey/mc7d/instr.html
关于5维方向的旋转直观理解:
对于Txe,Txw等等的旋转,可以用一种直观的方式来理解。
观察Tue这一旋转:

可以理解为,T胞从左到右拆成3个3维立体,它们都分别进行了类似Tf这样的变换:

于是外层的色块便相应地做 W-> U-> E-> D-> W 这样循环。明白这点对调整W与E的色向有很大帮助。

开始复原
步骤:Cross - F2L - S2L - T2L – OLL – PLL – 特殊情况
Cross:复原8个2色块
明白魔方以后就是显然的,按照4维里的原则还原:
1. 找到该块,旋转能直接将T的颜色合并好,然后通过“Tx”的旋转将另一个颜色正确合并。
2. 找到该块,旋转能将另一个颜色X合并好,然后通过X颜色胞体的旋转将面块合并到T胞。


F2L(first two layers):24对2色块加3色块

F2L1:3色块
1. 当K胞的色块不在T胞时
i. 没有E胞色块:
Tu Ru Tu’ Ru’

ii. 有E胞色块且不在T胞:
Teu Eft Tue Etf

iii. E胞的块在T胞上:
Tfe Fke Tef Fek

2. K胞的色块在T胞上:
i. 没有E胞色块:
Ru Tr2 Ru’

ii. 有E胞色块:
Eft Tr2 Etf

上面看起来是5种,实际上只有两种情况,是否有E胞色块是可以通过调整视角来改变的。总体而言灵活应对,不需要拘泥于公式。当然为了问题简单化,下文依然会将不同视角的公式列举出来,并且附上相应的视角调整关系。
F2L2:2色块
1. 没有E胞色块:
( Tu’ Fu’ Tu Fu )( Ru’ Fu Ru Fu’)

2. 有E胞色块且不在T:
( Tfe Fke Tef Fek )( Etf Fek Eft Fke )
上式等同于将原公式R,L胞置换为E,W胞以后的视角。

3. 有E胞色块且在T:
用第二条公式的逆:


S2L(second two layers):32对3色块加4色块

S2L1:4色块
1. K胞色块不在T
i. 没有E胞色块:
( Ru’ Dt’ Ru Dt )( Ru Dt’ Ru’ Dt )

ii. 有E胞色块且不在T:
( Ru’ Eu’ Ru Eu ) ( Ru Eu’ Ru’ Eu )
等同于D,U胞换为E,W胞。

iii. 有E胞色块且在T:
( Rek Der Rke Dre )( Rke Der Rek Dre )
等于F,B换为E,W。

2. K胞色块在T
用 ( Ru Tr2 Ru’) 的RKT变换:
i. 有E胞色块:
Ru Ef’-tr Ru Etu2 Ru’ Eut-rt Ru’

ii. 没有E胞色块:
Ru Der-f Ru Dte2 Ru’ Det-f’ Ru’
等同于D,U换为E,W。

S2L2:3色块
1. 没有E胞色块:
( Tu’ Dr Tu’ Dr’)( Tu Dr Tu Dr’)( Tu Df’ Tu Df )( Tu’ Df’ Tu’ Df )

2. 有E胞色块且不在T
( Tu’ Eft Tu’ Etf )( Tu Eft Tu Etf )( Tu Ert Tu Etf )( Tu’ Ert Tu’ Etr )
等同于D,U换为E,W。

3. E胞色块在T:
( Ter Det Ter Dte )( Tre Det Tre Dte )( Tre Df’ Tre Df )( Ter Df’ Ter Df )
等同于F,B换为E,W。

T2L(third two layers):16对4色块加5色块

T2L1:5色块
1. K胞色块不在T:
i. E胞色块不在T:
Etu ( R’ Tu’ R Tu R Tu’ R’ Tu ) Eut

ii. E胞色块在T
Fr’ ( Reu Tre Rue Ter Rue Tre Reu Ter) Fr
等同于B,F换为E,W。

2. K胞色块在T
Etu ( R Tf R’ Tf’ R’ Tf R Tu’)( R’ Tu R Tu’ R Tu R’ Tf’) Eut

T2L2:4色块
1. E胞色块不在T
Etu ( U’ Tr U’ Tr’ U Tr U Tr’)( U Tf’ U Tf U’ Tf’ U’ Tf ) Eut

2. E胞色块在T
Fr’ ( Ure Tue Ure Teu Uer Tue Uer Teu )( Uer Tf’ Uer Tf Ure Tf’ Ure Tf ) Fr
等同于B,F换为E,W。

T2L的这一堆公式,原理都是将D胞上与E胞相交的一段抽出来T胞,然后做RKT变换,再放回去。

OLL:翻转T胞色块
2色、3色、4色块的翻转与4维魔方完全一样,注意旋转调整以及W胞,E胞视角的调整即可,本文便不再重复。
原翻单棱公式 ( Rtf Tlf Lkf Tlf )2 在这个程序没法直接实现,于是要转换成:
( Ru-k2 Tu-r2 Lu-k2 Tu-r2 )2
翻转5色块:
1.
( Lu’ Tu Ru Tu’ )( Lu Tu Ru’ Tu’ ) Ur2 Eu Ur2 Eu’ ( Tu Ru Tu’ Lu’ )( Tu Ru’ Tu’ Lu ) Ur2 Eu Ur2 Eu’

2.
( Ru Tu Ru’ Tu Ru Tu2 Ru’) Ur2 Eu Ur2 Eu’( Ru Tu2 Ru’ Tu’ Ru Tu’ Ru’) Ur2 Eu Ur2 Eu’

3.
( R Tf R2 Tf’ R’)( Tf R’ Tf’ R ) ( Tf R’ Tf’ R’) Eu (R Tf R Tf’)( R’ Tf R Tf’)( R Tf R2 Tf’ R’) Eu’

4.
Lu’ ( R Tf R2 Tf’ R’ )( Tf R’ Tf’ R )( Tf R’ Tf’ R’ ) Eu ( R Tf R Tf’ )( R’ Tf R Tf’ )( R Tf R2 Tf’ R’ ) Eu’ Lu

5.(鱼头)
注意RKT方法每次降一个维度,因此要对4维中的公式转换,原公式:( R Tf R Tf’)( R’ Tf R Tf’)( R Tf R2 Tf’ R’),转换后:
( R Tu’-er R Tre-u )( R Tu’-er R’ Tre-u )( R’ Tu’-er R Tre-u )( R Tu’-er R’ Tre-u )( R Tu’-er R Tre-u )( R2 Tu’-er R’ Tre-u R’ )

这里RKT的对象是T胞与E胞相交处的9个色块,将其当作3维的魔方。
这个方法得到的公式已经比较长了,因为比起4维的公式又翻了将近3倍长度。

PLL:还原下一个减一维的魔方
先用3棱循环公式调整2色块: MRu2 Tu’ MRu’ Tu2 MRu Tu’ MRu2
剩下的部分就是一个4维魔方了:

同理,用RKT方法,还原这个4维魔方即可。
但是此处还有一点小小问题就是,用RKT方法再加上用这样的视角还原非常困难。
首先建议,将W(或E)胞调整到T上:

如上图的话,剩下的就是E胞位置一个未还原的4维,不妨高亮E胞色块使得更好看一点:

然后,记录一些单步的RKT变换:
Ru : Etu R Eut
Tr : Etr R Ert
Tu : Ef-tr R Ert-f’
F : Eu’ R Eu
Fr : Eft-tr R Ert-tf
Fu : Eu’-tu R Eut-u
L : Eu2 R Eu2
Lu : Eu2-tu R Eut-u2
不断使用这些步骤,来进行4d-cross,以及各种4维上需要的调整旋转。
上述步骤尽管不是必需的,但是非常好用。增加了一些额外步数,但可以大大减少思考的时间。
4d-cross 略
4d-F2L1
1. K胞色块不在T:用 5d-S2L1 有E胞色块的情况:
( Ru’ Eu’ Ru Eu ) ( Ru Eu’ Ru’ Eu )
2. K胞色块在T:用 5d-S2L1 有E胞色块的情况:
Ru Ef’-tr Ru Etu2 Ru’ Eut-rt Ru’
4d-F2L2
用 5d-S2L2 有E胞色块的情况:
( Tu’ Eft Tu’ Etf )( Tu Eft Tu Etf )( Tu Ert Tu Etf )( Tu’ Ert Tu’ Etr )
4d-S2L1
1. K胞色块不在T,用 ( Ru’ Dt’ Ru Dt )( Ru Dt’ Ru’ Dt ) 的变换:
( Ru’ Etu-tr Ru’ Ert-ut ) ( Ru Etu-tr Ru Ert-ut ) ( Ru Etu-tr Ru’ Ert-ut ) ( Ru’ Etu-tr Ru Ert-ut )

2. K胞色块在T,用 ( Rf U Tr U2 Tr’ U Rf’ ) 的RKT转换:
Rf Ef-ft ( Rf Eu-r Rf Er’-u’ Rf2 Eu-r Rf’ Er’-u’ Rf Etf-f’) Rf’

4d-S2L2
用 ( Rf F’ Tu MF’ Tu’ F Tu MF Tu’ Rf’ ) 的RKT转换:
Rf Eu’-ft ( Rf’ Eu-r’ Rf Ef’-r MRf’ Er’-f Rf’ Ef’-r )( Rf Er’-f Rf Ef’-r MRf Er’-f Rf’ Ert-r ) Rf’

4d-OLL
翻转2色块:( Fu Tu Ru Tu’ Ru’ Fu’) 转换:
( Fu Etf Fu Eu Fu Eu’ )( Fu’ Eu Fu’ Eft Fu’ Etr )

翻转3色块:( Ru Tu Ru’ Tu Ru Tu2 Ru’) 转换:
( Ru Etr Ru Ert )( Ru’ Etr Ru Ert )( Ru Etr Ru2 Ert ) Ru’

翻单棱 ( R2 Ru’ Tu Tr2 L2 Lu’ Tu Tr2 )2 转换:
( R2 Etu R’ Ef R Eut R2 Etr R2 Etu R’ Ef’ R Eut R2 Ert )2

翻转4色块:直接使用前面OLL翻5色块的公式即可。
4d-PLL
首先调整中心块, ( MR2 U’ MR’ U2 MR U’ MR2 ) 转换:
( MRu2 Etr Ru’ Ert )( MRu’ Etr Ru2 Ert )( MRu Etr Ru’ Ert MRu2 )

继续剩下一个3维魔方,此时已经套娃了两次RKT方法,公式大大加长。
同样的,以下是除R以外的5个单步旋转RKT两次转换:
F => Tu’ R Tu => Ef-tr R’ Ert-f’ R Ef-tr R Ert-f’
U => Tf R Tf’ => Eu’-tr R Ert-u R Eu’-tr R’ Ert-u
D => Tf’ R Tf => Eu’-tr R’ Ert-u R Eu’-tr R Ert-u
B => Tu R Tu’ => Ef-tr R Ert-f’ R Ef-tr R’ Ert-f’
L => Tu2 R Tu2 => Ef-tr R2 Ert-f’ R Ef-tr R2 Ert-f’
就算觉得4d下用RKT做不定向的旋转不容易做错,到了3d这部分的RKT也已经超出了大部分人的大脑承受力了,平均一步3d上的旋转将会变成5d的4到6步,就算旋转目标明确,仍然非常难以保证旋转时不出错,这时候还是老老实实做变换后的单步旋转吧。
3d-cross 略
3d-F2L1
1. D的色块在Ruf :( R U R’ U’ ) 转换:
( R Eu’-tr R Ert-u R Eu’-tr R’ Ert-u )( R’ Eu’-tr R Ert-u R’ Eu’-tr R’ Ert-u )

2. D的色块在Fdr:( R U’ R’ U )2 转换:
[( R Eu’-tr R Ert-u R’ Eu’-tr R’ Ert-u ) ( R’ Eu’-tr R Ert-u R Eu’-tr R’ Ert-u )]2

3. D的色块在U:( R U’ R’ U F’ U F U’) 转换:
( R Eu’-tr R Ert-u R’ Eu’-tr R’ Ert-u ) ( R’ Eu’-tr R Ert-u R Ef-tr R’ Ert-f’ ) ( R’ Ef-tr R Ert-f’ R Ef-tr R’ Ert-f’ ) ( R Ef-tr R Ert-f’ R’ Eu’-tr R’ Ert-u )

3d-F2L2
二层:( R U’ R’ U’ F’ U F U ) 转换:
( R Eu’-tr R Ert-u R’ Eu’-tr R’ Ert-u ) ( R’ Eu’-tr R Ert-u R’ Eu’-tr R’ Ert-u ) ( R’ Eu’-tr R Ert-u R Eu’-tr R’ Ert-u ) ( R Eu’-tr R Ert-u R Eu’-tr R’ Ert-u )

3d-OLL
顶层十字 ( F R U R’ U’ F’) 转换:
( F Er’-tf F Eft-r F Eu-tf ) ( F’ Eft-u’ F Eu-tf F Eft-u’ ) ( F’ Eu-tf F’ Eft-u’ F’ Eu-tf ) ( F Etu F’ Eft-u’-f’ F’)

鱼头 ( R U R’ U R U2 R’) 已在前面给出:
( R Tu’-er R Tre-u )( R Tu’-er R’ Tre-u )( R’ Tu’-er R Tre-u )( R Tu’-er R’ Tre-u )( R Tu’-er R Tre-u )( R2 Tu’-er R’ Tre-u R’ )
3d-PLL
三棱 ( MR2 U’ MR’ U2 MR U’ MR2 ) 转换:
( MR2 Eu’-tr R Ert-u R’ Eu’-tr R’ Ert-u ) ( MR’ Eu’-tr R Ert-u R2 Eu’-tr R’ Ert-u ) ( MR Eu’-tr R Ert-u R’ Eu’-tr R’ Ert-u ) MR2

三角:( R B’ R F2 R’ B R F2 R2 ) 转换:
( R Ef-tr R Ert-f’ R’ Ef-tr R’ Ert-f’ ) ( R Ef-tr R’ Ert-f’ R2 Ef-tr R Ert-f’ ) ( R’ Ef-tr R Ert-f’ R Ef-tr R’ Ert-f’ ) ( R Ef-tr R’ Ert-f’ R2 Ef-tr R Ert-f’ ) R2

特殊情况
5维开始以上的维度,新增了一种单翻角块特殊情况:

OLL有一条非常好用的翻单棱公式:( Ru-k2 Tu-r2 Lu-k2 Tu-r2 )2 。用它很容易构造交换子公式,最终结果:
a:( Ru-k2 Tu-r2 Lu-k2 Tu-r2 )2 ,
b: ( Ef’ Lfe-k’ B’ L Ef )
公式:a b a^(-1) b^(-1)
即
( Ru-k2 Tu-r2 Lu-k2 Tu-r2 )2 ( Ef’ Lfe-k’ B’ L Ef ) ( Tu-r2 Lu-k2 Tu-r2 Ru-k2 )2 ( Ef’ L’ B Lk-ef Ef )
(注意于本文而言 L 与 Lk 都指 Luf,B 指 Bru)
剩下两种特殊情况就是4维中的类推:
1. 5维对4维的特殊情况有一条非常简单的公式:
R Tue2 R’ Tue2

像下图只是上述特殊情况的视角转换:
Tr Eu2 Tr’ Eu2

2. 对三维的特殊情况则没有这么简便:
原:[( L R Tf R2 Tf’)( L’ R’ Tf R Tf’)]2 R2 转换:
[( L R Eu’-tr R Ert-u R2 Eu’-tr R’ Ert-u ) ( L’ R’ Eu’-tr R Ert-u R Eu’-tr R’ Ert-u )]2 R2


完成5维3阶的还原

同样的,复原完成就可以选择将log文件邮件发给 roice@gravitation3d.com

这个名人堂人数暂时还不多,在MagicCube5D主页可以点进去。(需科学)
实际上我也只还原了1次,这次还原中,除PLL外所有步骤共花费约2800步,PLL花费约2000步。本方法步数极限或许在四千左右。
结语
其实弄懂5维的层先以后,再往下的6维,7维魔方的还原思路也已经很明确了。推出各维度的单步旋转,F2L,S2L,T2L,Fourth 2 L,Fifth 2 L ,…,OLL公式,每次PLL就是又再还原n-1维的魔方(甚至可以只推导单步旋转,直接每降一维就‘升级’一次旋转方式来还原,省去繁琐的推导)。推公式只要掌握RKT方法,出来的公式都是能用的。
但是这里问题就是,RKT方法随着维度增长,长度是指数爆炸的,而且每次PLL都要还原下一维魔方的话,‘爆炸’就更明显了。可以预见如果不改变思路,6维将花费数万步,7维将花费数十万步来还原。
另一种可行的思路是,完成前两层以后(或者完成oll后),最后一层不再还原n-1维魔方,而是推导2色块,3色块,4色块,……,n色块交换公式一步到位。不清楚能够省下多少步数,作为想法提出。