bitterharvest’s diary

A Bitter Harvestは小説の題名。作者は豪州のPeter Yeldham。苦闘の末に勝ちえた偏見からの解放は命との引換になったという悲しい物語

ハワイ島・カウアイ島でのバケーション - ハワイ先住民の人口推移

ハワイ先住民の人口はどのように推移したのであろうか。あまり資料は多くないのだが、Dye氏とKomori氏の論文”Pre-central Population History of Hawai`I”(1992, New Zealand Journal of Archaeology)から情報を得ることができる。論文によれば、クックが到達した1778年までの人口の推移は次のようになっている。
f:id:bitterharvest:20181015102135p:plain

彼らによれば、人口の推移の傾向は3分類されると言っている。最初の傾向は400年から1150年までで、「創設フェーズ」だ。入植地が海岸近くに作られ、数百人から2万人ぐらいの人々が定住した。次の傾向は1150年から1450年までで、「成長フェーズ」だ。好環境の中、人口は10倍となり、最大で140,000-200,000人に達した。最後の傾向は1450年から1778までで、「均衡フェーズ」だ。人口は110,000~150,000人で、最大時のそれよりは若干少ない。

この傾向は、農業とのかかわりの中で彼らは説明している。ハワイの気候は、湿潤な緑の森に覆われた高地と、乾燥した開けた森の風下の低地からなる。これらの森は植物性の食物には恵まれていなかった。

「創設フェーズ」には、海岸近くに住み着いた入植者たちは、鳥や魚貝を狩猟採取したと思われる。しかし、糖質の食物が必要だったので、タロイモなどの栽培をし始めた。

栽培が進むにしたがって、既存の農地を焼き畑で再利用することや、新たに森林を切り拓くことで農地を開墾することを覚え、焼き畑農業へと移っていったと思われる。このときが「成長フェーズ」である。農地の拡大は低地からはじまり、高地へと広まっていった。

さらに、開墾が進みすぎ新たに開墾できる森林が減少し、このため人口増加が抑制された。これが「均衡フェーズ」である。

Dye氏とKomori氏はこのような農業の推移を、炭の量の変化によって説明している。既存の土地の焼き畑のよって生じる炭と、森林を焼くことで生まれる炭とでは、後者の方が圧倒的に多いであろうから、時代ごとの炭の量を調べることで開墾された森林の規模が分かると彼らは考えた。炭素14年代法で調べた結果は次のようになっていた。
f:id:bitterharvest:20181015102204p:plain

この図から、「成長フェーズ」が始まる150年前から炭の量は急激に増え始め、そのピークは「成長のフェーズ」の終了時にピークに達する。そして、「均衡フェーズ」では最大時の半分程度までに落ち込んでしまう。これは、「成長フェーズ」に入る前に先立って、森林の開拓がはじまり、「成長フェーズ」の終わりごろには最大に達するが、その後は、新たに開墾する場所がなくなったと解釈している。

さらに、宗教との関係についても説明されている。ハワイ先住民の宗教は多神教で、11世紀ごろに南ポリネシアからもたらされたと言われている。その中に神官パアオ(Pa`ao)がおり、彼の子孫は1893年までハワイ島を支配した。この宗教は、ヘイアウ(Heiau)と呼ばれる聖域を有していた。この聖域の建設・改修に投じられた労働量の変化によっても人口の推移を説明できると彼らは説明している。これについては文献を参照して欲しい。

彼らの研究が1992年である。今日ではDNAを調べることで、人の移動に関する情報をより詳しく得ることができるようになっている。それほど遅くない時期にハワイの先住民についても、詳しいデータが得られるようになると思う。もしかすると、狩猟採集民が最初にハワイに定住し、焼き畑農業に長けた農耕民がその後に到着し、この二つの集団が交雑してハワイの先住民を形成したということになるかもしれない。また、パアオは後から来た農耕民の一人だったかもしれないなどと想像すると、歴史は本当に面白いなあと思う。

最後に英語版のWikipediaにヘイアウのイラストが載っていたので掲載しておこう。
f:id:bitterharvest:20181015102229j:plain

ハワイ島・カウアイ島でのバケーション - ハワイの歴史・先史時代

今月の下旬は、留学時にホストファミリーをしてくれたご夫婦とハワイでバケーションを迎えることにしている。ハワイの歴史についてはほとんど知らないので、少し予習をしておき、彼らとの話題にしたいと思っている。とりあえず、先史時代から始めることとしよう。

最初に頭に浮かぶのは、ハワイの先住民たちが、いつごろ、どこから、やってきたのだろうかという疑問だ。最近は、古代人のDNAの研究が盛んで、考古学からは分からなかった重要な知見が知られるようになっていている。

現生人類は20万年前頃にアフリカで誕生し、およそ7万年前にアフリカ大陸を出た少数の人々が、ユーラシア大陸に拡散していく。最近の研究によれば、ヨーロッパでネアンデルタール人と、アジアでデニソワ人と交配したことが判明し、従来の考え方が覆えされている。ユーラシア大陸の端にある日本には、4~3.5万年前に到着したと考えられている。

人類が誕生して1.5万年ぐらい前までは、氷河期であり、人々はマンモスやトナカイなどの大型の獣を追いながらの狩猟採集生活をしていた。しかし、1万年前ごろになると地球は温暖化し始め、大型哺乳類は絶滅し、環境が一変する。日本では、イノシシ、鹿などの小型動物、木の実、魚・貝などを狩猟採取する縄文時代が始まるが、4大文明の地域では農業が始まる。新石器時代と呼ばれる時代から、銅、青銅、鉄を用いる新しい時代へと入っていく。

古代人のDNAを解析した最近の研究では、このような時代に人々がどのように移動したかがかなりのレベルで明確になった。研究をリードしているのは、ハーバード大学のデイビッド・ライク(David Reich)教授のグループである。

2016年には、ヨーロッパとインドでの人々の移動が解明された。それによれば、農業が始まる前は、これらの地域では狩猟採集民の人たちが生活をしていた。しかし、9000年前以降になると、アナトリア(小アジアと呼ばれる地域でトルコの大部分)とイランから、穀物を育成するという新しい技術を持った農耕民がそれぞれヨーロッパとインドへ移住を開始する。9000~4000年前にかけて、先住民であった狩猟採集民の人たちと交雑し、新たなグループを形成する。

ステップに起源 (現在のウクライナで、ヤムナヤと呼ばれる)を持ち、インド・ヨーロッパ語を話す遊牧民が、ヨーロッパ(主に北ヨーロッパ)とインド(主に北)に移動し、先住の人たちと交雑し、新しい集団を形成する。彼らは、家畜化された馬と車という移動能力に優れた道具を有していた(なお、現在のインド・ヨーロッパ語には、この時代の車に関する語彙が共通に含まれていることからヤムナヤを起源とすると考えられている)。ヨーロッパでの集団は縄目文土器文化を花咲かせ、インドでの集団は祖型北インド人となる。

その後、ステップ集団と農耕民のDNAを有するこれらの集団は、すでに定住していた農耕民(主に南ヨーロッパ南インド)の集団との間で交雑するが、その度合いは北から南へと薄まっていく。

