語学嫌いは言語類型論をやれ

 半年たってしまった...

 皆さん、英語(任意の語学)好きですか?

僕は嫌いです。

 人はなぜ、特定の教科/分野/学問を好きになったり嫌いになったりするのでしょうか。 精神論や観念論はよろしくないという立場においては、これは端的に言って 「好き/嫌い」と判定されるような行動をとる傾向性を、 適当なフィードバックで強化されるような環境に置かれたからでしょう(身も蓋もない)。 そのような話として行動分析学があるので興味ある向き、そして教育者各位は読んで僕に教えてください。

行動分析学入門―ヒトの行動の思いがけない理由 (集英社新書)

行動分析学入門―ヒトの行動の思いがけない理由 (集英社新書)

行動分析学入門

行動分析学入門

  • 作者: 杉山尚子,島宗理,佐藤方哉,リチャード・W.マロット,アリア・E・マロット
  • 出版社/メーカー: 産業図書
  • 発売日: 1998/03/30
  • メディア: 単行本(ソフトカバー)
  • 購入: 3人 クリック: 30回
  • この商品を含むブログ (17件) を見る

 思えば語学の成功体験なんも無いですね。僕は理系か文系かというとド理系で、 ここ数年で偏見が緩まったおかげて人文/社会科ももしかしたら面白いかもしれないと思いつつありますが、 語学は銃口を突きつけられないとやらない位にモチベーションがない。 中高大と語学はとにかくもう、

こういう表現がある、こういう語彙がある、 書いて覚えろ、聴いて覚えろ/書き取れ、 (どうでもいい文を)読んで読解しろ、

という話ばかりで、 原理さえ押さえればどんな議論を考えてもよいという高い自由度/正誤判定が一貫していて容易という明快さがある数物に比べて、 なんだこのクソつまらん教科は、教科じゃないんじゃないか?などと思ったりしました。 あと僕は耳も悪いので日本語も英語も文脈抜きで単語や短文をクソ音質で投げられても聞き取れる訳がない。

 今でも「言語学」はともかくとして、「語学」は学問じゃないよな、と思っています。 どちらかというと体育や美術に近い。というのも、それは追求したり分析したりするものではなくて、 習慣化したり、表現したり、交流したりする為のものなので。 しかし体育や美術、つまりトレーニングや表現技法の一種なら、 それはそれでゲーミフィケーションやコミュニティによる動機づけがまるで足りてないのではないか。 なぜ日本の英語話者は日本とかいう環境で英語を学び通せてしまえたのか。 まぁこの教授形態の愚痴は本題でないので置いておきます。 学校教育に期待できないのは今に始まったことではない...

 ともかく語学はクソつまらない。面白いと思っている人には申し訳ないですが、 英語が覇権を握ったが為にどの分野で大成するにもこんなつまらんものと付き合わされる羽目になった歴史を恨みざるを得ない。 なぜ面白くないのかというと、その内容や事実に内的説明が殆ど与えられないからです。 ただ規則と事実が、何故こうなっているのか、なぜこうすると良いのか(何の為なのか)抜きの羅列になる。 これが数物であれば、原理はなるべく一貫性とコンパクトさを保とうとしますし、各種公式や定理にも、 それを考える動機づけ、ないしなぜそれが成り立つかの導出が伴っています。 今にして思えばこれは当たり前で、特定の言語なんていうのは、 歴史/文化的経緯でフワッと決まった側面を持っているわけで、 まったく普遍的でも必然的でもない要素が多分に含まれているのです。 そんなただの偶発的な事象に由来する取り決めに「親しむ」ことを強いられるのが気持ちいいわけがありません。 多様な文化はどんなめちゃくちゃなものも存在は尊重しますが、それは僕に(誰にでも)強制しないという条件があります。

 なんかもっと普遍的で、汎用で、形式的側面から言語をなんとかできないのか... 学部の時に形式言語理論に潜って文脈自由文法とその派生(言語学では句構造文法というようですが) に出会ったときの感動が想像できますでしょうか?英語はもはや何も分からんが、これなら分かる。 なぜ語学教育は近似的でもいいから句構造文法を一番最初に提示しないのか??????? 人を馬鹿にしやがって。許さんぞ。今でも思っています。

 さて、去年に遡りますが、こうして悶々としていたなかで、ある分野に出会います。 普通の教育課程をパスすると英語とかいう憎き覇権言語が外国語の9割になってしまいがちですが、 当然ながら世の中には大量の言語があります。英語や日本語とか似ても似つかない言語もありえます。 しかしwikipediaを眺めていると、ある言語は◯◯的で~とかある言語はこの言語に似ていて~/違って~とか、 あるいは品詞や句や節や諸々の語学概念が、複数の言語にまたがって、あるいは比較されて用いられている事がわかります。

「まてよ、そもそも言語学(?)には、こうした言語によらない概念や語法や道具立てがもっとあるのか?」

と思って調べていくと、どうも言語類型論という分野がある事がわかります。 それらしい読み物や入門書が参考文献として出てきます。

言語のレシピ――多様性にひそむ普遍性をもとめて (岩波現代文庫)

言語のレシピ――多様性にひそむ普遍性をもとめて (岩波現代文庫)

言語類型論入門――言語の普遍性と多様性 (岩波オンデマンドブックス)

言語類型論入門――言語の普遍性と多様性 (岩波オンデマンドブックス)

言語普遍性と言語類型論―統語論と形態論 (言語学翻訳叢書)

言語普遍性と言語類型論―統語論と形態論 (言語学翻訳叢書)

ヴォッッッッッッッッッ

 これは大当たりでした。僕は語学弱者であり、言語学専攻でもないので、誤読の可能性は大いにあるのですが、 ここ数年で最高レベルに分野の存在に感謝を捧げています。

 いいですか?リンクは貼りました。 とりあえずリンゼイの言語類型論入門をカートに入れてください。話はそれからです。僕もこれを今読んでいる。

 何が当たりだったか。この分野には、 「語学がそれ自体面白いものである為には足りないと思われるもの」の大半が入っていたからです。 それは何かというと、言語(特定のものではなく全ての)それ自体に対する説明としての科学です。 リンゼイでは次のように類型論を定めています。

言語の全体像やその構成部分の分類を、それらが共有する形式的特徴に基づいて行うこと。

 言語全体を相手にしているので、自ずと語法は特定の言語を贔屓しない中立的なものを志向します。それから、主に形式的特徴に基づくことで、例えば地理的、歴史的経緯による系統よりは、その言語が言語として持つ性質にフォーカスします。このあたりの傾向を通言語的とか共時的とかいいます。

 リンゼイ本に沿って、具体的に類型論が何を語るか少し見てみます。

 まず品詞はありふれた概念ですが、通言語的に品詞という概念が意味を持つか、という問題があります。 品詞なるラベルは何で決まるのか?それらの判別規準はなにか?というのをあらゆる言語に通じる形で定めようとするのは難しい、という話が延々とされます(誠実ですね)。おそらく大抵の言語に名詞動詞形容詞等etc...といったカテゴリーがあること自体はいいでしょう。そこで、次の普遍性が提出されます。「すべての言語にて、名詞動詞は《開いた》品詞で、形容詞以外の他の品詞は《閉じた》品詞である」。ここで、「開いた」というのは、語彙の追加や削除が容易に起きることを指します。これはちょうどプログラミング言語のコア部分はそうそう変わらないがライブラリは随時追加されるような様子に似ています。

 もう一つ有名な例をだします。それはSVO要素の順序についでです。そもそもSVOに相当する概念が各言語にあるのか/それは何で系統的に識別できるか、という問題がありますが、 ひとまずこれがあるとしましょう。例えば英語はSVO、日本語はSOVです。 理論上あり得るSVO順序6種類のうち、このSVO/SOVを採用する言語が大半であり、VSO/VOS/OVSは稀、OSVは全く無いという統計が存在します。 そしてこれは何故かというのを、認知上の利点、統語的なVO要素の結びつきによって説明します。 例えば、Sは先行した方が認知上メリットがあるだとか、VOは動詞句を構成するのでこれが分割されることは稀、というように。

 それから、これはベイカー本でも紹介されているのですが、多くの文法で、動詞句のVとOの順序は、 それ以外の句、節の構造、修飾詞、冠詞の参照先の順序、前置詞/後置詞の傾向などと相関があるという指摘が入ります。 これに関する説明や概念立てを検討した後で、ドライヤーの方向分岐理論が紹介されます。 方向分岐理論の説明がいまいち飲み込めないのでここはちょっと自分の理解ですが、それは 構文解析木の分岐において、複雑さがバウンドされないカテゴリ(分岐的カテゴリ)を左右どちらに置くかは一貫している」と読めます。 もっと大雑把には、言語の文法は右再帰か左再帰かを統一する傾向にある、と言って良いのではと思います。 VO順の場合は、Oは複雑な構造を持ちえるので、動詞句以外の句などにおいても、左側にそうした複雑な要素を置こうとします。 そして、この理由はなぜかと聞かれれば、もちろん構文解析の容易さを挙げます。

これ滅茶苦茶面白くないですか??????

 他にもいろんな分析例があるのですが、どうも目次をみると、これは言語が果たすべき基本機能やレパートリーが概ね共通で、それをどう実現するかという(制限された)多様性をコンパクトに列挙しているようにも見えます。つまり、類型論は

  • あらゆる言語全体という集合にも、かなり強い制約や共通した性質がある(普遍性)。

  • 言語がある機能を実現する為にとる手段は、限られつつも選択の余地がある(多様性)。

という二点を明らかにするのです。この普遍性と多様性はまさりリンゼイの副題です。

 前者の普遍性は、なんらかの尤もらしい説明が与えられます。  後者の多様性は、限られつつも恣意的であることが了解されます。

 例えば、ある人が新しい言語を学ぶとしましょう。もし十分な類型論的知見があれば、 その言語の文法のうち、どこまでが言語によらない必然的な要素、つまり一貫した説明を与えられる部分で、 どこまでがその言語の恣意的な選択、つまりそうである理由は無いが、その言語「らしさ」を成す部分であるかを了解できるわけです。

 こういう話が学習段階で提示されたらもっと語学が好きになれたろうにと本当に思います。

 大事な違いですが、例えばこれはある語の語源がどうとか、歴史的な語族系統図がどうとか、◯◯語圏の文化と言語の関係がどうとかそういう話では全く無いんですよ。むしろ全く逆で、そうした雑多な要素を一切排除して残る形式的なコア部分のその原理と選択肢は何か、という話なのです。(なんか雑多で非形式的で豊かであればあるほどいい、という文化系特有の傾向(偏見)、はっきり言って大ッ嫌いなんですが、まぁそれはおいとくとして) 個人的な性癖ですが、こう、習うより慣れろというのが本当に無理で、もっというと疑うよりも習えというのも厳しいのですが、こうやって普遍的な部分からスタートして、残りの恣意的な部分は、それこそが◯◯語なんですよ、と言ってくれれば、とりあえず説明の要求は前者に集中して、後者はまぁそれこそが◯◯語なんだから仕方ないよな、と思う余地が生まれるわけです。

 プログラミング言語のような人工言語は、ある種の表現力を実現するためにその構文を考えていると思います。 であれば同様の「この機能を実現するためにどの構文をつかうか」という視点が自然言語にもあって然るべきではないですか。 自然言語の機能のレパートリーは、どうも歴史を通してあまり変わっていないようなので、 各々の言語はそれをどうやって実現するかという、制限された選択肢のなかから、あるやり方を一貫して選んだものだといえるわけです。

 どうですか。ここしばらく類型論のプッシュばかりしています(研究をしろ)が、ちょっとでも興味をもったらリンゼイをポチってください。僕はリンゼイが済んだらコムリーにいきます(研究をしろ)。

   なお申し添えますが、言語類型論をやっても個々の言語が出来るようには全くならないと思います。

環、有界、STモナド

全部話題バラバラです。

1.なぜ物理量は環なのか?

 今ゼミでIsham某量子論本を読んでいたりするのですが、これに限らず、ある文脈において、次のような対比が語られる事があります。 すなわち、

古典力学では物理量のなす環構造が可換であったが、量子論では一般に非可換になる。

 この可換非可換という対比は、単にある種の代数構造の条件開放という意味で「少なくとも数学的には」自然な一般化の発想で それで例えば可換/非可換C*環が、GN双対を通じて普通の幾何(コンパクトハウスドルフ位相空間)/非可換幾何の対比になるだとか、 あるいは量子群だとかいう名称がここに由来するだとかいった話に繋がったり、物理では非可換性によって、物理量の同時測定、同時値付与ができない、不確定性関係につながるとか、そういった風潮や言い回しの背景を提供しているようにに思います。(そうでないならそれは良いことなのでどうでもいいです)

 しかし、ほんとかよ? 毎度のことですが、この手の言説の雑さ加減、ちょっと反省してくれというお気持ちが湧いてきます。  いや、数学的な構造それ自体に興味があるので、可換非可換を対比しますというのは別にいいんですよ。それは自由にやればいいし、 やっていきをした結果として理論物理に有意な構造が手に入ればそれを使うのもいいですが。  問題は、物理学の基礎や定式化において「量子論は物理量環が非可換になったやつ」という言説が目に余るということです。

 まずそもそもですが、

定式化段階で「物理量が可換環である」とみなせる理論、そんなにあるか?

