02/07/15 17:27
>>64
以下のような理由でこの問題には数式処理による厳密さを保った解は表現しき
れないよいうちょっとむずな話です。
いまちょっと時間がないのですが これは 昨年の9月か10月ころ話題になった
のですが
(C1) solve(x^n -x^m,x);
(D1) [x^n = x^m]
とよくにています。 このとき nとmの場合分けの複雑さから 数式的には
ほとんど正しい解または解法はない。ということだったようです。
いまの問題に即していえば lambdaを消去して
(C30)algsys([beta*r*k-alph*w*l,x-k^alpha*l^beta],[k,l]);を解くことにな
るのですがとけません。alphを3として betaを5とした場合がとけるので結果は
(C43) algsys([3*r*k-5*w*l,x-k^5*l^3],[k,l]);
(D43) [[K = (SQRT(2)*125^(1/8)*%I+SQRT(2)*125^(1/8))*(w^3*x/r^3)^(1/8)
/(2*27^(1/8)),
L = (3*SQRT(2)*5^(3/8)*%I+3*SQRT(2)*5^(3/8))*r^(5/8)*x^(1/8)
/(10*3^(3/8)*w^(5/8))],
[K = 125^(1/8)*%I*(w^3*x/r^3)^(1/8)/27^(1/8),
L = 3*5^(3/8)*%I*r^(5/8)*x^(1/8)/(5*3^(3/8)*w^(5/8))],
[K = (SQRT(2)*125^(1/8)*%I-SQRT(2)*125^(1/8))*(w^3*x/r^3)^(1/8)
/(2*27^(1/8)),
L = (3*SQRT(2)*5^(3/8)*%I-3*SQRT(2)*5^(3/8))*r^(5/8)*x^(1/8)
/(10*3^(3/8)*w^(5/8))],
[K = -125^(1/8)*(w^3*x/r^3)^(1/8)/27^(1/8),
L = -3*5^(3/8)*r^(5/8)*x^(1/8)/(5*3^(3/8)*w^(5/8))],
[K = -(SQRT(2)*125^(1/8)*%I+SQRT(2)*125^(1/8))*(w^3*x/r^3)^(1/8)
/(2*27^(1/8)),
L = -(3*SQRT(2)*5^(3/8)*%I+3*SQRT(2)*5^(3/8))*r^(5/8)*x^(1/8)
/(10*3^(3/8)*w^(5/8))],
[K = -125^(1/8)*%I*(w^3*x/r^3)^(1/8)/27^(1/8),
L = -3*5^(3/8)*%I*r^(5/8)*x^(1/8)/(5*3^(3/8)*w^(5/8))],
[K = -(SQRT(2)*125^(1/8)*%I-SQRT(2)*125^(1/8))*(w^3*x/r^3)^(1/8)
/(2*27^(1/8)),
L = -(3*SQRT(2)*5^(3/8)*%I-3*SQRT(2)*5^(3/8))*r^(5/8)*x^(1/8)
/(10*3^(3/8)*w^(5/8))],
[K = 125^(1/8)*(w^3*x/r^3)^(1/8)/27^(1/8),
L = 3*5^(3/8)*r^(5/8)*x^(1/8)/(5*3^(3/8)*w^(5/8))]]
これでbetaを6とすると
(C49) algsys([6*r*k-3*w*l,x-k^3*l^6],[k,l]);
(D49) [[K = (SQRT(3)*%I-1)*w^(2/3)*x^(1/9)/(2*4^(1/3)*r^(2/3)),
L = (SQRT(3)*%I-1)*r^(1/3)*x^(1/9)/(2^(2/3)*w^(1/3))],
[K = -(SQRT(3)*%I+1)*w^(2/3)*x^(1/9)/(2*4^(1/3)*r^(2/3)),
L = -(SQRT(3)*%I+1)*r^(1/3)*x^(1/9)/(2^(2/3)*w^(1/3))],
[K = w^(2/3)*x^(1/9)/(4^(1/3)*r^(2/3)),
L = 2*r^(1/3)*x^(1/9)/(2^(2/3)*w^(1/3))]]
つまりもし数式的に解けると仮定すると この単純な2つのalph betaにたいし
てさえ 解の個数つまり表現形がことなるので 場合分けが必要ですね。
では 一般のalphとbetaのとき どれだけ 場合わけしてしめしたらよいのでしょ
うか? ということで不可能としているのです。
ただし 実用上は 他の数式処理システムのように 厳密性に目をつぶって
えいやーとひとつの解をほしいときもあります。この場合もそれにあたるでしょ
う。こんなときは ほしい解の正当性をじぶんが 保証できる場合にあたり
mmmsolveとかいう名前でsolveの関数を書かなければいけません。