nan?, finite?, infinite?, positive?, negative?, exact? and inexact?

浮動小数の計算が必要なコードをほとんど書いたことがない。だからIEEE 754 もおおざっぱにしか知らなかった。勉強し直して +inf.0 とか -inf.0 とか nan.0 を知る。
いやはや GNU MP に有理数の計算を任せられるとはいえ、複素数浮動小数は自分で考えなければいけない。高校の数学を思い出して懐かしい。共役な複素数とか極座標形式とか日常生活では使わないし。


id:g000001さんに教えていただいたのですが

Gaucheで、算術関数を複素数の範囲まで規格通りに実装しようとしているのだが、 三角関数の加法定理を忘れていることに気付いた。

とほほ。 そりゃ、exp(ix) = cos(x) + isin(x) さえ覚えてれば導けるわけだけど。

複素数の範囲でarcsinを求めるあたりから だんだん怪しくなってきたので、高木貞次の解析概論を引っ張り出して復習。 大学で使った教科書類はもうほとんど持っていないだが、どういうわけかこれだけは持って来ていたのだ。

あああちこちに書き込みが。熱心に勉強したんだなあ(感慨)。

自分で言語処理系をちゃんと実装することの意外な副作用は、 基礎的なことをきちんと復習する機会に恵まれることだ。 本棚の飾りになっていたKnuthの "The Art of Programming" も、 部分的にだけど読み込む機会を得たし。

みたいな過去日記があって同じような年齢に同じようなことをやっているなと思うと不思議(レベルは違いますが)