SlideShare a Scribd company logo
1 of 16
ホモトピー型理論入門
2016/09/09
H Koba
1
アウトライン
• ホモトピー型理論(HoTT)入門
• 集合論
• 関連する話題・触れなかった話題
• 主にThe HoTT book
(https://homotopytypetheory.org/book/)に沿った説
明を行う
2
ホモトピー型理論(HoTT)入門
• 型を空間としてみなす
• 高階コンストラクタ(点ではなく、点の間の等式を生成する)を持つ型
を作ることができる
• 例: S1: base ∶ 𝑆1, loop: base = base (Section 6.1)
• Interval: 0𝐼: 𝐼, 1𝐼: 𝐼, seg: 0𝐼 = 1𝐼 (Section 6.3)
• 等式を道だと思って、コンストラクタで生成される空間を考える
3
ホモトピー型理論(HoTT)入門
• 型 = 空間について
• 型を亜群(groupoid, 射がすべて可逆な圏)だと思うことができる
• 実際は射の間に2-cell,3-cell,…がある場合があるので、∞-亜群というべき
• 亜群は空間っぽい(対象が点、射が道、2-cellが道の間に張られた膜、…)
(Chapter 2)
• コンストラクタから帰納的に定義する型の上では帰納法や再帰を行
うことができる(Chapter 6)
• 高階コンストラクタの扱いに注意が必要
4
ホモトピー型理論(HoTT)入門
• 型の構成
• Uは型の型(宇宙と呼ばれる)
• 0,1,2,…は型(帰納的に与えることができる)
• ∏, ∑, ×, +, →, ¬などで型から型を作れる
• 例:
• ∏ 𝐴: 𝑈 𝑥: 𝐴 𝑥 = 𝑥は型
• ∏ 𝐴: 𝑈 𝐴 + ¬𝐴は型
• また、道も型になる
• 𝑥, 𝑦: 𝐴のとき、𝑥 = 𝑦は型
• 2個のオブジェクトが定義から等しい(definitionally equal)ときは𝑥 ≡ 𝑦と表記して区
別する
5
ホモトピー型理論(HoTT)入門
• 道帰納法(path induction)について
• 道帰納法(Chapter 2)は以下のような公理:
• ind=: ∏ 𝐷: ∏ 𝑥, 𝑦: 𝐴 𝑥 = 𝑦 → 𝑈 (∏ 𝑥: 𝐴 𝐷(𝑥, 𝑥, refl 𝑥)) →
∏ 𝑥, 𝑦: 𝐴 (𝑝: 𝑥 = 𝑦) 𝐷(𝑥, 𝑦, 𝑝)
• ind= 𝐷, 𝑑, 𝑥, 𝑥, refl 𝑥 ≡ 𝑑 (Definitional equality)
• 𝑥, 𝑦に関して全称量化された道𝑝: 𝑥 = 𝑦について命題Pを示したい(型Pの値
を与えたい)ときは、
xとyを固定してpがrefl(道の結合の単位元となる道)だと仮定してよい
• 直観: Aの上を端点を固定せずに自由に動ける道があるとき、その道でパラ
メータ付けされた型P(x, y, p)の値はp=reflのときの値で決まる
• 一見強そうだが、バランスが取れている
6
ホモトピー型理論(HoTT)入門
• 道帰納法で示せるものの例
• ∏ 𝑥, 𝑦: 𝐴 𝑥 = 𝑦 → 𝑦 = 𝑥 (逆)
• ∏ 𝑥, 𝑦, 𝑧: 𝐴 𝑥 = 𝑦 → 𝑦 = 𝑧 → 𝑥 = 𝑧 (連結)
• transport: ∏ 𝑥, 𝑦: 𝐴 𝑥 = 𝑦 → 𝑃 𝑥 → 𝑃(𝑦)
• ap 𝑓: ∏ 𝑥, 𝑦: 𝐴 𝑥 = 𝑦 → (𝑓 𝑥 = 𝑓 𝑦 ) (関数を道に持ち上げる)
• apd 𝑓: ∏ 𝑥, 𝑦: 𝐴 𝑝: 𝑥 = 𝑦 transport 𝑝, 𝑓 𝑥 = 𝑓 𝑦
• 道帰納法で示せないものの例
• ∏ 𝑥, 𝑦: 𝐴 𝑥 = 𝑦 (何の上の帰納法?)
• ∏ 𝑝: base = base (𝑝 = reflbase) (2点が固定されているのでダメ)
• ∏ 𝑥: 𝑆1 base = 𝑥 (一見よさそうなのになぜ?)
7
ホモトピー型理論(HoTT)入門
• 高階帰納型の上の帰納法・再帰(Chapter 6)
• 例: 𝑓: 𝑆1 → 𝐴を再帰的に定める
• 𝑓 base : 𝐴を定める
• 𝑓 loop : 𝑓 base = 𝑓(base)を定める
• Aの上に円を描く
• 𝑓: ∏ 𝑥: 𝑆1
𝑃(𝑥)も同様
• ただし依存積なのでloopの扱いが面倒
• 𝑓 base : 𝑃(base)を定める
• 𝑓 loop : transport loop, 𝑓 base = 𝑓(base)を定める
• 詳しくは黒板で…
8
ホモトピー型理論(HoTT)入門
• 高階帰納型の上の帰納法・再帰(Chapter 6)
• 例: 𝑓: 𝐼 → 𝐴を再帰的に定める
• 𝑓 0𝐼 , 𝑓(1𝐼): 𝐴を定める
• 𝑓 seg : 𝑓 0𝐼 = 𝑓(1𝐼)を定める
• Aの上に始点と終点、およびそれらを結ぶ道を描く
• 𝑓: ∏ 𝑥: 𝐼 𝑃(𝑥)も同様
• ただし依存積なのでsegの扱いが面倒
• 𝑓 0𝐼 : 𝑃 0𝐼 , 𝑓 1𝐼 : 𝑃(1𝐼)を定める
• 𝑓 0𝐼 と𝑓(1𝐼)は比較不能なので、transportで持ち上げて
• 𝑓 loop : transport seg, 𝑓 0𝐼 = 𝑓(1𝐼)を定める
• 詳しくは黒板で…
9
ホモトピー型理論(HoTT)入門
• 公理
• HoTTに必要なのはUnivalence(同型な型は等しい、 𝐴 = 𝐵 ≃ (𝐴 ≃
𝐵))
• Funext(関数外延性、(∏ 𝑥: 𝐴 𝑓 𝑥 = 𝑔 𝑥 ) → (𝑓 = 𝑔))
• Axiom of choice (ZFCの選択公理と同値であることが知られている)
• Law of excluded middle(排中律、∏ 𝐴: 𝑈 isProp 𝐴 → 𝐴 + ¬𝐴)
• ここでは紹介にとどめる
10
集合論
• 集合っぽいふるまいをする型
• ∏ 𝑥, 𝑦: 𝐴 𝑥 = 𝑦を満たすAを単なる命題(mere proposition)という
• ∏ 𝑥, 𝑦: 𝐴 𝑝, 𝑞: 𝑥 = 𝑦 𝑝 = 𝑞を満たすAを集合という
• 道空間𝑥 = 𝑦がmere proposition
• 型の構成を使って集合も構成できる
• ∏, ∑, +, ×, →, ¬, ⋯
• ただし、ZF(C)の集合のようなふるまいをするわけではない
• 2つの異なる集合を比較する方法がない
• 𝐴 ∈ 𝐵などの命題を表現できない
11
集合論
• 集合をすべて一つの集合𝑉に埋め込んで、membershipもその上で
定義する
• 累積的階層(cumulative hierarchy)𝑉: (Def. 10.5.1)
• 𝐴: 𝑈, 𝑓: 𝐴 → 𝑉に対してset 𝐴, 𝑓 : 𝑉
• 𝐴, 𝐵: 𝑈, 𝑓: 𝐴 → 𝑉, 𝑔: 𝐵 → 𝑉に対して、𝑓と𝑔の像が同じならset 𝐴, 𝑓 =
set 𝐵, 𝑔
• ∏ 𝑥, 𝑦: 𝑉 𝑝, 𝑞: 𝑥 = 𝑦 𝑝 = 𝑞
• Construction:
• rec0(𝑉): 0 → 𝑉からset 0, rec0 𝑉 : 𝑉 (空集合)
• …
12
集合論
• 累積的階層(cumulative hierarchy)𝑉はZFの公理の一部を構成的にし
たものを満たす(Thm.10.5.8)
• 外延性、空集合、対、無限、和集合、関数集合、∈-帰納法、置換、分出
• 関数集合:集合𝑢, 𝑣に対し𝑣 𝑢は集合
• ∈-帰納法: ∀ 𝑥 ∈ 𝑎 . 𝐶 𝑥 → 𝐶 𝑎 → ∀𝑣. 𝐶(𝑣)
• 分出: 集合𝑎と有界な論理式𝐶(𝑥)に対して、 𝑥 ∈ 𝑎 𝐶(𝑥)}は集合
• 有界: ∀と∃がすべて∀(𝑥 ∈ 𝑎)や∃(𝑦 ∈ 𝑏)の形で出現すること
• ACを認めれば、𝑉はZFCのモデルになる
• 分出公理が有界な論理式以外にも適用できるようになる
• ACからLEMは証明できる
13
関連する話題・触れなかった話題
• 位相幾何学的な観点
• Chapter 6で定義されている型の紹介(球、トーラス、etc.)
• 型を空間としてみなしたときの位相幾何学的な操作 (連結性、ホモトピー
群)(Chapter 7,8)
• 𝑛-type, 𝑛-connected type,…
• 命題/集合、道連結/単連結の一般化
14
関連する話題・触れなかった話題
• 宇宙の階層について
• すべての型に単一の型𝑈がつくと仮定するとパラドックスが発生する
• 𝑈: 𝑈を仮定した型システムではジラール(Girard)のパラドックスが発生するこ
とが知られている
• 宇宙の階層構造𝑈0: 𝑈1: 𝑈2: 𝑈3: ⋯が必要
• 実は𝑉の構成は危ない
• すべての型𝐴: 𝑈についてのコンストラクタがあるので、𝑉には1段階上の宇宙
の型がつく
• Propositional resizingという公理を追加することで多少回避することができる
15
補足
• 道帰納法(path induction) (2.0.1):
• ind=: ∏ 𝐷: ∏ 𝑥, 𝑦: 𝐴 𝑥 = 𝑦 → 𝑈 (∏ 𝑥: 𝐴 𝐷(𝑥, 𝑥, refl 𝑥)) →
∏ 𝑥, 𝑦: 𝐴 (𝑝: 𝑥 = 𝑦) 𝐷(𝑥, 𝑦, 𝑝)
• ind= 𝐷, 𝑑, 𝑥, 𝑥, refl 𝑥 ≡ 𝑑
• 基点付き道帰納法(based path induction) (1.12.1)
• ind=
′
: ∏ 𝑎: 𝐴 𝐶: ∏ 𝑥: 𝐴 𝑎 = 𝑥 → 𝑈 𝐶 𝑎, refl 𝑎 →
∏ 𝑥: 𝐴 𝑝: 𝑎 = 𝑥 𝐶(𝑥, 𝑝)
• ind=
′ 𝑎, 𝐶, 𝑐, 𝑎, refl 𝑎 ≡ 𝑐
16