という点です。大体において、こういう状況での可換環というのは力学相空間X上のC(X)のことを指しているはずです。 要するに、「力学的相空間/状態空間があって、物理量がその上の複素数値関数で、各点積による可換環構造をもつ」というビジョンは 古典力学ではありがちだよね?ということを想定して、古典物理は可換C*環だ!といっているのです。

 はー、ちょっと待てよと。例えば学部でやるような以下の古典理論を見てみますよ?

  • 解析力学(L)

    • ラグランジアンTN\mathbb{R}値関数、加法的、\mathbb{R}mod、しかし乗法的でない。
    • Noetherモーメント:リー群が作用しているとき、リー代数からNoetherモーメントの対応はTN\mathbb{R}値関数へ線形、乗法的ではない。
  • 解析力学(H)

    • ハミルトニアンベクトル場:\mathbb{R}mod、乗法をもたない。
    • poisson環:\mathbb{R}mod、乗法を持つが可換ではない。
  • 古典場理論(電磁気,流体含む)

    • 電磁気の各種量:基本変数がベクトル場や微分形式なのでいずれも\mathbb{R}mod、乗法はない。外積はgradeを上げる上に可換ではない。
    • 物理量として、密度関数の領域積分や、あるいはその密度関数自体を取るので、そもそも乗法は限られた状況でしか入らない。(例えばエネルギー密度の計算やポインティングベクトル場など)
  • 熱力学

    • 熱力学関数:状態空間上の実凸関数だが、同次性を持つことを強いられるので、乗法を無制限にとれない。系の拡大と加法が取れるので\mathbb{R}mod。
  • 相対論

    • 古典場の理論に準じる。大体テンソル場およびその領域積分が基本的物理量なので、乗法は無制限にとれない。

 実数値関数ばっかやんけ!というツッコミをおいておいても、殆どが\mathbb{R}modであって、 \mathbb{R}algじゃないわけですよ。algebraっぽい奴だって各点積とは違うし。 いや、それでも解析力学で、任意の物理量としてTN,TN^*上関数環の、poissonではない各点積関数環を考えられるでしょ、 と思うかもしれません。しかしそれにどんな物理的意味がありますか?poissonはハミルトニアンベクトル場の無限小リー微分としての 意味がありますが、各点積はなんですか?ええ?なんもないでしょう?  第一ですよ、環構造を定義する方法なんて、今やいくらでもあるわけです。集合が手に入ったら適当が環を持ってきて関数環、形式的積を定義して自由生成、結合的演算があったらそれで環とか、数学的構造が手に入ったらまぁご自由に作ってくださいと。 そんななかで大事なことは、(物理において)「その積が物理的動機にモチベートされている」かどうかであって、 その意味でいえば相空間複素関数環の各点積構造、ほとんど動機がないわけですよ。 解析力学で各点積関数環を作れるのは、単に「作れてしまう」から計算や試案に便利というだけであって、 それ自体に統一された第一級の物理的な解釈があるわけではないのです。

 こうしてみると、ガッツリ環として最初から宣言しているのは、ハミルトン形式のPoisson環くらいで、 これは最初から非可換なわけですから「量子論では物理量は非可換!」とか「????」じゃないですか。 大体角運動量の議論とかですら、リー代数->正準力学系->ユニタリ表現で、非可換な代数が準同型になることを使っているわけで、 それをスルーして、「非可換性を強調するときだけC(X)、実際の運用の時はpoissonにアナロジーを求める」なんてダブスタもいいとこです。いい加減にしろ。

 これ結構悪影響があって、というのも量子力学では物理量は作用素で表現しますが、 まぁ案の定「作用素」ですから、環になりますよね? そして「量子物理量の環構造の物理的意味が不明」という問題が発生してしまうのです。

 しかしまってくれ、そもそも環構造に物理的意味が最初から憑依していたケースは、そもそも古典物理ですら限られているわけで、 その古典物理の物理量環だって、「相空間があって、値が実数値だから定義できる」という意味しかない。 だからこの意味不明問題は、そもそも定式化がナンセンスであって、積構造に何を期待するかというのは、 ヒルベルト空間の作用素という数学的モデルの実装戦略を採用した我々が最初に動機づけすべきことなのです。 で、それがない? 何も宣言してないんだから無くて当然でしょう。そしてそれで何も困ることはない。

 もう一つの悪影響は、「物理量が実数値である」という思い込みを強めてしまう点です。

 というのも、例えば量子測定では、測定値集合は別に実数に限られてなんかいないし、任意の可測または位相空間が認められます。 これはごく当然のことで、例えば物理量の測定をするときに、僕らは測定器のUIの状態を見るわけじゃないですか。 それは実数ですか? なわけ無いですよね? アナログメーターの針や、デジタル表示器のレジスタ状態をモデル化した某かを 僕らは認識しているわけで、そこまで含めたら測定値集合が実数でなくてはならないなんてことには全くならない。 このメーター系のモデルは、とりあえず確率論の文脈に置くので、可測空間でありさえすればよいのです。 ではどうして古典力学含む物理理論で、大量の実数由来の数学的構造が使われているのか、というのは 単にそれぞれの状況で実数が便利な構造であった、というだけに過ぎません。 なぜなら、個々の理論では実数を使う「動機」がそれぞれ微妙に異なるからです。

 量子力学の測定概念が一気に位相空間や可測空間に一般化できた理由は、 それだけ量子力学古典力学と違って、内部に複雑な構造を備えていない、非常に素朴な理論であることによります。 古典理論のように、個々の系に複雑な構造が入ってしまえば、その系に対する操作はその構造を保つようなインセンティブが働きます。 ところが量子力学は一般論としてはヒルベルト空間を使う以上のことは言っていませんから、その写像もかなり自由に選べます。 量子力学の古典的対応物は、\bf{Top},\bf{Meas}とかの類であって、間違っても\bf{Symp}とかではないのです。 その意味では、量子力学の公理で「物理量を作用素で表す」も本当はおかしいんですよ。最初からPOVMで宣言するのが筋ってもんです。

2.非有界作用素はいつ必要になるのか?

 半分位続きですが、量子力学の数学的にまっとうな処理というのをやろうとすると、関数解析になるのですが、 そこで面倒くさいのが、非有界作用素の扱いです。というのも、正準量子化とかいうクソ論法に量子力学の当初の仕事が頼ってしまったため、数学的定式化の後で、この位置と運動量に相当する掛け算作用素微分作用素をまともに扱うハメになってしまったのです。

 非有界作用素の面倒臭さは何かというと、基本的に定義域が全域ではありません。それでも稠密に定義されるものを扱うので、 「ほぼ全域定義」ではありますが、この「定義域」情報を持ち回す必要性によって、 折角作用素「環」構造を作ってあげたのに、例えば加法や結合が、定義域に対してどういう影響を与えるかがまったく非自明で、 個々の要素にいちいち付き合ってやらないといけなくなります。

 ところでですが、量子力学の測定理論概念でのCPTPとかPOVMとかの話は基本的に可分であれば有界作用素の議論で完結します。 これはCPTP概念がもともと作用素環(したがって有界作用素環)に由来したり、測定理論としてのメソッドを確率分布の獲得としてきちんと定めたために、スペクトルが確率値で有界にバウンドされるおかげです。 となると、(有限自由度)量子力学それ自体の定式化では、非有界作用素の登場する所はないのです。

 それで気になるのは、僕らは「いつ非有界作用素との付き合いを余儀なくされるのか」ということです。ごく原始的な測定にはいりません。位置と運動量については、正準量子化を採用しなければよいのです。 たとえば最初からL^2(\mathbb{R})上の左正則表現をとれば、Stone定理でユニタリ表現を分解できるので、 実質運動量に相当するPVMとそのユニタリ作用の概念をもったまま、難なく議論ができます。PVMですから当然有界です。 ユニタリ表現をちゃんと自覚的に召喚すれば、ユニタリなのですから非有界性はどこにも出てきません。 つまり「物理量を作用素で表す」という呪縛を解除すれば良いという話です。そのスペクトルに「物理量の値」としての意味しかないのならば、 それをわざわざPVM要素にかけて積分してヒルベルト空間にねじ込む理由がありません。最初からPVMで扱えば有界になるし便利。 もし、そのスペクトルに変換群が作用しているとしても、PVMの底集合に群が作用していて、 それが密度行列に対するユニタリ表現との間に繋絡自然性条件が走っているとみなせば良いのですから、群作用も問題ない。

 有限自由度の個々の系に関して言う分には、非有界作用素を別の数学で殴る代用手続きがあるように見えます。

 そこで、複数の系の相互作用なんかを考えてみます。たとえば測定のモデルとしてvNプロトコルというのがあり、 それは次の形をしています。

\exp(itA\otimes P)

 ここでAは測りたい物理量でPはメーター系の変換生成子です。しかし、これも取扱自体は有界作用素の範疇で実行できます。 というのもAをスペクトル分解して、これによる合成系のPVM上でPによるユニタリ変換を直積分すれば良いからです。 ユニタリ変換のPVM積分ですから、有界の範疇です。しかしここにはより興味深いことが起きていて、 ここではAのスペクトルの「値自体」がメーターをどの程度動かすかを決めているのです。 なのでAのスペクトルは「ただの測定値」ではありません。メーター系の変換群としての意味があることになって、 それではこのプロトコルを一般化するとしたらどうなるのか?それを組織化するならどうすればいいか?という疑問が湧きます。

 思いかえせば、古典物理でも「物理量の(各点)積」ってこういう使い方をしていたよな、という気がしますね。 例えば解析力学や古典場などで各点積相互作用項を突っ込むことで両者が両者に従って変換されるのが良い例です。 つまり、いい感じの相互作用やある種の動作を引き起こすために、「積をとってみている」わけです。 より素朴な古典物理の場合は、この相互作用それ自体を物理的イメージに基づいて行っている場合があったわけですが、 (例えば常/偏微分方程式を「発見する」場合のdxなどを用いた投機的計算など:弾性体や曲線の方程式とか) いつしかそうした文脈が忘れ去られて、単なる「積構造」だけが引き継がれるようになったのかもしれません。 量子力学でそうした正当な直観を回復する方法論があるのかについてはまだ謎です。

 脱線しました。非有界作用素に戻ってきますが、唯一これやばいなと思うのがあり、それはフォック空間を作る時のLadderoperatorです。

 自由場の量子化、というか量子化はクソなので、単に多粒子系ですが、相互作用をさしあたって深刻に考えなくていい場合は、とりあえずフォック空間を張る事ができます。これは一種の自由テンソル代数のようなものですが、 量子論でのフォックは対称化や反対称化を行ったり、内積も適切に決めてやる必要があるので、 単なるテンソル代数とは微妙に異なります。

 どういう普遍性で定義するのがベストか不明ですが、とりあえずgraded monoidかな?位に思っています。しかしここに問題点があり、粒子を合流させる積演算、およびそこから造られるLadderoperatorは非有界なのです。統計性処理のために。これは量子的調和振動子の計算ともあいます。

 ウオーここへ来て非有界になってしまった。しかしこれはある意味では自然という見解があります。というのも、例えば素粒子現象のように初っ端から多粒子で、かつ識別不能な場合、可観測量とはなにかというと、一粒子の場合はPOVM要素で成立確率を返す汎関数ですが、 このPOVM要素をLadderoperatorでフォック空間に輸送すると、「POVM要素を満たす粒子数期待値」を返す汎関数になるんですよ。 でもこれは確かに自然な物理量に思えます。だって識別不能なんですから、どれがどの事象を成立させるかわからないわけで。

 すると、こうした状況では、単純な確率論としてのメソッドに基づく定式化がまずい気がしてきます。 確率論は汎関数の評価値として[0,1]値だけを相手にすればいいので、有界になりますが、 粒子数期待値となれば[0,\infty)ですから、どんなつまらない物理量でも対応作用素が非有界になってしまいます。どうすれば…

3.STモナド

 Haskellは、他の言語では副作用とかよんでる振る舞いをきちんと型レベルで捕捉することに成功していますが、 そのためにモナドを振り回す必要があります。まぁそれはよいのですが、 例えばIOモナドはほぼなんでもできますが、純粋な計算をしたいというのに、ちょっとIOの力を借りただけで、 IOに汚染されたままになってしまってはたまりません。

 良くも悪くも、型の表現力と統制力が強力なので、やりたいことに対して丁度よい型による表現を探す事が求められているのだと思います。  そこで破壊的代入や参照や配列更新等ができつつも、最終的に値を純粋に取り出してモナド文脈から戻ってくることの出来るモナドとして STモナドがあります。しかしこのSTモナドの実行関数runSTの型がくせ者で、一見型を見ただけでは、 これが何を意味するのか、これによってどんな利用制限がかかってくるのか、それは何故なのかがピンときません。

runST::forall a.(forall s. (ST s a))-> a

この全称量化こそがSTモナドのキモだったのですが、ようやくそれを了解したのでこれを書いています。

 ところでですが、述語論理において次の証明規則があります。

\forall x. \phi \Rightarrow \phi(t/x)

 これは全称量化の除去規則というやつで、全称量化束縛された変数の具体化に相当します。 このときtは「実質的には」なんでもよいのですが、あくまで推論規則としてこれを見るにはちゃんと制限があります。 それはt\phiに代入されたときに、t中の自由変数が捕獲されてはいけないということです。 「実質的には」なんでもよい、といったのは、論理命題としてなら、 \phi中の束縛変数をアルファ変換などで置き換えても同値になるためです。 しかし推論規則としてはこの制限は無視できません。今それぞれの論理式はただの記号列だからです。 例として

\phi(-)= \forall y.\exists z. (-) + z > 100 + y

などを考えて、t=-zなどとすれば破綻をきたす事がわかります。

 話を戻しますが、型システムと論理がいい感じに対応してそうというお話があります。

カリー=ハワード同型対応 - Wikipedia

 詳しくは理解していませんが、型システムがどういう振る舞いをするかのアナロジーを論理に求めることはできそうです。 そこでrunSTですが、何らかの具体的な値を吐かせるために使うわけですから、型変数のaはいずれ具体化されるはずです。 このとき、先の述語論理のアナロジーで考えれば、aの具体化においてsを含むと、これが捕獲される事がわかります。 したがって、runSTを含んで型検査をするときに、aにsを含む具体化を要求するようなコードは弾かれることになります。

 例えば不正なコードとして、

Haskell/存在量化された型 - Wikibooks

の例を見てみましょう。

v = runST (newSTRef True)

が不正ですが、これはnewSTRefの型が

newSTRef::a' -> ST s (STRef s a')