これまでが、ヨーロッパとインドでの先史時代の人々の移動について分かったことだが、東アジアについては十分な古代人のDNAが集まっていないため、不明な部分が多いとライク教授は述べている。

しかし、次のようなことが分かっている。5万年から1万年前にかけて、狩猟採集民が、パプア人、オーストラリア人、東アジア人として移住し、さらにはアメリカに渡った。この初期の拡散で、黄河揚子江の流域で、非常に異なる集団が生まれ、それぞれが9000年前ごろまでに独自の農業を発展させた。5000年前までにあらゆる方向に拡散し、その中で、チベット語を話す集団が黄河から、オーストロネシア語、タイ=カダイ語の集団が揚子江から拡散した。オーストロネシア語を話す人々の一部は台湾に到着した。

台湾に到着した農耕民は、4000年前ごろにフィリピンに、そしてニューギニアやその東の小さな島々に到着した。3300年前以降に、ニューギニアラピタと呼ばれる様式の土器を作る人々が表れ、太平洋に広がり始める。このあと数百年かけて西ポリネシアの島々に広がり、しばらくの休止期間のあと、1200年前までには、ニュージーランドやハワイに到着した。

英語版のWikipediaには、図のような説明がある(図では、紀元が基準である)。
f:id:bitterharvest:20181012132353p:plain

1778年にイギリス人のキャプテン・クックがハワイに来航して、ヨーロッパ人との接触が始まる。この後の歴史は次回説明しよう。

家族システムの変遷(II) ケーススタディー:律令制成立期における天皇家

高校時代に日本史を選択しなかったので、知識不足を感じて勉強を始めた。このため、最近はやりの「学び直し」には当てはまらない。「退職してから始めた日本史」というべきものだ。昨年に続いて、日本史を趣味としている研究会で、これまでの成果を発表した。昨年からの継続で「家族システムの変遷」である。前年は縄文時代を取り上げたが、今年は律令期の天皇家を選んだ。家族システムは、大別すると、核家族、直系家族、共同体家族の三つである。白村江での戦いに敗れた倭国は、唐から律令制度を導入し、中央集権国家を目指す。しかし、当時の倭国の家族システムは核家族であった。これに対して唐は共同体家族に移っていた。家族システムは組織を構成する最小の単位であり、その上に出来上がる社会の組織は、家族システムからの考え方に大きく影響されると思う。このため、共同体家族の考え方を有する唐の律令制度を、核家族倭国に導入するためには大きな障害があり、それを解消するために様々な工夫がなされた。特に律令制度の導入を率先した天皇家は、大きな影響を受けたはずである。これについて論じたのが、今回の論文である。

電子レンジで作るめかじきのソテー

最近は電子レンジで作る料理が増えてきた。料理を始めたころは、珍しさもあってオーブン料理に取り組んだのだが、最近では余熱の時間がもったいないように感じるようになってきた。オーブン料理の良さは、下ごしらえをして焼くだけという点だ。人類が炉というものを発見し、その上に乗せて焼くという調理法を獲得したことが起源だろう。しかし、電子オーブンレンジをあらかじめ温めておくというのは、どう考えてもエネルギーを無駄に使っているようにしか見えない。

そこで、最近は余熱を必要としない電子レンジを使っての料理を楽しんでいる。電子レンジを用いると、オーブン料理はもちろんのこと、フライパンを用いての焼き料理も作ることが可能だ。今日紹介するのは、めかじきのソテーだ。

まずは食材だ。
f:id:bitterharvest:20180926083307j:plain
主役は、もちろんめかじきだ。その他に、玉ねぎ、パプリカ、トマトだ。トマトは、スタート時点では缶詰を用いるつもりでいたが、料理の途中で生トマトに変えた。
f:id:bitterharvest:20180926083829j:plain
まず下ごしらえだ。玉ねぎはすりおろしにする。
f:id:bitterharvest:20180926083925j:plain
2個のトマトはそれぞれ8つにくし切りする。
f:id:bitterharvest:20180926084059j:plain
パプリカは乱切りに。
f:id:bitterharvest:20180926084156j:plain
下ごしらえがすんだので、材料を耐熱皿に入れる。最初に、玉ねぎを大さじ3杯、オリーブオイル大さじ2杯、酢大さじ2杯、白ワイン大さじ1杯、クレイジーソルト小さじ半杯を入れてかき混ぜる。
f:id:bitterharvest:20180926084605j:plain

この上に、めかじき、さらにはトマトとパプリカ、最後にパセリをのせて終わりだ。
f:id:bitterharvest:20180926085846j:plain
f:id:bitterharvest:20180926085100j:plain
サランラップを左右が開くようにふわっと乗せ、600ワットの電子レンジで7分間ほど温める。出来上がりはこのような感じだ。
f:id:bitterharvest:20180926085341j:plain
お皿に綺麗に盛っていただこう。
f:id:bitterharvest:20180926085424j:plain

手間暇をかけないにもかかわらず、おいしい料理ができ、とても効率的だ。

本町田遺跡と町田市の土器

彼岸花は、毎年毎年、必ずお彼岸の時期に咲く。とてもパンクチュアルな花だ。暑い夏が終わりかけるころに、地中から茎が出てくる。何の花だろうと思っているうちに、30cmぐらいまで延びて、お彼岸を迎える少し前の日に、赤い見事な花を見せてくれる。お彼岸の日ともなると、満開になり、お墓参りの人々を暖かい秋の日とともに、歓迎してくれる。

毎日散歩をしている恩田川沿いの田圃のあぜ道にもきれいに咲いていた。
f:id:bitterharvest:20180923181803j:plain
散歩を始める地点は、町田市と横浜市の境で、上流の町田市側は桜並木になっているが、下流横浜市側は田や畑が連なっている。同じ川の沿岸なのに、市が違うだけで、全く異なる風景になっていて面白い。桜の時期は、もちろん町田市側を散策するのだが、そうでないときは、横浜市側を散策して、稲の生育状況や、野菜の変化を観察して楽しんでいる。また、横浜市側は、長津田と子供の国を接続しているこどもの国線が、二両連結で走っていて、のどかな田園風景を描き出してくれる。
f:id:bitterharvest:20180923181741j:plain

彼岸花はどうしてお彼岸の日を知るのだろうか。気温で察知しているとしたら、今年のように、異常ともいえるほどに猛暑となった夏の後では、間違ってしまうだろう。恐らく昼間の時間と夜の時間の比から知っているのではないかと思うのだがどうだろうか。

散歩の途中で、鶴見川上流の早淵川に沿っては、たくさんの縄文時代弥生時代の遺跡があるのに、同じ鶴見川の上流にもかかわらず、恩田川沿いにはなぜあまりないのだろうかと別の疑問がわいてくる。恩田川沿いは早くから開発が行われ、遺跡はあったにもかかわらず、保存されることなく、農地や住宅地として利用されてしまったのだろうかと想像したりする。同じような環境なのにとても不思議だ。

