はてなキーワード: 集合論とは
うーん、中学生に「間違った事を教える」んではなくて、まだ定義すると混乱しちゃうから置いておく、後で、と言う感じだと思うんだけど
それも駄目なのかな?
ま、今の教育がどうなってるか知らないけど。自分の時は二等辺三角形は正三角形の一部だったし。
「頂角」と言った場合、単純に三角形書いてその上側に書かれた角を指すこともあるし、
二等辺三角形の等辺に囲まれた角を指すこともあるわけで、
その辺、「二等辺三角形の頂角」を定義するときに取り敢えず正三角形を置いておく事は別に悪く無いと思うけど。
そりゃそこで気付く人は気づくけど、無理やり正三角形持ち出してきてもそれだけで混乱する子は居るし。
中学くらいまでは如何に「落とさない」様に教えることが大事だと思うけどね。
後、
うーん、現代数学が「集合ベース」というならいいが、「集合論ベース」ってのは思いっきり間違ってるんだが。
そんな嘘教えていいの?
その辺りの大学レベルの話は「落とさない」んじゃなくて自分でちゃんと勉強して理解しろよ、ってレベルだから、増田はちゃんと勉強しないで
今も意味不明のママ「ぼくはすうがくつかってる」って話か?使ってるって言ったってて計算してるわけじゃなくてパソコンに打ち込んでるだけだろうし別に増田が数学理解してるわけじゃないんだから
仕事で使ってるし、とかカッコつけて言われても。。。
http://anond.hatelabo.jp/20130325172822 の続き
言語はJava7を想定。(Java8が迫っていますが、Lambdaなど関数型は、まだ早いと言うことで)
選定理由は、C++と比較して学べるところが大きく、安全でシンプルな言語だから。
※いきなりJavascriptはやめとけ、PHPは論外。
Ruby・Scalaでないのは、筆者が初心者には適切には教えられないから。
おもちゃ・ToyとしてjQueryで遊ぶのは、悪くは無いと思う。
これ以降は名著の紹介や学習方法の紹介が主体となります。名著のコンポジションという形が時間的限界ですね。
量については「初級になるなら、専門書を計3,000ページは修得することは覚悟してね」なんて言ったりしています。
Javaで初級のわかりやすい指標ですと、[amazon:Effective Java]とGoFまでの修得。
初級になるまでに登竜門への挑戦期間を含めて、3~4年はかかっても仕方が無いとも思います。
※逆に「一山いくらのコーダー」というのは、Effctive JavaやGoFが達成している技術も知らずに「自分がJavaプログラマー」だと誤解してしまっているような人達です。
そういったコーダーは何年経とうとも初級プログラマーにすら敵いません。
初級を目指して、プログラミングを楽しんでください。
ただ、学ぶべきことはべらぼうですが、「各分野毎に、エレガントな方法がある。だから探して修得する」ということが大切です。
※「一を聞いて十を知る」ような優秀な人に、50冊くらいドーンと本を置いてあげて、各本の目次を読ませるだけで、
底の見え無さを悟ってくれたりすると、嬉しくなってしまいます。
※余談ですが、その底の見え無さは数学という学問そのものですね。例えば、関数型言語の底流に「圏論」というここ100年の最新の数学があります。
また中級くらいで、Liskovの置換原則などが載っている本を紹介しますが、
そのLiskovの置換原則の周辺で出てくるcovariant(共変)って、圏論という数学の概念だったりします。
数学畑出身としては、数学が現実に活かされている嬉しい事例です。
「速く正確に大量の出力」という能力は、プログラミングをする上でも、ドキュメントを書く上でも、何より「つまらん仕事」の時間圧縮ができるようになるため、重要です。
スローガンとしては「思考のスピードで出力することを目指そう」です。
紹介するエディターはemacsやvimやExcelです。ついでにIMEとしてATOKを使用しているため、ATOKの操作をEmacsライクにする話も紹介します。
ExcelはWindows環境でMeadowすら入れさせてくれない場合の最後の砦という扱いです。
コマンドラインは、「コマンドラインというものがある」「時として非常に強力である」程度の紹介です。
※筆者はzshは全然使えません。使いこなしている方々と接する度に「勉強しなきゃな~、でも、あっちの方を先にやりたい・・・」とグズグズして、はや何年・・・
正規表現は置換を用いて、テキストの一括編集が重要です。後、遭遇したくない事態ですが、スパゲッティコードの解析をする上での最後の砦です。
※遭遇したくない例
ん?何か変なところで副作用のある処理があるようだなぁ(消沈)、SQLのInsertかUpdateか一応Mergeも使っているところから逆算して原因箇所を探すか・・・(諦念)
この糞コードがっ!!こんなところに書くんじゃねぇ!!(憤怒激高)
(ここで、他にやらかしていそうな似たようなコードを正規表現でgrep検索。改行コード込みにすれば複数文検索も可能)
わはは、予想通り共通化すべきロジックのメソッドがそこら中にある・・・
入門編で一つLinkedListというアルゴリズムを学びました。
少なくとも一つ本を読みながら自力でアルゴリズムを学べる人なら、大成できる可能性があります。
前に紹介した[amazon:C++実践プログラミング]には、LikedListやStackなど基本的なアルゴリズムが載っておりますが、
これに加えて、初級になるためにはこれくらいは知っておいて欲しいというものを紹介します。
※後、最初から必ずしも手を出さなくても良い上限も紹介いたします。
プログラムは、データを入力して、加工して出力・保存する処理の繰り返しです。
つまり、各一連の繰り返し毎に、「正しい入力」「正しい出力」を定式化する必要があります。
それを人間の手では無くコンピューターにやらせられるように、つまり自動テストできるようにテストをプログラミングします。
そこで処理の進捗を確認するためにロギングし、処理が想定通りであるかをアサーションでチェックし、
不正な入力・不正な出力=例外が起きたら、対処策をプログラミングします。
(ex 途中で処理を中断して、入力者に適切な入力のメッセージを伝えてあげる。入力の自動補正などもあり得る)
で、ここら辺をまとめてどうあるべきかとして「契約プログラミング」があります。
※余談。定式化・テストに際して、数学畑の人間としては、Javaだとequalsのオーバーライドでも必要になるし、同値関係・同値分割だけでなく、集合論・群論から学んで欲しい・・・(ここいらは数学科の学部1~2年の学習内容)
名著は英語で読みましょう。名著が名著たる由縁は、度々引用されることにあります。
つまり最新の技術書を読むときに、引用された名著のフレーズが、新旧のリンクをなし、理解の助けになります。
壁打ちといって、独り言で思考補助をするよりも遙かに有益です。
※素晴らしい師匠を探すなら、大学行くのが一番ですが、見聞を広げていく中で出会いを待つしかないとも思います。
マルチスレッドが難しいのは「バグを起こしにくいプログラミング」を求められるから。
つまりTry and Errorからの決別が求められ、今後の仕様変更・拡張も踏まえて慎重に慎重にデザインする必要があります。
できる限りステータス変数を持たずに安全に、でもマルチスレッドにするのだから、効率を追求しなければ本末転倒。
でも効率のためにはメモ化に代表されるキャッシングは必須と、アンビバレンツな要素のバランス取りが難しい。
このために、リエントラントな実装・抽象と実装の分離など様々なエッセンスを駆使することが必要です。
というよりも孔子曰く、知っているよりも好きであること。好きであることよりも楽しめることのほうが強く、
気づいたら日々時間が許す限りプログラミングをしてしまうのが理想です。
※仕事として嫌々スキルを磨かなきゃということが、これほど不幸な職業も無いですね。
学習の達成度を測るには、簡単すぎる不適切な問題ですね。
写経は数学の証明問題を、教科書のテンプレ通りに、数値や名称だけ変えて記述することしか出来ない人の発想。
つまり「矛盾無く一貫した論理モデル」の構築が自由に出来ず、テンプレの微修正しか出来ない人の発想。
また、外部の「矛盾無く一貫した論理モデル」の吸収が不自由で、アルゴリズムを「手順」としてしか捉えられないように見受けられる。
「連続」であること確かめるための「ε-Δ論法」(数学科の学部1年の学習内容)
事前知識無く、このモデルを理解できる人は、十分に「矛盾無く一貫した論理モデル」を構築できる人。
第1章 有限オートマトン D.Perrin:橋口攻三郎 1. 序論 2. 有限オートマトンと認識可能集合 3. 有理表現 4. Kleeneの定理 5. 星の高さ 6. 星自由集合 7. 特殊なオートマトン 8. 数の認識可能集合 第2章 文脈自由言語 J.Berstel and L.Boasson:富田 悦次 1. 序論 2. 言語 2.1 記法と例 2.2 Hotz 群 2.3 曖昧性と超越性 3. 反復 3.1 反復補題 3.2 交換補題 3.3 退化 4. 非生成元の探求 4.1 準備 4.2 生成元 4.3 非生成元と代入 4.4 非生成元と決定性 4.5 主錐の共通部分 5. 文脈自由群 5.1 文脈自由群 5.2 Cayleyグラフ 5.3 終端 第3章 形式言語とべき級数 A.Salomaa:河原 康雄 1. 序論 2. 準備 3. 書換え系と文法 4. Post正準系 5. Markov系 6. 並列書換え系 7. 射と言語 8. 有理べき級数 9. 代数的べき級数 10. べき級数の応用 第4章 無限の対象上のオートマトン W.Thomas:山崎 秀記 序論 Ⅰ部 無限語上のオートマトン 記法 1. Buchiオートマトン 2. 合同関係と補集合演算 3. 列計算 4. 決定性とMcNaughtonの定理 5. 受理条件とBorelクラス 6. スター自由ω言語と時制論理 7. 文脈自由ω言語 Ⅱ部 無限木上のオートマトン 記法 8. 木オートマトン 9. 空問題と正則木 10. 補集合演算とゲームの決定性 11. 木の単項理論と決定問題 12. Rabin認識可能な集合の分類 12.1 制限された単項2階論理 12.2 Rabin木オートマトンにおける制限 12.3 不動点計算 第5章 グラフ書換え:代数的・論理的アプローチ B.Courcelle:會澤 邦夫 1. 序論 2. 論理言語とグラフの性質 2.1 単純有向グラフの類S 2.2 グラフの類D(A) 2.3 グラフの性質 2.4 1階のグラフの性質 2.5 単項2階のグラフの性質 2.6 2階のグラフの性質 2.7 定理 3. グラフ演算とグラフの表現 3.1 源点付きグラフ 3.2 源点付き超グラフ 3.3 超グラフ上の演算 3.4 超グラフの幅 3.5 導来演算 3.6 超辺置換 3.7 圏における書換え規則 3.8 超グラフ書換え規則 4. 超グラフの文脈自由集合 4.1 超辺置換文法 4.2 HR文法に伴う正規木文法 4.3 超グラフの等式集合 4.4 超グラフの文脈自由集合の性質 5. 超グラフの文脈自由集合の論理的性質 5.1 述語の帰納的集合 5.2 論理構造としての超グラフ 5.3 有限超グラフの可認識集合 6. 禁止小グラフで定義される有限グラフの集合 6.1 小グラフ包含 6.2 木幅と木分解 6.3 比較図 7. 計算量の問題 8. 無限超グラフ 8.1 無限超グラフ表現 8.2 無限超グラフの単項性質 8.3 超グラフにおける等式系 8.4 関手の初期不動点 8.5 超グラフにおける等式系の初期解 8.6 等式的超グラフの単項性質 第6章 書換え系 N.Dershowitz and J.-P.Jouannaud:稲垣 康善,直井 徹 1. 序論 2. 構文論 2.1 項 2.2 等式 2.3 書換え規則 2.4 決定手続き 2.5 書換え系の拡張 3. 意味論 3.1 代数 3.2 始代数 3.3 計算可能代数 4. Church-Rosser性 4.1 合流性 4.2 調和性 5. 停止性 5.1 簡約順序 5.2 単純化順序 5.3 経路順序 5.4 書換え系の組合せ 6. 充足可能性 6.1 構文論的単一化 6.2 意味論的単一化 6.3 ナローイング 7. 危険対 7.1 項書換え 7.2 直交書換え系 7.3 類書換え 7.4 順序付き書換え 7.5 既約な書換え系 8. 完備化 8.1 抽象完備化 8.2 公平性 8.3 完備化の拡張 8.4 順序付き書換え 8.5 機能的定理証明 8.6 1階述語論理の定理証明 9. 書換え概念の拡張 9.1 順序ソート書換え 9.2 条件付き書換え 9.3 優先度付き書換え 9.4 グラフ書換え 第7章 関数型プログラミングとラムダ計算 H.P.Barendregt:横内 寛文 1. 関数型計算モデル 2. ラムダ計算 2.1 変換 2.2 計算可能関数の表現 3. 意味論 3.1 操作的意味論:簡約と戦略 3.2 表示的意味論:ラムダモデル 4. 言語の拡張 4.1 デルタ規則 4.2 型 5. 組合せ子論理と実装手法 5.1 組合せ子論理 5.2 実装の問題 第8章 プログラミング言語における型理論 J.C.Mitchell:林 晋 1. 序論 1.1 概論 1.2 純粋および応用ラムダ計算 2. 関数の型をもつ型付きラムダ計算 2.1 型 2.2 項 2.3 証明系 2.4 意味論と健全性 2.5 再帰的関数論的モデル 2.6 領域理論的モデル 2.7 カルテシアン閉圏 2.8 Kripkeラムダモデル 3. 論理的関係 3.1 はじめに 3.2 作用的構造上の論理的関係 3.3 論理的部分関数と論理的同値関係 3.4 証明論的応用 3.5 表現独立性 3.6 論理的関係の変種 4. 多相型入門 4.1 引数としての型 4.2 可述的な多相的計算系 4.3 非可述的な多相型 4.4 データ抽象と存在型 4.5 型推論入門 4.6 型変数をもつλ→の型推論 4.7 多相的宣言の型推論 4.8 他の型概念 第9章 帰納的な関数型プログラム図式 B.Courcelle:深澤 良彰 1. 序論 2. 準備としての例 3. 基本的な定義 3.1 多ソート代数 3.2 帰納的な関数型プログラム図式 3.3 同値な図式 4. 離散的解釈における操作的意味論 4.1 部分関数と平板な半順序 4.2 離散的解釈 4.3 書換えによる評価 4.4 意味写像 4.5 計算規則 5. 連続的解釈における操作的意味論 5.1 連続代数としての解釈 5.2 有限の極大要素と停止した計算 6. 解釈のクラス 6.1 汎用の解釈 6.2 代表解釈 6.3 解釈の方程式的クラス 6.4 解釈の代数的クラス 7. 最小不動点意味論 7.1 最小で唯一の解を得る不動点理論 7.2 Scottの帰納原理 7.3 Kleeneの列と打切り帰納法 8. プログラム図式の変換 8.1 プログラム図式における同値性の推論 8.2 畳込み,展開,書換え 8.3 制限された畳込み展開 9. 研究の歴史,他の形式のプログラム図式,文献ガイド 9.1 流れ図 9.2 固定された条件をもつ一様な帰納的関数型プログラム図式 9.3 多様な帰納的関数型プログラム図式 9.4 代数的理論 9.5 プログラムの生成と検証に対する応用 第10章 論理プログラミング K.R.Apt:筧 捷彦 1. 序論 1.1 背景 1.2 論文の構成 2. 構文と証明論 2.1 1階言語 2.2 論理プログラム 2.3 代入 2.4 単一化子 2.5 計算過程―SLD溶融 2.6 例 2.7 SLD導出の特性 2.8 反駁手続き―SLD木 3. 意味論 3.1 1階論理の意味論 3.2 SLD溶融の安全性 3.3 Herbrand模型 3.4 直接帰結演算子 3.5 演算子とその不動点 3.6 最小Herbrand模型 3.7 SLD溶融の完全性 3.8 正解代入 3.9 SLD溶融の強安全性 3.10 手続き的解釈と宣言的解釈 4. 計算力 4.1 計算力と定義力 4.2 ULの枚挙可能性 4.3 帰納的関数 4.4 帰納的関数の計算力 4.5 TFの閉包順序数 5. 否定情報 5.1 非単調推論 5.2 閉世界仮説 5.3 失敗即否定規則 5.4 有限的失敗の特徴付け 5.5 プログラムの完備化 5.6 完備化の模型 5.7 失敗即否定規則の安全性 5.8 失敗即否定規則の完全性 5.9 等号公理と恒等 5.10 まとめ 6. 一般目標 6.1 SLDNF-溶融 6.2 SLDNF-導出の安全性 6.3 はまり 6.4 SLDNF-溶融の限定的な完全性 6.5 許容性 7. 層状プログラム 7.1 準備 7.2 層別 7.3 非単調演算子とその不動点 7.4 層状プログラムの意味論 7.5 完全模型意味論 8. 関連事項 8.1 一般プログラム 8.2 他の方法 8.3 演繹的データベース 8.4 PROLOG 8.5 論理プログラミングと関数プログラミングの統合 8.6 人工知能への応用 第11章 表示的意味論 P.D.Mosses:山田 眞市 1. 序論 2. 構文論 2.1 具象構文論 2.2 抽象構文 2.3 文脈依存構文 3. 意味論 3.1 表示的意味論 3.2 意味関数 3.3 記法の慣例 4. 領域 4.1 領域の構造 4.2 領域の記法 4.3 記法上の約束事 5. 意味の記述法 5.1 リテラル 5.2 式 5.3 定数宣言 5.4 関数の抽象 5.5 変数宣言 5.6 文 5.7 手続き抽象 5.8 プログラム 5.9 非決定性 5.10 並行性 6. 文献ノート 6.1 発展 6.2 解説 6.3 変形 第12章 意味領域 C.A.Gunter and D.S.Scott:山田 眞市 1. 序論 2. 関数の帰納的定義 2.1 cpoと不動点定理 2.2 不動点定理の応用 2.3 一様性 3. エフェクティブに表現した領域 3.1 正規部分posetと射影 3.2 エフェクティブに表現した領域 4. 作用素と関数 4.1 積 4.2 Churchのラムダ記法 4.3 破砕積 4.4 和と引上げ 4.5 同形と閉包性 5. べき領域 5.1 直観的説明 5.2 形式的定義 5.3 普遍性と閉包性 6. 双有限領域 6.1 Poltkin順序 6.2 閉包性 7. 領域の帰納的定義 7.1 閉包を使う領域方程式の解法 7.2 無型ラムダ記法のモデル 7.3 射影を使う領域方程式の解法 7.4 双有限領域上の作用素の表現 第13章 代数的仕様 M.Wirsing:稲垣 康善,坂部 俊樹 1. 序論 2. 抽象データ型 2.1 シグニチャと項 2.2 代数と計算構造 2.3 抽象データ型 2.4 抽象データ型の計算可能性 3. 代数的仕様 3.1 論理式と理論 3.2 代数的仕様とその意味論 3.3 他の意味論的理解 4. 単純仕様 4.1 束と存在定理 4.2 単純仕様の表現能力 5. 隠蔽関数と構成子をもつ仕様 5.1 構文と意味論 5.2 束と存在定理 5.3 隠蔽記号と構成子をもつ仕様の表現能力 5.4 階層的仕様 6. 構造化仕様 6.1 構造化仕様の意味論 6.2 隠蔽関数のない構造化仕様 6.3 構成演算 6.4 拡張 6.5 観測的抽象化 6.6 構造化仕様の代数 7. パラメータ化仕様 7.1 型付きラムダ計算によるアプローチ 7.2 プッシュアウトアプローチ 8. 実現 8.1 詳細化による実現 8.2 他の実現概念 8.3 パラメータ化された構成子実現と抽象化子実現 8.4 実行可能仕様 9. 仕様記述言語 9.1 CLEAR 9.2 OBJ2 9.3 ASL 9.4 Larch 9.5 その他の仕様記述言語 第14章 プログラムの論理 D.Kozen and J.Tiuryn:西村 泰一,近藤 通朗 1. 序論 1.1 状態,入出力関係,軌跡 1.2 外的論理,内的論理 1.3 歴史ノート 2. 命題動的論理 2.1 基本的定義 2.2 PDLに対する演繹体系 2.3 基本的性質 2.4 有限モデル特性 2.5 演繹的完全性 2.6 PDLの充足可能性問題の計算量 2.7 PDLの変形種 3. 1階の動的論理 3.1 構文論 3.2 意味論 3.3 計算量 3.4 演繹体系 3.5 表現力 3.6 操作的vs.公理的意味論 3.7 他のプログラミング言語 4. 他のアプローチ 4.1 超準動的論理 4.2 アルゴリズム的論理 4.3 有効的定義の論理 4.4 時制論理 第15章 プログラム証明のための手法と論理 P.Cousot:細野 千春,富田 康治 1. 序論 1.1 Hoareの萌芽的な論文の解説 1.2 C.A.R.HoareによるHoare論理のその後の研究 1.3 プログラムに関する推論を行うための手法に関するC.A.R.Hoareによるその後の研究 1.4 Hoare論理の概観 1.5 要約 1.6 この概観を読むためのヒント 2. 論理的,集合論的,順序論的記法 3. プログラミング言語の構文論と意味論 3.1 構文論 3.2 操作的意味論 3.3 関係的意味論 4. 命令の部分正当性 5. Floyd-Naurの部分正当性証明手法とその同値な変形 5.1 Floyd-Naurの手法による部分正当性の証明の例 5.2 段階的なFloyd-Naurの部分正当性証明手法 5.3 合成的なFloyd-Naurの部分正当性証明手法 5.4 Floyd-Naurの部分正当性の段階的な証明と合成的な証明の同値性 5.5 Floyd-Naurの部分正当性証明手法の変形 6. ライブネスの証明手法 6.1 実行トレース 6.2 全正当性 6.3 整礎関係,整列集合,順序数 6.4 Floydの整礎集合法による停止性の証明 6.5 ライブネス 6.6 Floydの全正当性の証明手法からライブネスへの一般化 6.7 Burstallの全正当性証明手法とその一般化 7. Hoare論理 7.1 意味論的な観点から見たHoare論理 7.2 構文論的な観点から見たHoare論理 7.3 Hoare論理の意味論 7.4 構文論と意味論の間の関係:Hoare論理の健全性と完全性の問題 8. Hoare論理の補足 8.1 データ構造 8.2 手続き 8.3 未定義 8.4 別名と副作用 8.5 ブロック構造の局所変数 8.6 goto文 8.7 (副作用のある)関数と式 8.8 コルーチン 8.9 並行プログラム 8.10 全正当性 8.11 プログラム検証の例 8.12 プログラムに対して1階論理を拡張した他の論理 第16章 様相論理と時間論理 E.A.Emerson:志村 立矢 1. 序論 2. 時間論理の分類 2.1 命題論理 対 1階述語論理 2.2 大域的と合成的 2.3 分岐的 対 線形 2.4 時点と時区間 2.5 離散 対 連続 2.6 過去時制 対 未来時制 3. 線形時間論理の技術的基礎 3.1 タイムライン 3.2 命題線形時間論理 3.3 1階の線形時間論理 4. 分岐的時間論理の技術的基礎 4.1 樹状構造 4.2 命題分岐的時間論理 4.3 1階の分岐的時間論理 5. 並行計算:その基礎 5.1 非決定性と公平性による並列性のモデル化 5.2 並列計算の抽象モデル 5.3 並列計算の具体的なモデル 5.4 並列計算の枠組みと時間論理の結び付き 6. 理論的見地からの時間論理 6.1 表現可能性 6.2 命題時間論理の決定手続き 6.3 演繹体系 6.4 モデル性の判定 6.5 無限の対象の上のオートマトン 7. 時間論理のプログラムの検証への応用 7.1 並行プログラムの正当性に関する性質 7.2 並行プログラムの検証:証明論的方法 7.3 時間論理による仕様からの並行プログラムの機械合成 7.4 有限状態並行システムの自動検証 8. 計算機科学における他の様相論理と時間論理 8.1 古典様相論理 8.2 命題動的論理 8.3 確率論理 8.4 不動点論理 8.5 知識 第17章 関係データベース理論の構成要素 P.C.Kanellakis:鈴木 晋 1. 序論 1.1 動機と歴史 1.2 内容についての案内 2. 関係データモデル 2.1 関係代数と関係従属性 2.2 なぜ関係代数か 2.3 なぜ関係従属性か 2.4 超グラフとデータベーススキーマの構文について 2.5 論理とデータベースの意味について 3. 従属性とデータベーススキーマ設計 3.1 従属性の分類 3.2 データベーススキーマ設計 4. 問合わせデータベース論理プログラム 4.1 問合わせの分類 4.2 データベース論理プログラム 4.3 問合わせ言語と複合オブジェクトデータモデル 5. 議論:関係データベース理論のその他の話題 5.1 不完全情報の問題 5.2 データベース更新の問題 6. 結論 第18章 分散計算:モデルと手法 L.Lamport and N.Lynch:山下 雅史 1. 分散計算とは何か 2. 分散システムのモデル 2.1 メッセージ伝達モデル 2.2 それ以外のモデル 2.3 基礎的概念 3. 分散アルゴリズムの理解 3.1 挙動の集合としてのシステム 3.2 安全性と活性 3.3 システムの記述 3.4 主張に基づく理解 3.5 アルゴリズムの導出 3.6 仕様記述 4. 典型的な分散アルゴリズム 4.1 共有変数アルゴリズム 4.2 分散合意 4.3 ネットワークアルゴリズム 4.4 データベースにおける並行性制御 第19章 並行プロセスの操作的および代数的意味論 R.Milner:稲垣 康善,結縁 祥治 1. 序論 2. 基本言語 2.1 構文および記法 2.2 操作的意味論 2.3 導出木と遷移グラフ 2.4 ソート 2.5 フローグラフ 2.6 拡張言語 2.7 その他の動作式の構成 3. プロセスの強合同関係 3.1 議論 3.2 強双模倣関係 3.3 等式による強合同関係の性質 3.4 強合同関係における置換え可能性 3.5 強等価関係上での不動点の唯一性 4. プロセスの観測合同関係 4.1 観測等価性 4.2 双模倣関係 4.3 観測合同関係 4.4 プロセス等価性上での不動点の唯一性 4.5 等式規則の完全性 4.6 プロセスの等価性に対するその他の概念 5. 双模倣等価関係の解析 5.1 等価性の階層構造 5.2 階層構造の論理的特性化 6. 合流性をもつプロセス 6.1 決定性 6.2 合流性 6.3 合流性を保存する構成子 7. 関連する重要な文献
同じじゃない。
お願いだから中学だか高校だかの数学の教科書の集合論のところを読んできてくれ。本当に頼む。
集合を直和分割にするため。「良い」「悪い」は「悪い⇔¬良い」が成り立てばその詳細とは別個に議論できる。
「良い」「悪い」の具体的な基準については何も言ってない。
学生時代、数学が苦手で苦手でしょうがなかった。論理的思考ってやつが自分にはできないのかと思うほど理解できなかった。そんな俺だが、中学時代にプログラミングをひょんなきっかけで知り、今ではそれで食ってる。
プログラミングを始めてすぐの頃に、アルゴリズムが大事だと直感した。初めて買ったプログラミングの本がアルゴリズム辞典だった。プログラミングという方法で様々なモノを表現する分には、自分の想像力の不足を感じることはあまりなかった。何かをスマートなやり方で表現できた時、充実する。楽しい。
最近、あれだけ苦手だった数学が、自分が体得してきたプログラミングの中に姿を表していて興味をそそられる。
例えば何かを求める時に、洗練されたやり方を求めて改善していったらそれが数学でいう有名な理論に沿ったものだったり、何をできればいいのかだけ聞いて手探りで作ったらちゃんとYコンビネーターの形になってwktkするとか。難しいSQLを直感的に読み解けた時にwktkして調べたらそれは集合論ではどういうことで・・・と説明されていて素敵なものにみえたりとか。
そういう時、数学をちゃんと理解していたらもっと感動できてもっと楽しいのかなと思うんだけど、同じ事を表してるようでもプログラミングだと自分で作れて理解できるのに、数学だと理解できないんだよね。多分数学アレルギーがあって、数学という言語にまじめに取り組めないだけなのかなーと思うんだけど。
いまさら、数学面白そう!と思っても遅すぎるんだよなー。なんで学生の時にこの感覚に気付かなかったんだろう。それと今から数学真面目に勉強しようとしたら何からやればいいのかも良くわからんのが困った。高校の時すでについていけんかったからそこからだろうか。
茂木健一郎氏のブログエントリーで気になる点があったので指摘したいと思います。
http://kenmogi.cocolog-nifty.com/qualia/2010/06/post-9d62.html
まず、前提として私は茂木氏の主張には賛成です。
茂木氏は、日本での行き過ぎた標準化の弊害として、突出した能力が育ちにくいと述べています。それの対照的な例として、アメリカの個人の得意な分野を伸ばせるシステムに言及しています。茂木氏の要点としては『学力における個性と、標準化のバランスをどのように見るか。この点においてアメリカと日本の大学入試は、異なる思想に基づいている。』(本文より)ということです。
しかし、茂木氏の説明にはあまりにも説得力が欠けており、この人は実はあまりきちんと考えずにこのエントリーを書いたのではないかと考えてしまいます。
その理由は、日本の大学入試問題とアメリカのSATという試験を比較対象にしているところです。
SATとは、日本でいうセンター試験のようなものです。「ようなもの」と書いたのは、SATとセンター試験とは大きく異なる点がいくつかあるからです。
*SATはセンター試験のように大学入学のためだけの高校範囲の理解度をはかるものではなく、言語能力と数学の基本的な能力をはかるものです。
*センター試験は大学入試の前の一発勝負ですが、SATは何年生からでも何度でも受けることができ、大学に応募するときには一番高い得点を採用することができるので、どちらかというとTOEFLやTOEICによく似ています。
*東京大学というのは言わずと知れた日本の一番学問的な偏差値の高いところですから、学生に高い思考能力を求めるのは当然です。東京大学以外の大学では一問一答式のお粗末な入試問題を出すところも多いのですが、そのことには触れられていません。
ですから、個別の大学の大学入試問題とSATを比較し、求められる思考能力のレベルに言及し悦に入るのは明らかに的外れなのです。
日米どちらのシステムがいいというのは一概には言えません。教育を受ける個人によっても違うでしょう。
日本は多岐にわたる教科すべてで高いレベルを求め、いわゆる知識的にはAll roundedな人間を育てようとしますが、アメリカでは得意な分野の教科を重点的にとれるなど、個人の特性にあわせた教育が行われるよう配慮されています。私の感覚では思考能力を育てる教育をしているのはアメリカのほうです。アメリカでは小さいときから著述式問題を解かせ、表現能力を養うほか、学年が上になると論理的な文章を書くトレーニングを繰り返し行います。知識を吸収し、正しく物事を理解するアプローチを取る日本より、批判的な視点が養われると思います。どちらにもメリット、デメリットはあるのです。
茂木氏の指摘に、日本のやり方では高校の範囲で足止めされてしまい、能力が伸ばせない学生が出てくる、とありますが、果たして本当にそうでしょうか。
アメリカには国で統一された標準のカリキュラム、というものはありませんが、この分野ではここまで理解しているのがふさわしいとされる基準はあり、高校でそれ以上のレベルの授業をオファーしているところはほとんどありません。必修の科目も多く、レベルの高い高校では学生は日本の学生のように日々勉強に追われています。大学入試は日本のように一発勝負ではなく、課外活動も含めた高校生活すべてが見られるので、アメリカの学生はいい大学に行くために日本の学生以上に多忙です。茂木氏の『アメリカのSATは簡単だが、同時に、高校生の時から非可換代数や無限集合論に精通した学生をつくるかもしれない。』という主張の根拠はどこにあるのでしょう。
確かにアメリカは才能を伸ばす教育をしているので、数学が良くできる生徒は大学の講義をとれたり、夏期の数学キャンプに参加したりして自分の能力を伸ばすことができます。それはあくまで自主的に自分の時間にしているのであって、日本の学生だって趣味で高等数学を勉強しようと思えばいくらでもできます。
茂木氏は学校というものに期待をしすぎているのではないでしょうか。優秀な学生は、特に高校生にもなれば、人の手を借りなくても自分でさっさと知識を探し吸収していくでしょう。日本の教育は比較的受動的な学生を育てるので、どうやって自分自身で次のレベルに進むか分からない、という問題があるかもしれませんが。
http://kenmogi.cocolog-nifty.com/qualia/2010/06/post-9d62.html
日本の大学入試は「プロクラステスのベッド」とか聞いた風なことを言ってる割に、自分自身の学識のなさを暴露しているんだから噴飯ものだ。
上に挙げた東京大学の入試のように、高校までのカリキュラムに出題範囲を限定した上で、その中で人工的な難しさを追求した出題をしていると、大学入試が終わるまでは、高校生はそのカリキュラムの範囲に足踏みすることになる。
こいつ本当に、自分がリンク張ってる東大入試の問題見てみたのかと思う。どの科目も基本的な良問がおおむね揃っている(英語については言いたいこともあるがこれは日本の英語教育自体の問題になる)。専門家がこの辺の問題に全く歯が立たなければ「廃業しろ」と言われても仕方ない種の問題だ。専門から離れていたら思い出すまでに時間こそかかるだろうが、一度は身につけておかなければ教科書の内容を習得したとは言えないレベルの、基本的な知識と考え方を試す問題でしかない。この程度に深く掘り下げる能力がなければ大学での本格的な勉強になんかついて行けないだろう。
というか、アメリカの大学生の勉強量が多いのは、日本の受験勉強と同じような内容を学部教育に詰め込んでいるからという面もかなりある。日本の大学の1年後期や2年前期の電磁気学や解析力学で使う米国製の教科書の序文に「本書は学部上級生から大学院生を対象としている」とか書かれていることなんて結構ザラ。
本当は、さっさと量子力学や統計力学、線型代数か解析幾何の進んだ内容を修得すれば良いのに、18歳の段階では、いつまで経っても高校のカリキュラムの範囲であれこれと勉強をしなければならないことになる。
解析幾何wwwww知ったかぶりがもろばれなんですけど。
あのね、解析幾何っていうのは一口に言えば平面や空間に座標を引いて図形を扱うことで、思いっきり高校範囲です。せめて位相幾何とか微分幾何とか代数幾何とか言えないかね。門前の小僧でもそのぐらいの言葉は聞きかじっておいてくれよ。あんたこそ大学で何してたのかね。
それに、あの程度の数学や物理がわからない奴に量子力学や統計力学なんて理解できないよ。なんとかごまかして線型代数の試験で単位を取ることぐらいはまあできるかもしれないけど、線型代数なんて大学入学直後に習う「イロハのイ」なわけだからねえ。
学問というものは、ある程度の段階を超えると、標準化をすることが難しくなる。どの方向に伸びていくかは、分野によっても人によっても異なるからだ。
あのね、あなたが「進んだ内容」とか言ってる「線型代数」ですら「標準化」されたレベルの内容でしかないんですが何か?いわんや高校レベルをや。
「非可換代数」とか「無限集合論」とか素人臭い用語法(せめて「非可換環論」とか「公理的集合論」とかいえよ)が気になるが、東大や京大の数学科あたりに行けば、高校時代から大学レベルの数学に手を出している学生はかなり沢山いるよ。
だいいち、東大入試レベルの普通の数学を理解せずにそんなマニアックな分野(リー環論とかならマニアックとは言えないだろうが)に手を出してもありがたみが理解できないと思うのだがどうだろうか。つーかお前、非可換って言いたいだけちゃうんかと。
こんなんに釣られている奴がブクマ見ると結構いるのが驚きだよ。
意味はものとものと間に成り立つ関係のことだから、要素は2個あればいい。どういうものが2個あればいいのかというと、包含図考えてみたときに、「A」と「Aを含むようなB」
「末期患者」に含まれてる「かっこよく死にたい人」にとっての自殺の是非 とかそんな感じ
Aを含むようなBをあらかじめ仮定しているっていうのがAが意味を持つための条件かな
こういう言葉の論理を集合論に持っていって延々考えた人はバートランド・ラッセルとか、悩みそのものは宗教の聖典とか、キルケゴールの「死に至る病」とか
これはタイトルからしてそのまんまだけど、哲学者っていうか岩波文庫の青(岩波文庫の哲学書は背表紙のラベルが青い)は大概そんなんだったな
とりあえずラッセル?既知だったら恐縮です。
同情するよ。俺も「習ってない漢字を使うな」とか「教えてない解き方で解くな」とか、だいぶ公立小学校には迫害されたからなあ。
自分が好きで色々勝手に本を読んだり暇があったら考えたりして知ってただけのことなのに、「親の詰め込み教育の犠牲者」みたいに扱われて、本当にひどい話だよ。
あなたに足りなかったものは「自分の方法と一般的な方法が同値だと証明するための知能」です。
確かに考える事は大切ですが、もう少し頑張れば良かったですね。
違う。相手は子供だぜ?そんなことを求めるのは無理。
「証明できるかどうか」なんてのは技術的な問題。大事なのは概念を体で理解していること。
概念が体になじんでいて当たり前のように使いこなせていれば、そのうちいつでも必要なときに証明はできるようになる。一番極端な例がラマヌジャン。
大学以降、厳密性に必要以上にこだわりすぎて勉強の進度が遅れてしまう奴ってのがたまにいるんだけど、あんたみたいに「証明できなければ先に進んではいけない」という教義を子供(当時の)にまで押しつけるような人には、はっきり言ってそういう危険性感じるね。
基礎解析ってのはまぁ要するに微分積分だ。確率・統計はそのまま。
微積分がわかってないから、市場動向やら社内のリソースの動向やらがどう変化しているのか理解できない文系職の連中は多いし、
「限界効用の逓減」とかいう珍妙な言葉が生まれたり、あるいはそれを聞いただけで混乱して思考停止してしまったりする。
計画を立てるときに成長率をそのまま線形で補外したりする論外なロジックを(検証なしに)立てちゃったりする。
確率や統計がわかってないから、不確実性を決定論的に扱ってみたりする人が多いし、なんとなく処理したりする人も多い。
はてサのくせに ( ^∀^)ゲラゲラ
http://b.hatena.ne.jp/entry/anond.hatelabo.jp/20090905024537
http://anond.hatelabo.jp/20090905024537
makamaka_at_donzoko 思春期の妄想 2009/09/07
Apeman ネトウヨの世界観がよくわかるな 2009/09/06
kowyoshi あらあら, 増田 死ぬのはやつらだ氏が最終的に釣り上げたのは、この増田か 2009/09/06
blackseptember あたまがわるい 代弁と大便の区別がついていないようだ。 2009/09/06
buyobuyo ふーん 2009/09/06
furukatsu 増田, 政治 まーわからんでもない 2009/09/05
Shinnya anonymous 2009/09/05
Penitentiam_agite 2009/09/05
depthwinter なんか集合論的に矛盾した事を書いてないかこの人。 2009/09/05
aomushi510 2009/09/05
welldefined ここまで人権リテラシーを欠如したガキは日教組教育というものを受けて育ったそうです。 2009/09/05
kyo_ju 増田 2009/09/05
bokudakenosunaba 2009/09/05
yellowbell リテラシー, 遠い眼で ネトウヨって、その右傾化思想そのものよりも、党派性でしかものが言えなくなることを馬鹿にされているのだと思ったが。ステレオタイプを求める人って、現実でものすごい同調圧力に晒されてたりするのかもしれない。 2009/09/05
Amerikan こいつアホ 『朝鮮人』と強調していたところが、そこが一番のポイントだというのにねぇ・・・その後の対応のマズさもあったし/0点。文脈が読めていない。 2009/09/05
perry_46 2009/09/05
RRD ネトウヨとはてさは、方向性はもちろん、立ち位置の高さも違うってこと。 2009/09/05
Listlessness "はてサの願望をストレートに表明しただけなのに、このdisりようww"この人の考える「はてサの願望」がそもそも誤解なのでは、と思う 2009/09/05
atawi 政治, 増田 「はてサと支持者の息の根を止めるべきだ」と書いた増田がいる。 2009/09/05
comzoo 面白すぎる増田を見てしまった。ええええええええwwwと驚いてしまった。これはひどい。 2009/09/05
NaokiTakahashi 2009/09/05