魔方吧·中文魔方俱乐部

标题: 11.公式变换集合的相关运算(二探) [打印本页]

作者: 庄周蝴蝶    时间: 2004-5-24 18:12:55     标题: 11.公式变换集合的相关运算(二探)

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}


作者: zhangyang306wc    时间: 2009-7-1 17:49:37






欢迎光临 魔方吧·中文魔方俱乐部 (http://bbs.mf8-china.com/) Powered by Discuz! X2