であることによります。このvの型を導出しようとすると何が起きるか見てみましょう。 ST s (STRef s a')をrunSTに代入するのですから、最終的に具体的なaを導出するには ST s (STRef s a')からrunSTの具体化の前提:forall s.(ST s a)を導く必要があります。 このときaは全称量化されていたのですから、sを含んではいけません。 ここで、forall導入を行ってforall s.ST s (STRef s a')としてもa=(STRef s a')となり、 sに依存したaしか示すことができません。そこでこの型チェックは失敗します。

 証明論的なこの不正の理由は納得できましたが、そもそもこのコードはなぜ弾かれるべきなのでしょうか?

 ここで、あえて型ST s aを「環境sと相互作用する返り値型aの計算」だと解釈してみましょう。 newSTRefの型a' -> ST s (STRef s a')は、参照型について「その参照が意味を持つ環境」sがSTRef s a'として 型に組み込まれている事がわかります。 すると、先のコードについては、「環境s上でしか意味を持たない参照」をs以外に持ち出すことが不正であると考えられます。

newSTRefがa->ST s (STRef s a)の返り値は、型変数sが二度出現し、それは同一です。これは

  • 環境s上のアクションであること

  • 得られる参照値は環境sにおいて有効なこと

  • この2つの環境は同一なこと

を示していると考えられます。  このほかのST文脈を利用する関数も、「ST sの外に出すべきでない」場合は その返り値がsに依存するようになっています。逆に言えばs依存していなければ、外に持ち出す事ができる事になります。

 たとえばSTArrayならfreezeすることによって、immutableArrayになり、これはST sのような文脈を持たないので、 そのまま外に出すことができます。ただし、STArrayをfreezeする動作は配列のコピーを含むので 効率の観点からコピーを省略してそのまま凍結する為の専用関数runSTArrayがあります。 この型は

runSTArray::forall s.ST s (STArray s i e) -> Array i e 

であり、runSTと比べると、あえてSTArray sと、ST sのsが揃えてあります。 すなわち、この配列自体が存在する環境と、それを操作する環境が揃っており、かつ配列の中身には環境sに依存がないことを量化子で強いているのです。

 たとえばこの配列に環境sに依存したインデックスiや要素eが使われていれば弾かれますが、 この配列自体がsに存在することはちょうどぴったり許されるのです。こうすることで、 環境情報について整合的な、環境情報に依存しない要素からなる、環境情報をもつ配列を、 環境情報を持たない純粋な配列として取り出すことが、ぴったり実現できます。

実際にはこのsというのは、実体がありません。実際STのドキュメントを見ると、

Control.Monad.ST

The strict state-transformer monad. A computation of type ST s a transforms an internal state indexed by s, and returns a value of type a. The s parameter is either an uninstantiated type variable (inside invocations of runST), or RealWorld (inside invocations of stToIO).

とあり、RealWorldへ具体化して実質的にIOとなるか、具体化されないままrunSTされるかしかありません。 しかし実体の無いまま全称量化される仮想的な型変数をSTに組み込むことで、 「計算環境」のような文脈と、それに伴う制御を与えていることになります。

測地線 on Canvas と ABCjs on HasteFFI


また一ヶ月がたってしまった。

1.Haste

 ちょこちょこHaskellを触ったりしていますが、Atcoder Begginerで遊ぶだけでなく、
何か作ってみないとなぁという気持ちがありました。そこで調べてみるとHasteとかいうのを見つけます。

haste-lang.org


 HasteはHaskellからJavaScriptへのコンパイラで、どういう訳かHaskellの基本機能が全部使えます。
で、それだけではJavaScriptの代替にはならないので、CanvasやDOM操作用のモジュールが定義されています。

haste-compiler-0.5.5.0: Haskell To ECMAScript compiler


 ごいすー。ところでHaskellのドキュメント、型から大体の情報が得られる良さがありますね。とにかく型がよいということがわかります。
 このHaste、hastec hogehoge.hsで生成される同名jsファイルをHTMLから読むようにすれば終了です。なんということだ。
JavaScriptまったく触ったことがないし、JavaScript1行も書かなくてもJavaScriptが書けます(?)。

 ほいで、やっぱりモチベーション維持のためには、視覚に訴える物を作りたくなります。まるちめでぃあという奴です。
 そこでHaste.Graphics.Canvasを見てみると、簡単な図形・画像描画関数があります。全部モナドっぽい。
なるほどなるほど。しかし表示するだけじゃなくていんたらくてぶなことをしたいなと思えてきます。我々はわがままなので。
 そこでHaste.Eventsを見てみると、たくさんのイベント型が定義されており、コールバック登録関数onEventがあります。
なるほどなるほどなるほど。しかしどんな感じで何を使うか一から試して考えるのは辛いので何か例が欲しくなります。
 そこで公式のExampleからサンプルを落としてコンパイルしてみます。とっても小さなサンプルもあるのでこのくらいなら読めます。大体要素をIDで探してそれに対するアクションをする感じとわかります。
なるほどなるほどなるほどなるほど。

豊かなわかりが得られる事がわかります。Wakari is God.

 で、前から試してみたいと思ってた非ユークリッド平面を作ってみることにしました。二次元リーマン多様体ですが、2次元だと次元が小さいので、曲率テンソルの有意な成分は実質一つになることが知られています。ということで、すくなくとも局所的には曲率が正か負かゼロかという話で尽きます。
 じゃぁ曲率が正、負、ゼロで一定の面とは何かというので、それぞれ球面、双曲面、普通のユークリッド平面が代表的なものとして出てきます。これらにはそれぞれいい感じに自己等長変換リー群が作用できます。SO(3),PSL(2),SO(2)\ltimes \mathbb{R}^2です。
これらの群は全部3次元で、回転と平行移動がいい感じに混ざっていると考えることができます。仮にこうした平面上で「移動」に相当する概念があるとしたら、それが単位元近傍の等長変換であると考えるのは理に適っているでしょう。
 そこでこれらのリー群の指数写像を作用できるようにしましょう。それから、「移動」するならそもそもこの平面に何か物を置かないといけません。これはもう直線にしておきましょう。もちろん測地線のことです。

ここでハッピーなことが3つあります。

  • こうした3「平」面は、簡単な非ユークリッド計量をもった平面として表現できる。

ポアンカレ上半面:ポアンカレ計量、立体射影:フビニ=スタディ計量)

  • それからそこでの測地線が全て見かけ上は円弧か直線である。
  • そしてHaste.Graphics.Canvas円弧が定義されている

大勝利である事がわかります(低級グラフィックだと円弧が無かったりする)。

結果です。

http://www.asahi-net.or.jp/~fu5k-mths/hyper_line.html
http://www.asahi-net.or.jp/~fu5k-mths/sphere_line.html



 良さがありました。しかしこれを書くにあたってHasteモジュール中CanvasとEventsばかり触ることになり、いまだDOMやSocketの操作が全くわからないままであるので、
HasteでJavaScriptライフを満喫するにまだ課題がある事がわかります。ソースは、何処に貼ればいいんだっけ...Canvasの描画、どのくらいまで速度がでるのかわかりません。ミニゲームくらいは作れるのだろうか。

 ところでPSL(2,\mathbb{R})リー代数なのですが、当初計算しやすいからと次の基底でとっていました。

\begin{bmatrix}
1&0\\
0&-1
\end{bmatrix},\begin{bmatrix}
0&1\\
0&0
\end{bmatrix},\begin{bmatrix}
0&0\\
1&0
\end{bmatrix}

 しかしこれ、あんまり自然じゃないんですね。2次元平面のアナロジーで行けば、ある点周りの回転と平行移動が欲しいところですが、このうち、1つめは上半面モデルで垂直方向の移動ですが、残り2つは何物でもない。
 パウリ行列もどきですが、結局次の基底のほうがより素直な変換になる事がわかります。場の量子論ポアンカレ群いじりしていたときを思い出す。

\begin{bmatrix}
1&0\\
0&-1
\end{bmatrix},\begin{bmatrix}
0&-1\\
1&0
\end{bmatrix},\begin{bmatrix}
0&1\\
1&0
\end{bmatrix}


ちなみに2つ目が回転で3つ目が平行移動です。

2.ABCjsとそもそものABC記法

またwebがらみですが、僕は音楽に関してスコア厨ですから、webで楽譜を弄れたら良さみが深まるなぁと思うわけです。
そこでまた調べてみると、ABCjsなるJavaScriptライブラリがあることがわかります。

abcjs.net


 JavaScriptライブラリ以前にそもそもJavaScriptをよく知らないのでどのような位置付けなのかもわかりませんが、とにかくブラウザはHTMLを表示するし、その中でJavaScriptが起動するわけで、
ドキュメント自体がJavaScriptから見える実行環境と思うことにしました。そんなわけで、ドキュメントの先のほうでjsファイルをロードしておけばライブラリとしてはそれで配置終了っぽいというわかりを得ます。
 ABCjsのうちBasicなるライブラリでは、文字列でABC記法(後述)自体と、それを表示する要素IDを投げると、そこで楽譜を描画してくれる関数renderAbcがあり、これで大体用が終わることがわかります。

 Hasteを触ったのですからJavaScriptを回避してみたくなります。HasteはFFIをもっており、js関数をインポートしたり、Haskell関数をjs関数としてエクスポートできます。どういう原理なんだ。
そしてその関数はシンプルにも

ffi::(FFI a)=> JSString -> a

で、JavaScriptの生コードを適当な何者かとして受け付けます。
得られる型aは実質なんでもよく、生コードに期待する型をこっちでつけてしまってよいのです。どういう原理なんだ。
とにかくFFIは謎です。そこで試しに

renderABC::String -> String -> IO()
renderABC = do ((ffi.toJSStr) "(function(a,b){ABCJS.renderAbc(a,b);})")

などとし、

renderABC "note" dat

とかしてやると、なんと表示されてしまう事がわかります。お試しください。どういう原理なんだ。
("note"はHTMLに書いた要素ID、datは別に定義したABC記法のString)

 既にABC記法のスコアがページにある場合は、勝手にその続きに譜面を描画するPluginもあり、簡単な楽譜表示には困らないことがわかります。
 しかしどうもABC記法の検出が雑っぽく、ページ内にごちゃごちゃしたものがあると誤認して変なものが出てくるのでこっちはやめました。

 結局Haskell内にABC譜文字列を埋め込み、ABCjsをFFIロードし、HasteでJavaScriptにするという埋め込み+FFIを行います。以下は去年書いた曲のメロ譜です。

http://www.asahi-net.or.jp/~fu5k-mths/cis_moll_ref.html

http://www.asahi-net.or.jp/~fu5k-mths/f_moll_ref.html


 いい感じですね。スペースを入れるかどうか、ハイフンをつけるかどうかで、スラー/タイの制御や、旗の接続制御ができるので、例えば八分三連や、八分シンコペなどはグルーヴに応じて調整できます。楽譜の整形ができるので見栄えします。


 ところでこのABC記法、構文は単純ではありますが、これ自体を楽譜、もとい演奏ファイルの抽象として考えると不自然な構文があります。一応、「音楽記述言語」を標榜しているのですが、ウーン?
 違和感の例として、音名と記譜が対応していないことがあります。ABCは名の通りABCDEFG(ラ~ソ)で音を書きますが、変化音(Cis,Ces,Dis,Desとか)はありません。
 それから調号をスケール呼称で指定して表示できますが、調号がかかっているときでも、変化なしのABCDEFGでそのスケールの音を指定します。つまりこの記号は音名ではなく、五線上の音符の位置のことです。
 さらに、調号がかかっている時に、変化音を付けた場合、勝手にナチュラルやダブルシャープダブルフラットに変換されるわけではありません。やはりこれも何の音を書いているかではなく、楽譜上その記号があるかどうかなのです。これでは音楽の記述言語ではなく、楽譜の記述言語です。音楽に対して二段離れている。すなわち、音楽にはこういう要素がこういう構造であるよね?というのを書く言語(楽譜とかMIDIとか)ではなく、楽譜にはこういう記号がこういう配置であるよね?というのを書く言語ということです。

 ちょっと音楽周りに関してやってみたい事があり、そのためにABCがいい感じかと思ったのですが、こういう調子だと微妙なことになりますね。僕は音楽それ自体の高級軽量抽象言語がほしいと思っているのですが、伝統的な楽譜はレガシーたっぷりで曖昧なところもあり、それに代替するものが何かないかと思っていましたが、ABC記法は楽譜がセマンティクスになってしまっているので同様の問題をはらんでしまいます。ここでの問題は、例えば意味論(音そのもの)がちゃんと定義されるのかどうかというのを含みます。

 もともと五線楽譜というのは微妙に冗長だったり曖昧だったりする記譜法ではあります。
例えば平均律ゆえの同音異名はその例です。良く書かれた楽譜では、同音異名のうちどれを取るか(調号で沢山シャープしてある音の半音下をナチュラルで書くか、一度下からダブルシャープするか等)
というのは幾つかの理由をもって選択されます。具体的には

  • 記譜上のメロディラインが滑らかかつ見やすくなるようにとる(半音階的メロディや刺繍音など)。
  • モーダルインターチェンジや局所転調で、旋法上の音順序を破壊しないように最近音から変化させる。

等です。このあたりはどういうニュアンスを込めるかは未定義な割にしばしそうしたニュアンスが意味を持ったりするので困りものです。

 旗を接続するかどうか、旗の切断を拍のどこで行うか、というのもそうで、これも慣習に基づきます。グルーヴによらす、4/4の曲は四音程度で旗を切断する傾向にあります。恐らく視認性のためでしょう。また付点8分付点8分8分というのは様々なところで聴くリズムですが、これも二回目の付点8分を16分8分のタイにすることが多いように思えます。不思議ですね。しかもこの場合4音以下でも途中の16分と8分の旗はつなぎません。

 こうしたものは慣習を守らなくても、楽譜として不正になることはありません。しかし見栄えは悪くなります。可読性も落ちます。
 DAWで五線編集機能が無いものが結構あるのですが、そもそも楽譜からMIDIへの変換は比較的曖昧さが無いが、MIDIから楽譜への変換はかなりの曖昧さがあるという問題によるように思います。昔そうしたGUIを触ったことがありますが、MIDIに保存してから立ち上げ直すと、楽譜が崩れていることに大変落胆した覚えがあります。しかしそのソフトは変化音処理や旗接続はかなり自然にできていたので、今思えば優秀な方だったのでしょう。

 ABCが音楽抽象、音楽記述言語というより、楽譜抽象、楽譜記述言語にあえてしたのは、やはり楽譜を取り巻く伝統的エコシステムに乗りたいというのと、新しい音楽抽象を策定して普及される事それ自体が極めて難しいからだろうという予測はできます。
 MIDIは楽器制御というつよい目的があったので、割と思い切った低レベル音楽抽象規格になりましたが、高レベル抽象で、楽譜並の表現力があり、楽譜以上の形式的厳格さを持つものを作れるかどうかというと、ウーン...
 こうした厳格かつ高級な策定自体が、なんらかの非自明な音楽観を反映してしまいざるを得ないことが想像できます。例えば「声部」概念が意味をもつかどうか、というのは例です。