先日、恩田川の上流に数少ない遺跡が残されていることを知って訪ねてみた。本町田遺跡と呼ばれ、5500年前の縄文時代前期の4軒の住居跡と2000年前の弥生時代中期の住居跡7軒が見つかったところだ。

縄文時代弥生時代の住居が一軒ずつ復元されていた。
f:id:bitterharvest:20180923181833j:plain
f:id:bitterharvest:20180923181857j:plain

前の写真が縄文で、後が弥生だ。見比べて違いを知ってくださいと書かれていたが、良く似ていてどこに違いがあるのかよくわからなかった。

また、近くには、博物館があって、町田市で発見された土器が展示されていた。周りの景色が入り込んでしまって、あまりいい写真ではないのだが、大きな深鉢土器が展示されていた。
f:id:bitterharvest:20180923181929j:plain

他にも深鉢土器があった。
f:id:bitterharvest:20180923182018j:plain

全体が残されていれば貴重な文化財になったと思われる中空土偶の頭部も置かれていた。
f:id:bitterharvest:20180923182117j:plain

土器の発掘場所は点在しているので、発見されていない場所にも縄文や弥生の人々は生活していたのではと、これらを見ながら考えた。

随伴関手の応用 - Haskellでの実現例

8.8 Haskellでの実現例

Haskellは\( \mathbf{Hask} \)と呼ばれる一つの圏で構成されるため、二つの圏を必要とする随伴の例を見ることは少ない(往々にして、関手で\( \mathbf{Hask} \)圏の外に出てしまう)。しかし、積と関数はともに相手方への関手であるため、例外的にHaskellでの随伴の例となる。

二つの局所的に小さな圏\(\mathcal{C},\mathcal{D}\)において、関手の対\(R: \mathcal{C} \rightarrow \mathcal{D}, L: \mathcal{D} \rightarrow \mathcal{C}\)が次の条件を満たす時、随伴である。

\begin{eqnarray}
η & :& I_\mathcal{D} \rightarrow R \circ L \\
ϵ &:& L \circ R \rightarrow I_\mathcal{C}
\end{eqnarray}

それでは、下図を参考にして、積を左随伴関手、関数を右随伴関手とする随伴をHaskellで実現することを考えよう。
f:id:bitterharvest:20190527155556p:plain
まず積の関手を用意しよう。Haskellでは関手は新しいデータ型として定義される。ここでは、\(new type\)を用いて、積の関手\(Prod\)を定義しよう。また、積は固定値\(s\)に変数\(a\)をかけたものとし、これを対で表すことにしよう。

Newtype Prod s a = Prod (a, s)

次に関数の関手\(Reader\)を用意しよう。これは\(s\)を入力とし、\(a\)を出力とする関数としよう。

Newtype Reader s a = Reader (s -> a)

ここで、\(s\)は環境(environment)と見なすことができる。

それでは随伴を用意しよう。\(η\)という関数は、Haskellでは \(unit\)という関数名である。そこで、これを使うと次のようになる。

unit :: a -> Reader s (Prod s a)
unit a = Reader (\s -> Prod (a,s))

\(unit\)が状態を表すモナドとなっていることに注意しよう。

また、\(ϵ\)という関数は、Haskellでは \(counit\)という関数名である。そこで、これを使うと次のようになる。

counit :: Prod s (Reader s a) -> a
counit (Prod (Reader f, s)) = f s

但し、\(f : s \rightarrow a\)である。

それではプログラムをまとめよう。\(Prod \ s\)を左随伴関手として定義するためには、これを関手として定義する必要がある。同じように、\(Reader \ s\)を右随伴関手として定義するためには、これを関手、および、表現可能関手として定義する必要がある。表現可能関手として定義するときは、\(Reader\)のソース側のデータ型を定める必要があるが、これは、\(Reader \ s\)のデータ型が\(s\)のデータ型と同じであることに注意して定義すると以下のようになる(しばらくこれに気がつかず、\(Rep (Reader \ s)\)を\(Double\)と定義したりなどしてしまった)。

プログラムには実行例も示してあるので、利用して欲しい。

{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE TypeFamilies #-}

class (Functor f, Representable u) => Adjunction f u where
  unit :: a -> u (f a)
  counit :: f (u a) -> a

class Representable f where
  type Rep f :: *
  tabulate :: (Rep f -> x) -> f x
  index :: f x -> Rep f -> x

newtype Prod s a = Prod (a , s)

newtype Reader s a = Reader (s -> a)

instance Functor (Prod s) where
  fmap f (Prod (a , s)) = Prod (f a , s)

instance Functor (Reader s) where
  fmap f (Reader h) = Reader (f . h)

instance Representable (Reader s) where
  type Rep (Reader s) = s 
  tabulate f = Reader (\x -> f x)
  index (Reader f) x = f x

a = tabulate sin :: Reader Double Double
--index a 1.5

instance Adjunction (Prod s) (Reader s) where
--  unit :: a -> Reader s (Prod s a)
  unit a = Reader (\s -> Prod (a , s))
--  counit :: Prod s (Reader s a) -> a
  counit (Prod (Reader f , s)) = f s

b = unit 2.3 :: Reader Double (Prod Double Double)
c = counit (Prod (Reader sin, 2.3 :: Double)) :: Double

随伴関手の応用 - モナドとしての随伴関手

8.7 モナドとしての随伴関手

今回は、随伴からモナドが導き出されることを示そう。

二つの局所的に小さな圏\(\mathcal{C},\mathcal{D}\)において、関手の対\(R: \mathcal{C} \rightarrow \mathcal{D}, L: \mathcal{D} \rightarrow \mathcal{C}\)が次の条件を満たす時、随伴であった。

\begin{eqnarray}
η & :& I_\mathcal{D} \rightarrow R \circ L \\
ϵ &:& L \circ R \rightarrow I_\mathcal{C}
\end{eqnarray}

モナドであるための条件は、\(return\)と\(join\)という関数を有することである。すなわち、
\begin{eqnarray}
return & :& A \rightarrow M (A) \\
join & :& M (M (A)) \rightarrow M(A)
\end{eqnarray}
を満たすことである。

それでは、\(η\)から\(return\)が得られることを示そう。

\( M=R \circ L \)とすると、
\begin{eqnarray}
A = I_\mathcal{D} (A)
\end{eqnarray}
\(η : I_\mathcal{D} \rightarrow R \circ L\)を用いると
\begin{eqnarray}
&\rightarrow& R \circ L (A) \\
&=& M (A) \\
\end{eqnarray}
より
\begin{eqnarray}
return : A \rightarrow M (A)
\end{eqnarray}
が得られる。

次に、\(ϵ\)から\(join\)が得られることを示そう。
\begin{eqnarray}
M (M (A)) = R \circ L \circ R \circ L (A)
\end{eqnarray}
\(ϵ : L \circ R \rightarrow I_\mathcal{C}\)を用いると
\begin{eqnarray}
&\rightarrow& R \circ I_\mathcal{C} \circ L (A) \\
&=& R \circ L (A) \\
&=& M (A)
\end{eqnarray}
より
\begin{eqnarray}
join : M (M (A)) \rightarrow M(A)
\end{eqnarray}
が得られる。

なお、このようにして得られたモナドに対して、結合律と単位律が満たされることを示さなければならない。単位律は随伴のいわゆる三角恒等式から得られるが、これについては、後の記事で説明する。また、結合律については、\(ϵ\)を用いて式を展開することで得られるがこれについても一緒に後の記事で説明する。

これより、全ての随伴はモナドを導き出すことが分かる。これはコモナドについても言える。

また、逆に全てのモナド(コモナド)は随伴から導き出されると言える。

随伴関手の応用 - モノイドとしての随伴関手

8.6 モノイドとしての随伴関手

随伴関手の応用についていくつか説明してきたが、アダルトとベビーの例を始めとしてこれまでの例ではすべて、左側の圏の方が厳密であることに気がついただろう。今回の例も同じである。左側がモノイドを対象にした圏、右側が集合を対象にした圏である。

1)モノイド圏と忘却関数

