Step
*
2
3
1
1
1
1
1
1
1
2
3
1
of Lemma
discrete-pi-equiv
1. A : Type
2. B : A ⟶ Type
3. X : CubicalSet{j}
4. discrete-function(q) ∈ {X.Πdiscr(A) discrete-family(A;a.B[a]) ⊢ _:(discr(a:A ⟶ B[a]))p}
5. (Fiber((cubical-lam(X;discrete-function(q)))p;q))p
= X.discr(a:A ⟶ B[a]).Fiber((cubical-lam(X;discrete-function(q)))p;
                             q) ⊢ Fiber(((cubical-lam(X;discrete-function(q)))p)p;(q)p)
∈ {X.discr(a:A ⟶ B[a]).Fiber((cubical-lam(X;discrete-function(q)))p;q) ⊢ _}
6. q ∈ {X.discr(a:A ⟶ B[a]).Fiber((cubical-lam(X;discrete-function(q)))p;q) ⊢ _
        :(Fiber((cubical-lam(X;discrete-function(q)))p;q))p}
7. (q)p ∈ {X.discr(a:A ⟶ B[a]).Fiber((cubical-lam(X;discrete-function(q)))p;q) ⊢ _:discr(a:A ⟶ B[a])}
8. ((cubical-lam(X;discrete-function(q)))p)p ∈ {X.discr(a:A ⟶ B[a]).Fiber((cubical-lam(X;discrete-function(q)))p;q) ⊢ _
                                                :(((Πdiscr(A) discrete-family(A;a.B[a]))p)p ⟶ discr(a:A ⟶ B[a]))}
⊢ q.1
= fiber-point((discrete-function-inv(X.discr(a:A ⟶ B[a]); q))p;(refl(q))p).1
∈ {X.discr(a:A ⟶ B[a]).Fiber((cubical-lam(X;discrete-function(q)))p;q) ⊢ _:((Πdiscr(A) discrete-family(A;a.B[a]))p)p}
BY
{ Assert q.1
= (discrete-function-inv(X.discr(a:A ⟶ B[a]); q))p
∈ {X.discr(a:A ⟶ B[a]).Fiber((cubical-lam(X;discrete-function(q)))p;q) ⊢ _:((Πdiscr(A) discrete-family(A;a.B[a]))p)p}
⋅ }
1
.....assertion..... 
1. A : Type
2. B : A ⟶ Type
3. X : CubicalSet{j}
4. discrete-function(q) ∈ {X.Πdiscr(A) discrete-family(A;a.B[a]) ⊢ _:(discr(a:A ⟶ B[a]))p}
5. (Fiber((cubical-lam(X;discrete-function(q)))p;q))p
= X.discr(a:A ⟶ B[a]).Fiber((cubical-lam(X;discrete-function(q)))p;
                             q) ⊢ Fiber(((cubical-lam(X;discrete-function(q)))p)p;(q)p)
∈ {X.discr(a:A ⟶ B[a]).Fiber((cubical-lam(X;discrete-function(q)))p;q) ⊢ _}
6. q ∈ {X.discr(a:A ⟶ B[a]).Fiber((cubical-lam(X;discrete-function(q)))p;q) ⊢ _
        :(Fiber((cubical-lam(X;discrete-function(q)))p;q))p}
7. (q)p ∈ {X.discr(a:A ⟶ B[a]).Fiber((cubical-lam(X;discrete-function(q)))p;q) ⊢ _:discr(a:A ⟶ B[a])}
8. ((cubical-lam(X;discrete-function(q)))p)p ∈ {X.discr(a:A ⟶ B[a]).Fiber((cubical-lam(X;discrete-function(q)))p;q) ⊢ _
                                                :(((Πdiscr(A) discrete-family(A;a.B[a]))p)p ⟶ discr(a:A ⟶ B[a]))}
