[表示 : 全て 最新50 1-99 101- 201- 2chのread.cgiへ]
Update time : 06/08 21:03 / Filesize : 116 KB / Number-of Response : 256
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【数式処理システム】 Maxima 【Common Lisp】



1 名前:132人目の素数さん mailto:sage [2010/10/17(日) 09:09:43 ]
フリーの数式処理システムMaximaに関するスレです。
MaximaはCommon Lispで書かれており、GNU GPLライセンスのもと
配布されています。各種UNIX、Windows、OSXで動作します。

■関連サイト
□Maxima, a Computer Algebra System (英語) - 公式サイト
 ttp://maxima.sourceforge.net/
□Maxima Beginner's FAQ (英語) - 初心者向けのFAQ
 ttp://beshenov.ru/maxima/faq.html
□Imaxima (英語) - Emacs用のGUIフロントエンド
 ttp://members3.jcom.home.ne.jp/imaxima/Site/Welcome.html
□Maxima interest list (英語) - Maximaに関するメーリングリスト
 ttp://www.ma.utexas.edu/mailman/listinfo/maxima
□Maximaで遊ぼう (日本語) - マニュアルの日本語訳や、インストールガイド等
 ttp://www.bekkoame.ne.jp/~ponpoko/Math/maxima/MaximaMAIN.html
□数式処理システムMaximaで楽をしよう (日本語) - 初心者向けのMaxima導入編
 ttp://www1.bbiq.jp/kougaku/maxima.html

52 名前:132人目の素数さん mailto:sage [2011/02/11(金) 20:49:57 ]
二項定理も同じふるまい。

(x+y)^n-sum(binomial(n,i)*(x^i)*(y^(n-i)),i,0,n);


53 名前:51=52 mailto:sage [2011/02/11(金) 23:35:21 ]
>>52
xcasでは、nが未定のままでも

(x+y)^n-sum(((n!)/((k!)*(n-k)!))*(x^k)*(y^(n-k)),k,0,n)

が0になった。
CASが二項定理を知っているかどうかだけの違い?

54 名前:132人目の素数さん mailto:sage [2011/02/12(土) 00:11:08 ]
>>51は、xcasでもsimplify出来なかった。

55 名前:51 mailto:sage [2011/02/12(土) 23:21:27 ]
>>51
これで望んだ結果が出ました。

declare(sum,additive);
sd:expand(sum((x[i]-ave)^2,i,1,n)/n);
subst(sum(x[i], i, 1, n)/n,ave,sd);


56 名前:132人目の素数さん mailto:sage [2011/02/13(日) 14:22:04 ]
これもうまくいかないです。

(%i1) is(a[i]^2>=0);
(%o1) true
(%i2) is(sum(a[i]^2,i,1,n)>=0);
(%o2) unknown
(%i3) n:6;
(%o3) 6
(%i4) is(sum(a[i]^2,i,1,n)>=0);
(%o4) true


57 名前:132人目の素数さん [2011/02/13(日) 14:22:54 ]
Maximaってマスマティカからの乗換えでも十分使える性能ある?

58 名前:132人目の素数さん mailto:sage [2011/02/13(日) 15:43:49 ]
これも知らないって。

assume(a^2>=b^2);
assume(b>=0);
is(abs(a)>=b);

教科書の証明の中では、自明であるかのように使われているのに。

59 名前:132人目の素数さん mailto:sage [2011/02/15(火) 23:07:43 ]
assumeのヘルプにもあんまり推論昨日は強くないと書かれてたような気がしたが

60 名前:132人目の素数さん mailto:sage [2011/02/16(水) 20:17:54 ]
>>59
無理かなという気もしていた。

そもそも、どの問題もderive(TI-89のCAS)では歯が立たなかったし。
(高校レベルの範囲であるのは間違いないのですが。)

『はじめてのMaxima』のネット公開版は書籍版の2倍近くに増えていて、
述語論理とか数学基礎論の話題も含まれるようになっていたので、
読んでみるとこのあたりの事情にも理解が深まるかもしれないですね。

TI-89は50ページほどの取扱説明書を読めば、使い方も限界も把握できる感じですが、
Maximaは1000ページくらいの本を読んでも、何が可能で何が不可能かよく分からない感じです。



61 名前:132人目の素数さん mailto:sage [2011/02/17(木) 00:38:52 ]
>何が可能で何が不可能かよく分からない感じです。