モノイドは加算や乗算などの二項演算を表すのに都合のよい圏である。モノイドであることの条件は、
1) 対象は一つしかない(通常、これは星印で表す)、
2) 射は、通常の写像を連想すると納得するのが難しいが、集合上の要素である、
3) どの射のソースもターゲットも全て同じで、星印である、
4) 射と射の合成は用意されていて、二項演算子が用いられる、
5) 恒等射が用意されている、
もちろん単位律と結合律が成り立っている、というである。

今、モノイドを対象とした圏\(\mathbf{Mon}\)を考えることにしよう。この圏はモノイド\(M,M’\)を対象にしていたとしよう。このとき、\(M\)から\(M’\)への\({\rm Hom}\)集合を\(\mathbf{Mon}(M,M’)\)としよう。

モノイド圏とは別に集合の圏\(\mathbf{Set}\)を用意しよう。また、\(M,M’\)の射は集合の要素であるので、この集合だけを取り出して\(\mathbf{Set}\)に写像する関手\(U\)を考えよう。この関手はモノイドとしての構造を忘れ、射の構成要素だけを取り出すので、忘却関数と呼ばれる。図で示すと次のようになる。
f:id:bitterharvest:20190527154017p:plain
\(U(M)\)と\(U(M’)\)の間にも\({\rm Hom}\)集合\(\mathbf{Set}(U(M),U(M’))\)を考えることができる。

ところで、\(\mathbf{Mon}(M,M’)\)を構成する射のそれぞれは、\(M,M’\)の射を\(U(M),U(M’)\)の集合の要素が同じものを表していると考えるとすると、\(\mathbf{Set}(U(M),U(M’))\)に対応づけることができる。これが、図で実戦で示したものである。その他にも、\(\mathbf{Set}(U(M),U(M’))\)には、\(\mathbf{Mon}(M,M’)\)に対応付けることができない多くのものを含んでいる。これは、\(\mathbf{Mon}\)での\({\rm Hom}\)集合が、\(M\)の構造を維持しなければならないことによる。それに対して、\(\mathbf{Set}\)での\({\rm Hom}\)集合は構造を持たないので、よりたくさんのもので構成されることとなる。即ち、\(U(M)\)の要素数を\(m\)、\(U(M’)\)の要素数を\(n\)とすれば、\({\rm Hom}\)集合の要素数は\(n^m\)となる。

具体的な例を用いて理解を深めることとしよう。下図において、\(M\)は乗算のモノイド、\(M\)はモジュロ3での乗算のモノイドである。
f:id:bitterharvest:20190527154042p:plain
この図で、乗算モノイドの射は、\(M=\{1,2,3,4,5,6,7,…\}\)である。また、モジュロ3での乗算モノイドの射は、\(M’=\{1,2,3\}\)である。この間の射は一つだけで、\(Mod3\)である。\(3\)で割った時の余りを求める関数である。但し、割り切れたときは\(0\)ではなく\(3\)とする。

それぞれのモノイドの射は忘却関数\(U\)によって、\(U(M)=\{1,2,3,4,5,6,7,…\}\)と\(U(M’)=\{1,2,3\}\)に写す。\(U(M)\)から\(U(M’)\)への\({\rm Hom}\)集合には、\(Mod3\)に対応するものが一つ存在することは自明である。そして、\({\rm Hom}\)集合にはこれ以外にもたくさんあることも自明である。

2)自由モノイド

さてモノイドの性質が分かってきたところで、随伴関手との関係を調べることにしよう。右側の関手として忘却関手を用いることにしよう。また、左側の関手として自由関手を用いてみよう。生成された集合の要素の全てにたして、異なる射を与えられるというのが自由関手だ。

加算の場合

まず、例から見ていこう。生成元が\(1\)だけである集合を考えよう。これは、任意の数だけ\(1\)を並べたものが集合の要素となるので、これから作られる集合は\(X=\{\phi,1,(1,1),(1,1,1),…\}\)となる。これを射の集合としたものが自由モノイドである。合成を加算としよう。これで、加算モノイドが得られた。これから、モジュロ3の加算モノイドを作ることを考えよう。さらに、これを忘却関数で\(\mathbf{Set}\)に写すと下図が得られる。
f:id:bitterharvest:20190527154101p:plain

この図で、二つの圏が自然同型であるとしよう。今、\(\mathbf{Mon}(F(X).M)\)にはただ一つの関数\(h=Mod3\)が存在するので、\(\mathbf{Set}(X,U(X))\)でも一つの関数が存在することとなる。これを\(f\)としよう。

これを縦と横をひっくり返すと下図のようになる。
f:id:bitterharvest:20180721085508p:plain

自由モノイドの定義

自由モノイドは次のように定義される。生成元\(G\)から関数\(p\)によって生成された集合\(X\)に対して、その要素を射とするモノイド\(F(X)\)を生成する。これとは別に任意のモノイドを選んできたとする。これを\(M\)としよう。\(F(X)\)から\(M\)への関数\(h\)が一意的に与えられ、\(M\)から忘却関手\(U\)によって得られた\(U(M)\)に対して\(X\)からの関数\(f: X \rightarrow U(M)\)が存在するとき\(F(X)\)は自由モナイドと呼ばれる。なお、\(U(M)\)は生成元\(G\)より関数\(q\)によって生成されたものとする。

今回の例では、\(M\)としてモジュロ3の加算モノイドを用いたが、これが任意のモノイドについていえれば、加算モノイドは自由モノイドとなる。実は、この証明はそれほど難しくはないので、試みて欲しい。

乗算の場合

乗算での生成元は何を考えたらよいのだろうか。中学の頃、素因数分解というのを習った。数を素数の積で表すものだ。全ての数は素数の積で表すことができるので、乗算での自由モノイドを求めるためには、素因数を用いるとよい。そこで下図のようにした。
f:id:bitterharvest:20190527154123p:plain
\(X\)は重複を許して素数を任意に並べたものの集まりである。即ち、
\begin{eqnarray}
X &=& \{\phi,2,3,(2,2),5,(2,3),(3,2), \\
&& 7,(2,2,2),(3,3),(2,5),(5,2),11,\\
&& (2,2,3),(2,3,2),(3,2,2),13, \\
&& (2,7),(7,2),(3,5),(5,3),(2,2,2,2),…\}
\end{eqnarray}
である。