また電子楽器の制御UIをどうするかというのも音源やDAWで微妙に異なる訳で、出来合いの記述変数自体に統一性がありません。
様々な面倒があります。面倒。面倒。面倒。

3.サピエンス全史たのしかった

これです。
www.amazon.co.jp


ジャパリパークの図書館に納め、フレンズが文字を学ぶことにより、かばんちゃんが容易にハブられることがわかる。

すごーい!

1.お型付け

 春休み生活崩壊で進捗が微妙なことに...しかし近日型付けます。

 

 型付けます。

 

 型とは言うまでもなく、typeですね。Int,Double,IO String,Array (Int,Int) Char...などがあります。世の中では、型をつけるとさまざまなことがスッキリすることから、物事を整理することを型付けるといいます(?)。

 プログラミング言語で型があるといいとかわるいとかいう話があるようで、僕はある側ですが、そもそもプログラミングは初心者なのでこの方向にはそんなにつよく主張すべきものがない。

 ところが、10年付き合って来た物理というか類似の数学を弄る科学では本当に型を付けてくれというつよい思いがあります。

 本当につよい。

 型がついていない本を読むのは大変な苦痛です。言処理系なら、アスペよろしく実行時エラーでおさらば、あとはプログラマのせいですぅ~といえますが、本だとそうはいきません。なぜなら、著者のせいにしても何も生まれないからです。
 読者は常に著者の想像する「意味」を、その数式のくせに非形式な式(台無し…)から読み取って、それを最大限尊重した解釈を汲み取らなくてはなりません。
 曖昧な記述に対してGHCならNo instance for...だとかCouldn't match expected type...with actual type...と当然のように返すことができても、人間は許されないのです。かなしい。人権はないのか…人間は処理系以下か…
 こうした曖昧な概念を書いている人間の頭にあるのはとにかく非形式だが少なくとも彼にとってはリアルな「意味」なのです。「意味」があることだけは当人にとって確かなので、その文章を動的型付けで正常に処理できる処理系を、勝手に読者が繕ってくれるという心算で書いているのです。この文章も…アッアッ…
 しかしその意味を共有する為には形式が必要なわけで、もっと形式的表現力というものに気を配る風潮があってほしいと思うばかりなのですが、自然言語はとにかくOpenEndであり、普段の議論はそれで雑に解決してしまうので、まったく遠き理想です。
 僕はもう人びとの言う「意味」を察するのに疲れました。
 そこで型です。とにかく型を付けましょう。型をつけると型付くといいますから。

 で、とりあえず渡辺さんの学習理論本を読んだり読まなかったりとまた積み始めているので、2章まで型をつけました(pdf)。
http://www.asahi-net.or.jp/~fu5k-mths/pdf/watasumi2_tba_up.pdf

 

2.電磁気のおもひで

 ところで、カタカタ言う前の自分は幾何厨でして、物理のいろんな概念を多様体にぶち込めというお気持ちがしばらくありました。
 多様体はいい。とてもいい。僕の中で幾何厨であるモチベーションと、静的型付けモチベーションはまぁ似たところがありまして、単に一般化されて後者になっただけという感じがします。
 要するに、その数学的概念がどう動機づけされているか、というのを考えると、伝統的な言い回しを無視して、ある種の数学的概念をストレートに投入した方が定式化も見通しもスマートになるとか、やりたいことに対して先に数学的構造や圏や型を動機とともに宣言してしまったほうが、解釈がブレなくていいとかそういう話なのです。
 物理もできてから長いですから、発想としては面白くともなんか曖昧/古い/飛躍がある/ill-defined/解釈が雑な説明がぼちぼちあるわけです。まぁそれでも実験に反するような死に方や明らかな矛盾はすぐに補足されますから、そうではないという点でこうした不満は微妙な話で、しかし流石にレガシーはきちんと捨てて欲しいというお気持ちがあるので「~~をもっと短く正確に宣言するとしたらどうなるか」というのは常時気になるわけです。アスペだ。アスペで何が悪い。

 で、多様体です。例えば相対論を、多様体でモリモリ書こうという風潮は、モダンな本だと割と採用しているみたいなのですが、学部で使うような日本語の古典的なスタイルの入門書では、ほんのちょっと触れられれば良い方で、ふんわりとした「4元ベクトル」とか「共変テンソル」のような曖昧な何某かで説明が終了するのもしばしばです。
 これは微分幾何をしなくても究極死なない特殊相対論ですらそうで、抽象ベクトル空間すら触れずに説明が終了する無謀すらあります。
 一般相対論は僕は天文とかのガチ方面をやっていないので、詳しい事情はわかりません。が、一般相対論はそもそも最初から擬リーマン幾何かつゲージ理論なわけですから、微分形式なりなんなりを使ったほうが良いに決まっています。それらは第一義にそれなんですから、他の語法を使うと余計混乱するわけです。

 そう、微分形式です。古典にはフランダースの「微分形式の理論」とかいう本がありまして、物理などで微分形式自体をふんわりと使う風潮は今更微分幾何プッシュするまでもなくあったようなのです。
 一般相対論ほどガチでもない微分形式のふんわり用法としてかなりメジャーなのが、電磁気です。電磁気はもうベクトル解析が幅を効かせてますし、座標変換行列なんかがよく演習問題になっていたりするので、あんまり導入ご利益がないのでは…という向きもあります。
そんな中で

マクスウェル方程式―電磁気学のよりよい理解のために (SGC Books)

はあえて微分形式で3次元の電磁気をいじるという斬新な本で、読みやすいかどうかは置いておいて、電磁気学の諸概念に、ちゃんと「相応しい微分形式の階数」が付くのです。場の量およびベクトル場が、バンドルの切断であることは良いでしょう。それらは局所的に成分表示できるのですから、バンドルです。すると、後はどの場の量がどのバンドルの切断かという「型」を付ければいいですが、こと電磁気に関してはとっても簡単で直観的です。

 

 ここで軽くやってみましょう。とりあえず基本変数として、
{\bf E},{\bf B},{\bf D},{\bf H},{\bf P},{\bf M},\phi,{\bf A},A_\mu,T_{\mu\nu},F_{\mu\nu}
とかがありますね。
順に電場、磁束密度、電束密度、磁場、分極、磁化、スカラーポテンシャル、ベクトルポテンシャル、それから4元化して、4元ポテンシャル、エネルギー運動量テンソル、電磁場テンソルです。エネルギー運動量テンソルポインティングベクトルと応力テンソルを含みます。
 多様体のほうは、空間三次元多様体Mを空間、それから時間\mathbb{R}Mの積またはNを時空としておきましょう。

 さてクイズです。これらは全部ある意味で微分形式とするのが相応しいのですが、その階数はいくつでしょうか?

 

正解(?)は順に
1,2,2,1,2,1,1,0,1,3,2
です。(多分)

 

 なぜそう考えるかという話をします。これらは全部空間や時空に広がる物理量ですが、物理量はそれを測定する手段があります。
 その測定器の形状は、様々です。しかし以上のものは、なんらかの理想的な測定器が何次元の情報で同定できるかによって、微分形式の階数が決まります。

 そもそもこうしたものを微分形式で書く理由ですが、多様体の部分多様体に対するスカラー汎関数、もとい座標Lebesgue絶対連続かつ密度が可微分な「測度」で、局所的に微小なk次元立方体を考えた時に、漸近的に、その「辺」に対して線形であるようなものを考えると、これは微分形式にほかならないので、凡そ微分形式で表現すること自体はそれなりに動機づけされていると見て良いでしょう。
 測定器がなす部分多様体積分して測定値を得るような概念が微分形式というわけです。

 

 まず\bf{E}です。電場とはどのように定義されたでしょうか。それは単位仮想電化の受ける力です。力とは線に沿ってエネルギー積分ができる概念ですから、余接バンドルの要素、つまり1形式です。

 \bf{B}はどうですか。磁気力線というものをだれかが考えました。回路を横切る磁気力線の量によって誘導起電力が得られると考えられています。磁束は面を用いて計算されるので、2形式です。あるいは別の解答として、仮想電流片の受ける力と言っても良いです。その場合も力が1形式で、電流は接ベクトルですから2形式です。

 \bf{D}はどうですか。これは電気力線ですから磁束密度に準じて2形式です。逆に\bf{H}は仮想磁荷の受ける力ですから電場に準じて1形式です。

 スカラーポテンシャルは何でしょうか?微分して\bf{E}なんですから当然0形式です。ベクトルポテンシャルはもちろん1形式です。

 ポインティングベクトルは?面あたり時間あたりエネルギー流出ですから、空間上2形式です。しかし時空で考えればこれに時間方向が入るので3形式です。エネルギー密度は?もちろん3形式でしょう。立体で積分するのですから。応力テンソルはどうですか?空間では3形式でしょう。面を指定して力が得られ、力は1形式です。これらを統合すると、エネルギー運動量テンソルは3形式です。普通の記法で添字が二つしか書かれていないのはHodgeStarがかかっているのでしょう。多分(?)。

 同様に、電磁場テンソルも統合すれば2形式です。運動する電流片は2ベクトルで指定できますが、これに対する仕事を与えます。4元ポテンシャルが1形式であることにも整合します。

 では分極はどうでしょうか?誘電体の性能を測るときには、測りたい面で薄く切って、コンデンサに差し込みます。面は二次元ですから、2形式です。
 同様に磁化はどうですか?磁性体の性能を測るときは、測りたい方向で細く切って、ソレノイドに差し込みます。ソレノイドは一次元ですから、1形式です。

というわけで、めでたく次のように型付きます。
{\displaystyle\begin{align}{\bf E}: \Gamma(\wedge^1T^*M)\\{\bf B}:\Gamma(\wedge^2T^*M)\\{\bf D}: \Gamma(\wedge^2T^*M)\\{\bf H}: \Gamma(\wedge^1T^*M)\\{\bf P}: \Gamma(\wedge^2T^*M)\\{\bf M}: \Gamma(\wedge^1T^*M)\\{\bf A}: \Gamma(\wedge^1T^*M)\\ \phi: \Gamma(\wedge^0T^*M)\\ A: \Gamma(\wedge^1T^*N)\\ T: \Gamma(\wedge^3T^*N)\\ F : \Gamma(\wedge^2T^*N)\end{align}}
 よかったですね。ちなみに\Gamma(-)はバンドル切断のことです。マクスウェル方程式もこれらの間の関係式で書けます。
 なお適当な事情で階数が変わることがありますが、大抵の場合は計量テンソルで落とすか、またはHodgeStarでdegreeを反転させているのが大半です。HodgeStarはリーマン多様体上で定義されるものですが、これは言い換えれば空間の計量やその成分表示(座標系)に依存するということです。
 そして紛らわしいことに、HodgeStarによる反転は直交座標を採用して成分だけを見ていると変化に気が付きません。そうした中で軸性ベクトルの区別だとか、\bf{E},\bf{D},\bf{B},\bf{H}は同じなのか違うのかとかそういう曖昧なことになってしまいます。適切な抽象化をしてはじめて識別できる物というのがあります。抽象化がわかりを運んでくることがわかります。

 

3.ラグランジュ形式

 微分形式というと、解析力学多様体上の微分形式の話になるのですが、これも物理の学部レベルの入門書では多様体の多の字も出ないことがあります。そもそも微分幾何の種を巻いたの物理サイドじゃなかったのかよと突っ込みたくなるのですが、不思議な話です。
 解析力学周りで僕が本当にブチ殺すべしと思っているペテンがありまして、それは
量子力学を学ぶために解析力学(特にハミルトン形式)が要る」
という言い回しです。これは本当に断言しておきますが、大嘘ですからね。
 これを本気で言っている人のことは信用しないでください。ひどい目にあいますよ。
僕は真面目に解析力学をやろうとして山本義隆さんの本の沼に落ちて幾何厨になりましたが、その結果量子力学の発見法的議論に対する深い憎しみだけが残ったことは言っておきます。
 量子力学解析力学の構造なんか見向きもしないで好き勝手やりますからね。真に受けるだけ損です。既に学んだ皆さんは、これを後世に伝えることだけはやめてください。知的虐待ですよ。
 まぁこの恨み言を続けると長くなるのでやめますが、解析力学自体は、微分幾何でアレしなくてもそれ自体よくできたお話で、発想もうまくいっていて、精密化もやろうと思えばできて、あげくシンプレクティック幾何学とかいう純粋な幾何にまで発展する本当にいい話なんですが、
 で、そう言えばシンプレクティック多様体という語は聞くけどラグランジュ形式の方はあまり語られないなと思ったので、微分形式によるラグランジュ形式を書いておきました。だいたい山本義隆本ネタですが、当文献は「型」情報がイマイチで読みにくかったので、その補足として(pdf)。
http://www.asahi-net.or.jp/~fu5k-mths/pdf/geo_lag.pdf


4.けもの

フレンズ、よかったですね。

射影とマラ9がありました

1.射影仮説

 

