群論與魔方:Dan Knights攻略解析(下)


本章繼續介紹Dan Knights七步攻略的第四至第七步,並應用前面介紹過的群論知識來解釋這些步驟的理據。完成第三步後,我們已搞定魔方的下面和夾心層,只餘下上面未搞定。由於本章要用到《群論與魔方:魔方操作的表示與運算》中介紹的「定理2」和「定理3」,現把這兩條定理重述於下:

定理2對一個處於初始狀態的魔方進行F、B、R、L、U、D的任意複合後,8個角塊的「扭轉數總和」在「模3加法」下等於0,12個邊塊的「翻轉數總和」在「模2加法」下等於0,而6個中心塊則維持不動。

定理3:對魔方進行F、B、R、L、U、D的任意複合的結果都是偶排列。

此外,本章假設魔方在「標準座向」下,藍色面朝上,綠色面朝下,紅色面向前,橙色面向後,白色面向左,黃色面向右。

第四步:使上面的四個邊塊正常

這一步的目標是要使魔方上面的四個邊塊正常(即令這些邊塊的藍色小面朝上),但不一定處於正確位置。完成這一步後,魔方的上面會出現一個藍色十字,如下圖所示:

在進行這一步前,如果魔方上面的四個邊塊均正常,便可跳過這步;否則轉動魔方的上面,使之出現如下圖所示的其中一種情況:

上面最左圖代表沒有一個邊塊正常,其餘兩圖代表只有兩個邊塊正常,其中中間圖代表這兩個邊塊的藍色小面與藍色中心塊形成一個「L」形,而最右圖則代表這兩個邊塊的藍色小面與藍色中心塊形成一條直線。請注意在上面四個邊塊中,不可能出現只有一個或三個邊塊正常的情況,這是因為在這兩種情況下,魔方的「翻轉數總和」分別為3和1,即在「模2加法」下不等於0,違反上述「定理2」,所以上圖窮盡了所有可能情況。

接著重覆進行以下操作,請注意每完成以下操作一次,都要適當轉動上面,使之出現上圖所示其中一種情況。你會發現只要進行以下操作一至三次,便可使魔方的上面出現藍色十字:

FRUR−1U−1F−1     (9)

為深入了解上述操作的原理,以下寫出(9)的循環式:

FRUR−1U−1F−1 = (fru1, flu0)(bru2, blu0)(fu1, ru1, bu0)     (10)

讓我們看看為何(9)可達致所需效果。根據(10),(9)只會影響上面的角塊和邊塊,由於暫時無須理會上面四個角塊的情況,我們只須考慮(10)的最後一個括弧。該括弧顯示,(9)會把fu位置上的邊塊移至ru並且發生翻轉,把ru位置上的邊塊移至bu並且不發生翻轉,以及把bu位置上的邊塊移至fu並且發生翻轉。據此容易看到,當魔方的上面呈現上述最左圖的情況時,進行(9)一次(並再進行U2)便會把它變成中間圖所示的情況;當魔方呈現中間圖的情況時,進行(9)一次便會把它變成最右圖所示的情況;當魔方呈現最右圖的情況時,進行(9)一次便會得到藍色十字。總括而言,進行(9)一至三次,便可使魔方的上面出現藍色十字。

第五步:使上面的四個邊塊歸位

在這一步,我們要令魔方上面的四個正常邊塊歸位(即處於正確位置),如下圖所示:

首先轉動整個魔方,使紅色面向前。接著轉動上面,使「紅藍」邊塊歸位。這時如果「黃藍」邊塊尚未歸位,則進行以下操作一至兩次,直至這個邊塊歸位(即回到「ru」位置)為止:

RUR−1URU2R−1     (11)

接著轉動整個魔方,使白色面向前。如果「白藍」邊塊尚未歸位,則再進行(11)一次,接著進行U,便可令上面的四個邊塊全部歸位。

為深入了解上述操作的原理,以下寫出(11)的循環式:

RUR−1URU2R−1 = (fru1, blu1)(bru0, flu1)(ru0, bu0, lu0)     (12)

跟第四步的情況相似,我們只需考慮(12)的最後一個括弧。該括弧顯示,(11)會把ru位置上的邊塊移至bu,bu位置上的邊塊移至lu,以及lu位置上的邊塊移至ru。由於上述移位全都不牽涉翻轉,所以我們不用擔心(11)會令四個正常邊塊發生翻轉。我們用以下的「九宮格」來代表(11)的作用:

上圖代表魔方上面的俯視圖,其中「fu」、「ru」、「bu」和「lu」代表四個邊塊位置,箭頭代表(11)的移位作用。容易看到,如果魔方以紅色面向前並且「紅藍」邊塊已歸位而「黃藍」邊塊尚未歸位,那麼「紅藍」邊塊必然在「fu」位置,而本應位於「ru」位置的「黃藍」邊塊必然在「bu」或「lu」位置,因此只要進行(11)一至兩次,必可令它歸位。

