まだ未整理だが、とりあえず備忘メモ。
まず、対称性がある操作達。
- 無制限タプル構成
- 無制限コタプル構成(無制限タプル構成の双対)
- 有限タプル構成(無制限から制限)
- 有限コプル構成(有限タプル構成の双対)
- 依存カリー化
- カリー化(依存カリー化の非依存版)
- 依存反カリー化(依存カリー化の逆写像)
- 反カリー化(カリー化の逆写像、依存反カリー化の非依存版)
これらは次のように還元される。
- 無制限タプル構成 ⇒ 依存カリー化
- 無制限コタプル構成
- 有限タプル構成 ⇒ 無制限タプル構成 ⇒ 依存カリー化
- 有限コプル構成 ⇒ 無制限コタプル構成
- 依存カリー化
- カリー化 ⇒ 依存カリー化
- 依存反カリー化 ⇒ 依存評価射+後結合 ⇒ 依存評価射+結合
- 反カリー化 ⇒ 依存反カリー化 ⇒ 依存評価射+後結合 ⇒ 依存評価射+結合
結局、必要なものは:
- 依存カリー化
- 無制限コタプル構成
- 依存カリー化
- 無制限コタプル構成
- 依存カリー化
- 依存カリー化
- 依存評価射+結合
- 依存評価射+結合
まとめると次の4種類:
- 依存カリー化 λΠ(X |- λ.f : ΠA)
- 無制限コタプル構成 ρΣ(ρは檜山が勝手に付けた ΣA |- ρ.f: Y)
- 依存評価射 dep_ev
- 結合 poly_comp
基本射も4種類:
- 恒等射 id
- 終射 !
- 始射 θ
- 依存評価射 dep_ev