分かってる人いるのか?w

62 名前:132人目の素数さん mailto:sage [2011/02/18(金) 21:34:34 ]
>>61
それは、ゲーデルの不完全性定理みたいなもの?

63 名前:132人目の素数さん mailto:sage [2011/02/19(土) 15:19:04 ]
これもだめだ。
diff(%e^x,x,n)

書店でmathematicaの本を立ち読みしたら、sumの使用例では項数が固定になっていた。
CASは任意の自然数nについての答えを出すのが苦手なのかな。

64 名前:132人目の素数さん mailto:sage [2011/02/20(日) 00:05:44.53 ]
>>63
n
d x
--- (%e )
n
dx

って出るぞ?

65 名前:132人目の素数さん mailto:sage [2011/02/20(日) 00:30:16.91 ]
>>64
x
%e
と出て欲しい。

exp(x)を何階微分してもexp(x)になるのだから。

66 名前:132人目の素数さん mailto:sage [2011/02/20(日) 02:24:25.94 ]
>>65 数式処理ってそういう先回りした答えを出すものなのか?

ちなみにmathematicaでもn回微分と表示される
探せばそういう簡単化のオプションがあるのかもしれない

67 名前:132人目の素数さん mailto:sage [2011/02/20(日) 09:08:46.49 ]
>>66
Mathematicaでも出来ないと言われるとホッとしてしまうorz

しかし、これも記号処理だから出来て欲しいとは思う。

教科書見ると普通に

a[1]*b[1]+a[2]*b[2]+...+a[n]*b[n]

なんて式が出てくる。
nを決めないと答えが出てこないのでは、CASの面白みが半減する。

68 名前:132人目の素数さん mailto:sage [2011/02/20(日) 19:57:01.06 ]
級数解を閉形式にしたいってことなのか?
なんか言ってることに違和感を感じるんだが

69 名前:132人目の素数さん mailto:sage [2011/02/20(日) 21:25:25.71 ]
オープンソースだし
出来ないなら君が実装すればいい

70 名前:132人目の素数さん mailto:sage [2011/02/20(日) 21:29:34.58 ]
>>68
そこまで抽象的な理解はしてないです。

diff(%e^x,x,1)
diff(%e^x,x,2)
diff(%e^x,x,3)

と続くのに

diff(%e^x,x,n)

だと答えが出ない。

また、高校レベルの統計の公式

E((x-E(x))^2)=E(x^2)-E(x)^2

も、ユーザーがサンプル数を決めないと
成り立つか成り立たないか判定できないところが不思議だと思うわけです。

前提を一つ加えてスンナリ判定できるようになるなら面白いのですが。
(仮に自明でないとすれば、欠けてる前提は何なのでしょう)



71 名前:132人目の素数さん mailto:sage [2011/02/22(火) 21:30:33.98 ]
>>70
なんというか数式処理が出す形式的な回答に満足がいかない感じなのか
diff(%e^x,x,n) の評価が (d^n/dx^n)exp(x) というのは間違っていないし、
数式を処理する手順の表現として合っていると俺は思うんだが。

declare(n, integer)とかしても駄目みたいだな

72 名前:132人目の素数さん mailto:sage [2011/02/23(水) 00:17:14.09 ]
maxima
ttp://news.dengeki.com/elem/000/000/345/345986/

73 名前:132人目の素数さん mailto:sage [2011/02/23(水) 00:23:50.40 ]
>>71
もちろん、>>70で挙げたのも「形式的」な処理だとは思うのです。

しかし、xは式でOKなのに、nは数値でなければならない。
行列やベクトルの各要素は式でもOKだけど、要素数と次元数は数値でなければならない。
級数や数列の各項は式でもOKだけど、項数は数値でなければならない。

教科書の記述では上記のnも式であることが多いのに、
CASでは数値であることを要求されるのが不思議です。

Mathematicaもそうであるようですけど、学生など、これで不自由を感じないものなのか。

diff(%e^x,x,1))=%e^x
diff(%e^x,x,n-1)=%e^x
から、
diff(%e^x,x,n)=%e^x
が求まるのでも面白いですね。

diff(%e^x,x,1)=%e^x
は知識としてmaximaにコーディングされているだけだと思うのですが、それが
diff(%e^x,x,n)=%e^x
と実装されていれば良かったのか(再定義可能なのかも知れませんが)。

