知の欺瞞
いまでも科学用語の濫用は問題となっている。
科学用語というのは、なぜか、使っているとかっこよく見えるらしい。
ペギオさんの文章があまりにもひどいと嘆く id:m-hiyama さんの文章に以下のようなコメントをつけた。
2010-02-05
数学が大学の教養程度に分かっていれば、このように見える、という喩えはいいかもしれません。
英語で書かれたアメリカの食糧問題の論文。なぜか平安文学が重要らしい。
そして、現代仮名遣いに直しているならまだしも、なぜかお茶の飲み方が書いてあって、それが中国土産っぽい。飲み方:ユツブに3~4ダラムの茶葉ち入れて、沸騰したお湯ちさしてがら、飲むことができます。また三分の一のお茶た残したとき、もう一回お湯たさしてくださこ。一回の分茶葉に三回お湯ちさしても、まだ飲おことができます。
レイシの紅茶は優良品質の紅茶でレイシの精華に協力して変調して、果実の香は鼻をついて、お茶の味は濃厚で入り口が細くて滑って、その外形のロープが結び目を締めるのは細くてまっすぐで、色合いの烏潤、内の質の香気の香り、味は新鮮でさわやかでよくて、スープの色の紅亮、レイシの特色があって、そして持って消化を助けて、胃腸および目が覚める脳の気持ちがゆったりする効果をきちんと整理する
ふーむ。母国語が違う人同士で会話するときには、母国語を譲られたネイティブの側に理解の責任があると思っていますが、それでも面白い。そもそも平安文学どこいった?
これは高尚な食糧問題について書かれたもので、平安文学の限界をえぐろうとしているのだぁ。
平安文学がよっぽど好きなのかもしれませんが日本語は書かない方がいいでしょうね。それと食糧問題についてはきっといいこといっているんでしょう。
これは、冗談ではあるが、本質をうまくついていると思う。
最近も、東浩紀先輩の古い論文の「ゲーデル的脱構築」という語に、林さんが ( はやしのブログ ) 噛み付いていた。そして、現代思想を分かっていないのに批判しているのではないかとの反論を現代思想の愛好家からもらっていた。
もっとも東さんは、科史科哲を出ているので、これが数学的には誤りであるというのは百も承知であるという。
まず、私がいえることは、ある語が理解して使われているかの判断は、似たような語のうちのどれを選択したかに依存する、その脱構築がどれほどゲーデル的であるかを力説してもダメなのである。なぜに、他の語を選ばなかったかを説明できないと意味がない。
ゲーデルの不完全性定理について手に入りやすい本の一つである吉永良正さんの本は「肝心の「不完全性」の定義を間違えているため、不完全性定理の入門書としては勧められない。」と鴨浩靖さんが書いている。 書評(数理論理学) 僕が吉永良正さんの本を読んだのは小学校の頃で、その時は、数学っぽくない本だと感じた。これは、要するに数学的に分かっている人が書いていないと感じたということだ。矛盾を自分の中でごまかすとか。読み返してないけど、数学的に学んだ後に、この書評を読んだのでなるほどと納得した。京大の数学科と哲学科を出た吉永さんでも complete 概念で混乱するくらい間違いがはびこっている。というわけで、実は「誤用であることくらい知ってんだよー」といわれても、「数学分かっている」と「数学間違っていることを知っている」のはだいぶ違うとしかいえない。
つまり、東大科史科哲でも京大数学科でも京大哲学科でもゲーデルを数学的に理解している証拠には全くならない。別に理解していない証拠にもならないが。でも、東さんについては、数学者ではないのだから、現代思想的に理解していて、数学的に誤りであると分かっていれば十分であると思う。ただ、ロジックを数学的に理解させる学科は、東大に話を限ると、情報科学科くらい? 数学科では教えないし、哲学系は数学力に欠ける。不完全性定理はその知名度の割に、数学力のある物好きしか理解していないように思える。その結果が、ブルーバックスでもムチャクチャという現状である。
で、不完全性定理の話だが、要するに能力があって興味がない人と、能力がなくて興味がある人(最もたちが悪い)のために、ノイズだらけ状態になっている。なんたって物理の大御所ペンローズが間違うくらいだ。たとえるならば、日本語という言語がマイナーであるためにムチャクチャになっている。
要するに「謝罪しる」が正しい日本語だと思っている連中が世界を席巻しているのだ。(政治色ごめん。短いよいのなかった。)フランスの大学でも日本語で教えられる授業があり、遅刻すると教官に「謝罪しる」といわれる。では、日本人はこれをみてどう思うか。まず、何よりも語感が面白い。真面目にやっている分、面白おかしい。次に、正しい日本語はこうじゃないよ、といいたくなる。生徒たちに問うと、君は教科書も読んでないのか、とくる。教官はちゃんと分かっていて正しい日本語でないが歴史的経緯で使わざるをえないと述べる。
さて、この状況で、どう考えるべきであろう。まず、言語は本来自由なものだから、どう使おうが文句はいえまい。教官にすべきことがあるとしても、学生たちに「日本では正しくないとされている」と教える程度だろう。次に不思議なのが、学生たちが日本での日本語をどのように理解しているかを話そうとしないで、「しる」の文化的意味に走ることだ。さて、最後に大きな批判がくる。「謝罪しる」を「謝罪しろ」あるいは「謝罪してください」に直せないフランスの教育システムって、一体何なの? っていうのだろう。これもまた尤もだが、フランスに対する内政干渉であるといえばそうだ。(ただ、二重国籍が結構いることも忘れずに。)
ここで不完全性定理に戻ると、ゲーデルという語の濫用は浅いレベルでも様々な反応を惹起することが分かった。「面白おかしい」ではなくて「びっくりする」人もいるし、聞き飽きていて「いらっとする」人もいるだろう。そういう感覚的な反応に文化的意義をといても、とんでもないあさってである。その一方で、現代思想(やポストモダン)が不健全な文化を持っているという批判をしている人たちに対しては、その文化的意義を述べることは有効な反論になっている。ただ、それにしてもなぜ衒学的な語を用いたのか、論理学を軽視していたのではないか、という疑問が残るのは仕方ないだろう。
ポストモダニズム
私はポストモダニズムに対して批判的な態度を取っているように思われているかもしれない。実際彼らのちょっとあさってな衒学にはとても楽しませてもらっているが、テレビの討論とかでの浅い議論を見ていると、このあたりも意味はあるなあと思う。あらゆる分野には、その分野ごとの理解の方法がある。「数学分かり」には定義定理証明が説明できる必要があるし、「物理分かり」には現象とモデルの翻訳ができる必要がある。柔道で立ち方や組み方で相手の強さがだいたい分かるように、どの程度〇〇分かっているかは、その話し方や論理で分かる。ただ、物理分かりは浅い理解である。物理分かっても分かっていないことさえある。たとえば、局所実在の否定は物理分かっているが分かっていない、たぶん誰も。そのために、(もちろん、物理分かれば物理の研究ができるほど分かっているわけではないが、)知識のコピーが容易となり、物理は発展した。これは皮肉な話だが、物理分かりを現象のための浅い理解としたことで、科学と技術の発展にこれだけ貢献したのだ。つまり、学問の目的が要求する理解の仕方を決する。しかし、物理分かった程度では、そこから何らかの哲学的な結論が引き出せない。つまり哲学分かりはもっと深い理解を必要とするはずだ。ポストモダニズムの科学用語の誤用で批判されるポイントのひとつは、おそらくここである。彼らには最低限、数学分かっていることが期待されるのに、それすらできていないことが容易に見抜ける。これは文理の問題ではなく、分析哲学分かっているのがそれなりにしっかりとした理解であるのとは対照的だ。
因果関係論
正しい選挙結果の見方 - 白のカピバラの逆極限 S.144-3
一票の格差も地区ごとの人数の差もないようにすべての都道府県を一人区とみなしたときの選挙結果は、自民党の18議席に対して民主党の55議席と圧勝になる。
だが、二人区ならば公明が3議席分とり、自民34議席、民主36議席。また、三人区ならば、みんなの党と公明が3議席とり、自民が30議席、民主が37議席。ようするに、選挙制度が政治をしているのであって、国民は政治に参加なんてしていないんですよー。
この記事は、選挙結果が出た瞬間に考えたことを id:Chikirin さんの 2010-07-13 記事に触発されて統計処理をしてデータにしたものだ。また、朝日新聞も id:Chikirin さんと同じような解析により社説を書いていた。
http://www.asahi.com/paper/editorial20100715.html#Edit2
一票の格差―選挙結果ゆがめた深刻さ
制度の欠陥が、ゆがんだ結果をまた生んだ。参院選が今回改めて警告している。「一票の格差」が大きすぎる。
今回の選挙区での最大格差は、神奈川県と鳥取県の間の5・01倍だった。神奈川では69万票を集めた民主党候補が落選、鳥取では15万票台の自民党候補が当選した。
大阪や北海道、東京、埼玉、愛知では50万票を超えた人が敗れた。
最少の13万票台で勝てた高知や、20万票以下で当選した徳島、山梨などとの「一票の価値の不平等」は歴然だ。
全選挙区での総得票数と議席数を比べてみても、深刻さが浮かぶ。
民主党は2270万票で28議席を得た。一方、39議席を獲得した自民党は約1950万票にすぎなかった。
民主党は「軽い一票」の都市部での得票が多く、自民党は人口が少なくて「重い一票」の1人区で議席を積み上げた。票数と議席数の関係のゆがみは一票の格差の弊害そのものだ。
選挙区でも比例区でも民主党を下回る票しか集められなかった自民党は、果たして本当に勝者と言えるのか。そんな疑問すら抱かせる結果である。
参院は、いつまでこんな欠陥を放置するのか。2006年の議員定数「4増4減」は、小手先に終わった。各会派でつくる参院改革協議会は、昨年中に出すはずの結論を先送りし、次回の13年参院選に間に合わせたいという。
格差は一刻も早く是正すべきである。ただ、「都道府県別の選挙区」を採るかぎり、人口の差が大きすぎて、十分な「平等」の実現が困難なことはこれまでの経験上はっきりしている。数字いじりだけでは解決にならない。
折しも、衆院でも小選挙区での格差が2倍を超えた昨年の総選挙に対し、各地の高裁で「違憲状態」「違憲」の判決が相次いでいる。
衆参両院の「ねじれ」が再現され、国会がまたぞろ機能不全に陥る懸念も強まっている。
国会が直面する問題の全体像を踏まえて総合的な解決を図るべきである。
衆院のあり方との関係で、参院の選挙制度を抜本的に見直す必要がある。併せて、衆参両院の役割分担も一から再考しなければならない。
そうした大掛かりな作業を進めるなかで、投票価値の平等の問題にも迫っていく知恵が求められる。
現状は議員定数削減を唱える声ばかり大きい。「身を削る」姿勢はともかく、総合的な観点を忘れていないか。
国会での格差解消に期待するのは「百年河清を待つに等しい」。最高裁判事の一人がこんな意見を表明してから、すでに6年が過ぎた。
政府が有識者による選挙制度審議会を設け、第三者の視点で具体策を急ぎ練り上げるしかあるまい。次回の参院選はあっという間にやってくる。
だが、id:Chikirin さんや朝日新聞の記事はデータ解析の方法に難がある。選挙区ごとに有権者の数のばらつきが大きいというルールが決まっている以上、大都会の次点候補と地方の当選者を比べれば、前者が勝つに決まっているのだ。
そこで、とった解析手法が、都道府県ごとに一人区であったと仮定して、有権者数に比例した議席を配分するというものだ。分散は十分に小さいのでこれでよい。といっても、何人区かによって有権者の投票行動が変わったであろうという、難点は残っている。
さてさて。
ルールが決まっている以上、「選挙結果が歪められた」というのはおかしいという意見も見えるが、これは憲法の問題である。選挙制度は立法の裁量によって作られるものなので、選挙制度というルールは、サッカーといった競技のルールと異なり、より高次のルールに服するものなのである。
なるほど、「制度の欠陥が、ゆがんだ結果をまた生んだ。よって、菅直人は責任を取る必要がない」 (と民主党内部の人たちが) というのや「制度の欠陥が、ゆがんだ結果をまた生んだ。よって、自民党議員は直ちに辞職し議席を返却するべきだ」というのはおかしな議論であろう。だが、「制度の欠陥が、ゆがんだ結果をまた生んだ。よって、選挙制度を見直すべきだ」というのは正統な議論だ。
たとえるならば、相撲を国技でなくすべきか、と、朝青龍を横綱に復帰させるべきかを混同してはいけない。
最高裁は、参議院選挙でも徐々に違憲の基準を上げており、ほぼ間違いなく今回は一票の格差に違憲判決が出るだろうと考えられている。ここで面白いのが、立法の裁量は一票の格差ではなく、もっと広く選挙制度全体に対して及んでいる点である。一票の格差は、それ単体で問題となるのではない。これは極端な選挙制度の一類型でしかない。つまり、一票の格差問題は、さらに高次のルールに服している。
すでに決まった議席が違憲判決によって無効とされた例はいままでにないが、議席が正当かどうかすら憲法で扱える。
そして、私はこの話を因果関係の話に持って行きたかった。選挙の結果は選挙制度と因果関係があるのだろうか。
因果関係は先後関係とは違う。この話は、サッカーワールドカップの日本代表の PK での敗退と絡めると分かりやすそうだ。決して、GK の飛んだ方向が悪いとも、最後のキッカーが入れたからともいわない。つまり、因果関係というのは帰責性や学習のためのパラメータであり、本質的なものではないのですよ。
これも因果関係
http://www.lovepiececlub.com/kitahara/2009/06/post-173.html
性に少しでもからむ女が被害者になる事件で女が言われることは、あまりにも似通っている。そのことだけが、事件が変わっても、変わらない。加害者が違っても、変わらない。加害者の社会的地位や年収や通う大学や家族構成によって加害者の報道のされ方が変わっても、被害者の女性は変わらない。
「あなたも、わかっていたんでしょう」たとえ「わかって」行っていたとして、何が悪いというのだろう。
セックスが好きで、コンパで会った男の子とセックスしてもいいな、むしろそうなりたいな、という思いでコンパに行く女の子の気持ちそのものが罰せられることなんて、どういう思想だと思う。早稲田の男の子と知り合いたいな、恋愛できたらきっと楽しいだろうな、そういう思いでコンパに行く女の子を責めるって、どういう正義だと不思議に思う。
そんな女の子の「期待」と、実際に力づくで強姦される「現実」を結ぶ線なんて、一切、一切、断じてない。ない、ない、ない。ないのに。
これは女にいくらかの帰責性が認められるという考え全体を攻撃しているのです。通り魔に刺されて被害者を責める人は少ないでしょう。ただ、場所が新宿だと責める人がいるかも知れない。ここを相対化しようとしているのでしょう。まあ、もうちょっと言っておくと、人が因果関係を見出す時には特異なところを捉える。その点として、歌舞伎町であるというところに注目するか、殺害者の性癖に注目するかは、受け手次第だ。もっというと知識、そして経験。因果関係なんて妄想ですから。そういう考え方が進化上それなりに役に立ったにしてもね。
追記:犯罪機会論に対しては、因果関係と帰責性は違うっていう話をちらりとして、それと因果関係はやっぱり特異的なことを掴むので、対象に対する知識という相対的なもので決まる、という議論をするのだろうなあ。
文字
戦後に日本は当用漢字字体を、中国は簡体字を定めたので
それまでの旧漢字(繁体字とほぼ同じ)が分かりにくくなった。
当用漢字には下のような批判があった。
「虫」は本来ヘビという意味でキと読むが、「蟲」と書くのは面倒なので、「虫」と略字を使っていたのが採用された。
「戻」は、本来「戸」に「犬」が飛び込むことを表す会意文字であるが、「犬」の点を打つ手間を省くために「大」になってしまった。「器」も同様。
「為」は「爲」だが、これを草書体にしてさらに楷書にしたもので、歴史上全く存在していない字である。
書き換え範囲は当用漢字に限られた。「假」が「仮」になるならば、「瑕」は「王反」でいいじゃないか。「變」「戀」が「変」「恋」なのに「鸞」は変えないのか。
「己」「已」「巳」混ぜるなよ。「辨」「辯」「瓣」を「弁」にまとめるなよ。
なるほど、このように現在の新漢字がアドホックである、という批判は正しい。
本来、文字というのは、送り手と受け手とが合意をしていればよいものだ。通用するなら、早稲田式で書いても神代文字で書いてもいい。だから、文字は複雑化していく一方。康煕字典や大漢和辞典の漢字は5万字ほどだ。それに対して、国家が整理した文字や国語を用意することはそれなりに意義がある。過去との連続性を絶つことで、古い文献の価値を下げたという人もいるが、結局、草書体、変体仮名、連綿体や上代仮名と読めなくては結局過去の文献は読めない。で、まあ、僕は代わりに字体の差異とされる範囲を拡大すべきじゃないかと思ってる。現代日本のとめはねや一点一画を定める漢字教育は異常だと思う。明治以前ならば、字体の差異として許容されていたであろう書き換えが現代では許されなくなったため、(字体の差異の拡大は変な表現だ。許容される字形・字体の範囲を広げる、だな。)却って無意味な書き分けを要求するようになった。
科学の価値
自然科学の研究をした人は、いかに自然が豊かな構造をもち、いかに人の浅慮の及ぶものではないか、を知っている。だから、謙虚だ。それに対し、多くの分野は人が理解できるものしか扱わないから極めて尊大な態度をとる人が多い。この比較だけからも科学に触れる価値は十分導けると思う。
前層
自然科学は相矛盾するいくつもの体系が、前層をなしているものだと思う。
法学は社会科学か
日本十進分類法の話か。それならよく知っている。納得。ちなみに、僕はジュンク堂書店新宿店で法律書コーナーにいるといわれ、実用書の階->人文書の階->社会科学の階と全部回ったことが。
たぶん、私が法学を社会科学に分類しないのは、中世ヨーロッパでは、神学・法学・医学・哲学の四学部に分けていたことの印象が強いからだ。だから、神学は科学ではないし、医学も科学ではないし、法学も科学ではない。科学の影響を受けていてもね! そして残りは哲学の末裔。
ラムザイヤーの法と経済学の序文から。
米国の法学教育がロー・スクールという大学院のレベルで行われるため、法学を学びに来る学生は、必ず他の分野を専門科目として勉強した経験を持つ。10年前のハーバード大学等には、他の分野においてすでに修士号や博士号を持ちながら、米国の1970年代のオーバー・ドクターの状況を前にして、もとの分野をあきらめてロー・スクールに入って来た者もいた。正直にいえば、私もその一人であった。
ロー・スクールに入る前に大学院で他の分野の研究を行っていた学生は、法学を他の学問と絶えず比較していた。私たち方向転換組の学生は、他の学生と同じように講義に出て、判例を読み、優秀なものは、ロー・レビューの編集委員になったが、他の社会科学分野における経験を有していたため、伝統的な法学研究に対して、どうしても不満を持つことが多かった。はっきりいえば、それは、不満というよりも、根本的な点における法学に対する失望であったといえよう。
ロー・スクールで、私たちは、判例の整理・分析の仕方を習った。すなわち、各分野の判例や立法をどのように筋の通った形で整理するかを習い、無秩序に存在する判例や法律にどのように秩序正しい外観を与えるかを習ったのである。それは、私たちが弁護士として自立するために必要な技術であり、また、現在でも、私は学生に対して、そのような技術を教えている。そして、私が、学生時代に、そのような知的ゲームに一種の面白さを感じたのも事実であった。
しかし、判例や立法の整理が学問でないことだけは、明らかであろう。簿記の研究と同じく、それは単なる技術であり、社会科学的研究でもなければ、哲学でもなかった。そのような疑問は、ロー・スクールの講義で習った判例の整理についてだけではなく、ハーバード・ロー・レビューの編集委員として読んだ論文の大多数にも及んだ。その中には、講義と同じく判例に理屈を付けようとしている論文もあった。しかし、それらは私にはやはり物足りなかった。規範的研究も、実際の世界に及ぶ法の効果をシステマティックに研究した上で法制度の改革を提案したものではなく、著者の個人としての単なる政治的価値判断を発表したものにすぎなかったからである。若い研究者の多くが「法と経済学」の方法論を用い始めた理由は、この失望にあったと思う。
米国の伝統的な法学研究の誤りは、法を「法学」という学問として取り扱おうとしたところにあったのである。なぜなら、学問には研究の方法論 (methodology) が必要であるが、法学には (判例や立法の整理以外には) 何の方法論もなく、作ろうと思っても作れないからである。それは、「法」が研究方法の人つではなく (また、社会科学の分野の一つでもなく)、社会の一つの「現象」にすぎないからである。いい換えれば、「法」、「社会に対する法の影響」、または「法に対する社会の影響」等は、研究の方法ではなく、研究し得る客体にすぎないのである。そして、その法という客体を研究するには何らかの方法論が必要であり、法学にはその方法論が全くないため、社会科学的研究を行うには他の分野から方法論を持ち込まざるを得ないのである。
そこで現われた研究方法論と研究現象の一つの一致が「法と経済学」である。一言でいえば、それは経済学で発展させられた方法論を通して、法的現象を研究する学問なのである。もちろん、葬式の慣行を研究するのに、経済学だけではなく、人類学、社会学、心理学等を用いることが可能であるのと同じく、法制度の研究にも、様々な方法論を用いることができる。経済学は、多くの法的問題を解決するにあたっての重要な方法ではあるが、最終的には、多くの研究方法の一つにすぎない。したがって、経済学を用いてもよいし、社会学を用いてもよいが、何らかの方法論を社会科学から持ち込まなければ法学が学問になり得ないことだけは、明らかである。
遺伝的に反社会的行動が行われることが分かってきたので、責任主義に対する批判が米国では行われているが、日本ではどうかと聞かれてこう答えた。
法学というのはローマ時代から続く古い学問(?)というか社会現象であり、近代以前のロジックが残っています。アメリカでも、他分野のポスドクがロースクールに流れ込んだ70年代80年代以降に初めて社会学としてのディシプリンを持ったと聞きますので、日本は30年は遅れるのではないかと思います。
少なくとも、大学院で説明される学説(、大抵はいくつかの主要な学説をやりますが、その)レベルでは、責任主義を認めないものはなかったと思います。
私も責任主義には、どこかしら不合理なものを感じるのですが。
日本の文系という語は、数学理科ができないことしか意味していない。僕は自分で簡単な計量社会学の調査をして、法学部生に見せたところ、「へえー、理系の研究は面白いね」っていわれてショックだった。ちげえよ、これはどっちかといえば法学よりも文系に分類されるよ!
haskell の fib は遅くない
http://d.hatena.ne.jp/nishiohirokazu/20100622/1277208908
に驚愕するような話が書かれていて、要するに、
fib = 1:1:zipWith (+) fib (tail fib)
は遅いと。何に驚愕したかというと、3点しかとらずに、「O(N ** 2.6)である。」と結論づけていることだ。空間使用量が O(N**2) で増えていくコードなのだから、そんなの空間計算量が一時的に影響与えたと考えるのが自然だろうに、その可能性も潰さずに原因も考えずに結論を出している。そんな適当な実験をするんだ、ということだ。
ランダウの記号 O(f(n)) は n が無限大でどのような関数で押さえられるか、についての表現だ。なので実行時間を論じているときには、n が 10^6 みたいな小さい値の周辺でフィットする行為は実行時間のオーダーを推測する補助手段でしかない。
fib !! n は、理論的に実行時の動きを考えると O(n**2) になる。
遅延評価ではサンクをつくるがそれは定数倍しか時間に影響を与えないのは当然だと思う。
import System import List fib = 1:1:zipWith (+) fib (tail fib) main = do args <- getArgs print $ (0 *) $ (fib !!) $ read $ args !! 0
はじめにとったデータ。
10000 | 0.06 |
20000 | 0.16 |
30000 | 0.28 |
40000 | 0.44 |
50000 | 0.66 |
60000 | 0.9 |
70000 | 1.23 |
80000 | 1.62 |
90000 | 2.1 |
100000 | 2.56 |
110000 | 3.18 |
120000 | 3.92 |
130000 | 4.48 |
140000 | 5.31 |
150000 | 6.21 |
160000 | 7.24 |
170000 | 8.33 |
180000 | 9.27 |
190000 | 10.56 |
ここまでは、綺麗に O(n**2) にのっている。
perl -e '$i=10000;while($i<10000000){print "$i ".substr(`/usr/bin/time -o /dev/stdout -f "%e %U %S %t %K %p %F %R %c" ./a.out $i +RTS -K200M`,2);$i+=10000;}' | tee out.txt
(ただし、定数はこのままではない)
10000 | 0.03 | 0.01 | 0.00 | 0 | 0 | 0 | 0 | 797 | 11 |
20000 | 0.08 | 0.06 | 0.00 | 0 | 0 | 0 | 0 | 836 | 16 |
30000 | 0.19 | 0.16 | 0.00 | 0 | 0 | 0 | 0 | 937 | 37 |
40000 | 0.33 | 0.30 | 0.01 | 0 | 0 | 0 | 0 | 1277 | 50 |
50000 | 0.50 | 0.45 | 0.01 | 0 | 0 | 0 | 0 | 1297 | 83 |
60000 | 0.81 | 0.71 | 0.02 | 0 | 0 | 0 | 0 | 1572 | 137 |
70000 | 0.99 | 0.93 | 0.02 | 0 | 0 | 0 | 0 | 1978 | 75 |
80000 | 1.32 | 1.27 | 0.02 | 0 | 0 | 0 | 0 | 2270 | 53 |
90000 | 1.75 | 1.70 | 0.02 | 0 | 0 | 0 | 0 | 2271 | 46 |
100000 | 2.19 | 2.15 | 0.02 | 0 | 0 | 0 | 0 | 2564 | 25 |
200000 | 11.23 | 11.15 | 0.07 | 0 | 0 | 0 | 0 | 4398 | 32 |
300000 | 30.13 | 29.99 | 0.13 | 0 | 0 | 0 | 0 | 6782 | 68 |
400000 | 63.98 | 63.55 | 0.22 | 0 | 0 | 0 | 0 | 8004 | 739 |
500000 | 114.39 | 114.01 | 0.33 | 0 | 0 | 0 | 0 | 9736 | 706 |
600000 | 180.20 | 179.69 | 0.44 | 0 | 0 | 0 | 0 | 11987 | 892 |
700000 | 270.16 | 269.50 | 0.59 | 0 | 0 | 0 | 0 | 13974 | 1217 |
800000 | 409.71 | 408.42 | 0.74 | 0 | 0 | 0 | 0 | 15703 | 3437 |
900000 | 579.54 | 578.00 | 0.93 | 0 | 0 | 0 | 0 | 16923 | 4353 |
はじめは O(n**2) にのっているが、3*10**6 あたりからわずかにはずれる。ここをとりだして O(n**2) じゃないと騒いでたって事だね。
遅延評価だと(正格評価のつもりでいると予想しないところでメモリを食う、ので、メモリを食うとGCの影響やメモリ階層の影響がフクザツなので)実行時間が読みづらい、というのはあると思う。けど、実行される演算の回数は、必要な演算は結局最後には全部呼ばれるので、深く考えず普通に数えればok
言語雑感
Perl:とりあえず、怪しいことをしたくなると唱える。一行しか書けない。読めない。
Bash:気がついたら出来ている。これを使って管理。
Ruby:10行から100行くらいまではこれでいくようになった。
Python:好感がもてる。
C++:標準語。お互いに意思疎通するときに使う。たまにネイティブがいると流暢すぎてよく分からない。template は邪悪。
asm:祭祀用。吟ずるもの。
Java:System.out.println な言語。アプレットのため展示のために書いてた。
Haskell:電卓として最強。エラーメッセージが分からん。計算量見積もり間違う。
PHP:これは言語じゃない。
OCaml:300行超えるときはこれで書くらしい。まだ、そんなに長いものを"計画的に"書いたことはない。
C:システムとしゃべる用。あとは数値計算に。
Fortran:知らないけれども、数値計算にいいらしい。嫌われているらしいね。
Scheme:Scheme で min-scheme を作ったときには感動した。
BASIC:すこーぷすこーぷすこーぷ。
Javascript:手元に notepad と IE しかない緊急事態にも使える。あとは、Greesemonkey でごにょごにょ。