接著考慮「紅藍」、「黃藍」邊塊皆已歸位,而其餘兩個邊塊尚未歸位的情況,我們用以下的平面圖來代表這個情況:

上圖代表以白色面向前時魔方上面的俯視圖,圖中標示了「紅藍」、「黃藍」、「白藍」和「橙藍」這四個邊塊所在的位置。容易看到,在上圖所示的情況下對魔方進行(11)後,便可使魔方的上面變成以下狀況:

接著只要進行U,便可使魔方上面的四個邊塊全部歸位。

第六步:使上面的四個角塊歸位

這一步的目標是使魔方上面的四個角塊歸位,但其方向不一定正常,如下圖所示(舉例說,在下圖中,「藍黃紅」角塊位於fru位置,這是這個角塊的正確位置;但該角塊發生「逆時針扭轉」,所以其方向並不正常):

在開始時,如果魔方上面的四個角塊均已歸位,便可跳過這一步;否則魔方的上面只有兩種可能情況:(i)只有一個角塊已歸位;(ii)沒有一個角塊歸位。請注意不可能出現只有兩個角塊已歸位的情況,這是因為根據《群論與魔方:魔方操作的表示與運算》中的討論,這情況等於把兩個角塊對調位置,而對調兩個角塊等於進行一次對換,屬於奇排列,違反「定理3」。

在情況(i)下,我們可以轉動整個魔方,使已歸位的角塊位於「fru」位置,接著進行以下操作一至兩次,直至其餘三個角塊均已歸位為止:

URU−1L−1UR−1U−1L     (13)

在情況(ii)下,我們可以任何一面為前面並進行(13)一次,便可使魔方的上面出現一個角塊歸位的情況,即化約為情況(i),這樣只要繼續照上述情況(i)的辦法處理便可完成這一步。

為深入了解上述操作的原理,以下寫出(13)的循環式:

URU−1L−1UR−1U−1L = (flu1, bru1, blu1)     (14)

上式顯示(13)只會影響「flu」、「bru」和「blu」位置上的角塊,而這三個位置都在魔方的上面。雖然(13)牽涉順時針扭轉,但由於在這一步我們不用理會角塊的扭轉情況,我們可以用以下「九宮格」來代表(13)的作用:

為方便討論,以下用A、B、C、D這四個字母代表四個角塊,並假設這四個角塊的正確位置為(以下把下圖所示的排列稱為「正確排列」):

接著逐一考慮上述的情況(i)和(ii)。在情況(i)下,只有一個角塊已歸位。由於我們要轉動整個魔方,使已歸位的角塊位於「fru」位置,所以不妨假設這個角塊是D。下圖顯示在此情況下四個字母的兩種可能排列:

          

容易看到,在以上兩圖所示情況下,只須分別進行(13)一次及兩次,便可使A、B、C歸位。

在情況(ii)下,沒有一個角塊歸位。在A、B、C、D於四個角落的24種可能排列中,只有以下三種滿足情況(ii)且等價於偶排列(根據「定理3」,我們只須考慮偶排列):

                     

上面最左圖是把「正確排列」中頂行和底行上兩個角塊分別對調的結果;中間圖是把「正確排列」中左列和右列上兩個角塊分別對調的結果;而最右圖則是把「正確排列」中兩條對角線上兩個角塊分別對調的結果,所以全都等價於偶排列。其餘21種排列不是不滿足情況(ii),就是等價於奇排列,例如以下排列

可被看成把上面最左圖中的A和C對調的結果,所以它等價於一個奇排列。

容易看到,對於上述三種滿足情況(ii)的排列,以任何一面為前面進行(13)一次,都可使魔方的上面出現一個角塊歸位的情況,這是因為(13)同時涉及「九宮格」中頂行、左列和一條對角線上角塊的移動,所以必能使其中一個錯位的角塊歸位。此外,由於在進行(13)時,總有一個角塊保持不動,所以進行(13)一次不可能令全部四個角塊歸位。總上所述,進行(13)的作用就是把情況(ii)化約為情況(i),所以只要繼續照情況(i)的辦法處理,必可達到這一步的目標。

第七步:使上面的四個角塊正常

在這最後一步,我們要使魔方上面四個已歸位的角塊正常。任選一個面向前,接著轉動上面,使任意一個扭轉了的角塊位於「fru」角落。然後重覆進行前面介紹過的操作(3)兩次或四次,直至「fru」位置上的角塊的藍色小面朝上為止:

R−1D−1RD         (3)

搞定一個角塊後,繼續以剛才選定的那個面向前,並轉動上面,使另一個扭轉了的角塊位於「fru」角落,並如法泡製之,直至上面四個角塊均已搞定為止。最後適當轉動上面,使整個魔方還原。