それとも
diff(%e^x,x,1)=%e^x
diff(%e^x,x,n)=%e^x
の2つの知識は、数学の専門家にとってはもう全然別の話題なのか。

74 名前:132人目の素数さん mailto:sage [2011/02/23(水) 02:02:33.38 ]
>diff(%e^x,x,1)=%e^x
>diff(%e^x,x,n)=%e^x
>の2つの知識は、数学の専門家にとってはもう全然別の話題なのか。

1段目は定義で2段目は1段目から数学的帰納法によって導かれる定理じゃないの?
defruleとか使ってみたらどうなんだろ

75 名前:132人目の素数さん mailto:sage [2011/02/23(水) 21:37:41.47 ]
>>74
defrule(rec,recdiff(%e^x,x,n),%e^x);
apply1(recdiff(%e^x,x,n),rec);

とやると、一応OKだったんですけど、

今度は、

apply1(recdiff(%e^x,x,1),rec);

が置換されない。

まだまだMaximaの勉強をしなくてはならないと思いました。

> 1段目は定義で2段目は1段目から数学的帰納法によって導かれる定理じゃないの?

前者と後者は「同値」で、どちらを公理として採用しても残る一方は導出できますね。
でも一般的なCASはその導出を行わない。「自明」ではない。

「同値」と「自明」の違いは、単に直感的でものではなく、
計算理論に基づく厳密なものなのかも。

76 名前:132人目の素数さん mailto:sage [2011/02/24(木) 00:13:57.67 ]
1+4と2+3は同値だけどどっちを公理にすればいいですか?w
maximaの勉強じゃなくて用語の定義を勉強しなおせよw

77 名前:132人目の素数さん mailto:sage [2011/02/24(木) 20:01:31.39 ]
>>76
自分が「同値」と「自明」の違いを整理しきれていないのはその通りだけど、
1+4や2+3が「命題」になるような体系も考え得るものなのですかね?

78 名前:132人目の素数さん mailto:sage [2011/03/04(金) 08:03:16.12 ]
できあいの関数はなさそうなので
n要素のm番目が1の単位ベクトルを作る関数を書こうとしてるのですが

/* これの中身が評価されれば求まる */
f(n,m):=makelist(x=m,x,0,n-1);

あと少しだと思うのですがうまくいきません
どうすればいいでしょうか

79 名前:132人目の素数さん mailto:sage [2011/03/04(金) 20:10:43.18 ]
自己解決。うまくはないけど行列経由で
g(n,m):=substpart("[",genmatrix(lambda([x,y],if y=m then 1 else 0),1,n),0)[1];

置換群の行列表現で計算するプログラムを書いたんですが
もう一箇所つまづいたのがリストのリストから行列を構成する所
buildq+spliceでうまくいきます。参考まで

80 名前:132人目の素数さん mailto:sage [2011/03/04(金) 20:20:28.84 ]
こうとかかね
f( n, m ) := makelist( (if i - 1 = m then 1 else 0), i, 1, n )
part が 1 からだから添え字 1 からの方が相性は良いかもしれないけど



81 名前:80 mailto:sage [2011/03/04(金) 20:25:00.78 ]
なんというタイミングの悪さ
80は忘れてくれ

82 名前:132人目の素数さん mailto:sage [2011/03/04(金) 21:06:38.53 ]
先頭が1で残り要素0の配列を作って、それを右にm-1回転させたりとか。
数学板で言うとバカにされそうなやり方w


83 名前:132人目の素数さん mailto:sage [2011/03/04(金) 21:34:13.84 ]
>>80
いやいや、こちらのほうが効率は良いので助かります。ありがとう。

84 名前:132人目の素数さん mailto:sage [2011/03/12(土) 20:37:50.70 ]
この計算は、nを定めなくても実行してくれますな。

sum(1,i,1,n)
sum(1/n,i,1,n)

しかし、

(%i1) is(product(i,i,1,n)=n!),n=10;
(%o1) true
(%i2) is(product(i,i,1,n)=n!);
(%o2) false

わからないならUnknownと表示すべきなのに……

85 名前:132人目の素数さん mailto:sage [2011/03/13(日) 17:12:20.93 ]
1,2,3,...
が自然数であるとして、
自然数のいずれでもありうるとされる文字"n"は自然数ではないというのが、問題なのかな。

a[1]*x+a[0]
a[2]*x^2+a[1]*x+a[0]

は多項式に該当するけど、