More Related Content

What's hot

最適化超入門
最適化超入門最適化超入門
最適化超入門Takami Sato
 
SAT/SMTソルバの仕組み
SAT/SMTソルバの仕組みSAT/SMTソルバの仕組み
SAT/SMTソルバの仕組みMasahiro Sakai
 
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learningゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement LearningPreferred Networks
 
【DL輪読会】Hopfield network 関連研究について
【DL輪読会】Hopfield network 関連研究について【DL輪読会】Hopfield network 関連研究について
【DL輪読会】Hopfield network 関連研究についてDeep Learning JP
 
よくわかるCoqプログラミング
よくわかるCoqプログラミングよくわかるCoqプログラミング
よくわかるCoqプログラミングReal_analysis
 
暗号文のままで計算しよう - 準同型暗号入門 -
暗号文のままで計算しよう - 準同型暗号入門 -暗号文のままで計算しよう - 準同型暗号入門 -
暗号文のままで計算しよう - 準同型暗号入門 -MITSUNARI Shigeo
 
証明プログラミング超入門
証明プログラミング超入門証明プログラミング超入門
証明プログラミング超入門Kyoko Kadowaki
 
スペクトラルグラフ理論入門
スペクトラルグラフ理論入門スペクトラルグラフ理論入門
スペクトラルグラフ理論入門irrrrr
 