⊢ q.1
= (discrete-function-inv(X.discr(a:A ⟶ B[a]); q))p
∈ {X.discr(a:A ⟶ B[a]).Fiber((cubical-lam(X;discrete-function(q)))p;q) ⊢ _:((Πdiscr(A) discrete-family(A;a.B[a]))p)p}
2
1. A : Type
2. B : A ⟶ Type
3. X : CubicalSet{j}
4. discrete-function(q) ∈ {X.Πdiscr(A) discrete-family(A;a.B[a]) ⊢ _:(discr(a:A ⟶ B[a]))p}
5. (Fiber((cubical-lam(X;discrete-function(q)))p;q))p
= X.discr(a:A ⟶ B[a]).Fiber((cubical-lam(X;discrete-function(q)))p;
                             q) ⊢ Fiber(((cubical-lam(X;discrete-function(q)))p)p;(q)p)
∈ {X.discr(a:A ⟶ B[a]).Fiber((cubical-lam(X;discrete-function(q)))p;q) ⊢ _}
6. q ∈ {X.discr(a:A ⟶ B[a]).Fiber((cubical-lam(X;discrete-function(q)))p;q) ⊢ _
        :(Fiber((cubical-lam(X;discrete-function(q)))p;q))p}
7. (q)p ∈ {X.discr(a:A ⟶ B[a]).Fiber((cubical-lam(X;discrete-function(q)))p;q) ⊢ _:discr(a:A ⟶ B[a])}
8. ((cubical-lam(X;discrete-function(q)))p)p ∈ {X.discr(a:A ⟶ B[a]).Fiber((cubical-lam(X;discrete-function(q)))p;q) ⊢ _
                                                :(((Πdiscr(A) discrete-family(A;a.B[a]))p)p ⟶ discr(a:A ⟶ B[a]))}
9. q.1
= (discrete-function-inv(X.discr(a:A ⟶ B[a]); q))p
∈ {X.discr(a:A ⟶ B[a]).Fiber((cubical-lam(X;discrete-function(q)))p;q) ⊢ _:((Πdiscr(A) discrete-family(A;a.B[a]))p)p}
⊢ q.1
= fiber-point((discrete-function-inv(X.discr(a:A ⟶ B[a]); q))p;(refl(q))p).1
∈ {X.discr(a:A ⟶ B[a]).Fiber((cubical-lam(X;discrete-function(q)))p;q) ⊢ _:((Πdiscr(A) discrete-family(A;a.B[a]))p)p}
Latex:
Latex:
1.  A  :  Type
2.  B  :  A  {}\mrightarrow{}  Type
3.  X  :  CubicalSet\{j\}
4.  discrete-function(q)  \mmember{}  \{X.\mPi{}discr(A)  discrete-family(A;a.B[a])  \mvdash{}  \_:(discr(a:A  {}\mrightarrow{}  B[a]))p\}
5.  (Fiber((cubical-lam(X;discrete-function(q)))p;q))p
=  X.discr(a:A  {}\mrightarrow{}  B[a]).Fiber((cubical-lam(X;discrete-function(q)))p;
                                                          q)  \mvdash{}  Fiber(((cubical-lam(X;discrete-function(q)))p)p;(q)p)
6.  q  \mmember{}  \{X.discr(a:A  {}\mrightarrow{}  B[a]).Fiber((cubical-lam(X;discrete-function(q)))p;q)  \mvdash{}  \_
                :(Fiber((cubical-lam(X;discrete-function(q)))p;q))p\}
7.  (q)p  \mmember{}  \{X.discr(a:A  {}\mrightarrow{}  B[a]).Fiber((cubical-lam(X;discrete-function(q)))p;q)  \mvdash{}  \_:discr(a:A
                      {}\mrightarrow{}  B[a])\}
8.  ((cubical-lam(X;discrete-function(q)))p)p
      \mmember{}  \{X.discr(a:A  {}\mrightarrow{}  B[a]).Fiber((cubical-lam(X;discrete-function(q)))p;q)  \mvdash{}  \_
            :(((\mPi{}discr(A)  discrete-family(A;a.B[a]))p)p  {}\mrightarrow{}  discr(a:A  {}\mrightarrow{}  B[a]))\}
\mvdash{}  q.1  =  fiber-point((discrete-function-inv(X.discr(a:A  {}\mrightarrow{}  B[a]);  q))p;(refl(q))p).1
By
Latex:
Assert  q.1  =  (discrete-function-inv(X.discr(a:A  {}\mrightarrow{}  B[a]);  q))p\mcdot{}
Home
Index