というのがあります。これは量子力学の「公理系」に入ってたり入ってなかったりあるいは面倒なのでそもそも公理を明示しなかったりと言うこともありますが、
大雑把に次のような感じの「公理系」の一つとして組み込まれます。

  • ある種の確率論をヒルベルト空間の作用素を使って表現します。その方針は以下です。
  • 状態はベクトル射線、またはそのシュミット積和としてのunit-trace positive(密度行列)とします。
  • 事象特に数値ボレル上の事象としての物理量は、射影作用素(値測度)、またはEffect Operator(値測度:POVM)、または有界正規作用素とします。
  • 以上のペアについて確率や期待値は\mathrm{Tr} \rho Eで計算します。(Born)
  • 状態発展はユニタリ、または等長、またはCPTP、または少なくともPositivity-Trace preservingとします。(Schr-Eqは強連続ユニタリをStoneで微分すればいい)
  • PVM\{P_A\}_{A\in \Sigma}測定において、\rhoAの成立をみたときの事後状態を\frac{P_A\rho P_A}{Prob(A)}とします。(射影仮説)

(現代的なスタイルはモリモリ自然な一般化を受けているのでバリエーションを並列しています)
 何が「公理系」じゃと個人的には思ったりするのですが、
大体の物理理論というのは、「現象Xを数学的構造Yで表現しましょうね」「表現出来たら現象側での挙動と理論側での計算を対応させて遊びましょうね」
というものなので、量子力学は単にある種の確率論の数学的構造をヒルベルト空間の作用素を使って表現しましょうというスローガンのことです。
 確率論としての適当な数学的構造と、その外延性および適当な位相構造を考えると、状態と事象の間に完全な双対圏同値が成り立ち(後述)、また物理量だの測定だのといった概念は量子力学と独立に定式化可能な一般的概念なので、
量子力学のコア主張は本質的に

 

「状態空間をunit-trace-positiveな作用素で書きます」ー★

 

または

 

「事象空間をEffect Operatorで書きます」ー★

 

のどちらかを採用しましょうということです。

で、射影仮説です。これどうもかつては相当なバズワードで、ああ~もうそういうバズりが嫌なので物理やっとるのに的な僕としては
いちいち過去のバズりっぷりを調べる気力もないのですが、まぁこの仮説が入っている点について不満があるという意見があったのです。確か。
「不満」と表現するのは、別にこれは矛盾でもなんでもないということです。運用上問題はないけどなんかそぐわねぇなというお気持ちです。
(そもそも何をもって矛盾というのかがはっきりしない程度に量子力学含めた物理学は「物理的意味」ドリヴンじゃん…というと怒られそう)
その不満の代表的な物として、

  • 系の発展の仕方が複数(ユニタリ、等長、CPTP…と射影)あるのが嫌だ。
  • ウィグナーの◯◯系の思考実験:「観測者の観測者を考えると射影仮説の適用ラインが後退するので、状態が観測者依存になるけどいいの?」
  • 波束の収縮系:「観測で状態が瞬間的に変わること自体がキモい」

あたりがあると思います。
それで、YouはShock!な一部物理学者の間で射影仮説やめろキャンペーンが…


 はられたかどうかは知りませんが、射影仮説が特に運用上問題を起こさないことはとっくにわかっているので、射影仮説を他の自然な性質や残りの公理から出して消そうという運動がおこります。多世界だと思いましょうとか、勝手にデコヒーレンス起こす機構があるのではとか、そういう話です。

 僕もまぁその手の本を読んで育ったり育たなかったりしたのですが、今はもう完全にこれ系に関してはドライになってしまっており、
その結果として以下で僕は次の信念にあります。

 

射影仮説は単に、一般化された条件付き「状態」の一例にすぎない。量子力学とは関係なく幾度となく使われてきたし、またあってもなくても(ある意味では)困らない。数学的には自由に考えて良い。

 

 こう言うと、「いや、要るのでは」という見解もあるのですが、それ以前に「要る」が未定義語では…と無限に紛糾し…ォァァ
 先に言い訳をしておくと、本当に射影仮説が要るときというのは「ある事象を観測した事後状態」が欲しい時なのですが、
よく考えればその場合だって、測定値可測空間と状態空間の凸空間テンソル積からの可測CPTP写像とかを連鎖すればいいだけで、
明示的に「ある事象を観測した事後状態」を考えないと困るということはないんですよ。「ある事象を観測した事後のフィードバック操作」という(凸)可測関数を合成すれば済むわけで。
 少なくとも目の前にある現象をモデル化するだけなら特に困らない。
 本来考えられて然るべき数学的構造を考えないで「結果Aを得たときに…」という認識を理論にぶち込もうとするからこんな…こんな…ウッ...

 

 一般化された条件付き「状態」というのは、要するに射影仮説もCPinstも条件付き確率測度もすべて単なる一例になるような、「状態の再規格化操作」がもっと一般的な文脈で考えることができて、確率測度だろうが密度行列だろうが、行う数学的処理は全く同じだということです。

 要するに、普段「条件付き確率」を違和感なく操作している人が射影仮説を拒むことはできないし、逆も然りということです。
で、学習理論だのベイズ推定などがワイワイやってる現在「条件付き確率」なんて珍しくもなんともないよね?
いや、別にいいですよ、「条件付き確率/状態は単なる数学的操作にすぎない」と主張することもまた可能です。確率的推定だって可測写像にすぎないわけですからね。その人が「私は結果Aを得た。その条件下で系は~」と一生言い出さなければ大丈夫だし、
実際に一生そういうことを言わなくても量子力学も確率論も機能するわけです。人生つまんないと思うけど。

 

 釈明します。

 以上の「一般的」というのは一般確率論(GPT)だとか操作的確率論(OPT)とかの修辞と同じ射程を意味します。 

 GPT,OPTとは、もっと緩く自然な公理から開始される一般的な確率論で、古典と量子と、あるいはその他を含みます。もっともプリミティブには「状態」と「事象」という二つの集合があって、そのペアごとに「その状態でその事象が成り立つ確率」を得られる状況があるというような最低限の合意をします。
これは別に良いですよね? 状態と事象とは、そのペアについて確率がわかるものです。おわり。はい。
で、大変面倒なことにGPT,OPTは流儀にばらつきがあり、それぞれの数学的構造の語法や射程がいまいち統一されていないので、具体的な例を挙げる気になりません。そこで僕は圏好きなので、次の最高にクールな随伴圏同値から始めます。

 

{\bf CCH} \simeq {\bf BEM}^{op}

 

ただし相互の随伴関手は\hom(-,I)で、Iは単位区間[0,1]です。

 

 定義をしましょう。\bf CCHとは、ある局所凸位相ベクトル空間のコンパクト凸集合のなす圏です。\bf BEMとはEffectModuleかつ適当な距離位相完備なものの圏です。
 さて、僕のように量子基礎論に脳を侵されていると、ここで疑問が生じます。ヒルベルト空間の時と同様、それらの数学的構造は、物理的意味にmotivateされているか?ということです。

 これに関しては簡単な思考実験で、わりと正当化できます。長くなるので省略しますが、双外延的(状態は事象で識別され、全ての状態で同じようにふるまう事象は同一)であれば、いかなる一般確率論モデル(つまり状態と事象)も、適当な位相を突っ込むことで、\bf CCH,BEMの対象だと思うことができます。要するに憎き(?)ヒルベルト空間のときとは違って、これらを状態、事象の数学的構造だと宣言する十分な理由があるということです。

 \bf CCH,BEMはその数学的操作について物理的解釈と動機を持つということがわかりましたが、具体的な現実の系について、それを表現するCCH,BEMの対象を直接大量の実験をして得るのは非現実的です。
 そこで大抵は、目標とする系を十分記述できるようなCCH,BEMの対象を獲得する発見法的議論を我々は持ち合わせます。その一つは確率論と通常呼ばれているもので、

G:{\bf Meas,Top,CptHaus}\rightarrow {\bf CCH}

です。G(X)はその空間上の適当な確率測度のなす空間です。つまり確率測度の集合を状態とみなす関手です。一方で量子力学

P:{\bf Hilb}_{iso} \rightarrow {\bf CCH}

ヒルベルト空間と等長写像を、密度行列と等長写像の両側積に移す。

とか

M:CP({\bf Hilb}) \rightarrow {\bf CCH}

※上に加えて一般にCPTPを許容する。

とかやるわけです。作用素環で物理やりたいという奇特な人たちは先に事象側を作って

\lt 1:{\bf C}* \rightarrow {\bf  BEM}

とかをやります。この場合の対象はC*代数を単位的と思って、レーヴナー順序で1以下の作用素をEffectModuleと見なします。それから、これだけでは事象や状態の一方だけなので、双対圏同値の\hom(-,I)を使って作っておきます。こうして補完された状態や事象の全てに意味がある保証はありませんが、随伴の普遍性のお陰で、外延性の限りで一番デカイのが手に入るので実証主義的には困りません。

 

 さて、こうした構造を考えたときに、測定とはなんでしょうか? 
 ここで「測定値標本空間の値xを得ること」というのはしばし問題になる勇み足です。なぜなら、もしその一点確率測度がゼロならばその現象は起き得ないことになります。手っ取り早くかつ十分受け入れられるほどに禁欲的なのが、\bf CCH\mathrm{id}_{\bf CCH}Gに関するコンマ圏をとることです。
というのも、この圏の対象は、「状態空間から確率測度のなす空間への凸写像」なので、測定器を用意して、相互作用させ、系を捨てたが、測定器のメーターはまだ見てないという状況にあたります。一生見なくていいよ。

 測定過程も同様で、{\bf CCH}での適当な(例えばLocalTomographyを仮定するとか)テンソル積を考慮した上で、{\mathrm{id}_{\bf CCH}}G \otimes \mathrm{id}_{\bf CCH}のコンマ圏を考えればよいことになります。そうしたらこの対象は出力系に合成された「測定器系」に測定結果をストレージするが、系は捨てていないという状況になります。

 

 ここで測定過程M:S_1\rightarrow S_2 \otimes G(X)を考えましょう。
ここで、G(X)側に、好きな事象Aをツッコミます。それからS2の状態を消去すれば、測定結果がAである確率が得られます。

この確率で、Aを突っ込んだだけの未規格化状態を規格化します。これは事後状態とみなせます。もしS_1,S_2が密度行列であり、
MがCPinstであれば、これはinstrumentの事後状態処理そのものです。これは射影測定過程を含むので、これは射影仮説と同じことをしています。

 

 RN微分を考えることもできます。S_2の任意の事象E_2\in\hom(S_2,I)を評価させると、唯の測定値集合上の測度:規格化されていない確率測度がのこります。
これとS_2の自明な事象で消去した場合と比べると絶対連続なのでRNを行うことができます。このRN微分の結果を、E_2についてCurryすれば、測定値集合インデックスされた状態が出来上がります。
(ただし、単なる測度のときに準じたRegularityがどこかで必要になると思われる)

 

 以上の操作はS_1,S_2が確率測度の凸空間であれば、たんに条件付き確率の処理に同じです。つまり凸空間としてのS_1,S_2の数学的実装が違うだけで、
やっている処理は同じなのです。RNができるのも同じです(これは\bf CCH\bf BEMの双対の直積位相で入れているのも効いている)。

すると、もし誰かが条件付き確率の処理を自然に行っているならば、その人が量子力学での射影仮説を拒む理由は何処にもないのです。
射影仮説は理論に「事後」を考察することを許容することと等価で、これは量子だろうと古典だろうとどの確率論でも同じです。
逆に言えば「事後状態は…」とか「結果Aを得て…」という状況を考えるのをやめれば射影仮説どころかもっと広汎に「事後」概念を捨てられます。

そして捨てたところで失うものはありません。
繰り返しますが、「結果Aを得て…」または「結果xを得て…」という条件下での事後処理を表現したいという動機がありますが、
今測定プロセスがM:S_1\rightarrow S_2\otimes G(X)と書かれているわけで、
このあとに事後処理を表現するXからの可測写像Gで移したものを続ければいいだけだからです。G(X)\otimes S_2みたいな空間からの写像というのを考えるのになんの困難もないのですから。
 このとき「結果Aを得て…」という文脈は現れませんが、どの結果が出ようが確率がゼロだろうがちゃんと写像されてなんの問題もなくモデル化できます。「結果Aを得て…」という文脈を欲しがっているのは人間であって、現象ではありません。
現象は単に十分豊かな(可測、凸、CPTP…そのミックス)写像があれば書けるわけです。

すると、射影仮説が良いか悪いかというのは、

 

「「結果xを得て…」という主観的体験の分岐可能性を数学的モデルが表現できて欲しい」という要求をどこまで理論に押し付けるか?

 

という話にすぎないのです。で、別にそれはどっちでもいいわけです。やりたいならばやれば?という話で終わりです。数学的には可能だし、RegularであればRN微分で、測定値の各点ごとの条件付けもできます。ただし、条件付き確率と射影仮説は同じ階層にいる概念なので、一方を受け入れて一方を拒否するのはダブスタです。これは認められない。あなたはどちらがお好みですか? 僕はRN微分がかっこいいので条件付けしたいです(そうじゃない)

 

2.マラ9

 

を聴いて来ました。先週末。慶応のワグネルソサエティという大学オケです。

http://www.wagner-society.net/

マラ9はいいぞ(布教をしようと思ったがここで息絶える)。

 

 

 

普通の日記

3週間たってしまったし、普通の日記をする。

ここ数日考えていたことなど。

1.領域

理論というのがあります。

プログラム意味論 (情報数学講座)

 

↑みたいな本を結構前に読んで知ったのが最初(かつ実質的に最後)で、数学的には(非空)有効集合の上限をとれるような半順序集合とその単調連続関数、またはそれらのなす圏の理論のことです。何に使うのかというと、まぁよりよい解説は調べれば出てくると思うのですが、表示的意味論の文脈で、

らしいという観察があり、そこでこうした「上限」という極限構成が自由に行えるような「よく定義されている」性の順序構造を入れておき、意味はそこへ写像しましょうというのが一つの動機だと思います。プログラムは停止しなかったりすることがあるので、そういう値が\botや部分的にそれを返す関数などとして表現されます。\botにならずきちんと値を返す関数は、この順序で上位に来ます。これはこれとしてとてもおもしろく、「順序構造」で表現できる性質は本当に様々あって、発散する計算もそうした構造で表現できるのか、うまいなーというお気持ちが得られます。

 

