ルービックキューブの操作(続き)

  • 前の記事にも書いたとおりルービックキューブの操作について考えた
  • 6つの面のそれぞれにおける、定方向の90度回転を基本操作とすることとした
  • この基本操作をもう少し分解しよう
  • ルービックキューブにおいて、ある面を90度回転させる操作は、2つの操作を同時に行うことである
    • 1つ。選んだ面Siにある9つの小正方形のうち、外周に接する8個の小正方形のみを動かして、中央の1小正方形は動かさない。8個の小正方形に外周に沿ってi-0,i-1,...,i-7と番号を振れば、この動きは、i-x -> i-((x+2)%%8)、ただし、(u%%t)はuをtで割った余り
    • もう1つ。選んだ面Siに接する4つの面、Sj_(i,1},Sj_{i,2},S_{j,3},S_{j,4}のS_iに接する3個の小正方形を動かす。この小正方形は12個あって、これに、j-0,j-1,...,j-11と番号を振れば、今度はj-y -> j-((y+3)%%12)、という動き
  • 言い換えれば、ある面での回転は、全部で9x6=54ある小正方形のうち、動く可能性のある8x6=48個に関して、6個に関して巡回させる、かつ、12個に関して巡回させる、ようなうごき。併せて18個の小正方形に含まれる2つの巡回
  • 6つの面に対応する複合巡回に相当する行列で演算が定まる
  • さらに言えば、回転させる面はいつも同じにして、回転の前に、キューブ全体を回転させ、面を回転させたのちにキューブを逆回転させることにすれば、5つの面の選び方に対応するキューブの回転行列(これも2つの軸に関する90度の回転の繰り返しとみなせば、5通りのキューブ回転は2種類の回転で記述できる)と、ある1つの面について作成した、面回転に相当する行列との、6つの行列でも表現できる
  • ちなみに、3面が表に出ている8個の小キューブと2面が表に出ている12個の小キューブとに分け、そのS_8C_3^8の組合せとS_{12}C_2^12の組合せとのさらに直積をとると、「ルールを無視したルービックキューブの操作」に関する群となり、そこに、8個内の制約と12個内の制約と、8個-12個間の制約を入れると、「ルールに従ったルービックキューブの操作」の群になるそうだ