Quine・難解プログラミングについて
Quine・難解プログラミングについてQuine・難解プログラミングについて
Quine・難解プログラミングについてmametter
 
POMDP下での強化学習の基礎と応用
POMDP下での強化学習の基礎と応用POMDP下での強化学習の基礎と応用
POMDP下での強化学習の基礎と応用Yasunori Ozaki
 
競技プログラミングにおけるコードの書き方とその利便性
競技プログラミングにおけるコードの書き方とその利便性競技プログラミングにおけるコードの書き方とその利便性
競技プログラミングにおけるコードの書き方とその利便性Hibiki Yamashiro
 
暗号技術の実装と数学
暗号技術の実装と数学暗号技術の実装と数学
暗号技術の実装と数学MITSUNARI Shigeo
 
不遇の標準ライブラリ - valarray
不遇の標準ライブラリ - valarray不遇の標準ライブラリ - valarray
不遇の標準ライブラリ - valarrayRyosuke839
 
プログラミングコンテストでのデータ構造 2 ~動的木編~
プログラミングコンテストでのデータ構造 2 ~動的木編~プログラミングコンテストでのデータ構造 2 ~動的木編~
プログラミングコンテストでのデータ構造 2 ~動的木編~Takuya Akiba
 
何となく勉強した気分になれるパーサ入門
何となく勉強した気分になれるパーサ入門何となく勉強した気分になれるパーサ入門
何となく勉強した気分になれるパーサ入門masayoshi takahashi
 