で、それとは別にHaskellとかOCamlとかの代数的データ型を持った言語というのがあります。代数的データとは型についてのProduct,Coproduct,Terminalとかが取れたりするやつです。そこでこれらの言語は代数的データ型の演算(コンストラクタ)を混ぜながら、データ型自体を再帰定義することができます。プリミティブな型の意味論を与えるのは簡単ですが、再帰している場合にどうするか? という問題に、先と同じ解答を与えることができます。データ型の圏を、領域っぽくふるまう(\omega鎖の余極限があるような、mono射のみの)圏として、同じように再帰の「ガワ」をかぶせた列の余極限をとって不動点にします。リストや木などがその例になります。

 

Haskellなんかは圏の概念が使われていて云々~というのが少し前にあったと思います。僕はそれでHaskellに(というか計算機科学に)興味を持ったのですが、触ってみると言うほど使われているか? という疑問があります。MonadやFunctorは圏のそれに由来するのは確かだと思いますが、これらは個別の例でしかないわけです。型のレベルではまぁ使われているというかなんというか…? で、ちょっとググってみると、そもそもHaskellのデータ型の圏\bf{Hask}は圏じゃないという話が出てきます。

 

https://wiki.haskell.org/Hask

ただこの例はundefを使っていて、Haskellの評価戦略のせいでは?という気がするので、そんなに致命的ではないのでしょう(そもそも何に対して?)。

 

しかしまぁせっかくだし、圏とか領域とかの話を応用できんものかなーという気分にはなってくるのです。現実の汎用言語にそれに厳密に従わせるのは難しいでしょうから、圏なり領域なりでのいじった知見をそのままコーディングへ、という程度ならバチも当たらないでしょう。

 

そこで、再帰スキームとかいう概念が見つかります。

http://comonad.com/reader/2009/recursion-schemes/

Dynamorphism 〜 Haskellでも動的計画法がしたい! 〜 : 東京工業大学 ロボット技術研究会

ぶっちゃけるとまだよく理解していないのですが、日記なら許されるでしょう。

眺めてみると、代数/余代数を振り回すあたり、圏で計算概念をアレしようという勢力の香りがするし、射の構成が、「~を満たす最小の」というあたり領域です。いいですね。ここでの代数余代数は、再帰関数を、分岐処理の余代数と、結果の合流の代数を、その不動点型上で行いましょうという話に見えます。

しかしのっけから、

http://kodu.ut.ee/~eugene/kabanov-vene-mpc-06.pdf

Unfortunately, in CPO initial algebras do not exist.

とか言われてしまいます。CPOというのは領域の圏のことで、領域と圏をあわせるなら、圏で概念を特徴づけつつ、CPOで構成と計算を行って、その結果をそのままコーディングへ、と行きたいところですが、厳密な圏的普遍性をCPOでやるのは厳しいっぽい。それで、関連文献では領域じみた構成と疑似コーディングはしますが、それがどういった「弱い」普遍性をもつかまでは書いてなかったりします。

 

ほんで中途半端やなーというお気持ちで終わってしまうのですが、CPOはexponentialがあるので、\hom(A,B)も領域になります。射の合成も単調関数とわかっていますから、これはCPO豊穣な圏なわけです。すると豊穣圏には豊穣圏で、普遍性のバリエーションが考えられるわけです。例えば再帰スキームは、純粋に圏の議論だけでみると余自由コモナドを得る随伴を使うのですが、この随伴はもちろん正確な随伴ではありません。しかし今順序豊穣な圏なので、随伴の条件\hom(A,GB)\simeq\hom(FA,B)を、

\hom(A,GB)\dashv \hom(FA,B)に緩めることができます。順序集合の随伴なので、これは実質Galois接続です。こうした概念はもうあるようで、lax 2-Adjunctionだそうです。で、実際余自由コモナドを分解する「随伴」の、関連文献に書かれている領域計算をためしにやってみると、どうもGalois接続としての要件を満たしているような気がします。

 

お、ええやん。それでは再帰スキームにおける構成の圏論的普遍性を、CPO豊穣のlax 2-Adjunctionできちんと表現できるし、なぜそのようにコードを書かなければいけないかに理由がつくじゃん。とおもったところで気力が尽きてしまい。以来ずっと放置しているのです。つらいですね。さまざまなところでさまざまな頑張りが要求されることがわかります。

 

2.渡辺澄夫氏の理論

ってどういう扱いなのでしょうか。門外漢には完全に事情がわからない。

本としてはこれです↓

ベイズ統計の理論と方法

わりと出てすぐあたりの時期に買って非可算無限時間積んでいたのですが、ええかげんにせえよということで読み始めました。なんか機械学習やらAIやらで賑やかな世界があるっぽいということは聞きつつも、完全に他分野なので実装する力もなく、理論的な話をするにもなんか具体的なモデルがどうのこうのという話が多い印象の中、原理的な話を高い信頼性で書いてそう…という勝手な信頼をもって買い、積んでいたのです。今でも信頼していますよ。

 

大雑把には、任意回トライアルの確率空間上、学習アルゴリズムをその上のn回までで決まるような測度への可測関数だと思って、その経験損失を眺めていれば学習の挙動がわかる。では経験損失の挙動は何で決まるか? どう計算できるか? ベイズ推定の場合はどうか? という話と認識しています。ほんで、ベイズ推定の場合は経験対数損失(これも確率過程)をハミルトニアンとしたカノニカルアンサンブルが事後分布になり、インデックスと連動した低温極限をとることが学習の進行なので、ハミルトニアンの最小値に向かって最急降下法を取ればいいのですが、ハミルトニアンが素直な性質を持たないことがあり、うまくいかない事があります。しかしその場合でも解析的であれば、ナニヤラアンナコトコンナコトをすることで、無事計算ができるようになります。で、このナニヤラアンナコトコンナコトに、代数幾何の結果が利用されるので、代数幾何すごいね!というお気持ちになるのです。代数幾何、だれか教えて。

 

いずれ話がまとまったらノートをアレすると思います。

 

で、まぁそれはそうと、これを読みながら、どうせならσ加法族上で話してくれんかなーというお気持ちをもったので、それで書き直してみるなどの遊びをしていたのですが、じわじわと\mathbb{R}^n上の確率密度関数の贔屓っぷりはやばいというお気持ちがでてきました。これは次の話ですが。

 

3.確率ってさぁ…

 

確率測度とは何か。それはconcreteなσalgebra上の単位排他加算加法準同型のことです。\mathbb{R}^n上の積分が1になる正値関数は副次的な奴です。だいたい可測自己同型写像でいくらでも変わるやん。

普通確率論やるということになると、集合代数でσalgebraを作って、その上に測度を置いて一丁上がり、確率変数はその上の可測関数なわけです。もしかすると、ながらく離散確率空間や\mathbb{R}上の密度関数の形でしか確率を見たことがない人がいて、そういう方から見ると、「σalgebraってなんやねん」という話になりかねないのですが、数理科学の概念一般というか、大体この手の概念はちゃんとそう宣言する理由があるわけです。ないならギャップがある(過激派)。

 

で、それは何かというと、(古典的)「事象」なわけです。「事象」といったときに、それにどんな構造がありますか?と聞くと、否定や論理積論理和が取れるという観察があります。ほんで、統計処理をしたいので、加算無限回のそれがとれた方がいいということで、加算無現項の論理和と否定をとれるとします。これが(abstract)σalgebra。それから、確率はそれらに対して、「その事象が成り立つ確率」を返すわけなので、[0,1]への適当な準同型を確率と呼びます。

 

ん?まてよ、「事象」代数が集合演算じゃないやんけ。となるのがまぁギャップと言えばギャップですが、こういう束っぽい代数構造は大体集合圏との随伴が取れるはずなので、集合代数に表現すればよし。なんでするのか? うーん… 便宜上…

 

まぁσalgebraくらいは認めてください。

いずれこの手のギャップは殺す。(任意の人名を代入)の名にかけて。

 

でなんで密度関数が副次的かというと、これはルベーグ測度に対するRadon-Nikodim微分なんですよ。で、その\mathbb{R}上の測度としてルベーグ測度はなにによって、どこまで特徴付けられるのか、といったら、それはHaar測度で、定数倍を除き一意じゃないですか。要するに、それがHaar測度であることに何か意味がないなら、これをチョイスする理由がないんですよ。

 

例えばあなたが局所的には\mathbb{R}で座標書けるような可測空間であれこれしたいとするじゃないですか。で、そこで確率を考えた。もしかするとMAPとか最尤とかしちゃうかもしれない。そこで確率密度関数を、RN微分で…アアッーー!!!!!

 

まってそのルベーグ測度をチョイスする理由はなに?その座標ってさ、加法意味を持つの(ンフッ♥)え、微分同相を除いて一意?アハァーー。そうか、その測度が好きなんだねウンウン。

 

みたいなことが起きうるわけじゃないですか。

 

似たようなことがエントロピーでも起きる。エントロピーは狭義には離散確率空間ないしは可測空間の可算分割でしか定義できないはずなんですが、連続空間でも無理やり定義する方法があり、微分エントロピーとか呼びます。で、これ確率密度関数使うわけで、当然底空間の基準測度に依存するわけですよ。だいたい微分エントロピー、この基準測度へのKLdivergenceですよ。そりゃ依存するよ。もちろん、大抵の人はこうした事情をよく知っていて何をいまさらとお思いでしょうが。統計力学で古典的カノニカルアンサンブルでリウヴィル測度とらなかったせいで無事死亡した話を思い出しますね。

 

で、何がいいたいかというと、形式的な特徴付けをしないで、具体的な話をしすぎると、馴染みのある概念の非自明な性質がなんなのか自覚しないままアレしちゃうんですよね。かといって、いちいち普段使う概念を動機づけ、特徴付けしようとすると、僕のように完全に身動きが取れなくなりますのでそれは真似してはいけない。

 

はい。

 

塩梅が厳しいというわかりがあります。

 

 

 

 

 

 

 

音楽と楽譜

音楽における楽譜の地位についての見解をつらつらと話す。

 

身の上話.1

 僕が意識的に音楽を聞くようになったのは大体10才かそこらであったと思う。
意識といっても、自身の嗜好を主張する程度である。以来今まで音楽的専門教育を受けたことはない。


 当時、周囲の友だちは話題のポピュラー音楽とかMステで取り上げられる流行曲などを聴いていたように思うが、僕は今に至るまでものぐさで、そういったものに疎く、
また両親の音楽趣味も1世代前、オタクの兄から受ける音楽趣味は音ゲーやアニメ・ゲーム主題歌と言った感じでポップスにかすりもしなかったので、まったくそういうものに馴染むことは無かった。

 

 こうした環境で刷り込まれたものは、例えば中島みゆき加藤登紀子、それからK◯y作品の主題歌だとか、アニメソングだとか、DDRの1st,2nd,3rd,4thあたりの曲だ。

 それ以外で言えば、当時は丁度The End of Evangelionが公開されて3年くらいの時期で、友人からそのサントラを借りて、これが大いに気に入ったというのがある。このサントラは基本的に鷺巣詩郎のオーケストラBGM作品と、バッハの管弦楽組曲3番アリアや、パッフェルベルカノンなどのイージーリスニングクラシックの類だ。


 しかしこれらは気に入って何度も聞くようにはなったものの、継続的にそれらの発展や情報を得るチャンネルがなかった。
 イージーリスニングだけは母親が気を利かせてくれて、室内楽のCDをくれたり、また当時普及したてだった百均で、廉価版のイージーリスニングクラシックアルバムや、父親が通販で買ったクラシックダイジェストアルバムとかそう言ったものがあったが、
他には発展性がまったくなかった。

 この他には? 似たような作品は? となっても入手する方法を知らなかったのだ。
JPOPであればまだテレビを見て、それからデパートに行けば手に入ったかも知れないが、どうもこうした分野は表に出てこないらしい。この傾向は現在でもあまりかわらないような気がする。

 

 状況が打破されたのは、中学高校でオーケストラ部に所属してからだ。当時はイージーリスニングの軽い曲しか知らなかったので、フルオーケストラによるロマン派の壮大な音楽には衝撃を受けた。

 部に所属することで、少なくともクラシックについては情報を検索するチャンネルがたくさん手に入った。このころにはPCに自由に触れたので、趣味人が開設したクラシック批評サイトでおすすめ盤や趣向の近い作曲家を調べるとか、市のコンサートホールに自由に楽譜やCDを閲覧できる資料室があって、ここでいくらでも時間を潰せたり、部の友だちにコンサートに誘われて聴きに行ったり、CDの貸しあいなどをして色んな作曲家の作品に触れる事ができた。またIMSLPが収容作品数を伸ばしつつあり、著作権の切れた古い曲(クラシックの多くはそうである)ならいくらでも楽譜を見れるようになった。

 

 相変わらずポピュラー音楽やロックには縁がなかった。音ゲー音楽に関しては、いわゆるBMSによるビートマニアクローンで、ファンによる近い作風の音楽をプレイするという機会はあったが、それを除けばほぼクラシックで、JPOPは皆が話題にしている曲を街頭やカラオケで偶然知るという程度である。

 

楽譜の地位

 さて、クラシックと現代のポピュラー音楽には、ある種の志向の違いというのがあると思っている。それは、音楽の実体として、楽譜を重視するかどうか、ということである。重視する、というのは曖昧な言い方だ。具体的にどういうことかと言うと、

 

  • ポピュラー音楽のリリースは、原則としてパッケージされた音源である。
  • クラシック音楽のリリースは、楽譜である(これは20世紀初頭あたりまでの作品のリリース形態を言っている)。

 

  • ポピュラー音楽の楽譜を入手するのは、例えば耳コピされたバンドスコアなり、第三者の編曲版なりは存在しても、オリジナルスコアを入手するのは困難であるか、少数派である(ロックミュージシャンが公式バンドスコアを出すことは度々ある)。
  • クラシック音楽は、そもそも楽譜が出版されて初めて広く演奏が出来るのだから、現在でも流通している作品で楽譜が入手不能になることは稀である(代理店や個人輸入などで高く付くことはある)。

 

