❦
私は以前、目の飛び出た怪物が破れたドレス姿の女性を抱えて連れ去る様子を描いた、パルプ雑誌時代の古い表紙について語った。そして人々が、性的魅力は愛好者に依存せず、魅力的な存在に内在する属性であるかのように考えることについても語った。
こうした表紙を描く画家(Fredと呼ぼう)は言う。「目の飛び出た怪物が同種より人間の女性を好むのは当然だ。人間の女性には、ぬるぬるした鱗ではなく、柔らかく心地よい肌があると、怪物にも分かる。異星人ではあってもばかではない。なぜこんな性的魅力についての基本的な間違いを犯すと思うのか?」
Fredの誤りは何か? 彼は、2個の引数を持つ関数(「2項関数」)を、
Sexiness: Admirer, Entity ➝ [0, ∞) ,
1個の引数を持つ関数(「1項関数」)であるかのように扱っている。
Sexiness: Entity ➝ [0, ∞) .
Sexinessを、引数として一つのEntityしか受け取らない関数として扱えば、むろんSexinessはEntityのみに依存し、その他の何も関係しないように見える。
2項関数について1項関数であるかのように考えると、変数質問の誤謬/心的投影の誤謬に陥る。それは、誰かの進行方向とは無関係に、建物が道路の左側にあるのか右側にあるのかを本質的に決めようとすることに似ている。
「性的魅力」は実際に1項関数を指すのだと、別の、同等に妥当な見方からは実際に言える。ただし各話者は、誰を拉致して犯すかを決めるために異なる1項関数を用いる。画家Fredと、目の飛び出た怪物Bloogahがどちらも「セクシー」という言葉を使うからといって、必ず同じことを意味していると誰が言ったのか?
この見方を取れば、ある女性が本質的に5単位のFred::Sexinessを持つと語っても逆説は生じない。Fred::Sexinessが体の曲線、肌の質感、衣服、地位の手がかりなどによって定義されれば、見る者すべてがこの事実に同意できる。この定義は、評価対象の女性のみに言及し、Fredにはまったく言及しなくてよい。
たまたまFred自身が、誘惑する対象を選ぶためにこのアルゴリズムを使っている。しかしそれは、アルゴリズムそのものがFredに言及しなければならないことを意味しない。だからこの見方では、FredのSexiness関数は本当に1個の引数、すなわちその女性のみの関数である。私はそれをFred::Sexinessと呼んだが、この名称が指すのは、Fredと独立に記述される関数であることを忘れてはならない。ひょっとすると、次のように書くほうがよいだろう。
Fred::Sexiness == Sexiness_20934 .
Fredが候補となる配偶相手を評価するために関数Sexiness_20934を使うことは、Fredについての経験的事実である。ひょっとするとJohnもまったく同じアルゴリズムを使うかもしれない。ひとたび手に入れば、それがどこから来たかは問題ではない。
同様に、同じ女性が持つSexiness_72546は0.01単位だけだが、粘菌は3単位のSexiness_72546を持つ。Bloogahが誰を拉致するか決めるためにSexiness_72546を使っていることは、たまたま経験的事実である。すなわちBloogah::Sexinessという名前は、関数Sexiness_72546という、Bloogahとは独立な固定された数学的対象を指す。
その女性は0.01単位のSexiness_72546と5単位のSexiness_20934を持つと言えば、あらゆる観察者が逆説なしにそれに同意できる。
そして、2項と1項の二つの見方は、数学者Haskell Curryにちなんで名づけられた「カリー化」という概念を使って統一できる。カリー化は一部のプログラミング言語で使える技法であり、たとえば次のように書く代わりに、
x = plus(2, 3) (x = 5) ,
次のようにも書ける。
y = plus(2)
(yは、2を食べた関数plusの「カリー化」された形になっている)
x = y(3) (x = 5)
z = y(7) (z = 9) .
したがってplusは2項関数だが、plusをカリー化し、必要な二つの引数のうち一つだけを食べさせると、あらゆる入力に2を加える1項関数になる。(同様に、7項関数から始めて4個の引数を与えれば、結果は3項関数になる。)
真の純粋主義者なら、あらゆる関数は定義により正確に一つの引数を受け取るものとして見るべきだと主張するだろう。この見方では、plusは一つの数値入力を受け取り、新しい関数を出力する。そしてこの新しい関数が一つの数値入力を受け取り、最後に数値を出力する。この見方では、plus(2,3)と書くとき、実際にはまずplus(2)を計算して、どんな入力にも2を加える関数を得て、その結果を3に適用している。プログラマなら次のように書くだろう。
plus: int ➝ (int ➝ int).
これは、plusが引数としてintを受け取り、型int ➝ intの関数を返すことを意味する。
この比喩を人間の言葉の使い方へ戻してみよう。「性的魅力」はまずAdmirerを食べて、固定された数学的対象を吐き出すと想像できる。その対象は、Admirerが現在どのように美を評価するかを記述する。その愛好者が持つ望ましさの直観が、この数学的関数と同型な方法で計算されていることは、愛好者についての経験的事実である。
そうすれば、Sexiness(Admirer)のカリー化で吐き出された数学的対象をWomanに適用できる。最初のAdmirerがFredだったなら、Sexiness(Fred)はまずSexiness_20934を返す。その後で私たちは、Fredと独立に、Womanについての経験的事実、すなわちSexiness_20934(Woman) = 5であると言える。
Hilary Putnamの「双子地球」思考実験では、水がH2Oではなく、別の透明で流動的な物質XYZであることを除いて私たちの地球とまったく同じ「双子地球」を想定することに意味があるかどうかをめぐり、哲学界で大騒動が起きた。さらに思考実験の時代を数世紀前に設定し、私たちの地球にも双子地球にも、H2OとXYZという対立仮説を検証する方法を知る人がいないことにする。その世界で「水」という言葉は、この世界と同じことを意味するだろうか?
ある人々は「そうだ。地球の人と双子地球の人が『水』という言葉を発するとき、心に思い浮かべている感覚的な検査は同じだからだ」と言った。
ある人々は「いや、私たちの地球で『水』はH2Oを意味し、双子地球で『水』はXYZを意味するからだ」と言った。
「水」を、まず世界を食べることから始め、その透明で流動的なものの経験的な真の性質を見つけ、新しく固定された概念を返すものだと考えよう。その戻り値はWater42またはH2Oである。そう考えれば、この世界を食べる概念は私たちの地球と双子地球で同じである。場所が異なれば、異なる答えを返すだけだ。
「水」がH2Oを意味すると考えれば、その概念を世界間で運んでも何も変化せず、双子地球にはH2Oが存在しない。
そしてむろん、「ウォーター」という音節の響きが実際に何を意味するのかを議論しても意味はない。
では、一つの定義を選び、一貫して使うべきなのか? しかし、そう簡単に混乱から身を守れるわけではない。概念のカリー化された形とされていない形の区別を意図的に意識するよう、自分を訓練しなければならない。
カリー化されていない水の概念を取り、異なる世界に適用すると、それは同じ概念だが異なるものを指す。すなわち、世界を食べる一定の関数を異なる世界に適用し、異なる戻り値を得る。双子地球ではXYZが「水」であり、H2Oは水ではない。私たちの地球ではH2Oが「水」であり、XYZは水ではない。
一方、「水」を、先ほどの思考者なら「『水』を私たちの地球に適用した結果」と呼ぶものを指すと考えるなら、双子地球でXYZは水ではなく、H2Oが水である。
その後の哲学的論争の混乱すべては、概念を本能的にカリー化したり、本能的にカリー化を解いたりする傾向に依拠していた。
同様にFredが、目の飛び出た怪物のような他のエージェントは、Sexiness_BEM(Woman)に基づき、Sexiness_Fred(Woman)に基づくのではなく、犯すために拉致する対象を選ぶと気づくには、一段階余分に必要となる。そのためにFredは、Sexinessを二つの引数を持つ関数として意識的に思い描き直さねばならない。Fredの脳が本能的にすることは、Woman.sexiness、すなわちSexiness_Fred(Woman)を評価することだけである。ただし、それには単にWoman.sexinessというラベルが貼られている。
固定された数学関数Sexiness_20934はFredにもBEMにも言及せず、女性だけに言及する。だからFredには、BEMが「性的魅力」をなぜ異なるように評価するのかが、本能的に見えない。そして実際、BEMも異なるように評価することはない。何か奇妙な理由でその特定の関数Sexiness_20934の結果を気にかけたならの話である。しかし、BEMが別の関数を使うことは、BEMについての経験的事実であり、それを誰を拉致するか決めるために用いる。
この分析の要点は何かと疑問に思うなら、上の区別を応用し、「客観的」「主観的」「恣意的」のような混乱を招く言葉を禁句にしてみるとよい。