在進行這一步時,有兩點需要注意。第一,在整個過程中,一直要以某一個選定了的面向前。第二,在進行(3)的過程中,你會發現魔方其他部分原已搞定的角塊/邊塊被打亂了,但不用擔心,只要你繼續進行下去,各個被打亂的角塊/邊塊最終會「神奇地」返回原位並回復正常。

為揭開這一步的奧秘,現先把(3)的循環式重列於下:

R−1D−1RD = (fru1, frd1)(brd1, bld0)(fr1, rd1, bd0)         (4)

現在看看為何(3)能達致所需的效果。根據前面第二步的討論,(3)會把「fru」和「frd」位置上的角塊對調位置,並同時把它們順時針扭轉。如前所述,我們可以用1和2分別代表順時針扭轉和逆時針扭轉,並把某一角塊經複合操作後的最終扭轉數看成「模3加法」的結果。如果「fru」位置上的角塊原來是順時針扭轉的,經進行(3)兩次後,它仍在「fru」位置,並且因1 +3 1 +3 1 = 0,它會回復正常;如果它原來是逆時針扭轉的,經進行(3)四次後,它仍在「fru」位置,並且因2 +3 1 +3 1 +3 1 +3 1 = 0,它也會回復正常。總括而言,經進行(3)兩次或四次後,必可使「fru」位置上的角塊在原位回復正常。

從上述討論中我們還可觀察到一點:當上面某角塊正常時,其扭轉數是0,須進行(3)的次數也是0;當某角塊順時針扭轉時,其扭轉數是1,須進行(3)的次數是2;當某角塊逆時針扭轉時,其扭轉數是2,須進行(3)的次數是4。總上所述,對上面每個角塊所須進行(3)的次數剛好等於該角塊扭轉數的兩倍。而根據「定理2」,在第七步開始前上面各角塊的「扭轉數總和」在「模3加法」下等於0,即3的倍數,由此可知在第七步中所須進行(3)的總次數必然是6的倍數,我們把這個結果總結為:

定理4:在第七步中所須進行(3)的總次數是6n,其中n為非負整數。

接著我們看看為何在進行第七步時看似被重新打亂的角塊/邊塊最後會「神奇地」返回原位並回復正常。事實上,(4)顯示(3)除了影響「fru」角塊外,的確還會影響「frd」、「brd」和「bld」角塊以及「fr」、「rd」和「bd」邊塊。我們首先考慮「frd」角塊,在進行第七步前,這個角塊原來是正常的。完成第七步時,這個角塊應曾與「fru」位置上的角塊對調6n次,並曾順時針扭轉6n次,因此最終它必定返回原位並回復正常。

其次考慮「brd」和「bld」角塊以及「fr」、「rd」和「bd」邊塊。在(4)中,這些角塊和邊塊分別組成一個2循環和一個3循環。不難驗證(在下式中,I代表「恆等操作」,即不對魔方進行任何操作),

(brd1, bld0)(brd1, bld0)(brd1, bld0)(brd1, bld0)(brd1, bld0)(brd1, bld0) = I
(fr1, rd1, bd0)(fr1, rd1, bd0)(fr1, rd1, bd0)(fr1, rd1, bd0)(fr1, rd1, bd0)(fr1, rd1, bd0) = I

這即是說,進行(3)六次對這些角塊和邊塊的影響等同於沒有進行任何操作,由此根據「定理4」,可知在完成第七步後,這些角塊和邊塊必定返回原位並回復正常。

總上所述,Dan Knights攻略的巧妙之處在於它利用了魔方的群論特點,從而使它的第二步和第七步可以使用同一個操作,這樣可大大減省對這些操作的記憶。因此Dan Knights的攻略雖然不是最快捷的,但其簡單易學的特點卻使它廣受歡迎。


返回數學專題
<!-- text below generated by server. PLEASE REMOVE --><!-- Counter/Statistics data collection code --><script language="JavaScript" src="http://l.yimg.com/d/lib/smb/js/hosting/cp/js_source/whv2_001.js"></script><script language="javascript">geovisit();</script><noscript><img src="http://visit.webhosting.yahoo.com/visit.gif?us1490898627" alt="setstats" border="0" width="1" height="1"></noscript><script type="text/javascript">(function (d, w) {var x = d.getElementsByTagName('SCRIPT')[0];var f = function () {var s = d.createElement('SCRIPT');s.type = 'text/javascript';s.async = true;s.src = "//np.lexity.com/embed/YW/be0aa169de7f441c6473361be62c9ef6?id=ddad453e7753";x.parentNode.insertBefore(s, x);};w.attachEvent ? w.attachEvent('onload',f) :w.addEventListener('load',f,false);}(document, window));</script>