といった傾向のことである。


 さて、このような傾向差を説明付けようとすると、割に簡単にそれらしい説を思いつく。それは当時の音楽の媒体のことである。

 

 まずクラシック音楽が発展を極めた20世紀初頭までの時代は、そもそも実用に足る蓄音再生機が十分に普及していなかった。したがって、音楽は体験としては生演奏しかなく、それを記録して永続性を持たせるには楽譜しかなかった。


 このときには楽譜は既に数世紀以上にわたって使われてきた枯れたフォーマットであり、それゆえ西洋の調性音楽を記述するには十分な形式だった。
 音楽の媒体、音楽の記述形式として、楽譜以外の方法が無いのだから、必然的に作曲家は楽譜に表現したい音楽の全ての詰め込む。これによって、楽譜は音楽それ自体と称すべき地位をもつことになる。

 

 一方で現在は安価な音声記録媒体、または通信インフラと、そのプレイヤーが十分に普及している。

 音楽体験を、少なくとも音データとしてはいつでも再生できるようになったため、クリエイターもこの音データをリリース形態として採るようになった。もちろん今でもまずスコアを作成するという作曲家はいるが、DTM環境が安価にそろうようになってきた現在、最終的なマスターデータまでの作成を作曲家がこなすケースも多いと聞く。

 

 要する技術的な問題が解決したことによって、単にあるべき形態に移行したということだ。
 クラシック音楽が楽譜を重視したのは、そうすべき積極的理由があったのではなく、音データを扱う技術がなかったためで、それが実現したので、より直接的に「音楽」をやりとりする現在の形になった、という説である。

 

音か楽譜か

 しかし、ここには1つ疑問を挟む余地があると僕は思う。それは「音楽それ自体」は本当に「音データ」と言い切っていいのかということである。

 もはやほとんどの音楽のリリース形態が、音データそれ自体またはそれを含むようになってしまったので、音楽といえば、その実体は音データであるということを疑わない人の方が多いと思う。

 

 音楽とは一体何であろうか?何と定義するのが相応しいのか?
 あなたは音楽を何と宣言するだろうか? 

 

 ここでは一応「人類文化の一形態」とする類のものは、反則としておく。音楽が何と関係するか、ではなく、音楽それ自体を定義してみたいのである。

 そしてこの疑問に関して、僕がこの文章で主張したいこととは、

 

 音楽の定義の「仮説」としては、「音データ」よりも「楽譜、または類する離散的データ形式」のほうが適切である。

 

ということである。

 

 以下これが何を主張しているのか、なぜそう考えるのかということを書いてみたい。

まず、「音楽が何であるか?」という問題に対して、弱冠の擬似科学的アプローチをとることを考えよう。
つまり、「地球上の運動の法則とは?」「宇宙の構造は?」「生命の仕組みは?」などと同様に、ある種の現象クラスに対して、それを「効率良く記述、説明する事が出来る見方」を探すのである。

 一般に科学理論とは、ある種の閉じた現象クラスを再現/説明するような、
矛盾がなく、また人間に認知できる架空の世界観であり、次のような性質を持つ方が良いとされる。

 

  • 軽量である。つまり説を展開するにあたって必要な記述データが少なく、またそれらを統制する原理や法則も少ないほどよい。
  • 普遍的である。つまり説の適用範囲が広いほどよい。
  • 精密である。つまり予測や説明が細部までうまくいくほどよい。

 

 基本的に、これらの良さによる順序で何らかの優位性をもつ(完敗していない)ものが現在生存している。

 

 さてそうすると、「音楽とは「音データ」である」とする科学理論は、少なくとも矛盾はない。普遍性もある。「音データとして表現出来ない音楽」などときくと、怪しい現代音楽の匂いがしてくる。精密さも優れてはいる。理論上は音データは関数空間であり、超音域を含めたあらゆる波形を格納できる。

 

 一方で「音楽とは「楽譜」である」とする科学理論は、これも少なくとも矛盾はない。音データに対して、離散情報しか使わないので非常に軽量である。しかし普遍性では音データ説に劣る。それは現代において、あまり楽譜が重視されなくなったため、
楽譜に相当する概念が普及しないまま音楽として受け取られているような楽曲があれば、それはこの説の射程から漏れるためである。精密さも同様だが、例えばアーティキュレーション記号などで表情を記入することはできるので、大雑把な指示であれば記述できる。

 

 こう見ると、やはり精密さの面で「音データ」に軍配が上がるのでは?と思うかもしれない。しかし人間の認知に入るような議論をしやすいかどうかという「実効的」な意味では、それでも楽譜に軍配が上がると考える。


 なぜそう考えるのか?

 

思考実験

 

 例えば、音楽を音データとして記述するとし、同曲異演の可能性があるデータを2つ手に入れたとしよう。
 そこであなたは、「同じ曲」という、非常に音楽的に有意かつ基本的な同値関係概念を、この理論上で実装したいと思ったとしよう。
 同値関係は、非常に基本的な物で、どんな理論であれ、ある種の概念に何らかの性質を矛盾なく定めるには、それが写像になってなくてはいけない。写像であれば、「同じ性質をもつ」という同値関係が定まる。
 そこで、音データに自明に入る同値関係とは、例えば時間軸上の波形データとして同型だとか相似だとかそう言ったものだ。しかし間違いなくこの自明な同値関係では、「同じ曲」の同値判定に失敗するだろう。これは音楽の記述としての「音データ」は「同じ曲」という単純な概念を考えるためだけでさえ過剰に精密であることを意味する。

 

 現実にこのような判定をするとしたらあなたはどうするだろうか?
 おそらく直ちに思いつくのは、「判定機に楽譜を学習させる」という方法だ。つまり、フーリエ変換で音高を取得、またそのスペクトルから音色を同定し、その推移グラフに適当な距離を入れて、それが一定の閾値を下回れば同じ曲と判定することである。しかしこれには問題点がある。

 

 1つとして、一般に距離関数を定義しても、「一定距離内にある」という関係は同値関係を定義出来ないということ。これは「音データ」が棲んでいる関数空間が巨大すぎ、到底音楽と呼べないデータまで含まれていて、それを経由することでほとんどのデータが連続的に繋がってしまうということでもある。
 これを回避するには、教師データを与えて、その近傍に所属することで判定するというやり方が考えられる。

 

 もう一つ致命的なことは、「楽譜に相当する概念を学習させる」という考えを取ってしまった段階で、これは「音楽とは「楽譜」である」説を引用してしまっているのである。「同じ曲」という有意な概念を考える為には、「音楽とは「音データ」である」説は、「音楽とは「楽譜」である」説よりも、「重い」理論であるということになる。一方の「音楽とは「楽譜」である」説では、「同じ曲」概念は、単なる楽譜の同値関係をそのまま使えばいい。至極簡単である。しかもこの場合は、「音色を無視した同じ曲」も容易に実装できる。つまり、パート情報を落すのである。

 

 他にどんな有意な概念があるだろうか? 音楽では、あるメロディがアレンジされたり引用されたりという事が起きる。するとあなたはこう考える「引用されている」という推移的二項関係を得たい。どうすれば良いか?
 ここでも全く同じ問題が起きる。引用とは、多くの場合「メロディ、和音、リズム」などが似ているということである。
 ところが音データからこれらを抽出するには手間がかかり、またこうした考え方は既に「楽譜」説の引用である。「楽譜」説では、メロディ、和音、リズムは、それぞれ楽譜のワンライン抽出、垂直断面、音高忘却のことで、この写像にもとづいて二項関係を入れて、時間軸を加味して順序を入れれば定義出来てしまう。

 つまり、音楽にまつわる様々な実効的議論は、「音データ」が主流になった今でも、
依然として「楽譜」上であれば容易に構成でき、一方「音データ」からは、「楽譜」説の考え方を埋め込んだ上で、それを抽出する手間がかかるのである。かくして、音楽的概念を展開するための科学理論として、「音データ」は「楽譜」に敗北する。

 

 これが「音楽は「楽譜」である」説のほうが、「音楽は「音データ」である」説よりも、「仮説」として優れているという主張の理由である。

 

 「仮説」としたのは、例えば「音データ」化が普及するとともに台頭した電子楽器やそれによる電子音楽に対して、その拡張表記を5線譜などの標準の「楽譜」形式がサポートしていない、つまり現在の標準形式の射程が限定的なためである。
 五線譜は叩き台としては優れているが、まだ改良/拡張の余地が大いにあるので、「定説」とは呼べない。
 恐らく、より適切な次世代の楽譜は、例えばDAWのプロジェクトファイルや、MIDIファイルに適当な視覚化メソッドを加えたものになるだろうが、それぞれ特性や水準の違いがあり、標準化には程遠いだろう。モジュラーシンセの配線や、コントローラーへの命令を表記できる拡張書式を定義して、この説をブラッシュアップすればよいのだが、そういう動きは聞いたことがない。しかし作曲家は間違いなくそうしたものを理解して曲を書いているはずである。そうしたものを理解しているから、例えばDAWの乗り換えをしても、作曲家は作品を作れる。

 

想定される疑問

 

 さて、この考えには反論が予想される。もっとも大きなものは次のような体験に由来するものだと思う。

 

「そうはいっても、我々は音楽を耳で聞く。それは音である。楽譜やそれに類するデータからは音がしないではないか」


ということである。

 

 「音がする」というのが音楽の性質として欠かせないものであることは確かにその通りである。人類が耳を持たなかったら、音楽は存在しなかっただろう。しかし、より純粋に音楽それ自体については、僕はやはり「音がする」ことは副次的だと考える。
 つまり、文化史上音楽が発達するために、それが「音がする」=「「音データ」への表現メソッドをもつこと」は必要条件だが、「音楽」それ自体の性質としては「音がする」はあくまで主要な「表現型」にすぎない。ということだ。

 音楽の遺伝子は依然として楽譜の形をしているということである。

 

 「表現型」は進化論的な含みとしてこう表現したが、それは突然変異が基本的に遺伝子/楽譜レベルで起きるという点でも共通している。音楽におけるそれは作曲家の脳内である。

 例えばベートーベンは聴力を喪失しても新曲を書いた。つまり、彼のスコアは「音データ」による表現をまたずに編集されたことになる。ベートーベンでなくても、楽譜の読める音楽ファンであれば、スコアをみながら、「このメロディはよさそう」「このリズムは難しいな」「ここは俺ならこうするな」などと想像するだろう。

 そのとき、「音」はどこにも存在しない。

 

 強いていえば、記憶を頼りに音に相当する感覚の模倣を脳内で行っているというのはある。もしかしたら、「頭の中で演奏をシュミレートしている」時特有の神経反応があり、そのある部位の信号は「音データ」に近似である可能性はある。しかし僕はこのようなことは望み薄であろうと思っている。というのも、「音データ」は「楽譜」に比べて遥かに容量が大きいからだ。脳がそのような容量の無駄遣いをするとは思えない。

 

 中間の可能性として、「音データ」をDNNに食わせたときの中間層のようなパターンを再生することはあるかもしれない。しかしそれも結局、標準的楽譜とは異なるやり方で、「音データ」の抽象化を行って音楽を記憶しているということであり、「楽譜」が音楽の抽象化であることを考えれば、「音楽の科学理論」の可能性は楽譜だけではないというだけである。原理的には、ある人の「音楽観」を概念化できるのならば、それが音楽の定義になりうる。楽譜は単に、数ある音楽観の中で、万人に理解出来、それなりの精密さと普遍性を持つものということである。

 

 もう一つの反論として、次のようなものがあるだろう。先の思考実験において、楽曲の判定という、「音データ」説に不利な例を出した。すると

 

「現在の大半の音楽が楽譜ベースなのだから当たり前である。楽譜ベースでない音楽的概念まで考えればこの結論にはならない」


という反論が可能なように思える。この想定反論についてコメントをしよう。

 

 すこしこれまでの流れをおさらいしよう。最初に擬似科学的アプローチをとるとしたために、以上の議論は、「音楽は何であるか?」への回答が、音楽に対するある種の科学理論であるべきだ、という考えを前提にしていた。

 すなわち、「楽譜」という、音楽に関する科学理論は、それが音符からなるという原子論のことである。
 「音データ」という理論は、これに対して表現型の棲む関数空間を持ち出す。ところが関数空間は巨大すぎ、よくある概念を展開するのが困難であるということだった。

 しかしこのよくある概念は、例が楽譜ベースのものだったので、そうでない概念を考えれば必ずしも楽譜有意にならない、という反論ができた。


 たしかに、例えば音圧といった概念は、音データ側にある。
 音圧とは、音データの周波数特性がフラットに近いことで、あらゆるパートがそれなりの音量で鳴っている程度を指す。音圧調整はいわゆるマスタリングという作業の一部だが、それまでの音声データは、例えばMIDIや、なんらかの演奏データで、それは楽譜に準じるものである。そしてマスタリングは信号処理写像であり、これは慎重に設計された数学的関数の実現である。実現可能な数学的関数なのだから、それを表現する離散的データがある。つまり、音圧と言った概念は、この楽曲をマスターとして出力するDAWのプロジェクトファイルから制御される量なのである。

 

 これはどういうことかというと、先の思考実験の反例としてあげられる、音データ側にのみ属するようにみえる音楽的概念も、拡張された楽譜概念の、音データへの表現の結果として説明付けられるはずだと言うことである。説明付けられる、ということは、それは科学理論の上では副次的な概念である。
 したがって、楽譜概念をうまく拡張して制御出来るようになれば、最終的にはこうした「音データ」上の性質もまた、拡張された「楽譜」説の優位性の方に寄与する。
 音データ側のみに見られる特徴は、「楽譜」説の射程が足りないということではなく、「楽譜」説が自身を拡張して解明/制御すべき現象を提供している、とみなせるのである。

 

 結果的に、楽譜のフォーマット拡張が追いつかないような最前線の音楽を除く、大多数の音楽は、原則として何らかの「楽譜」による理論が最良の説明を提供する基盤になると考えられる。この射程の外側にある音楽を記述するには、楽譜を拡張すればいい。
