|
1 | | --- Simplicial Type Theory (STT) Core Verification |
| 1 | +--- Simplicial Type Theory (STT) Core Verification |
2 | 2 |
|
3 | 3 | import library/foundations/modal/flat |
4 | 4 | import library/foundations/modal/sharp |
5 | 5 | import library/foundations/modal/twisted |
6 | 6 |
|
7 | | --- Modal Pi Types (Π (x :_μ A), B) |
8 | | --- tracked via modal annotations μ ∈ {id, ♭, ♯, tw, ...} |
| 7 | +--- Modal Pi Types (Π (x :_μ A), B) |
| 8 | +--- tracked via modal annotations μ ∈ {id, ♭, ♯, tw, ...} |
9 | 9 |
|
10 | | --- Reality Check: Huber Equations (Transport) for Modal Pi |
11 | | --- transpⁱ (Π (x :_μ A), B) φ u₀ v = transpⁱ B[x/w] φ (u₀ w(i/0)) |
12 | | -def trans-ModalPi-is-correct (A : I -> U) (B : (i : I) -> A i -> U) (phi : I) (u0 : (x :_♭ A 0) -> B 0 x) : |
13 | | - Path ((x :_♭ A 1) -> B 1 x) (transp (<i> (x :_♭ A i) -> B i x) phi u0) |
14 | | - (\(v : A 1) -> transp (<i> B i (tFill A phi v i)) phi (u0 (tFill A phi v 0))) |
| 10 | +--- Reality Check: Huber Equations (Transport) for Modal Pi |
| 11 | +--- transpⁱ (Π (x :_μ A), B) φ u₀ v = transpⁱ B[x/w] φ (u₀ w(i/0)) |
| 12 | +def trans-ModalPi-is-correct (A : I -> U) (B : (i : I) -> A i -> U) |
| 13 | + (phi : I) (u0 : (x :_♭ A 0) -> B 0 x) |
| 14 | + : Path ((x :_♭ A 1) -> B 1 x) (transp (<i> (x :_♭ A i) -> B i x) phi u0) |
| 15 | + (\(v : A 1) -> transp (<i> B i (tFill A phi v i)) phi (u0 (tFill A phi v 0))) |
15 | 16 | := refl ((x :_♭ A 1) -> B 1 x) (\(v : A 1) -> transp (<i> B i (tFill A phi v i)) phi (u0 (tFill A phi v 0))) |
16 | 17 |
|
17 | | --- Reality Check: Huber Equations (Composition) for Modal Pi |
18 | | --- hcompⁱ (Π (x :_μ A), B) [φ ↦ u] u₀ v = hcompⁱ B[x/v] [φ ↦ u v] (u₀ v) |
19 | | -def hcomp-ModalPi-is-correct (A : U) (B : A -> U) (phi : I) (u : I -> (x :_♭ A) -> B x) (u0 : (x :_♭ A) -> B x) : |
20 | | - Path ((x :_♭ A) -> B x) (hcomp (<i> (x :_♭ A) -> B x) [ (phi=1) -> <i> u i ] u0) |
21 | | - (\(v : A) -> hcomp (<i> B v) [ (phi=1) -> <i> u i v ] (u0 v)) |
22 | | - := refl ((x :_♭ A) -> B x) (\(v : A) -> hcomp (<i> B v) [ (phi=1) -> <i> u i v ] (u0 v)) |
| 18 | +--- Reality Check: Huber Equations (Composition) for Modal Pi |
| 19 | +--- hcompⁱ (Π (x :_μ A), B) [φ ↦ u] u₀ v = hcompⁱ B[x/v] [φ ↦ u v] (u₀ v) |
| 20 | +def hcomp-ModalPi-is-correct (A : U) (B : A -> U) (phi : I) |
| 21 | + (u : I -> (x :_♭ A) -> B x) (u0 : (x :_♭ A) -> B x) |
| 22 | + : Path ((x :_♭ A) -> B x) (hcomp (<i> (x :_♭ A) -> B x) [ (phi=1) -> <i> u i ] u0) |
| 23 | + (\(v : A) -> hcomp (<i> B v) [ (phi=1) -> <i> u i v ] (u0 v)) |
| 24 | + := refl ((x :_♭ A) -> B x) (\(v : A) -> hcomp (<i> B v) [ (phi=1) -> <i> u i v ] (u0 v)) |
| 25 | + |
| 26 | +--- Uniqueness (η-rule) for Modal Pi |
| 27 | +def ModalPi-Eta (A : U) (B : A -> U) (f : (x :_♭ A) -> B x) |
| 28 | + : Path ((x :_♭ A) -> B x) f (\(x :_♭ A) -> f x) |
| 29 | + := <p> f |
23 | 30 |
|
24 | | --- Uniqueness (η-rule) for Modal Pi |
25 | | -def ModalPi-Eta (A : U) (B : A -> U) (f : (x :_♭ A) -> B x) : |
26 | | - Path ((x :_♭ A) -> B x) f (\(x :_♭ A) -> f x) |
27 | | - := <p> f |
|
0 commit comments