• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:形式化の表す内容について)

数学の形式体系とモデルの関係についての疑問

このQ&Aのポイント
  • 数学の形式体系とモデルの関係についての疑問について解説します。
  • 形式体系で書くことができない性質について考えると、なぜ数学では形式的な文字列の変形や生成で議論できるのか不思議に思います。
  • 論理式で表せない性質があるということをいうためには、その性質を表すことが必要です。数学においてはそれも論理式で書くことになるので、結局どういうことをしているのか混乱しています。

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

  • ベストアンサー
  • stomachman
  • ベストアンサー率57% (1014/1775)
回答No.1

随分難しい話をなさってるんで的確な回答はできませんが、とりあえず、 > おおざっぱにいうと論理式で表せない性質があるということをいうためにはその性質を表すことが必要 と仰っている点が引っ掛かります。  存在を証明するには、「その性質」が具体的にどんなものであるかを言う必要はないでしょう。  簡単なアナロジーを挙げれば、実数は非可算無限個ある。そして「小数点以下何桁でも計算できる実数」は、明らかに可算無限個しかない。だから、計算できない実数が非可算無限個存在します。こういう風に、対象を「存在するが●●ではないもの」という言い方で捉えることならできる。(構成主義が批判するポイントです。)  ここで「明らかに可算無限個しかない」というのは、計算できる実数と計算手段(チューリングマシンでも、BASICのプログラムでもいいんですが)との対応を考えている訳です。この話には、具体的にどんな実数が計算できないか、ということのみならず、具体的にどんな実数が計算できるか、ということすらも、一切出て来ませんね。  ところで、計算不可能な実数の中には、その実数を計算してみろ、という注文に応じることは出来ないけれども、具体的に定義することならできる(従って、その定義に基づいてその数の性質に関して幾らかの命題を書ける)ものもある。たとえば: BASICのプログラムに使われる文字の列を辞書順に並べたリストLを考えます。そして、Lを使ってある無限小数sを以下のように定義します「Lのk番目の文字列がエラーにならずに実行できて、かつ、有限時間内に停止するのであれば、sの小数点以下k桁目は1である。さもなければ0である」。これでsが定義されますが、ご案内の通りプログラムが停止するかどうかを判定する一般的なアルゴリズムというものはない。だから、sは計算不可能です。けれども、或るひとつの(有限時間内に停止する)BASICのプログラムがLの何番目に現れるかを計算することなら出来るので、それがm番目だとすると、「sのm桁目は1である」という命題が証明できる訳です。(…どうも話が脱線しました。)

student0201
質問者

お礼

 回答ありがとうございます、遅くなってしまってすみません。  質問内であまり相互に関係のない項目を無理やり一緒にしてしまっているとは自分でも感じていまして、申し訳ないです。  議論しようとしている性質が具体的に、実際に構成可能である必要はないというのは理解できます。しかし挙げていただいたアナロジーにおいても「非可算」とはどういうものなのか、非可算かどうかを判断する基準はなにか、は書き表す必要があると感じます。無矛盾な体系は可算モデルを持つという定理があっても形式体系で非可算という性質は記述可能なのでしょうか。(どんな公理系をもってしても可算モデルを持ってしまうなら非可算という性質を書き表せているとは言えないのではないでしょうか)  すなわち 実数は非可算無限個ある→「小数点以下何桁でも計算できる実数」は、明らかに可算無限個しかない→よって計算できない実数が非可算無限個存在する という論理の流れはとても良く理解できるのですが、はじめの「実数は非可算無限個ある」をいかにして文字列で表せるのだろうと考えてしまいます。一階論理ではそれは表せないというのがスコーレムの定理だと考えていたのですが、もしそうなら、一階論理には非可算という概念を含めることができないというのは、「一階論理では表せない」ということではなく、非可算という概念じたいがどういうものか決定できていない、揺らぐということになるのではないのでしょうか。  もちろん、非可算というものは怪しい概念だなどと言うつもりは全くないのですが、ただ一階論理とは別な世界で非可算とはどういうものか知っているから「どういうものかは分かるが一階論理では表せない」のような解釈になるわけで、ではその別な世界とはどういうような身分で形式的に書かれるのかわからなく、足場をはずされたような感覚に陥ってしまうのです。  以上においての文で「表す・表せる」ということをかなり色々な意味で好き勝手に使っていると思います、そこで感じるのですが、私の質問文の最後の方に少し書きましたように「体系内で自然数と1:1対応付けるような関数が存在しない」ということも「体系の外から見れば可算モデルがある」ということも視点の違う立場から体系の性質を表しているのであり(「表している」という言葉の意味が異なる仕方で)、そもそも(フィクショナルなものというと言い過ぎだと思いますが)変形生成された記号の列を人間が理解できるように解釈して人間用の言葉にした結果であって、どちらが正しいのかなどというのは意味をなさず、体系内で自然数と1:1が付けられないということで非可算というものの性質は十分表せていると考えて良いのでしょうか。  またも抽象的な書きぶりになってしまい申し訳ありません、お時間に余裕ありましたらよろしくお願いします。 この度は回答ありがとうございました、参考にさせていただきます。

関連するQ&A