自由モノイドは、\(\phi\)を恒等射とし、他を射とし、合成を\(\circ\)としたものである。即ち、
\begin{eqnarray}
F(X) &=& \{1,2,3,2 \circ 2,5,2 \circ 3,3\circ 2, \\
&& 7,(2 \circ 2 \circ 2),3 \circ 3,2 \circ 5,5 \circ 2,11,\\
&& 2 \circ 2 \circ 3,2 \circ 3 \circ 2,3 \circ 2 \circ 2,13, \\
&& 2 \circ 7,7 \circ 2,3 \circ 5,5 \circ 3,2 \circ 2 \circ 2 \circ 2,…\}
\end{eqnarray}

また、乗算モノイド\(M\)も用意した。自由モノイドから乗算モノイドへは一意的な関数\(h\)が存在し、単射ではないことに注意しよう。即ち、自由モノイドでは異なる射と思われていたものが自由モノイドでは同じ射へと移されている。例えば、自由モノイドでは\(2 \circ 3\)と\(3 \circ 2\)は異なるものとして扱われているが、乗算もなどでは、\(2 \times 3\)と\(3 \times 2\)は同じものである。

もし、二つの圏が自然同型であれば、\(X\)から\(U(M)\)への関数が一つ存在することとなる。最初から、自由モノイドという言葉を用いていたが、乗算モノイド以外の他のモノイドについても同じことがいえるので、これは文字通り自由モノイドであることが分かる。その証明は以下の図を参考に試みて欲しい。
f:id:bitterharvest:20180721085554p:plain

まとめ

今回は、加算と乗算を取って、自由モノイドの説明をしたが、この議論は一般的に行うことが可能である。手順は次の通りである。
1) 生成元\(G\)を用意する。
2) \(G\)の要素を任意個並べたものを漏れなく用意する。これを\(X\)(圏\(\mathbf{Set}\)の対象)とする。このときの関数は\(p: G \rightarrow X\)である。
3) 自由関手\(F\)を用いて、\(X\)を射の集まりとしたモノイド\(F(X)\)(圏\(\mathbf{Mon}\)の対象)を作成する。
4)任意のモノイド\(M\)(圏\(\mathbf{Set}\)の対象)を選ぶ。そして、\(X\)から\(M\)には一意的な関数\(h\)があることを確認する。
5) 忘却関手\(U\)を用いて、集合\(U(M)\)(圏\(\mathbf{Set}\)の対象)\)を作成する。生成元\(G\)から\(U(M)\)への関数\(q\)が存在することを確認する。
6) 関数\(f : X \rightarrow U(M)\)が存在することを確認する。
これで自然同型となり、\(F(X)\)は自由モノイドであることが保証される。

最後にまとめることとしよう。

\(\fbox{随伴関手と自由モノイド}\)
集合の圏\(\mathbf{Set}\)とモノイドの圏\(\mathbf{Mon}\)において、自由関手\(F :\mathbf{Set} \rightarrow \mathbf{Mon}\)が左随伴関手であり、忘却関手\(U :\mathbf{Mon} \rightarrow \mathbf{Set}\)が右随伴関手であるとき、下図で、\(F(X)\)は自由モノイドとなる。なお、\(X\)は\(\mathbf{Set}\)全体となる。これは証明して欲しい。
f:id:bitterharvest:20190527155232p:plain
逆に、\(F(X)\)が自由モノイドの時、下図で、上の部分をモノイドの圏\(\mathbf{Mon}\)とし、下の部分を集合の圏\(\mathbf{Set}\)としたとき、自由関手\(F\)は左随伴関手となり、忘却関数\(U\)は右随伴関手となる。
f:id:bitterharvest:20190527155253p:plain

シェフから教わった「鶏の煮込み、猟師風」を作る

よく利用している飯田橋の隠れ家風のイタリアン・レストランから宿題として新しいレシピを頂いた。タイトルは、「鶏の煮込み、猟師風」となっている。A4一枚に、上の方に出来上がった時の写真がのっていて、それに続いて2人前の材料が、そして下の方に作り方が書いてある。

猟師風となっているので、男らしく大胆に作ればよいのだろう。主要な材料は骨付き鶏モモ肉だ。チキンのレッグを仕入れてくればよいと簡単に考え、お店に出かけた。ところが、骨を取り除いたモモ肉は沢山並べられているのだが、骨がついているモモ肉はない。妻もクリスマスの頃は見かけるが、それ以外の時はあまり見かけないという。どうしたらよいものかと思案に暮れながら鶏肉の売り場を行ったり来たりしているときに、丸ごとの鶏を見つけた。値段も手ごろ、以前から丸ごと一匹の鶏に挑戦してみたいと考えていたので、今回、買うことにした。

今回使う材料は以下の通りだ。
f:id:bitterharvest:20180714093817j:plain

主役はもちろん鶏のモモ肉だ。トマトをベースにしてキノコをたくさん使った煮込みだ。最初に鶏をさばいて、モモ肉を確保しなければならない。モモの付け根に包丁を入れて皮を切る。
f:id:bitterharvest:20180714094630j:plain

背中の方に足を折り曲げると関節のところで骨が外れる。外れた関節に直角方向に包丁を入れれば、もも肉を確保できる。
f:id:bitterharvest:20180714094849j:plain

後日使えるようにするため、胸肉と手羽もさばく。
f:id:bitterharvest:20180714095425j:plain

モモ肉は、さらに、上の関節の部分で二つに切断する。足を曲げたり伸ばしたりすると関節の位置が分かるので、自分の指を切らないように注意しながら、切断する。
f:id:bitterharvest:20180714095336j:plain

そして、塩、胡椒をして、薄力粉をまぶす。
f:id:bitterharvest:20180714095044j:plain

他の材料も用意しておこう。肉の臭みを消すために、ニンニク一片、ローズマリー一本、鷹の爪一本を用意する。ニンニクは薄く切って軽めに潰した。
f:id:bitterharvest:20180714100309j:plain

さらに、玉ねぎ半分をスライスし、一個のエリンギを縦方向に割き、4,5個のマッシュルームをそれぞれ半分に切り、半パック程度のしめじの下部を落とす。
f:id:bitterharvest:20180714100021j:plain

下ごしらえができたので、調理に取り掛かる。
中火にして、フライパンに大さじ一杯程度のオリーブ油を入れ、熱した状態になった時に、鶏肉を加え、両面に焦げ目をつける。
f:id:bitterharvest:20180714101042j:plain

残っているオリーブ油をキッチンペーパーでふき取り、新しく、オリーブ油一杯を加える。
f:id:bitterharvest:20180714101157j:plain

熱くなったところで、用意しておいたニンニク、ローズマリー、鷹の爪を加える。
f:id:bitterharvest:20180714101318j:plain

香りが出てきたら、強火にして、玉ねぎ、きのこを加える。
f:id:bitterharvest:20180714101457j:plain

