Monday 17 December 2007

ちょっと熱が...



なんか、ぶり返したか。土日の予定を入れたのはまずかったかも。でも、今週末もあるんだよな〜 もっとも、それが終れば年末休暇に突入の予定。

昼間は、論理式パーサの続きで Java のSatisfiability checker を書いていたけど、微妙にわからない。ださいアルゴリズムは実装したが、走らせる気もせず却下。

昔、Prolog で書いたのと同じスピードで動かないのは許せない。なんだが、Prolog のbacktrack/bugofの機能をちゃんと実装するのは結構面倒。難しすぎるのを除けば良い言語なんだがなぁ。(とか書くと、backtrack使っているようじゃ遅いとか言われそうだが...)

しかも、backtrack/bugof はPrologの機能の一部に過ぎず、本当に難しくて便利なのはUnificationだものなぁ。

もっとも、KL/1で書いた定理証明系をJavaで書き直して10倍速くなったなんて論文も見たことある。まぁ、いつの時代のCPUを比較しているのかっていう問題はあるけどね。

もっとも、昔書いたものでも、重複計算があるのはわかっていて、それを取り除くってのもやりたいんだけど、単純な実装(自動的な重複計算の除去)では速くはならなかったよな〜 もっとも、効果は速度ではなくて計算できる式の大きさなのかも知れないが。

昔、学生にやらせたソースとかも出て来て、見てみると、ちょっと絶望的。いや、まぁ、結構頑張ってかいているんだけど、これじゃぁ、動かんだろう。

まぁ、今では超高速SAT solver とかもあるので、そっちとの兼ね合いもあるので、練習みたいなものなんだけど。

とかなんとか、そのあたりのことを思い出しました。

もっとも、今やるべきことは別にあるんだが〜 なんで、こっちを「今」やり始めてしまったのか、まったくの謎です。

きっと、熱があるからだな。(2,3日で終れ〜、熱も、このプログラムも)

No comments: