'(you lisp me)

Lispって何だ

Lisp de Math 1

最近、数学にハマっています。 PRMLとかを読み進めるうちにだんだん面白くなってきて、ついに純粋数学に手を染めてしまいました。

本当は位相幾何学(トポロジー)に手を出したいのですが、今まで数学を適当にやってきた人間なのでまずは群論あたりから固めています。

さて、群論と言えば、ガロア理論ですね。

名前のカッコよさに惹かれていろいろ数学書を漁ってみたのですが、まあ、素人が読みこなせるようなものは少ないです。 何かスラスラ読めて高校生でも分かるぐらい噛み砕いててなおかつ実践的な本ないかな〜〜〜〜〜と思ってたんですが、ありました。

数学ガールガロア理論です。

数学ガール/ガロア理論 (数学ガールシリーズ 5)

数学ガール/ガロア理論 (数学ガールシリーズ 5)

僕みたいな素人にはこっちの方が読みやすい。

まだ全部は読めてないですが、この本で題材にされている"あみだくじ"について、群であることを証明するプログラムを書いてみました。 証明と言っても、それぞれの公理について総当りしているだけなのですが……

ところで、今回初めてCLOSを使ってみました。 上手く書けてるか不安。

# ros -l group.lisp
Amida-kuji is a group.

Proof:
G = ((1 2 3) (2 3 1) (3 1 2) (1 3 2) (3 2 1) (2 1 3))
(G0) : Closure -> T
(G1) : Associativity -> T
(G2) : Identity -> (1 2 3)
(G3) : Inverse -> T
(C)  : Commutativity -> NIL

奥が深い。