玉ねぎがしんなりとし、きのこの水分が軽く煮詰まったところで、中火に戻して、白ワインビネガーを大さじ2杯加え、フライパンにこびりついているうまみ成分をこそぎ取る。
f:id:bitterharvest:20180714101720j:plain

白ワインをカップ一杯入れて煮詰める(写真撮り忘れました)。

トマトホール一缶と、水カップ一杯、マギーブイヨンのキューブ一個を入れて、弱火でコトコト30分程度煮込む。
f:id:bitterharvest:20180714102730j:plain

そして、トマトの色が赤からオレンジ色に変化したときに煮込むのを止め、ハーブ、塩、胡椒で味を調整する。
f:id:bitterharvest:20180714102904j:plain
今回は、庭からオレガノ、セージを採ってきて利用した。さらに、乾燥したイタリアンパセリも利用した。
出来上がりはこのような感じであった。
f:id:bitterharvest:20180714103257j:plain

食卓には、サラダとスパークリングワインを添えた。
f:id:bitterharvest:20180714103411j:plain

レシピがよいのだろう、とてもおいしい料理を頂くことができた。また、鶏をさばくという作業も初めて体験でき、楽しい料理作りであった。

随伴関手の応用 - 写像対象としての随伴関手

8.4 写像対象としての随伴関手

写像対象は次のように定義される。

対象射
\begin{eqnarray}
eval : B^A \times A \rightarrow B
\end{eqnarray}
を有する対象\(B^A\)が写像対象であるとは、任意の対象\(X\)と射\(g: X \times Y \rightarrow B\)に対し、射
\begin{eqnarray}
h : X \rightarrow B^A
\end{eqnarray}
で次の図式
f:id:bitterharvest:20180711091253p:plain
を可換にするものが一意的に存在するときを言う。

それでは、これを随伴関手として表したのが下図である。
f:id:bitterharvest:20180711091303p:plain

これは証明を必要とする。一つは、写像対象である時、上記の随伴関手による可換図式が得られることを、もう一つは、上記の随伴関手による可換図式が得られた時、写像対象になっていることを示さなければいけない。これらの証明は、積の時に用いた証明を用いれば容易に行うことができるので、ここでは、省略する。

8.5 余積としての随伴関手

余積は積とは双対関係をなすので、下図に示すように、随伴関手を用いて表すことができる。
f:id:bitterharvest:20180711091329p:plain

証明は読者が行ってください。

随伴関手の応用 - 積としての随伴関手

8.3 積としての随伴関手

\(\mathcal{C}\)は対象\(A,B\)を有する圏とする。\(A\)と\(B\)の積は、\(A \times B\)と書かれる\(\mathcal{C}\)の対象と二つの射\(fst : A \times B \rightarrow A \)および\(snd : A \times B \rightarrow B \)との組で、以下の普遍性を満たすものをいう。
積の普遍性:任意の対象\(X\)および射の対\(p:X \rightarrow A\)および\(q:X \rightarrow B\)が与えられた時、一意的な射\(h : X \rightarrow A \times B\)が存在する。

それでは、積を随伴関手で表すことを考えよう。
f:id:bitterharvest:20180710180931p:plain

上図において、積を可換図式で表したのが左側で、積を随伴関手として表したのが右側である。左側と右側の対応関係を最初に示そう。

それでは、右側が随伴関手となっていることを見ていこう。右図で、元々あった圏\(\mathcal{C}\)を右側に書き、そこには、任意の射\(X\)と、\(A\)と\(B\)の積\(A \times B\)を書き、二つの対象に対する射を\(h:X \rightarrow A \times B\)とした。また、対の圏\(\mathcal{C} \times \mathcal{C} \)を左側に書き。そこには、対象\( < X,X > \)と対象\( < A,B > \)とを書き、これに対する射を\( < p,q > : < X,X > \rightarrow < A, B > \)とした。そして、\(\mathcal{C}\)から\(\mathcal{C} \times \mathcal{C} \)への関手を\(\Delta: Y \rightarrow < Y,Y > \)とした(\(\Delta\)は対角関手(diagonal functor)と呼ばれる)。また、\(\mathcal{C} \times \mathcal{C} \)から\(\mathcal{C}\)への関手を\(Product: < Y,Z > \rightarrow Y \times Z\)とした。

さて、右図が圏論での積となっているとき、即ち、\(h\)が一意的に定まっているとき、\(\Delta\)は左随伴関手であることを、\(Product\)は右随伴関手であることを示そう。

まず、\(h\)がどのような関数であるかを見ておこう。この関数は\(p,q\)が与えられると一意に決まる関数である。そこで、Haskellで次のような関数を定義してみよう。

factorizer :: (c -> a) -> (c -> b) -> (c -> (a,b))
factorizer p q = \x -> (p x, q x)

これより、

fst . factorizer p q = p
snd factorizer p q = q

は明らかである。これより、

h = factorizer p q

を得る。さて、\(h\)が分かったところで、右図が随伴になるためには、
\begin{eqnarray}
ϵ &:& \Delta \circ Product \rightarrow I_{\mathcal{C} \times \mathcal{C} } \\
η &:& I_\mathcal{C} \rightarrow R \circ \Delta
\end{eqnarray}
となることと示せばよい。

1)自然変換\(ϵ\)が成り立つことの証明

最初に
\begin{eqnarray}
ϵ &:& \Delta \circ Product \rightarrow I_{\mathcal{C} \times \mathcal{C} }
\end{eqnarray}
を示そう。

右図を90度時計回りに回転すると次の図を得る。
f:id:bitterharvest:20180710181007p:plain

\(ϵ\)は自然変換であるので、成分ごとに考えればよい。このため、\(A \times B\)と\(X\)について考えればよい。

最初に、\(A \times B\)について考えてみることとしよう。\(X\)を\(A \times B\)で置き換えると下図を得る。
f:id:bitterharvest:20180710181044p:plain

このとき、\(h = id_{A \times B}\)である。これより、\( < p,q > = < fst,snd > \) で、
\begin{eqnarray}
fst (A \times B) &=& A \\
snd (A \times B) &=& B
\end{eqnarray}
である。これより、
\begin{eqnarray}
p (A \times B) &=& fst (A \times B) = A \\
q (A \times B) &=& snd (A \times B) = B
\end{eqnarray}

今得た関係を可換図式で示すと下図のようになる。
f:id:bitterharvest:20180710181927p:plain
従って、
\begin{eqnarray}
η : I_\mathcal{C} \rightarrow R \circ \Delta
\end{eqnarray}
が成分\( < A \times B > \)については示すことができた。

次に成分\(X\)について考えてみよう。証明に用いる図は下図のようになる。
f:id:bitterharvest:20180710181109p:plain

これも、\( A \times B \)の場合と同様に証明することができる。

2)自然変換\(η\)が成り立つことの証明

次に
\begin{eqnarray}
η &:& I_\mathcal{C} \rightarrow R \circ \Delta
\end{eqnarray}
を示そう。

\(η\)も自然変換であるので、成分ごとに考えればよい。このため、\(A \times B\)と\(X\)について考えればよい。

