な ら ばその弐
ひらぽん (平本 智明)
Microsoft MVP .NET (2010~)
Twitter @hilapon
巷でよく聞く意見・・・・
「理論から学ぶデータベース実践入門は難しい」
では、なにが難しいのか??
理論から学ぶデータベース実践入門は難しい?
いわゆるハウツー本じゃなく
What本?
リレーショナルデータベースの原理原則に踏み込む
理論から学ぶデータベース実践入門は難しい?
• RDBMSの基礎となるリレーショナル理論
• リレーショナル理論の基となる集合論
• および述語論理という数学理論に踏み込む
理論から学ぶデータベース実践入門は難しい?
• 第二章 述語論理のお話し・・・
理論から学ぶデータベース実践入門は難しい?
いきなりラスボス!
命題論理
命題を記号化し、複雑な命題の真偽を判定しやすく
したもの
理論から学ぶデータベース実践入門は難しい?
結合子
ひとつまたは複数の命題から真偽値を導く記号
理論から学ぶデータベース実践入門は難しい?
代表的な結合子の種類
記号1 意味 日本語での表現
¬ 否定・NOT でない
∧ 論理積・連言・AND かつ
∨ 論理和・選言・OR あるいは
≣ 同値・EQ 等しい
⊃ 包含・IMP ならば
理論から学ぶデータベース実践入門は難しい?
NOT・AND・OR・EQ は判るが・・・
理論から学ぶデータベース実践入門は難しい?
包含(ならば) ってなに??
包含(ならば)
P Q P ⊃ Q
真 真 真
真 偽 偽
偽 真 真
偽 偽 真
理論から学ぶデータベース実践入門は難しい?
包含(ならば)
Pが真の場合のみ、Qの真偽を論じる
Pが偽の場合、Qの真偽はスルー
理論から学ぶデータベース実践入門は難しい?
式で表現すると
if P then Q else true;
理論から学ぶデータベース実践入門は難しい?
故障系で考えてみる・・・
故障(P) 修理(Q) 故障 (P) ⊃ 修理 (Q)
した する 動作する
した しない 動作しない
してない する 動作する
してない しない 動作する
理論から学ぶデータベース実践入門は難しい?
故障した場合以外、考慮しない!
契約(P) 魔法少女(Q) 契約 (P) ⊃ 魔法少女 (Q)
した なる 願い叶う
した ならない 願い叶わない
しない なる 願い叶う
しない ならない 願い叶う
魔法少女系で考えてみる・・・
理論から学ぶデータベース実践入門は難しい?
契約した場合以外、考慮しない!
・・・・・あれ?
包含(ならば)
• 論理学を知らない人にはなじみが薄い
• 包含の記号 「⊃」 が集合の記号に似て紛らわしい
• 日常会話の 「ならば」 と似て非なる性質を持つ
• 考えすぎると嵌るw
理論から学ぶデータベース実践入門は難しい?
包含(ならば)
第二章では包含を使う式が頻出するが、特性を考慮して読み進め
れば、さほど混乱なく読み進められるのではないでしょうか
包含も論理学では必要不可欠な道具。慣れればどうってことない筈
(たぶん・・・)
理論から学ぶデータベース実践入門は難しい?
本書では論理学の概要にしか触れられてないため、
論理学をもう少し詳しく学んでみたい人には、
とりあえずこの本お勧め
理論から学ぶデータベース実践入門は難しい?
ろんりと集合 中内 伸光 著
ISBN-13: 978-4535786417
おやじぎゃぐとゆる~いパンダのイラストが売りw

ならば(その弐)

Editor's Notes

  • #2 えー、こんばんは、わたくしひらぽんと申します。本日は「ならば」というお題で語らせて頂きます
  • #3 うちの現場のエンジニアも皆この本読んでますが、一様に聞くのが「むずい」とのご意見。ではどこが難しいのか、少し考えてみました
  • #4 この本って、いわゆるハウツー本じゃなく、リレーショナルデータベースの原理原則や本質に踏み込む解説をしてる、「ホワット本」とでもいうべき本だと思うんですよね。よって結果を急ぐ人たちには少し不向きなのかなーとも思ったりもするのですがー
  • #5 まず最初にリレーショナルモデルの本質を解説して、その基である集合論と述語論理に踏み込んでるわけですがー
  • #6 第二章で述語論理のお話が出てくるわけです。これが人によって いきなりラスボス!
  • #7 この第二章を読んでみますとーまず最初に論理学のお話し・・・・ 述語論理の前に、命題論理の解説から始まるわけです。命題論理の概念は比較的判りやすいと思います
  • #8 そして、命題論理に必要な道具として「結合子」が出てくるわけですがー
  • #9 代表的な結合子の種類がこれ!
  • #10 NOT・AND・OR・EQ は判るけど・・・・包含ってなに?みなこれでまず引っ掛かるようです。私が参加させて頂いてる七誌さんの読書会でも、この「ならば」、数回にわたり議論の対象になりました
  • #11 ならばの真偽値表をあげてみますね・・・
  • #12 Pが真の場合のみ、Qの真偽を論じる Pが偽の場合、Qの真偽はスルー
  • #13 式で表現すると if P then Q else true;
  • #14 読書会開いてる七誌さんの受け売りですが、故障系で考えてみます パソコンが故障し、修理するならば、動作するようになる・・・ パソコン故障して修理しなければ、当然動作しないわけです で、故障してなければ、動作するもしないもないと・・・
  • #15 もっと判りやすい例で考えてみましょう 魔法少女系で考えてみます 契約するならば魔法少女になり、願いが叶う 契約しても魔法少女にならなければ、当然願いが叶わない ただしそもそも契約しなければ、魔法少女になろいうがなるまいが願いが叶うわけです・・・あれ? ってな具合に論理包含の場合、契約した場合以外まったく考慮しません 願いが叶おうが叶わなかろうが知ったこっちゃないし、世界は奇跡に溢れてて、もしかしたら魔法少女にならなくても願いが叶うのかもしれません
  • #16 というわけで、まとめです。
  • #17 本書の第二章では、・・・・
  • #18 おまけです