What's hot (20)

LLVM最適化のこつ
LLVM最適化のこつLLVM最適化のこつ
LLVM最適化のこつ
 
最適化超入門
最適化超入門最適化超入門
最適化超入門
 
SAT/SMTソルバの仕組み
SAT/SMTソルバの仕組みSAT/SMTソルバの仕組み
SAT/SMTソルバの仕組み
 
coordinate descent 法について
coordinate descent 法についてcoordinate descent 法について
coordinate descent 法について
 
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learningゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
 
【DL輪読会】Hopfield network 関連研究について
【DL輪読会】Hopfield network 関連研究について【DL輪読会】Hopfield network 関連研究について
【DL輪読会】Hopfield network 関連研究について
 
よくわかるCoqプログラミング
よくわかるCoqプログラミングよくわかるCoqプログラミング
よくわかるCoqプログラミング
 
暗号文のままで計算しよう - 準同型暗号入門 -
暗号文のままで計算しよう - 準同型暗号入門 -暗号文のままで計算しよう - 準同型暗号入門 -
暗号文のままで計算しよう - 準同型暗号入門 -
 
証明プログラミング超入門
証明プログラミング超入門証明プログラミング超入門
証明プログラミング超入門
 
π計算
π計算π計算
π計算
 
スペクトラルグラフ理論入門
スペクトラルグラフ理論入門スペクトラルグラフ理論入門
スペクトラルグラフ理論入門
 