最初に、\(A \times B\)について考えてみることとしよう。\(X\)を\(A \times B\)で置き換えると下図を得る。
f:id:bitterharvest:20180710191328p:plain

これは、先と同じように証明できる。

また、成分\(X\)についても同様に証明できる。

1)と2)の証明より、\(h\)が一意的に決まるとき、積を関手\(\Delta\)と関手\(Product\)を用いて下図のように表すことができ、
f:id:bitterharvest:20180710180931p:plain

そして、
\begin{eqnarray}
\mathcal{C} \times \mathcal{C}( \Delta X , < A,B > ) \cong \mathcal{C}( X , A \times B )
\end{eqnarray}
となる。なお、\(\Delta X =< X,X > \)であり、\(Product < A,B > = A \times B\)である。これより、\(\Delta\)は左随伴関手で、\(Product\)は右随伴関手であるといえる。

逆に、\(\Delta\)は左随伴関手で、\(Product\)は右随伴関手である時、これは積を表しているということを証明しなければならないが、これについては\(h\)が一意に定まるため、自明である。

なお、圏\(\mathcal{C} \times \mathcal{C} \)は双関手\((,) \ A \ B\)により作られた圏である。

随伴関手の応用 - 随伴関手を理解するための比喩

8.2 随伴関手を理解するための比喩

比喩(Metaphor)は難しい概念を理解する助けをしてくれる。随伴関手は高度に抽象的な概念なので、理解しやすくするためには、やはり優れた比喩を必要とするだろう。David Spivakがその著書『Category Theory for the Sciences』の中で、随伴関手を次のように説明している。
f:id:bitterharvest:20180709091652j:plain

それでは、下図を用いて説明しよう。
f:id:bitterharvest:20180709091229p:plain

左側の圏はアダルトの語彙の世界で、圏\(\mathcal{A}\)とする。右側はベビーの語彙の世界で、圏\(\mathcal{B}\)とする。また、\(X,Y\)をそれぞれアダルトとベビーの口から出る語彙とする(圏を\(\mathcal{A,B}\)と名付けたのがミソで、左側がアダルトの\(\mathcal{A}\)、右側がベビーの\(\mathcal{B}\)と覚えやすい。ここでは少し気持ちが悪いがそのままアダルトとベビーを使うことにする。アダルトの時は左側の圏を、ベビーの時は右側の圏を意識して欲しい)。ベビーの口から出る語彙\(Y\)は、アダルトが聞いたとき、アダルトの耳に入る語彙\(L(Y)\)になり、アダルトの口から出る語彙\(X\)は、ベビーが聞いたとき、ベビーの耳から入る語彙\(R(X)\)になる。

アダルトの口から出る語彙\(X\)は意味のある言葉だが、ベビーの口から出る語彙\(Y\)は繰り返されるノイズだ。また、アダルトの耳に入る語彙\(L(Y)\)はアダルトの世界なので意味を有しているが、しかし、ベビーの耳に入る語彙\(R(X)\)はベビーの世界なのでただの繰り返されるノイズだ。

\(L(Y)\)から\(X\)への自然変換(これは\({\rm Hom}\)集合となる)が存在することは明らかだろう。即ち、アダルトの耳に入る語彙\(L(Y)\)は、何らかの意味を持つものと解釈され、アダルトの口から出る語彙\(X\)に対応させられる。

\(Y\)から\(R(X)\)への自然変換(これも\({\rm Hom}\)集合となる)が存在することも明らかだろう。即ち、ベビーの口から出る語彙\(Y\)は、ベビーの耳に入る語彙\(R(X)\)に対応付けられる。それは、アダルトがベビーの語彙を容易に真似られることによる。

さて、圏論の世界では、次の二つの条件が満たされるとき、二つの圏\(\mathcal{A,B}\)は同じである、即ち、圏論の言葉を用いれば随伴であるという。
\begin{eqnarray}
ϵ : L \circ R \rightarrow I_\mathcal{A} \\
η : I_\mathcal{B} \rightarrow R \circ L
\end{eqnarray}

上の二つはどのようなことを言っているのであろうか。

\(ϵ : L \circ R \rightarrow I_\mathcal{A} \)は次のことを表している。アダルトの口から出る語彙\(X\)をうけ、ベビーは耳に入る語彙\(R(X)\)を得る。そして、ベビーは口から出る語彙\(R(X)\)に変える。これをアダルトが聞き、耳に入る語彙\(L \circ R(X)\)を得る。そして、アダルトの口から出る語彙\(X\)と耳に入る語彙\(L \circ R(X)\)とが一致するというのが最初の条件である。

\(η : I_\mathcal{B} \rightarrow R \circ L \)は次のことを表している。ベビーの口から出る語彙\(Y\)と耳に入る語彙\(R(X)\)との間に齟齬がないとするならば、ベビーの口から出る語彙\(Y\)に対して、アダルトはこれに反応して口から出る語彙\(L(X)\)をベビーに伝え、そして、ベビーは耳に入る語彙\(R \circ L(Y)\)を受け取ることができるというのが二番目の条件である。

まとめると、最初の条件はアダルトからベビーへのコミュニケーションで、ベビーが正しく反応していればアダルトは大丈夫だと言っている。二番目の条件はベビーからアダルトへのコミュニケーションで、ベビーが大丈夫なときは、アダルトは正しく反応のできると言っている。これが、Spivakの比喩だが納得できただろうか。

なお、アダルトとベビーの世界を入れ替えると、成り立たないことは確認して欲しい。

随伴関手の応用 - 自然変換の合成

8.随伴関手の応用

圏論創始者はソーンダース・マックレーン(Saunders Mac Lane)とサミュエル・アイレンベルグ(Samuel Eilenberg)だ。1942年から45年にかけて、代数的位相幾何学(Algebraic Topology)を研究する中で、関手や自然変換などの圏論の概念を生み出した。マックレーンの著書“Categories for Working Mathematician”の冒頭で、彼は、”Adjoint functors arise everywhere.”と言っている。意訳すると、どこもかしこも随伴関手だらけということだろう。彼の考え方に従えば、殆どのことは随伴関手を用いて記述できるということだ。そこで、今回の記事では、これまでに学んできた普遍性の中からいくつか取り上げて、随伴関手を用いて表すこととしよう。

なお、マクレーンは、修士課程までをアメリカで学び、物足りなかったのだろう、当時、世界の最高峰の大学と目されていたドイツのゲッティンゲン大学で博士課程を過ごす。その後、米国に戻り、シカゴ大学教授となる。とても長生きをし、2005年に95歳で亡くなった。アイレンベルグポーランド出身、ワルシャワ大学で博士号を修得した後、コロンビア大学の教授となった。彼も長生きしたほうだろう、1998年に84歳で亡くなっている。

8.1 自然変換の合成

随伴関手の中で、自然変換が重要な役割をなすので、自然変換の構成について簡単に説明しておこう。

自然変換は、関手から関手への射である。自然変化の合成は、関手を介在させた縦方向の合成と
f:id:bitterharvest:20180706133546p:plain