もしかすると、あるときにはプログラマブルな楽譜、インタラクティブな楽譜といったものになるかもしれない。

 実際こうした環境は幾つかあり、MAX、MSP、SuperColliderと言ったツールは、音に関するプログラミング言語である。

 

 ではどれほどの拡張がありえるだろうか?拡張の結果、あまりにも楽譜が複雑な概念になり、それが「音データ」と変わらない位巨大な概念になってしまっては、「楽譜」説を擁護する意味がないのではないか?

 

 しかしそうはならないと期待できる。電子音楽や現代音楽を含む形で楽譜を拡張して記述する場合も、それはMIDIファイルのように、「音データ」よりは遥かに少ない情報量でできるはずという予測を立てられる。


 なぜか? それは、音楽を判定し、また音楽を作成している人間が、有限の計算資源を持つ存在だからだ。
つまり、音楽とは(人間が計算可能である限り)計算可能な概念のはずなのである。したがって、それは高々可算個で、その表現が「音データ」に写像するものであっても、「音データ」の関数空間のごく僅かな領域しか占めないはずなのである。
 どれほど新たな音楽概念を発見しても、それを作成し、また理解するときに、楽譜に準じる軽量データ形式への圧縮プロトコルを同時に発見するだろう、ということである。

 

 もしこの考えが正しいのならば、音データを取り扱うさまざまな文脈に並び、音データへの表現メソッドをもつ、拡張楽譜データを取り扱う文脈がいずれ登場すべきだと思う。むしろ音データへの表現は、それが人間に直接印象をもたらすのに不可欠とは言え、単純に伝達するだけならば、聴力や音質といった障害や、データ容量の点で明らかに不利である。
 一方の楽譜は簡単な訓練で読むことができ、音データよりも遥かに軽量である。また軽量であるだけでなく、それがなんであるかを、その作品が作られたときと同程度の水準で了解出来る可能性が高い。


 思えばかつてはMIDI文化というのがあり、これは容量の面では優れていたが、音源環境の再現性や、既存の楽曲を利用する場合の著作権の問題などもあり、廃れてしまった。これについては、MIDIはもともと電子楽器を制御するデータフォーマットであったので、基本的にシーケンシャルなデータ構造であり、高級な概念を表現するには向かなかったこと、また標準の可視化メソッドがなく、DAWが五線譜やピアノロールなどの思い思いのやり方でGUIを設けるに過ぎなかったというのが原因ではないかと思っている。

 

 こうした「ある種の情報媒体で、音データから抽象化された離散データに取扱いが広がるもの」には既に先例があり、それはまさに言語である。
 識字率が低い時代は、人は声を聞き、それによってさまざまな感情や動機を掻き立てられていた。

 今字を読める我々は、同じ印象を、なにやらふにゃふにゃした記号の離散的集合から得ている。
 何やらつぶつぶした点の集合である楽譜でそれが出来ないということがあるだろうか?実際に楽譜が読める音楽ファンは、部分的にはこれと同じことをしているのである。

 

 以上の、「音データよりも楽譜の方が音楽を良く記述する」という主張は、表現型である音データとその体験の地位を貶めるわけではないということは強調しておく。
 もし我々が新しい音楽的概念を擁立する動機をもつとしたら、そこには多分音データによる直接の体験が噛んているはずである。
 際立った音楽体験があれば、良く耳を傾け、それを収集し、さらには抽象化し、適当な拡張で既存の音楽体系にそれを組み込めないか考える。そうしてそれを再生するための規則を得た時、その音楽体験を完全に理解したと言える。これは科学とよく似ている。
 このとき、拡張されたかもしれない楽譜の書式は、その現象を制御する表現力を持っているだろう。

 

身の上話.2

 

 僕が「楽譜」サイドの人間であるということを、公正の為に告白しておく。「楽譜」サイドである、とは、僕自身が音楽の本質は「楽譜」であるという考えを、以上のような説の尤もらしさ以上に、嗜好として好んでいるということである。それにはいくつかの個人的理由がある。


 まず、僕は耳が悪い。聴覚の悪さが音楽の鑑賞にどの程度影響するのかは確かなことはわからないが、何れにせよ、自身の耳をあまり信用できない。聴いた印象が何に基づくのか、なんらかの判定が正しいかどうかは、常に楽譜を見なければわからない。僕の音楽の半生が、クラシック、つまり、楽譜とともにあるジャンルであったことは、
この意味で他に選択肢が無かったとも言える。なぜなら、ポピュラー音楽がオリジナル楽譜を出版することは稀だからだ。最近はロックバンドも聴くようになったが、依然としてバンドスコアはその曲を理解する最良の友である。


 それからもう一つ、僕はあらゆる表現分野は、ある意味で科学の親戚であると思っている。したがって、感性に任せた説明は、音楽を特徴づけられないと考える。

 ところが、音楽に関する(音楽以外でもだが)批評は、感性に基づいた説明が大いに跋扈しているように見える。これも僕には信用できない。

 音楽を聴き、ある種の感情の高ぶりを得たとしよう。

 これは新しい現象である! したがって収集すべきだ。

 それは悲しみか? 優しさか? 喜びか? あるいは? よりもっと崇高な表現か?そもそもそう名付ける根拠はなにか?
 これが歌であれば、歌詞からそれを推察して名付ける事があるかもしれない。しかし、僕の音楽の半生は、純楽器音楽が大半を占め、歌は少数だった。歌詞を聞き取れなかったというのもある。すると、その感情を名付けるヒントがない。ライナーノーツは楽曲構造の説明をする場合の他に、その曲の書かれた経緯と、簡単な印象が示されることがあるが、明らかに曲の長大さはその言葉を超えている。


 その感情を名付けて記憶するにはどうすればいいか? 楽譜を読むのである。そしてメロディを覚える。そうすればその感情は焦点をむすび、僕のものになる。これは感情で説明をつけるよりも信頼できる収集方法だ。


 オーケストラ部にいた時代の友人は、当然みな奏者であるから日頃から楽譜を読んでいる。気に入った曲のスコアを確認するのが趣味な人間は、他にもいた。そうして気に入ったメロディを見つけたら、実際に弾いてみたりもする。
 しかしいざその外に出てみると、音楽ファンであっても、「楽譜が読めない/を読まない」ことを公言する人が予想より多いようだ。

 正直なところ、謙遜ではないかと疑っている。大半の人が義務教育は受けているだろうし、その音楽の時間では多少の楽譜を読むことを強いられる。結局はあの延長にすぎない。
 ここでいう「読む」とは、何も理論分析ができるとか、オーケストラの響きを想像できるとかそういうことではない。単に曲のどの部分がどこであるか追跡できて、簡単なフレーズならば極々大雑把な相対音程で諳んじれるという程度の意味である。
 これには仕方のない面もあると思う。ポピュラー音楽には先に見たように、オリジナルスコアを公開する文化がない。したがってそれを読む文化もないのだ。

 

 この文章を書いた動機は、こうした状況に関して、楽譜という形式的記述が音楽において占める地位を、もうすこし向上出来ないかというものである。


 皆さん、気に入った曲の楽譜を語りませんか。

 

紹介

 

うだうだと書いたが、要するに、

 

スコアを見て面白い曲は、聴いても面白く、その逆もしかりということである。


というわけで、個人的に印象的な曲とそのスコアを幾つか紹介する。

譜例はIMSLP及び個人所有のスコアからのトリミングである。

 

ワーグナートリスタンとイゾルデ第一幕前奏曲

 

f:id:phykm:20170206183500p:plain

 これは短七度跳躍のエモさをもっとも効果的に教えてくれたメロディだ。この七度跳躍の近傍はスケール上ドミナントの構成音なので、非常に調性感がある。

音程跳躍は基本的に大きく不協和なほど歌いにくく、同時に自然にキマった時のインパクトがある。そのなかで短七度は不協和跳躍の王道みたいなものだ。

http://imslp.org/wiki/Tristan_und_Isolde,_WWV_90_(Wagner,_Richard)

 

ワーグナーローエングリン第一幕前奏曲

f:id:phykm:20170206183804p:plain

 高音域の弱音の和音から始まり、何層にもメロディが重なって厚みを増していく。
 それぞれのメロディは分散和音装飾までしっかり感動的で、重なったそれらが聞き分けられないのが非常に悔しい。
 曲の終盤のシンバル二連打を伴う音響的頂点の為だけに、10分を費やすという粋な曲構造にも注目。

http://imslp.org/wiki/Lohengrin,_WWV_75_(Wagner,_Richard)

 

マーラー交響曲10番5楽章

f:id:phykm:20170206184621j:plain


 マーラーのメロディのなかではトップクラスに美しい旋律だと思う。
ここでも短七度跳躍がいきなり入る。上がった音はその時の和音でsus4になって放置される。受け取る印象は先のワーグナーとかなり違って、中途半端な雰囲気がある。
 これは曲中たびたび登場し、この楽章を特徴づける。
 基本的には小節線の直前などの8分で動きを付けたなめらかなメロディだが、最初はFにナチュラルが付き、三小節目ではGにシャープが付くなど、色彩を変化させる工夫がされている。FナチュラルからCシャープまで増四度を上がる時、次の小節で再びD調に戻りBからEまで上がる時の雰囲気の違いを味わって欲しい。

(譜例はFABER MUSIC LTD,GUSTAV MAHLER Tenth Symphony prepared by Deryck Cooke,(1976)より123ページ)

 

シェーンベルグ:グレの歌第七曲

f:id:phykm:20170206184934p:plain


 これは少し珍しい長七度跳躍である。なおこの曲は非常に編成が大きく、スコアもかなり複雑で、全員が何らかの仕事をしているような瞬間はスコアの段数が凄まじいことになり、視覚上のインパクトは絶大である。

 僕の知る限り、実際の鑑賞に十分耐え、かつ複雑で巨大な音楽というと、この曲が頂点に立つ。実演に立ち会ってみたいものだが、マイナーさと採算から当分の間は実現しないだろう。
 愛知万博の企画で演奏された事があるらしいが、残念なことに当時僕はこの曲を知らなかった。

http://imslp.org/wiki/Gurre-Lieder_(Schoenberg,_Arnold)

 

ブルックナー交響曲6番1楽章第二主題

f:id:phykm:20170206185140p:plain


 第二主題は短調長調で二回繰り返されるが、これは長調の二回目である。4拍子の堂々とした主旋律に、最高で9連符をもつセカンドバイオリンの対旋律と3連符のバスが絡む。
 このフレーズのすごいところは、セカンドバイオリンが何度も主旋律に2度で衝突しているところである。
 2度での衝突は、音が濁ったり鋭くなったりして扱いに注意を要するが、これはフレーズ全体の強拍で毎回衝突する。
 しかし全く不快さはなく、むしろ輝かしく聴こえる。不協和音程も使い方が洗練されるとここまで来るという例である。

http://imslp.org/wiki/Symphony_No.6_in_A_major,_WAB_106_(Bruckner,_Anton)

 

ブルックナー交響曲9番1楽章第一主題

f:id:phykm:20170206185335p:plain


 ブルックナーは複雑なメロディや対位法的書法をするときもあれば、大胆なユニゾンも駆使する。ユニゾンは当然楽譜の上でも相似になるからすぐに分かる。この最強音でユニゾンされるメロディは、ややぎこちない動きだが、以降1楽章で展開する幾つかの動機を含む伏線になっている。

 

http://imslp.org/wiki/Symphony_No.9_in_D_minor,_WAB_109_(Bruckner,_Anton)

 

ブラームス交響曲4番1楽章

 

f:id:phykm:20170206185536p:plain

 ブラームスの書法はかなり明確な癖がある。ある動機を使いまわすと決めたら徹底的に使い倒す。主旋律で使ったら次は伴奏、弦で使ったら次は管、重ねる時は拍をズラす。新しいメロディの伴奏がどこかで聴いた動きであったり、その引き伸ばしであったりという例が大量に見つかる。合いの手はしつこいくらいに差し込む。
 ただし、動機や旋律の計画的な使い回しは、この時期の作曲家の基本的なテクニックである。長大化し続ける曲の内部にこうした有機的関連や構造を持たせることで、楽曲全体の秩序を保つ意図がある。
 ブラームスはそれが少ない素材で徹底的に行われている。多分使いまわされてないメロディの方が少ない。

http://imslp.org/wiki/Symphony_No.4,_Op.98_(Brahms,_Johannes)

 

トゥビン:交響曲4番1楽章

f:id:phykm:20170206190006j:plain


 これは多分ストレッタとかいう部分だと思う。いわゆるカノンのように、同じ形をした主題が別パートでタイミングをずらして開始されて繰り返される。フーガやストレッタという技法はクラシックではおなじみのもので、スコア上でも明らかに視覚に訴えるのですぐわかる。

(譜例は NORDISKA,Eduard Tubin SINFONIA LIRICO より13ページ)

 

ペルト:ベンジャミンブリテンへの追悼曲

 これは作曲家が存命で、スコア入手が面倒であったので、言葉で説明する。
 まず形式は拡大カノンである。つまりカノン形式であるが、追走するパートは長さが倍になっている。
 この曲はそれだけでなく、メロディが、1音づつ長さを増やすだけの下降旋律+分散和音にすぎない。どういうことかというと、
 まず第一メロディは、A6の音程から、2分4分音符が交互にA6-|A6G6-|A6G6-F6|A6-G6F6-E6|A6-G6F6-E6D6-|...と続く。
 つまり2分4分を繰り返す三拍子リズムに、A6から下降する、ひとつづつ長くなる音名列を割り当てただけである。
 第二のメロディは、リズムと音価は第一メロディとまったく同じで、Amの構成音の中を、E6から初めて、第一のメロディの音高に到達しない最大の音名をとるように推移する。
 そしてこの2旋律から、それぞれ半小節、1小節、2小節、4小節おくれて、同じ2旋律を2倍、4倍、8倍拡大したものが始まる。
 恐ろしく単純で規則的な設計なので、実の所この曲を「定義する」には楽譜すら冗長な形式である。もし音楽のコルモゴロフ複雑性みたいなものがあれば、圧勝できるだろう。