a[n]*x^n+a[n-1]*x^(n-1)+...+a[1]*x+a[0]

は多項式ではないみたいな。

86 名前:132人目の素数さん mailto:sage [2011/03/14(月) 20:10:20.30 ]
質問です。
方程式60*2^p=50*2^q(p,q are integer)をmaximaに入力させたいのですが、
p,qの最小の(p*qが)整数解を得るにはどのような入力をするべきでしょうか。

87 名前:132人目の素数さん mailto:sage [2011/03/20(日) 15:53:51.94 ]
高校レベルの定理が網羅されていないような気がする。

declare(a,real)$
declare(b,real)$
declare(c,real)$
declare(x,real)$
assume(equal(a*x^2+b*x+c,0))$
is(b^2-4*a*c>=0);

> (%o6) unknown

88 名前:132人目の素数さん [2011/03/22(火) 01:10:52.03 ]
>>87
Maximaは本当に推論は弱い(というか実装されていない)と思います。代わりに計算は強いので、
solve(a*x^2+b*x+c=0,x);
[x = -(sqrt(b^2-4*a*c)+b)/(2*a),x = (sqrt(b^2-4*a*c)-b)/(2*a)]
と答えてくれます。

ちなみにassume()って途中でpositiveかとか聞かれるのを抑制するのにはうまく使えるんです。

89 名前:132人目の素数さん mailto:sage [2011/03/22(火) 20:32:08.00 ]
>>88
どうもありがとう。

もしかしてMaximaが自分の用途に向いていないのでしょうか?

当初は数理ファイナンスの教科書の記述を辿る予定で、
そのために必要な操作を『はじめてのMaxima』で摂取するつもりだったのですが、
正直歯が立たないです。

その基礎知識を摂取するつもりで手を付けた群論の教科書も、
最初の定理の証明をMaximaにやらせるにはどうすればよいのか途方に暮れる始末。

こういう用途にはprologかMLなのでしょうか?

90 名前:132人目の素数さん [2011/03/22(火) 23:32:21.02 ]
実用的な定理証明システムなんてまだ無いので、定理の証明をMaximaにやらせるのは無理です。
数式変形ならMaximaでもできますから、まずは簡単な問題をMaximaで解いてみると良いです。
例えば、86の問題。
p,qの不定方程式60*2^p=50*2^q(p,q are integer)
をMaximaで解いてみると、どうなります?(一目瞭然ではありますが)。



91 名前:132人目の素数さん mailto:sage [2011/03/23(水) 04:12:45.16 ]
maxima,mathematicaは代数・記号処理ですから、gnur R言語の方がいいでしょうね。
もう少し「数学ソフト」と言うのはどういうのがあるかを調べた方がいいですよ。

92 名前:132人目の素数さん mailto:sage [2011/03/23(水) 15:48:37.06 ]
定理自動証明とかならCoq, Agdaあたりかな?少し毛色が違うけど

93 名前:132人目の素数さん mailto:sage [2011/03/23(水) 22:30:40.48 ]
>>90
> 実用的な定理証明システムなんてまだ無いので、定理の証明をMaximaにやらせるのは無理です。

無理ですか……
ポリアとかサイモンとか、結構古いんですけど。
やっぱり、サイモン先生はうそつき?

> p,qの不定方程式60*2^p=50*2^q(p,q are integer)
> をMaximaで解いてみると、どうなります?(一目瞭然ではありますが)。

q:a+p$
solve(60*2^p=50*2^q,a)$
rhs(%[1])$
radcan(%);
integerp(%);

> (%o15) false

p-qは整数でないので、pとqが同時に整数とはなりえない。
もうちょっとコンピュータ任せに出来れば面白いのですが。

94 名前:132人目の素数さん mailto:sage [2011/03/23(水) 22:55:55.86 ]
>>91
Rは数値処理ですね。(Maximaより先にR/APLのほうに触れています。)

(∀x (Px → Qx)) ∧ Pa → Qa

だって記号処理ですし、
everyやsomeという関数があったり、
『はじめてのMaxima』に外延/内包という記述もあったりで、期待はしていたのですが……

95 名前:132人目の素数さん mailto:sage [2011/03/23(水) 22:59:27.41 ]
>>92
具体的なソフトウェア名の提示ありがとうございます。
ドキュメントが英語なのは難ですが、英語の情報だけから目的にあったソフトウェアを探すのはもっと大変だと思います。
さすが、数学板住民ですね。

96 名前:132人目の素数さん [2011/03/24(木) 00:47:34.61 ]
>>94
私もRは数値処理って思ったんだけど、91さんが言いたいのは
数理ファイナンスならRの方が役に立つ、ということかも。違ってたら
ご指摘を。

93でやったような数式計算ならばMaximaは得意だと思うんです。数理
ファイナンスの数学の式計算(偏微分方程式のオンパレードみたいな
やつですよね)には使えないのかなあ。

>>92
CoqやAgda、普通の証明(ってなんだ?)にも使えそうでしょうか。
時代は進歩しているんですね。



97 名前:132人目の素数さん mailto:sage [2011/03/24(木) 20:26:02.40 ]
>>96
> 数理ファイナンスならRの方が役に立つ、ということかも。違ってたら

なるほど、そういう意味でしたか。

教科書は記号で書かれていても、
実務の世界ではモンテカルロシミュレーションが幅を利かせるらしいですね。

> ファイナンスの数学の式計算(偏微分方程式のオンパレードみたいな

それが放送大学の教科書では、ベクトルと行列なんですよ。
著者がへそ曲がりなのかも知れません。

ただ教科書は、大きさ未定義の数列、ベクトル、行列について記載されているので、
イラついていました。
>>87の定理も、教科書中でコーシー=シュワルツの不等式を証明するのに使われていたものです。

98 名前:132人目の素数さん mailto:sage [2011/04/02(土) 18:00:03.52 ]
>>92
CoqはOCaml、AgdaはHaskellで記述されているそうですね。
手元にSMLの入門書があるので、ML→Coqの順に攻略してみようかな。

あと、ちょっと気がついたのですが、
「新しい数学」の提唱者のケメニーとBASIC言語の開発者のケメニーって同一人物ですよね?

99 名前:98 mailto:sage [2011/04/02(土) 21:35:41.58 ]
>>98
> 「新しい数学」の提唱者のケメニーとBASIC言語の開発者のケメニーって同一人物ですよね?

検索してみると、このケメニーがジョン・マッカーシーを助教授としてダートマス大学に招いて、
LISPの開発はマッカーシーがダートマス大学の助教授だった頃に行われたとか。

すごく偉い人みたい。

100 名前:132人目の素数さん [2011/04/05(火) 02:08:43.33 ]
>>63
diff(exp(x),x,n)が簡約出来ない理由を調べました。comm-new.lispの中の
deriv(e)という関数が微分を行う関数群のentry pointです。この中でdiff
の第三引数の型をチェックしています。
この型がFIXNUM以外の場合には、名詞形を返す処理をしています。

ちなみにMaximaの機能拡張を使ってこの処理を実装するのは簡単でした。
matchdeclare([a,b],true);
tellsimpafter('diff(exp(a),a,b),exp(a));
でお終いです。これをmaxima-init.macにでもかいておけば所望の処理が
行われます。

最後になぜこいつが実装されていないのか、、、想像するに普通は欲張って
diff(exp(f(x)),x,n)を実装したくなりませんか?もちろんnが具体的な
数ならばちゃんと微分してくるのですが、変数の場合の一般的な公式が
よく分かりません。だからじゃないかな、、。
ちなみにdiff(exp(x),x,n)->exp(x) だけなら自明だし簡単に自分で
実装出来るのでわざわざ組み込まれてない気がします。



101 名前:132人目の素数さん mailto:sage [2011/04/06(水) 17:40:41.88 ]
>>100
ありがとうございます。
LISPのプログラムを解読できるなんて、スゴイですね。

> matchdeclare([a,b],true);

こっちの記述が、理解できていません。
『はじめてのMaxima』には、a,b部分が項の羅列でtrue部分が述語だとありました。
記述は簡単でも、概念が自分の理解を超えて抽象的なようです。

> diff(exp(f(x)),x,n)を実装したくなりませんか?もちろんnが具体的な

単純に使う立場として、
diff(%e^(k*x),x,n);
を入力してしまいました。
一般性を求め始めると切りがないのですね。

今はMLの教科書を読み進めているのですが、
正直、何から手を付けたものかちょっと途方に暮れています。

CASや定理自動証明などのコンピュータ使用を前提として、
中学・高校レベルの数学の教育方法を全面的に見なおす流れにはなっていないみたいですね。
'60年代の「新しい数学」や'90〜'00のグラフ電卓の時には、教育者の方々も熱中していたみたいですが。

102 名前:132人目の素数さん mailto:sage [2011/04/06(水) 17:51:32.43 ]
で?

103 名前:132人目の素数さん [2011/04/08(金) 01:51:01.86 ]
>>101

matchdeclare([a,b],true);
は変数a, bをパターン変数として宣言しています。どんなパターンに
マッチするかが述語で表されています。trueならばどんな式にもマッチする
のです。tellsimp, tellsimpafter, defruleなどでルールを定義する時には
パターン変数を使いたいですよね。その時には必ずmatchdeclare()のお世話に
なります。

104 名前:132人目の素数さん mailto:sage [2011/04/09(土) 19:24:44.71 ]
>>103
再帰の終了条件を指定するものなのだと思った方が良いようですね。

P(x):=x>0;
matchdeclare(a,P);
tellsimp(fact(a),a*fact(a-1));
tellsimp(fact(0),1);
fact(10);
fact(-10);
fact(x);

述語という語感から

matchdeclare(b,Human);
tellsimpafter(Human(b),Mortal(b));
Human(Socrates);

みたいな書き方をするイメージを受けていたのですが、
これだと、Humanという述語が真偽値を返すように具体的に定義されていないので、
HumanをMortalに置き換える規則が適用されない。

matchdeclare(b,true);

と書かなければならない。
この場合bを使って再帰的定義をすると、無限再帰になると。

105 名前:jrpp [2011/04/09(土) 22:04:34.43 ]
>> 104
3つ答えたいです。
1. 普通階乗を定義するのならmyfact(n):=if n>0 then n*myfact(n-1) else 1;

2. パターンマッチで計算を記述することも出来ますね。その意味では>>104
プログラムもアリだと思います。Prolog みたいですね。

3. 述語って「真偽を判定する関数」という意味だけです。そこから推論
してくれることはほとんどありません。Maxima は数式処理をするのであって
定理証明や推論や導出をしてくれるわけではないんです。
matchdeclare(a,P)とかけば、マッチされる側がPを満たせば、aにマッチする、
ということです。

106 名前:jrpp [2011/04/09(土) 22:16:42.80 ]
古い書き込みを見ていたら面白い問題が色々ありますね。
>> 29
Bin(n,r):=n!/(r!*(n-r)!);
s(p,n):=((n+1)^(p+1)-1-sum(sum(Bin(p+1,a)*k^a,a,0,p-1),k,1,n))/(p+1);
で、s(2,n);とやってもsum()が式に残る、ということですよね。

とにかくsum()を出来るだけ簡易化したいのなら、
load(simplify_sum);
simplify_sum(s(2,n));
とやれば求まります。

simplify_sum(s(100,n));も4秒くらいで求まります。

simplify_sum()はMaximaに実装されている各種sum()アルゴリズムを適宜
呼び出すように作られているので、答えを求めたいだけならこれが一番
便利です。

107 名前:132人目の素数さん mailto:sage [2011/04/11(月) 13:55:51.50 ]
TeXmacs以外にもLyxでも動くんですか?

108 名前:132人目の素数さん [2011/04/15(金) 18:01:56.87 ]
5.24.0あげ

109 名前:132人目の素数さん mailto:sage [2011/04/18(月) 11:01:07.80 ]
>>107
動くよ。ただしプロンプトは出ない。

110 名前:132人目の素数さん mailto:sage [2011/04/18(月) 11:03:51.42 ]
lyxでは、たとえばワードで作成した文章の中にエクセルの表を挿入する
というような形になる。オブジェクトの挿入というのかな。そういう感じ。
数式オブジェクトの中での計算にmaximaが使える。



111 名前:132人目の素数さん mailto:sage [2011/04/19(火) 19:19:17.36 ]
>>108 5.24産業

112 名前:132人目の素数さん mailto:sage [2011/04/20(水) 17:15:00.93 ]
なんでgitに変えたりするんだ

113 名前:あんでぃは弱虫 ◆AdkZFxa49I [2011/06/09(木) 18:18:17.61 ]
あんでぃ

114 名前:132人目の素数さん mailto:ほんとだね [2011/06/11(土) 18:19:28.54 ]
MATHEMATICAと用語を共通にしたらいいんじゃねえ?

115 名前:132人目の素数さん mailto:sage [2011/06/15(水) 01:39:15.02 ]
Snow LeopardでMaximaを導入したのですが、グラフをプロットしたいのに自動的にgnuplotが立ち上がりません。
gnuplotはインストールしています。
パスはどのように通せば良いのでしょうか?

116 名前:132人目の素数さん [2011/06/20(月) 14:48:46.87 ]
>> 112
Mac OS X上でgitクライアントのインストールから初めて、Maximaレポジトリの取得、
ビルドなど一通りやってみた。習うより慣れろ、かもしれません。

>> 115
MaximaやGnuplotはどうやってインストールしましたか?公式サイトのパッケージ?Fink
とかMacportsから?

117 名前:132人目の素数さん [2011/07/02(土) 01:31:54.68 ]
pr.fujitsu.com/jp/news/2011/06/27-2.html
京都大学において数式処理の世界記録を達成
富士通のシステムを活用した16次方程式の判別式計算の成功により、
「ものづくり」の品質向上に期待
2011年6月27日
富士通株式会社
株式会社富士通研究所

118 名前:132人目の素数さん mailto:sage [2011/07/02(土) 02:38:30.79 ]
「ものづくり」の品質向上…
は、さすがに、こじつけすぎるだろ。

119 名前:132人目の素数さん mailto:sage [2011/07/02(土) 07:27:18.98 ]
16次でしか作れない「ものづくり」って例えばなんでしょうね。

120 名前:132人目の素数さん mailto:sage [2011/07/02(土) 09:37:23.13 ]
15次じゃあダメなんですか?



121 名前:132人目の素数さん mailto:sage [2011/07/03(日) 08:29:23.64 ]
集積回路の論理設計の矛盾発見を効率化でき

122 名前:132人目の素数さん mailto:sage [2011/07/03(日) 13:40:29.66 ]
16次方程式が解けるってことは、それ以下の次数の方程式も解けるってことだな。
むろん、そのままでは解けないが、xのn次方程式全体にxの(16-n)乗を掛けて
16次方程式の形にすれば解ける。
あとは下駄を履かせた次数だけ、0となる解が出てくるのでそれを無視すればいい、と。

123 名前:132人目の素数さん mailto:sage [2011/07/03(日) 15:11:43.06 ]
FEMみたいな差分法に由来する計算だとn元連立一次方程式を解くことが求められるけど、逆にn次方程式を解く需要はどうなんだろう
問題設計を一からやり直せば需要が見つかるかもしれないが、そんなガッツを持った人がいるかどうか

124 名前:132人目の素数さん mailto:sage [2011/07/04(月) 00:11:23.10 ]
高次方程式が解けるとはなんだろう。

125 名前:132人目の素数さん mailto:sage [2011/07/04(月) 07:47:17.12 ]
>>122
アホアホ

126 名前:ポチは玲瓏 ◆R2soZCYWpU [2011/07/04(月) 12:32:16.55 ]
ポチ

127 名前:132人目の素数さん mailto:sage [2011/07/04(月) 19:52:54.57 ]
高次の代数方程式が解ければ、高階の線形微分方程式も解ける。
故に五階以上の微分方程式は線形であっても解けない。

それに気付いたときの切なさ。
大人はみんな嘘つき。

128 名前:あんでぃは炯々 ◆AdkZFxa49I [2011/07/04(月) 19:53:48.00 ]
あんでぃ

129 名前:132人目の素数さん mailto:sage [2011/07/05(火) 16:06:49.62 ]
>>124
数値積分

130 名前:132人目の素数さん mailto:sage [2011/07/16(土) 09:58:16.50 ]
>>122
楕円関数を使えばということ?



131 名前:132人目の素数さん mailto:sage [2011/07/16(土) 10:20:13.44 ]
16次方程式の判別式計算

16次方程式の「数値」解の計算
とは別物。

単に高次代数方程式を解くだけなら 1981年の時点で 2048次方程式の数値解の計算が行われている。
(手元の本を見ただけ。現在はもう二桁くらい大きな次数が解けているんじゃ無いかな)


132 名前:132人目の素数さん mailto:sage [2011/07/16(土) 19:12:44.81 ]
解析関数の数値計算は無限次代数方程式の近似解ですおし。

133 名前:132人目の素数さん mailto:sage [2011/07/29(金) 21:30:38.33 ]
三角関数の cos(π/5)など π/6 の整数倍でないものを  (5^(1/2)+1)/4 のように計算させるには
どうすればいいのでしょうか? 
近似値ではなく、二重根号などを含んだ解で求めたいのです。
もちろんすべての角度で計算できるはずはないことは承知です。


134 名前:132人目の素数さん mailto:sage [2011/07/30(土) 04:12:22.14 ]
× もちろんすべての角度で計算できるはずはないことは

○ もちろんすべての角度で計算できるわけではないことは

135 名前:132人目の素数さん mailto:sage [2011/08/02(火) 11:46:20.31 ]
π/8 とか π/10 とか π/12 とかの 切りよく出る値を覚えといて
そこから自前でやるしかないんじゃないかな?

MuPadなんかはsin π/nを 二重根号表記に直しちゃうけど
それでも n=1,2,3,4,5,6,8,10,12くらいまででしょ。

136 名前:132人目の素数さん mailto:sage [2011/08/09(火) 11:51:25.39 ]
>>133 まだ居るかな?遅くなったけどntrigをロードしておけばいいんじゃないか

load(ntrig);
sin(%pi/5);

(sqrt(5)-1)*sqrt(sqrt(5)+5)/2^(5/2)
と出る

137 名前:132人目の素数さん mailto:sage [2011/08/10(水) 02:34:39.71 ]
ありがとうございます。 うまくいきました。

138 名前:132人目の素数さん [2011/08/12(金) 07:43:25.35 ]
5.25.0あげ

139 名前:132人目の素数さん mailto:sage [2011/08/12(金) 08:27:30.93 ]
なにが変わったの?


140 名前:138 mailto:sage [2011/08/18(木) 15:47:55.44 ]
ttp://www.math.utexas.edu/pipermail/maxima/2011/025749.html
とか見てると、Common Lispの処理系によっては残念な事になってるみたい
ですね。
SBCLはGCLよりもっと速いのかと思ってたけど、run_testsuite()の範囲だと
そうでもないのか。



141 名前:138 mailto:sage [2011/08/19(金) 09:02:25.26 ]
>>139
ChangeLog出ますた
ttp://maxima.git.sourceforge.net/git/gitweb.cgi?p=maxima/maxima;a=blob;f=ChangeLog-5.25;hb=HEAD

142 名前:132人目の素数さん [2011/08/19(金) 10:12:41.35 ]
Lispを使うのを廃したシステムにすれば、もっと速度が稼げるはずだ。
Lispが発明されMaximaが作られ始めた頃のコアメモリを使う計算機では、
メモリアクセスは演算に比べて同等程度に早かったが、今のVLSIを
基礎とする計算機では、メモリアクセスのコストはレジスタやキャッシュ
に対するものの百倍程度にはなる。つまり、Lispを使ってポインタを
手繰って処理するしかないやり方では、計算の速度はメモリアクセスの
レイテンシに律速されてしまう部分が大きいのだ。

143 名前:132人目の素数さん mailto:sage [2011/08/19(金) 10:17:31.72 ]
貧乏人の戯言

144 名前:132人目の素数さん mailto:sage [2011/08/21(日) 09:25:00.89 ]
2ちゃんは馬鹿の巣窟(笑)



145 名前:132人目の素数さん [2011/08/21(日) 13:20:24.10 ]
Maximaで
0<X<10
0<y<20
の範囲を塗りつぶすようなグラフはどうすればかけますか?

146 名前:132人目の素数さん [2011/08/21(日) 14:41:14.32 ]
>>145
つgnuplot

147 名前:132人目の素数さん mailto:sage [2011/08/21(日) 17:19:06.49 ]
gnuplot で どうすればかけますか?

148 名前:132人目の素数さん mailto:sage [2011/08/21(日) 18:45:29.11 ]
ggrks

149 名前:132人目の素数さん [2011/08/21(日) 19:46:22.35 ]
>>147
RTFM

150 名前:132人目の素数さん mailto:sage [2011/08/21(日) 22:43:44.52 ]
上のほうであった16次方程式の判別式計算の話
理系への数学っていう雑誌の一番後ろのところに
誰かが解説してくれてたね(1ページだけだけど)

記事内容程度のことをすぐに板に書いてくれる人が
いないってのが数学板の知の限界かね ギコハハハ…



151 名前:132人目の素数さん mailto:sage [2011/08/25(木) 23:19:07.38 ]
^μ^

152 名前:132人目の素数さん mailto:sage [2011/08/26(金) 16:20:02.41 ]
>>142
中がlispだから改造しやすいので使ってるのに






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<116KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef