11.公式变换集合的相关运算(二探)
让我们看看前一个章节的 c 问题,为了计算组合公式的变换集合,我们写出了七八行字,非常繁琐,能否根据两个公式的变换集合,直接得出组合公式的变换集合呢,我们一起来讨论一下。
为了计算变换集合我们必须清楚每一个块位置上的块是如何变化的,当一个块位置发生变换,必定最多牵涉到三个块发生变化。
考察一个变换因子Bm>Bn,其中Bm称为变化因子的前端,Bn称为后端。
完整变换描述:设有两个变换因子Bm>Bn和Bn>Bp,注意到Bn相同,简写为Bm>Bn>Bp,那么对于Bn块位置则清楚地表述了是什么地方的块到Bn块位置来,以及Bn块位置的块到什么地方去,所以我们称Bm>Bn>Bp为Bn块位置的完整变换描述。其中Bm称为Bn块位置的前端,Bn称为本端,Bp称为Bn块位置的后端。
对于一个公式的变换集合,我们可以针对每一个块位置,改写成完整变换描述形式。例如:变换集合 {c1>c2>c7,c5>c6,c4,c8,c3}可改写为 {c7>c1>c2,c1>c2>c7,c3>c3>c3,c4>c4>c4,c6>c5>c6,c5>c6>c5,c2>c7>c1,c8>c8>c8}
从这个完整变换描述形式的变换集合可以看出:所有完整变换描述的前端都是唯一的,本端都是唯一的,后端都是唯一的。
完整变换定理:设有两个公式A、B,包含了Bn块位置的完整变换描述分别为Ba1>Bn>Ba2,Bb1>Bn>Bb2,那么公式A+B将包含变换因子Ba1>Bb2。
证明:建立竖式求可得到的A+B相应的变换。(x为未知块位置)
a1 a2 b1 b2 n
{Ba1>Bn>Ba2}
--------------------------------------------
x n b1 b2 a1
{Bb1>Bn>Bb2}
--------------------------------------------
x n x a1 b1
将得到以下结果:Ba1>Bb2,Ba2>x,Bb1>Bn>Ba2,Bb2>x,去除掉与x相关的项得到两个变换元素Ba1>Bb2,Bb1>Bn>Ba2。
特别注意Bb1>Bn>Ba2的结果,它不是一个有效的结果(这个问题也困扰了我一段时间),不是有效的原因在于:1. Bn>Ba2是公式A的结果,是先执行得到的,我们可以知道Bn块位置的块到了Ba2块位置,但是在这之后公式B将Ba2块位置的块移动到了何处却不清楚。 2. Bb1>Bn是公式B的结果,是后执行得到的,我们可以知道Bb1块位置的块到了Bn块位置,但是在这之前公式A将何处的块移动到了Bb1块位置上去却不清楚。
相反Ba1>Bb2却是一个确实的结果,公式A解释了是何处的块位置移动到了Bn块位置(答案是Ba1),公式B解释了Bn块位置的块移动到了何处去(答案是Bb2),在这里作为本端的Bn其实充当了一个中间媒介作用。
注意在魔方的公式运算里不符合交换律,即A+B <> B+A。这里B+A将得到结果Bb1>Ba2。(但好像符合结合律,即(A+B)+C = A+(B+C),未证明)
问题a:已知两个公式A、B的变换集合分别为{c1>c2>c4,c6>c8},{c4>c3,c6>c7>c1},求解A+B的变换集合。
这里我们对本端进行考察,首先写出两个公式的完整变换描述形式(如果足够熟练,应该可以省略这个步骤)。
{c4>c1>c2,c1>c2>c4,c3>c3>c3,c2>c4>c1,c5>c5>c5,c8>c6>c8,c7>c7>c7,c6>c8>c6}
{c7>c1>c6,c2>c2>c2,c4>c3>c4,c3>c4>c3,c5>c5>c5,c1>c6>c7,c6>c7>c1,c8>c8>c8}
------------------------------------------------------------------------------------------------
然后写出结果来
{c4>c1>c2,c1>c2>c4,c3>c3>c3,c2>c4>c1,c5>c5>c5,c8>c6>c8,c7>c7>c7,c6>c8>c6}
{c7>c1>c6,c2>c2>c2,c4>c3>c4,c3>c4>c3,c5>c5>c5,c1>c6>c7,c6>c7>c1,c8>c8>c8}
------------------------------------------------------------------------------------------------
{c4>c6, c1>c2, c3>c4, c2>c3, c5>c5, c8>c7, c7>c1, c6>c8}
将结果进行化简并排序,得到
{c1>c2>c3>c4>c6>c8>c7,c5}
问题b:已知四个公式A、B、C和D的变换集合分别为{c1>c2>c4},{c4>c3},{c5>c6>c3>c2},{c8>c7,c4>c5>c1}求解A+B+C+D的变换集合。
其实考察前端比考察本端可能更为方便,这里我们对前端进行考察,首先写出四个公式的完整变换描述形式,省略完整变换描述形式。
A{c1>c2>c4}
B{c4>c3}
C{c5>c6>c3>c2}
D{c8>c7,c4>c5>c1}
-------------------------
以c1作为前端考察公式A,得到c1>c2,以c2作为前端考察公式B得到c2>c2,以c2作为前端考察公式C得到c2>c5,以c5作为前端考察公式D得到c5>c1,所以最终结果是c1>c2>c2>c5>c1 = c1>c1(这里不是变换因子,只是表达了块位置在各个公式阶段的流动过程)
以c2作为前端逐步进行考察得到c2>c4>c3>c2>c2 = c2>c2
以c3作为前端逐步进行考察得到c3>c3>c4>c4>c5 = c3>c5
以c4作为前端逐步进行考察得到c4>c1>c1>c1>c4 = c4>c4
以c5作为前端逐步进行考察得到c5>c5>c5>c6>c6 = c5>c6
以c6作为前端逐步进行考察得到c6>c6>c6>c3>c3 = c6>c3
以c7作为前端逐步进行考察得到c7>c7>c7>c7>c8 = c7>c8
以c8作为前端逐步进行考察得到c8>c8>c8>c8>c7 = c8>c7
所以A+B+C+D = {c3>c5>c6,c7>c8}
问题c:已知公式A的变换集合为{c3>c6,c5>c2>c1},公式B的变换集合未知,公式A+B的变换集合为{c6>c7,c2>c3},求解公式B的变换集合。
试着推理:用问题a的方式,以c1作为前端考察流动过程,并写出完整变换描述,未知的地方用?表示。我们将得到
c1>c5>c2 ----------- 写出c1作为前端在公式A中的完整变换描述
?1>c5>?2 ----------- 写出c5作为前端在公式B中的完整变换描述,前端后端均未知
---------------
c1>c1 ----------- 写出c1作为前端在公式A+B的变换因子,这是已知的
我们可以看到这样的结果 c1>c5>?2 = c1>c1,所以?2 = c1,公式B包含了变换因子 c5>c1。
前端定理:设Bn>Ba为公式A的一个变换因子,Bn>B(a+b)为公式A+B的一个变换因子,那么公式B必然包含变换因子Ba>B(a+b)。前端是指公式A和公式A+B的前端一致。
了解了原理,我们可以用下面方式来解决
以c1作为前端考察A,A+B得到c1>c5,c1>c1, 所以c5>c1
以c2作为前端考察A,A+B得到c2>c1,c2>c3, 所以c1>c3
以c3作为前端考察A,A+B得到c3>c6,c3>c2, 所以c6>c2
以c4作为前端考察A,A+B得到c4>c4,c4>c4, 所以c4>c4
以c5作为前端考察A,A+B得到c5>c2,c5>c5, 所以c2>c5
以c6作为前端考察A,A+B得到c6>c3,c6>c7, 所以c3>c7
以c7作为前端考察A,A+B得到c7>c7,c7>c6, 所以c7>c6
以c8作为前端考察A,A+B得到c8>c8,c8>c8, 所以c8>c8
所以公式B的变换集合为{c1>c3>c7>c6>c2>c5}
问题d:公式A的变换集合未知,已知公式B的变换集合为{c3>c6,c5>c2>c1},公式A+B的变换集合为{c6>c7,c2>c3},求解公式A的变换集合。
试着推理:用问题a的方式,以c1作为本端考察流动过程,并写出完整变换描述,未知的地方用?表示。我们将得到
?1>c1>?2 ----------- 写出c1作为前端在公式A中的完整变换描述,前端后端均未知
c2>c1>c5 ----------- 写出c1作为前端在公式B中的完整变换描述
---------------
c1>c5 ----------- 写出c5作为后端在公式A+B的变换因子,这是已知的
我们可以看到这样的结果 ?1>c1>c5 = c1>c5,所以?1 = c1,公式A包含了变换因子 c1>c1。
后端定理:设Bb>Bn为公式B的一个变换因子,B(a+b)>Bn为公式A+B的一个变换因子,那么公式A必然包含变换因子B(a+b)>Bb。后端是指公式B和公式A+B的后端一致。
了解了原理,我们可以用下面方式来解决
以c1作为后端考察B,A+B得到c2>c1,c1>c1, 所以c1>c2
以c2作为后端考察B,A+B得到c5>c2,c3>c2, 所以c3>c5
以c3作为后端考察B,A+B得到c6>c3,c2>c3, 所以c2>c6
以c4作为后端考察B,A+B得到c4>c4,c4>c4, 所以c4>c4
以c5作为后端考察B,A+B得到c1>c5,c5>c5, 所以c5>c1
以c6作为后端考察B,A+B得到c3>c6,c7>c6, 所以c7>c3
以c7作为后端考察B,A+B得到c7>c7,c6>c7, 所以c6>c7
以c8作为后端考察B,A+B得到c8>c8,c8>c8, 所以c8>c8
所以公式B的变换集合为{c1>c2>c6>c7>c3>c5}
|