2001-06-29
λ. PDB Browser
PyGimpにもPDB Browserはあるけど、車輪を再発明してばかりでは脳能が無いので、メソッドへマッピングされた状態でブラウズ出来るやつにしよう。そういうのを考えると、やはりリフレクション機能はうまいとこやらないといけないなぁ。とりあえず、Rubyの組み込みのと似たインターフェースで書いておいて、後はおいおい考えることにする。
λ. 論理プログラミングのミニプロ (1)
は、結局特にやりたいネタが見付からなかったので、XML関係でお茶を濁すことにした。まあ、楽そうだし。…と思っていたが、とんだ誤算だった。面倒臭すぎ。…果してDOMまで辿り着けるだろうか?
2002-06-29
λ. 最近不足気味の睡眠を補給。
λ. GObjectのリファレンスカウンタ vs RubyのGC
リファレンスカウンターなんて嫌いだー。 以下のようなことが起こって、Ruby側のラッパのインスタンス変数などの情報が失われることがあり、Ruby側で継承とかしているとまずいことになる。 詳しくはruby-gnome2-devel-ja の gobject_object_list のスレッドを参照*1。
- Ruby側のオブジェクト(ラッパ)がGCされる
- Ruby側のオブジェクトが持っていたリファレンスがunrefされる
- リファレンスカウンタが_0でない_ならばGObjectは消滅しない
- どこかで、このGObjectに対応するRuby側のオブジェクトがまた必要になる
- 元のRuby側のオブジェクトはもう無いので、最初とは別のオブジェクトが作成される
*1 スクリプトを通しても微妙に文字化けしてるけど……
λ. PStoreのデータが壊れた
tDiaryのデータが壊れたこともありますよー。(T_T)
2003-06-29
λ. 軽い筋肉痛
λ. 湘南高校の文化祭に行こうかと思ってたのだけど、なんか面倒になってしまって、結局行かなかった。
λ. 「自己言及の論理と計算」 (長谷川 真人)
対角線論法と不動点に関するチュートリアル。逆極限法(inverse limit construction)についても取り上げてる。ちなみに、逆極限法によって領域方程式 D ≅ [D→D] の解を求める方法については 「再帰データ領域 D∞モデル」 も参照すると良いと思う。
ところで、少し前に「A Universal Approach to Self-Referential Paradoxes, Incompleteness and Fixed Points」という論文を読んだ事を思い出して、関連論文をAmazon風に紹介をしてくれるサイトがあったらどうかなぁとか少し思った。例えば、
- あわせて読みたい
- 「自己言及の論理と計算」と「A Universal Approach to Self-Referential Paradoxes, Incompleteness and Fixed Points」、どちらもおすすめ!
ページ数合計: 44ページ
とか。
[2005-03-27 追記] この論文については haskell-jpメーリングリスト で結構長いスレッドが出来ている。
あと、[haskell-jp:227] で data X = PsiInv (X -> (Int -> Int)) と書きましたけど、これは data ではなく newtype にすべきでしたね。
λ. 夕食
太太でジャージャー麺と餃子。
λ. ゲームプログラミング
の最終課題に向けてちょっといじり出す。不動浮動小数点数を使えないのは不便だなぁ。仕方ないので固定小数点数で扱う事に。で、てきとーに、sin(), cos() はテーブルで実装して、sqrt()もてきとーにニュートン法で計算する事にしよう。けど、atan()ってどうやって実装するのが普通なんだろ? って所で中断。 ぐぐってみると、CORDIC法というのがあるようだ。
ψ 小熊善之 [不動小数点数……?]
ψ さかい [あちゃあ…… ご指摘どうもありがとうございます。 自分はこのtypoだけはしないだろうとこれまで信じてたのに…… ..]
ψ はら [おお、例のYの話も出てますね。いつも面白いURLありがとう。amazonよりヒビルテ。]
ψ さかい [おひさしぶりです。 そういえばYといえば、例の遅延評価の箇所ですが、 あれって適当な strictness ana..]
ψ はら [strictness analysis って、、、そういうのがあるんですね。期待してます。]
ψ さかい [strictness analysis は文字通り関数の正格性の分析で、 lazyな関数型言語ではこれを使って関数の..]
2004-06-29
λ. V. Vene. Categorical programming with inductive and coinductive types. Diss. Math. Uni. Tartuensis, v. 23, Uni. of Tartu, Aug. 2000. - .ps.gz, .pdf.
を読んだ。catamorphism, anamorphism, paramorphism, apomorphism, histomorphism, futumorphism といった再帰のパターンについて、とても良くまとまっている。catamorphismとanamorphismは有名だし、他の4つについても知ってる人はいると思うけど、こういう形で纏まっていると何かと嬉しい。それから、Mendler-style algebra を使ったアプローチも面白かった。
些細な点だが何点か気になる点もあった。例えば The categorical treatment of inductive and coinductive types as initial algebras and terminal coalgebras for covariant functors comes from Hagino [Hag87], who designed a typed functional language CPL based on distributive categories and initial algebras and terminal coalgebras for strong covariant functors.
と書いてあるけど、based on distributive categories and initial algebras and terminal coalgebras for strong covariant functors.
というのはCPLの特徴ではなくてCharityの特徴のはず。
[2004-07-08追記] この論文で使ってるdifunctorとdinatural transformationはあまりメジャーな概念ではないし、この論文では明示的に定義していないので、自明とは思うが念のため自分の理解した定義を書いておこう。
- difunctor F
- bifunctor F: C×Cop→D
- difunctor F,G: C×Cop→D の間の dinatural transformation φ: F→G
-
{φA: F(A,A)→G(A,A)}A∈C で ∀A,B∈C,f:A→B について以下の図が可換。
F(I,f) F(f,I) F(A,A) ←── F(A,B) ──→ F(B,B) │ │ φ_A │ │φ_B ↓ ↓ G(A,A) ──→ G(B,A) ←── G(B,B) G(f,I) G(I,f)
[2004-07-12追記] 5.2 でのAlg(F)mとAlg(F)が同型であることの証明だが、 米田の補題の自然同型をηC,F: hom(hom(-,C),F) → F(C) とすると、 全ての h: A→B について下図が可換になり、 ここからAlg(F)m とAlg(F)が同型であることは直ちに言える。
η_{A,hom(F(-),A)} hom(hom(-,A), hom(F(-),A)) ─────────→ hom(F(A),A) │ │ hom(hom(-,A), │ │hom(F(A),h) hom(F(-),h)) │ │ ↓ η_{A,hom(F(-),B)} ↓ hom(hom(-,A), hom(F(-),B)) ─────────→ hom(F(A),B) ↑ ↑ hom(hom(-,h), │ │hom(F(h),B) hom(F(-),B)) │ │ │ │ hom(hom(-,B), hom(F(-),B)) ─────────→ hom(F(B),B) η_{B,hom(F(-),B)}
For a reader versed in category theory, the result is a consequence from the Yoneda lemma.
と書いてあったが、確かに米田の補題を知っていればこっちの方が分かりやすいな。
[2005-02-24 追記] この論文に出てくるような記法を LaTeX でするには、以下のようなマクロを用意しておけばよいのかな*1。
\def\cata#1{(\!|#1|\!)} \def\ana#1{\lbrack\!(#1)\!\rbrack} \def\para#1{\langle\!|#1|\!\rangle} \def\apo#1{\lbrack\!\langle#1\rangle\!\rbrack} \def\histo#1{\{\!|#1|\!\}} \def\futu#1{\lbrack\!\{#1\}\!\rbrack}
[追記] ここで述べられている再帰のパターンは Comonadic Iteration と Monadic Coiteration として抽象化する事が出来る。
*1 もっと良い方法があったら教えてください!
λ. ODA
某所で「ODAよりもNGOの活動の支援に税金を使った方が有益では?」的な意見を見て、ちと頭が痛くなる。実際にはNGOへの援助もODAの一部として実施されているのに……
2005-06-29
λ. 『11人いる! 』, 萩尾 望都
を読んだ。粗筋は知っていたけど、読んで鳥肌が立った。『銀の三角』を読んだときも思ったけど、萩尾望都は天才だと思う。
あと、11人目を探して疑心暗鬼になるのはちと人狼っぽいと思った。
λ. ICPC過去問: Water Tank
お題は面白いが、プログラミングは単に面倒なだけ。下らないバグを作ってしまい、デバッグに時間がかかってしまった。
同じ高さの区切り板がないことが保障されているのが重要。二分木を使って区間を管理する。区切り板で区切られた区間をLeaf、区切り板をBranchとして、任意の部分木についてその間にある最も高い区切り板が根となっているようにする。
λ. "Implementing Functional Language: a Tutorial" 読書会?
S. P. Jones and D. Lester, Implementing Functional Language: a Tutorial, Prentice Hall かぁ。都合があえば参加したいかも。
λ. 人狼審問: (638)短期ハリセン村22
短期村の記録を読むのは初めてなのだけど、ペースが速すぎてとても着いていけなさそう。あと、名前が長いというしょーもない理由で誤って吊られているコーネリアスにウケた。
2006-06-29
λ. 一般常識診断
霞が関を大いに盛り上げるための官僚の団 (2006-06-24) より。
結果
あなたの一般常識の総合正解率は84.0 %です
たいへん優秀な成績です。就職試験などで課せられる一般常識テストでは良い結果を得られると思います。政治 90.0% 経済 90.0% 法律 80.0% 歴史 80.0% 国語 80.0%
たしか間違えたのは「国連への加盟時に加盟申請後,必要な手続き」「日本興業銀行の発行する割引金融商品」「通常国会は年に何回召集されるか?」「離婚前に妊娠していた場合を除き、女性が離婚後、結婚できるのは何ヶ月を経た後か?」「日米安全保障条約の内容として誤っているもの」「日本以外で、第一次世界大戦に参戦したアジアの国」「カツアイして説明する」「朝がおにつるべとられてもらい水、の作者」の問題。
特に「通常国会は年に何回召集されるか?」と「日米安全保障条約の内容として誤っているもの」と「日本以外で、第一次世界大戦に参戦したアジアの国」の三問が分からなかったのは、ちと恥ずかしい orz
知り合いの結果
2008-06-29
λ. 『The Numbers Behind Numb3rs: Solving Crime With Mathematics』 by Keith Devlin and Gary Lorden
Keith Devlin は、昔 20021206#p02 で書いたような話から、「infonの人」というか意味論とか基礎論の人というイメージを勝手に持ってたけど、こんなこともやっていたのね。
それから、これを読んで Numb3rs を観てみたくなったんだけど、US の iTunes Store だと一話$1.99で購入できるのに、日本の iTunes Store だと購入できないのね。とほほ。
関連
ψ ちこ [わたしはちょっと腰が引けていたので,まだ買ってません...面白そうだったら買ってみようかと思うので, 感想に期待して..]
ψ くるる [Keith Devlinは最近は研究というよりは啓蒙活動の人みたいですよ。毎週ラジオに出ているらしいですし。私たち集..]
ψ たけを [Numb3rsは自分も前から凄く観たいと思ってるんだけど、日本だとDVD化もされてなくて、なかなか観られる機会がない..]
ψ さかい [おお、こんなにコメントがあるとは珍しい。 >ちこさん 一般向けの本なのであまり個々の技術について詳しい説明はないで..]
ψ たけを [そのamazonのサイトをよく見るんだ。「予約できるようになったらお知らせします」と書いてあるだけで、まだ予約できな..]
ψ さかい [がーん、品切れじゃなくて、そもそもまだリリースされてなかったのね orz # 一応、お知らせEメールに登録しとこ……]
ψ かがみ [季節外れですみません。Devlin に関連する自分のページを検索したらこちらを捕捉。いま丁度 Constructib..]
ψ さかい [いえいえ、コメントありがとうございます〜]