Mathematicaとは(概要)
Mathematicaはウルフラム・リサーチ社の創始者であるスティーブン・ウルフラムらが1988年にリリースした数式処理システムです。
Mathematicaというのはソフトウェアの名称で、言語としてはWolfram言語という名称で統一されています。ただし、Wolfram言語をちゃんと扱える環境は現状Mathematicaのみです。
簡単なプログラムの紹介して、その凄さを実感してみましょう。
Sin[Pi/4]
に対して
$\frac{1}{\sqrt{2}}$
と返ってきます。
Mathematicaは対話型のインターフェイスなので、コードを実行するとすぐに結果が返ってきます。
Piは厳密、平方根も厳密、三角関数お手の物、というわけです。
他によく出てくる例で
100!
とかどうでしょう。
これも、爆速で
9332621544394415268169923885626670049071596826438162146859296389521759\
9993229915608941463976156518286253697920827223758251185210916864000000\
000000000000000000
と答えが出てきます。32ビットとか64ビットとか関係のない、厳密値計算ができます。しかも高速に。
大学の研究ではMATLABもよく使われるので比較対象となり得ますが、
MATLABはあくまでも数値解析ソフトウェアであり、
数式処理システムであるMathematicaはできることがかなり異なります。
(その点では同じ数式処理システムであるMapleと比較したほうがいいでしょう。)
他のプログラミング環境では未だサポートが不充分な複素数が扱えたり、そもそも組み込み関数が5,000個近くあるので、知れば知るほど機能に圧倒されるでしょう。
Mathematicaの能力を手に入れるには
Mathematicaを使うには、以下の方法があります。
買う。
Wolfram Mathematicaの公式サイトから
オンライン購入できます。
HULINKS や 菱化システム などの国内代理店からも購入できます。
OSはWindowsでもMacでもLinuxでも利用できます。
…ただ、べらぼうに高価です。
アカデミック版やHome Editionならまだ手に届きやすい価格で手に入れられます。
Raspberry Piを買う。
実は有償ソフトであるMathematica、ソフトウェア自体を無料で手に入れる方法があります。
Raspberry Piです。
ちょうど2年前、Mathematicaのサブセット版及びその記述言語であるWolfram言語を、Raspberry Piの標準イメージ環境であるRaspbianに向けて無償提供されました。
現在標準的に普及しているRaspberry Pi 2 Model B
は約5,000円で入手できるのでこれが最安でMathematicaを手に入れる方法です。
つい先日、最新版のRaspberry Pi Zeroが発売されたみたいなので、
1,000円足らずでMathematicaを手に入れられるようになります!
ただしRaspberry Piはマシンスペック的には低いので、画像や音声を使った本格的なデータ処理は期待しない方がいいでしょう。
Wolfram|Alphaで雰囲気を味わう
ちょっと(というか用途によってはかなり)違いますが。
Wolfram|Alphaではある程度Wolfram言語がサポートされているので、
Mathematicaで使うようなプログラムの一部を実行することができます。
先ほどのプログラムも、
こんな風だったり
求められます。
Wolfram|AlphaはAndroidアプリ版、iOSアプリ版もあります。
ただし、有料アプリです。
なんかすごい技を使わせてもらう
これは裏ワザなのでおまけです。
ブラウザー用のプラグインとしてWolfram CDF Playerというものがあり、これを使ってある程度Mathematicaと同じ体験ができます。
本来はパラメーターを少しずつ変えながらグラフィックの変化を見る程度の体験しかできないのですが、「UMM」(Universal Mathematica Manipulator)というハッキングがされました。数値しか弄られないのを逆手に取って、Mathematicaコードを一旦数値を介して実行するというものです。(現在も動作するかは確認してません。)
Wolfram CDF PlayerをMathematicaとして使う方法 | 配電盤
とはいえ、CDFは任意のコードを敢えて実行できないように作っているので、言わばコピーガード解除をしているようなものです。
個人的にはWolfram言語はオープンにしてほしいと思っているので、こんなことしなくても実行できれば有難いですが、
現状はデモをデモとして楽しみつつ、興味があれば有償のMathematicaを買ってプログラミングを楽しみましょう。
Jupyter Notebook
Wolfram言語を無料を動かす今ある方法でベストなのはJupyter Notebookを使う方法です。
試しに入れてみましたが、導入も割と簡単でした。(ただしアカウント作成が必要です。)