Quine・難解プログラミングについて
Quine・難解プログラミングについてQuine・難解プログラミングについて
Quine・難解プログラミングについて
 
POMDP下での強化学習の基礎と応用
POMDP下での強化学習の基礎と応用POMDP下での強化学習の基礎と応用
POMDP下での強化学習の基礎と応用
 
競技プログラミングにおけるコードの書き方とその利便性
競技プログラミングにおけるコードの書き方とその利便性競技プログラミングにおけるコードの書き方とその利便性
競技プログラミングにおけるコードの書き方とその利便性
 
暗号技術の実装と数学
暗号技術の実装と数学暗号技術の実装と数学
暗号技術の実装と数学
 
不遇の標準ライブラリ - valarray
不遇の標準ライブラリ - valarray不遇の標準ライブラリ - valarray
不遇の標準ライブラリ - valarray
 
プログラミングコンテストでのデータ構造 2 ~動的木編~
プログラミングコンテストでのデータ構造 2 ~動的木編~プログラミングコンテストでのデータ構造 2 ~動的木編~
プログラミングコンテストでのデータ構造 2 ~動的木編~
 
圏とHaskellの型
圏とHaskellの型圏とHaskellの型
圏とHaskellの型
 
何となく勉強した気分になれるパーサ入門
何となく勉強した気分になれるパーサ入門何となく勉強した気分になれるパーサ入門
何となく勉強した気分になれるパーサ入門
 
最大流 (max flow)
最大流 (max flow)最大流 (max flow)
最大流 (max flow)
 

Similar to ホモトピー型理論入門

Yoneda's lemma tutorial
Yoneda's lemma tutorialYoneda's lemma tutorial
Yoneda's lemma tutorialtetsuya_komota
 
Operad and Recognition Principle
Operad and Recognition PrincipleOperad and Recognition Principle
Operad and Recognition PrincipleTatsuki SHIMIZU
 
Haskell勉強会 in ie
Haskell勉強会 in ieHaskell勉強会 in ie
Haskell勉強会 in iemaeken2010
 
Introduction to Topological Data Analysis
Introduction to Topological Data AnalysisIntroduction to Topological Data Analysis
Introduction to Topological Data AnalysisTatsuki SHIMIZU
 
How wonderful to be (statically) typed 〜型が付くってスバラシイ〜
How wonderful to be (statically) typed 〜型が付くってスバラシイ〜How wonderful to be (statically) typed 〜型が付くってスバラシイ〜
How wonderful to be (statically) typed 〜型が付くってスバラシイ〜Hiromi Ishii
 
劣モジュラ最適化と機械学習 2.4節
劣モジュラ最適化と機械学習 2.4節劣モジュラ最適化と機械学習 2.4節
劣モジュラ最適化と機械学習 2.4節Hakky St
 
圏論のモナドとHaskellのモナド
圏論のモナドとHaskellのモナド圏論のモナドとHaskellのモナド
圏論のモナドとHaskellのモナドYoshihiro Mizoguchi
 

Similar to ホモトピー型理論入門 (8)

Yoneda's lemma tutorial
Yoneda's lemma tutorialYoneda's lemma tutorial
Yoneda's lemma tutorial
 
Operad and Recognition Principle
Operad and Recognition PrincipleOperad and Recognition Principle
Operad and Recognition Principle
 
Hott_1
Hott_1Hott_1
Hott_1
 
Haskell勉強会 in ie
Haskell勉強会 in ieHaskell勉強会 in ie
Haskell勉強会 in ie
 
Introduction to Topological Data Analysis
Introduction to Topological Data AnalysisIntroduction to Topological Data Analysis
Introduction to Topological Data Analysis
 
How wonderful to be (statically) typed 〜型が付くってスバラシイ〜
How wonderful to be (statically) typed 〜型が付くってスバラシイ〜How wonderful to be (statically) typed 〜型が付くってスバラシイ〜
How wonderful to be (statically) typed 〜型が付くってスバラシイ〜
 
劣モジュラ最適化と機械学習 2.4節
劣モジュラ最適化と機械学習 2.4節劣モジュラ最適化と機械学習 2.4節
劣モジュラ最適化と機械学習 2.4節
 
圏論のモナドとHaskellのモナド
圏論のモナドとHaskellのモナド圏論のモナドとHaskellのモナド
圏論のモナドとHaskellのモナド
 

ホモトピー型理論入門

  • 2. アウトライン • ホモトピー型理論(HoTT)入門 • 集合論 • 関連する話題・触れなかった話題 • 主にThe HoTT book (https://homotopytypetheory.org/book/)に沿った説 明を行う 2
  • 3. ホモトピー型理論(HoTT)入門 • 型を空間としてみなす • 高階コンストラクタ(点ではなく、点の間の等式を生成する)を持つ型 を作ることができる • 例: S1: base ∶ 𝑆1, loop: base = base (Section 6.1) • Interval: 0𝐼: 𝐼, 1𝐼: 𝐼, seg: 0𝐼 = 1𝐼 (Section 6.3) • 等式を道だと思って、コンストラクタで生成される空間を考える 3
  • 4. ホモトピー型理論(HoTT)入門 • 型 = 空間について • 型を亜群(groupoid, 射がすべて可逆な圏)だと思うことができる • 実際は射の間に2-cell,3-cell,…がある場合があるので、∞-亜群というべき • 亜群は空間っぽい(対象が点、射が道、2-cellが道の間に張られた膜、…) (Chapter 2) • コンストラクタから帰納的に定義する型の上では帰納法や再帰を行 うことができる(Chapter 6) • 高階コンストラクタの扱いに注意が必要 4
  • 5. ホモトピー型理論(HoTT)入門 • 型の構成 • Uは型の型(宇宙と呼ばれる) • 0,1,2,…は型(帰納的に与えることができる) • ∏, ∑, ×, +, →, ¬などで型から型を作れる • 例: • ∏ 𝐴: 𝑈 𝑥: 𝐴 𝑥 = 𝑥は型 • ∏ 𝐴: 𝑈 𝐴 + ¬𝐴は型 • また、道も型になる • 𝑥, 𝑦: 𝐴のとき、𝑥 = 𝑦は型 • 2個のオブジェクトが定義から等しい(definitionally equal)ときは𝑥 ≡ 𝑦と表記して区 別する 5
  • 6. ホモトピー型理論(HoTT)入門 • 道帰納法(path induction)について • 道帰納法(Chapter 2)は以下のような公理: • ind=: ∏ 𝐷: ∏ 𝑥, 𝑦: 𝐴 𝑥 = 𝑦 → 𝑈 (∏ 𝑥: 𝐴 𝐷(𝑥, 𝑥, refl 𝑥)) → ∏ 𝑥, 𝑦: 𝐴 (𝑝: 𝑥 = 𝑦) 𝐷(𝑥, 𝑦, 𝑝) • ind= 𝐷, 𝑑, 𝑥, 𝑥, refl 𝑥 ≡ 𝑑 (Definitional equality) • 𝑥, 𝑦に関して全称量化された道𝑝: 𝑥 = 𝑦について命題Pを示したい(型Pの値 を与えたい)ときは、 xとyを固定してpがrefl(道の結合の単位元となる道)だと仮定してよい • 直観: Aの上を端点を固定せずに自由に動ける道があるとき、その道でパラ メータ付けされた型P(x, y, p)の値はp=reflのときの値で決まる • 一見強そうだが、バランスが取れている 6
  • 7. ホモトピー型理論(HoTT)入門 • 道帰納法で示せるものの例 • ∏ 𝑥, 𝑦: 𝐴 𝑥 = 𝑦 → 𝑦 = 𝑥 (逆) • ∏ 𝑥, 𝑦, 𝑧: 𝐴 𝑥 = 𝑦 → 𝑦 = 𝑧 → 𝑥 = 𝑧 (連結) • transport: ∏ 𝑥, 𝑦: 𝐴 𝑥 = 𝑦 → 𝑃 𝑥 → 𝑃(𝑦) • ap 𝑓: ∏ 𝑥, 𝑦: 𝐴 𝑥 = 𝑦 → (𝑓 𝑥 = 𝑓 𝑦 ) (関数を道に持ち上げる) • apd 𝑓: ∏ 𝑥, 𝑦: 𝐴 𝑝: 𝑥 = 𝑦 transport 𝑝, 𝑓 𝑥 = 𝑓 𝑦 • 道帰納法で示せないものの例 • ∏ 𝑥, 𝑦: 𝐴 𝑥 = 𝑦 (何の上の帰納法?) • ∏ 𝑝: base = base (𝑝 = reflbase) (2点が固定されているのでダメ) • ∏ 𝑥: 𝑆1 base = 𝑥 (一見よさそうなのになぜ?) 7
  • 8. ホモトピー型理論(HoTT)入門 • 高階帰納型の上の帰納法・再帰(Chapter 6) • 例: 𝑓: 𝑆1 → 𝐴を再帰的に定める • 𝑓 base : 𝐴を定める • 𝑓 loop : 𝑓 base = 𝑓(base)を定める • Aの上に円を描く • 𝑓: ∏ 𝑥: 𝑆1 𝑃(𝑥)も同様 • ただし依存積なのでloopの扱いが面倒 • 𝑓 base : 𝑃(base)を定める • 𝑓 loop : transport loop, 𝑓 base = 𝑓(base)を定める • 詳しくは黒板で… 8
  • 9. ホモトピー型理論(HoTT)入門 • 高階帰納型の上の帰納法・再帰(Chapter 6) • 例: 𝑓: 𝐼 → 𝐴を再帰的に定める • 𝑓 0𝐼 , 𝑓(1𝐼): 𝐴を定める • 𝑓 seg : 𝑓 0𝐼 = 𝑓(1𝐼)を定める • Aの上に始点と終点、およびそれらを結ぶ道を描く • 𝑓: ∏ 𝑥: 𝐼 𝑃(𝑥)も同様 • ただし依存積なのでsegの扱いが面倒 • 𝑓 0𝐼 : 𝑃 0𝐼 , 𝑓 1𝐼 : 𝑃(1𝐼)を定める • 𝑓 0𝐼 と𝑓(1𝐼)は比較不能なので、transportで持ち上げて • 𝑓 loop : transport seg, 𝑓 0𝐼 = 𝑓(1𝐼)を定める • 詳しくは黒板で… 9
  • 10. ホモトピー型理論(HoTT)入門 • 公理 • HoTTに必要なのはUnivalence(同型な型は等しい、 𝐴 = 𝐵 ≃ (𝐴 ≃ 𝐵)) • Funext(関数外延性、(∏ 𝑥: 𝐴 𝑓 𝑥 = 𝑔 𝑥 ) → (𝑓 = 𝑔)) • Axiom of choice (ZFCの選択公理と同値であることが知られている) • Law of excluded middle(排中律、∏ 𝐴: 𝑈 isProp 𝐴 → 𝐴 + ¬𝐴) • ここでは紹介にとどめる 10
  • 11. 集合論 • 集合っぽいふるまいをする型 • ∏ 𝑥, 𝑦: 𝐴 𝑥 = 𝑦を満たすAを単なる命題(mere proposition)という • ∏ 𝑥, 𝑦: 𝐴 𝑝, 𝑞: 𝑥 = 𝑦 𝑝 = 𝑞を満たすAを集合という • 道空間𝑥 = 𝑦がmere proposition • 型の構成を使って集合も構成できる • ∏, ∑, +, ×, →, ¬, ⋯ • ただし、ZF(C)の集合のようなふるまいをするわけではない • 2つの異なる集合を比較する方法がない • 𝐴 ∈ 𝐵などの命題を表現できない 11
  • 12. 集合論 • 集合をすべて一つの集合𝑉に埋め込んで、membershipもその上で 定義する • 累積的階層(cumulative hierarchy)𝑉: (Def. 10.5.1) • 𝐴: 𝑈, 𝑓: 𝐴 → 𝑉に対してset 𝐴, 𝑓 : 𝑉 • 𝐴, 𝐵: 𝑈, 𝑓: 𝐴 → 𝑉, 𝑔: 𝐵 → 𝑉に対して、𝑓と𝑔の像が同じならset 𝐴, 𝑓 = set 𝐵, 𝑔 • ∏ 𝑥, 𝑦: 𝑉 𝑝, 𝑞: 𝑥 = 𝑦 𝑝 = 𝑞 • Construction: • rec0(𝑉): 0 → 𝑉からset 0, rec0 𝑉 : 𝑉 (空集合) • … 12
  • 13. 集合論 • 累積的階層(cumulative hierarchy)𝑉はZFの公理の一部を構成的にし たものを満たす(Thm.10.5.8) • 外延性、空集合、対、無限、和集合、関数集合、∈-帰納法、置換、分出 • 関数集合:集合𝑢, 𝑣に対し𝑣 𝑢は集合 • ∈-帰納法: ∀ 𝑥 ∈ 𝑎 . 𝐶 𝑥 → 𝐶 𝑎 → ∀𝑣. 𝐶(𝑣) • 分出: 集合𝑎と有界な論理式𝐶(𝑥)に対して、 𝑥 ∈ 𝑎 𝐶(𝑥)}は集合 • 有界: ∀と∃がすべて∀(𝑥 ∈ 𝑎)や∃(𝑦 ∈ 𝑏)の形で出現すること • ACを認めれば、𝑉はZFCのモデルになる • 分出公理が有界な論理式以外にも適用できるようになる • ACからLEMは証明できる 13
  • 14. 関連する話題・触れなかった話題 • 位相幾何学的な観点 • Chapter 6で定義されている型の紹介(球、トーラス、etc.) • 型を空間としてみなしたときの位相幾何学的な操作 (連結性、ホモトピー 群)(Chapter 7,8) • 𝑛-type, 𝑛-connected type,… • 命題/集合、道連結/単連結の一般化 14
  • 15. 関連する話題・触れなかった話題 • 宇宙の階層について • すべての型に単一の型𝑈がつくと仮定するとパラドックスが発生する • 𝑈: 𝑈を仮定した型システムではジラール(Girard)のパラドックスが発生するこ とが知られている • 宇宙の階層構造𝑈0: 𝑈1: 𝑈2: 𝑈3: ⋯が必要 • 実は𝑉の構成は危ない • すべての型𝐴: 𝑈についてのコンストラクタがあるので、𝑉には1段階上の宇宙 の型がつく • Propositional resizingという公理を追加することで多少回避することができる 15
  • 16. 補足 • 道帰納法(path induction) (2.0.1): • ind=: ∏ 𝐷: ∏ 𝑥, 𝑦: 𝐴 𝑥 = 𝑦 → 𝑈 (∏ 𝑥: 𝐴 𝐷(𝑥, 𝑥, refl 𝑥)) → ∏ 𝑥, 𝑦: 𝐴 (𝑝: 𝑥 = 𝑦) 𝐷(𝑥, 𝑦, 𝑝) • ind= 𝐷, 𝑑, 𝑥, 𝑥, refl 𝑥 ≡ 𝑑 • 基点付き道帰納法(based path induction) (1.12.1) • ind= ′ : ∏ 𝑎: 𝐴 𝐶: ∏ 𝑥: 𝐴 𝑎 = 𝑥 → 𝑈 𝐶 𝑎, refl 𝑎 → ∏ 𝑥: 𝐴 𝑝: 𝑎 = 𝑥 𝐶(𝑥, 𝑝) • ind= ′ 𝑎, 𝐶, 𝑐, 𝑎, refl 𝑎 ≡ 𝑐 16