圏を介在させた横方向の合成がある。
f:id:bitterharvest:20180706133559p:plain

ここでは横方向の合成について考えよう。縦方向については読者の方で考えて欲しい。
それでは、上の図での自然変換の合成
\begin{eqnarray}
\beta \circ \alpha : G \circ F \rightarrow G’ \circ F’
\end{eqnarray}
を考えることとしよう。

自然変換は、成分ごとに考えればよい。そこで、圏\(\mathcal{A}\)と圏\(\mathcal{B}\)の対象を\(X\)と\(Y\)としよう。
f:id:bitterharvest:20180706133646p:plain
これより
\begin{eqnarray}
\alpha (X) : F(X) \rightarrow F’ (X) \\
\beta (X) : G(X) \rightarrow G’ (X)
\end{eqnarray}
となる。従って、
\begin{eqnarray}
(\beta \circ \alpha) (X) : G \circ F (X) \rightarrow G’ \circ F’ (X)
\end{eqnarray}
となり、さらに
\begin{eqnarray}
G \circ \alpha (X) : G \circ F (X) \rightarrow G \circ F’ (X)
\end{eqnarray}
である。

これより、
\begin{eqnarray}
(\beta \circ \alpha) (X) : G \circ F (X) \rightarrow G \circ F’ (X) \rightarrow G’ \circ F’ (X)
\end{eqnarray}
となり、

\begin{eqnarray}
(\beta \circ \alpha) (X) = \beta (F’ (X)) \circ (G \circ \alpha (X))
\end{eqnarray}
を得る。

これで、自然変換の合成を得ることができたが、それでは、その性質をいくつか調べてみよう。まず、\(\alpha=Id\)の場合を考えてみよう。即ち、\(Id : F \rightarrow F\)の場合である。
f:id:bitterharvest:20180706133700p:plain
\begin{eqnarray}
(\beta \circ F) (X) & = &\beta (F’ (X)) \circ (G \circ \alpha (X)) \\
& = & \beta (F’ (X)) \circ (G \circ Id (X)) \\
& = & \beta (F’ (X))
\end{eqnarray}
上記で、\(G \circ Id (X)\)は恒等射\( Id (X)\)に関手\(G\)を適応させたものであるので、恒等射となる。

次に、\(\beta=Id\)の場合を考えてみよう。即ち、\(Id : G \rightarrow G\)の場合である。
f:id:bitterharvest:20180706133722p:plain
\begin{eqnarray}
(G \circ \alpha) (X) &=& Id (F’ (X)) \circ (G \circ \alpha (X)) \\
&=& G \circ \alpha (X)
\end{eqnarray}
となる。

次回は、随伴関手についての比喩を説明しよう。

重要文化財クラスの中空土偶を横浜市歴史博物館で展示

毎日新聞の記事によれば、秦野市の菩提横手遺跡で貴重な中空土偶が発掘されたということで、横浜市歴史博物館に見学に行った。入口からり、受付の横の階段をのぼると常設館への通路がある。その壁面に沿って、2018年度のかながわ考古学財団の調査で発見された遺物が所狭しと展示されている。その中で一つだけガラスケースに納められているのが、今回発見された中空土偶だ。高さが25cm、幅が12cmと大型だ。毎日新聞の記事の中で、日本大学大学院の鈴木保彦講師が「新型式と認定できるユニークなもので、重要文化財クラスの優品と評価できる」とコメントしている。

同様な土偶は、神奈川県では綾瀬市上土棚南遺跡、平塚市王子ノ台遺跡 で発掘されているが、顔や腰から下の部分がないなどで全体像が不明であった。今回発掘された土偶は、左足の一部と左腕を欠いただけのほぼ完全な姿で発見され、貴重な文化財だ。この土偶は、縄文時代後期前葉から中葉(約3500年前)のものだ。

写真は横浜市歴史博物館ツイッターに、左側が今回発見された中空土偶だ。

正面から見ると、
顔は天井を見つめていて、大きく口を開けている。胴は筒型、足は銅より太い。

右側面から見ると、
足が大きく自立できることが分かる。後頭部が随分と後ろに豊かについているのも特徴だろうか。また、のどの下あたりの随分高い位置についているが、胸が突起のように出ていることに気がつく。この土偶もまた、他のこれまでに発見されている土偶と同じように、女性を表していることが分かる。

たまたま時を同じくしてトーハク(東京国立博物館)で、『縄文―1万年の美の鼓動』が開催されており、8月からは、「縄文のビーナス」をはじめとして、国宝に指定されている全ての土偶が、一堂に会するそうだ。近い将来、この土偶も仲間入りできれば、この製作者も発掘者も報われることだろう。

さっぱり味の竹の子メバルのアクアパッツァ

今年は例年になく梅雨の開けるのが早く、毎日猛暑が続いている。このような時こそ、天城高原に行って涼を取るのがよいのだが、東京に大事な用事があるために、残念ながら最善な策をとることができない。仕方がないので、夕飯を楽しむことにした。

いつも行く大型スーパーで竹の子メバルを見つけたので、それを料理することとした。入手したときは、煮つけにしようと思っていたのだが、暑い中を散歩してきた後だったので、さっぱり味で調理することとした。野菜とワインで魚の臭みを消して、スープも楽しめるようにした。

ブログで竹の子メバルを調べると、竹の子が出てくる時期が旬で、メバルと名がついているがソイの仲間だそうだ。和風だと、みそ汁の中に入れたり、煮つけにしたり、あるいは、鮮度がよければ刺身にするのがよいそうだ。今回はアクアパッツァにした。なんていうことはない、洋風煮つけだが、今回はさっぱり味になるように心がけた。

例によって食材たちに登場してもらおう。用いたのは竹の子メバル2匹、トマト小2個、ミョウガ2個、ねぎ30g、生姜15g、ワイン300cc、水300cc、塩少々だ。
f:id:bitterharvest:20180703092309j:plain

竹の子メバルは内臓と鱗を取り去った。
f:id:bitterharvest:20180703092909j:plain

トマトはさいの目切り、ミョウガ、ねぎ、しょうがは小口切りにした。大きめのフライパンに、魚と野菜を全て入れ、さらに、ワイン、水、塩を加えた。
f:id:bitterharvest:20180703093440j:plain

蓋をしないままで、強めの中火にして煮え立たせた。あくが出たので取り除き、蓋をして、弱めの中火にして8分間煮た。
f:id:bitterharvest:20180703093802j:plain

サラダやトウモロコシなどと一緒に並べて、テーブルに置いた。
f:id:bitterharvest:20180703094027j:plain
f:id:bitterharvest:20180703094046j:plain

料理に使ったワインの残りを飲みながら食事をした。あまりにも味がさっぱりしていたようで、妻は塩を足して自分の味にして食べていた。
野菜の味がもう少し汁の中に浸み込んでいた方が良かったように思うので、次の機会には、少し時間を置いてから食してみようと思っている。
また、竹の子メバルの骨は固いので、えらのところにある固い骨は調理の時にとっておいた方が良い。妻は運悪く口の中と指に刺してしまった。