• ベストアンサー

述語論理の学習方針について

「論理学をつくる」(名古屋大学出版 外山田和久)で 論理学を勉強し始めた者です。 順調に読み進めてきたのですが、述語論理の意味論 (セマンティクス)へ足を踏み入れた途端、訳が解らなく なって困っております。 「モデル」、「変種」、「アサインメント」など、急に概念の レベルが高く感じられるような用語が多用されており、 そもそも何を目的としているのかが理解できなくなって おります。 意味論ということなので、論理式の真偽について議論 する分野だと思うのですが、抽象語が多く足踏みをして いる状態です。 考え方のコツがあれば、教えて下さい。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

どなたからも回答が寄せられていないようなので。。。 専門家ではありませんが、その昔、いわゆる「人工知能言語」とみなされていたLISP(リスト処理系)やProlog(一階の述語論理を扱う処理系)を使ったことのある立場からの発言になります。 ※逆に分かりにくくなるかも知れませんので、ご注意願います。 1.論理式は「真・偽」の2値に対する論理演算であり、ビット(2進数一桁、ゼロかイチか)を最小単位とする現行のコンピュータ(計算機)の論理的基礎にもなっている。 2.一定の長さ(たとえば8ビット)の0と1の羅列で作られた符号そのものには、意味という概念は想定しにくいが、たとえば、8ビットの符号にアルファベットやカナなどを対応させるとき、ASCIIコード表やANKコード表といった「意味」のある符号列として扱うことができる。ただし、おなじ値をとる8ビット符号列であっても、対応させる表を変えることで、様々な文字に読み替えることができてしまう。 3.また、一定のコード表(たとえばASCII7ビット)のみに基づいて、自然言語としての英単語を生成し、それら単語の一連の繋がり(ネットワーク構造)において、(人間にとって)共通の何らかの「意味」を見いだすことができるなら、その「繋がり」そのものに「意味」というラベル(このラベルに書く文字列も、一定のコード表に基づいた文字列になる)を貼り付けることができる。単語(ないし構造)同士を結びつけるネットワークの線に意味のあるラベルを貼り付けたものが、セマンティック(意味)ネットワークと呼ばれる構造になる。 4.したがって、「意味」という概念は、論理式そのものには含まれず、解釈する主体によって認識されることで、はじめて「本来の意味」となる。逆に言えば、「意味」そのものは、論理式のみで表現されるものではない。 述語論理は、あるコードの塊とあるコードの塊とを結びつけたものを述語として1つのコードの塊とする(http://okwave.jp/qa/q5462523.html)のですが、その結びつけに術語の名前(ラベル)を用い、そこに「意味」(解釈)を人間側が割り当てるのです。 真偽表に基づく術語の論理演算のレベルでは、「意味」に無関係に、術語の記号的側面(同一の記号か否か)にて計算することができます。したがって、一階の述語論理に基づいた推論をPrologといった計算機言語にて処理することができるわけです。 抽象語が多数でてくる理由は、おそらく、論理演算レベルではない人間側の解釈・意図であるところの「意味」という概念を扱うからこそだと思われます。 参考になるかどうか分かりませんが、書かないよりマシだと思って記述しました。

pacioli
質問者

お礼

ご丁寧にありがとうございます。 論理学を専門とされている方からのご意見よりも むしろ異なる側面からご説明いただいた方が、 解りやすいと実感しました。・・・前者については ご回答は得れませんでしたけど。 とても理解しやすかったです。 本当にありがとうございました。