Step
*
2
1
1
1
2
1
1
1
of Lemma
csm-cubical-identity
1. X : CubicalSet
2. Delta : CubicalSet
3. s : Delta ⟶ X
4. A1 : I:(Cname List) ⟶ X(I) ⟶ Type
5. A2 : I:(Cname List) ⟶ J:(Cname List) ⟶ f:name-morph(I;J) ⟶ a:X(I) ⟶ (A1 I a) ⟶ (A1 J f(a))
6. ∀I:Cname List. ∀a:X(I). ∀u:A1 I a.  ((A2 I I 1 a u) = u ∈ (A1 I a))
7. ∀I,J,K:Cname List. ∀f:name-morph(I;J). ∀g:name-morph(J;K). ∀a:X(I). ∀u:A1 I a.
     ((A2 I K (f o g) a u) = (A2 J K g f(a) (A2 I J f a u)) ∈ (A1 K (f o g)(a)))
8. a : {X ⊢ _:<A1, A2>}
9. b : {X ⊢ _:<A1, A2>}
10. X ⊢ <A1, A2>
11. Delta ⊢ (<A1, A2>)s
12. I : Cname List
13. J : Cname List
14. f : name-morph(I;J)
15. a1 : Delta(I)
16. z : {z:Cname| ¬(z ∈ I)} 
17. u2 : named-path(X;<A1, A2>a;b;I;(s)a1;z)
18. z1 : {z:Cname| ¬(z ∈ I)} 
19. u3 : <A1, A2>(iota(z1)((s)a1))
20. name-path-endpoints(X;<A1, A2>a;b;I;(s)a1;z1;u3)
21. (u2 iota(z)((s)a1) rename-one-name(z;z1)) = u3 ∈ <A1, A2>(iota(z1)((s)a1))
22. v : X(I)
23. (s)a1 = v ∈ X(I)
⊢ (u2 iota(z)(v) f[z:=fresh-cname(J)])
= ((u2 iota(z)(v) rename-one-name(z;z1)) iota(z1)(a1) f[z1:=fresh-cname(J)])
∈ <A1, A2>(iota(fresh-cname(J))((s)f(a1)))
BY
{ (DVar `u2'
   THEN (InstLemma `cubical-type-ap-morph-comp` 
         [⌜X⌝;⌜<A1, A2>⌝;⌜[z / I]⌝;⌜[z1 / I]⌝;⌜[fresh-cname(J) / J]⌝;⌜rename-one-name(z;z1)⌝;⌜f[z1:=fresh-cname(J)]⌝;
         ⌜iota(z)(v)⌝]⋅
         THENA Auto
         )
   ) }
1
1. X : CubicalSet
2. Delta : CubicalSet
3. s : Delta ⟶ X
4. A1 : I:(Cname List) ⟶ X(I) ⟶ Type
5. A2 : I:(Cname List) ⟶ J:(Cname List) ⟶ f:name-morph(I;J) ⟶ a:X(I) ⟶ (A1 I a) ⟶ (A1 J f(a))
6. ∀I:Cname List. ∀a:X(I). ∀u:A1 I a.  ((A2 I I 1 a u) = u ∈ (A1 I a))
7. ∀I,J,K:Cname List. ∀f:name-morph(I;J). ∀g:name-morph(J;K). ∀a:X(I). ∀u:A1 I a.
     ((A2 I K (f o g) a u) = (A2 J K g f(a) (A2 I J f a u)) ∈ (A1 K (f o g)(a)))
8. a : {X ⊢ _:<A1, A2>}
9. b : {X ⊢ _:<A1, A2>}
10. X ⊢ <A1, A2>
11. Delta ⊢ (<A1, A2>)s
12. I : Cname List
13. J : Cname List
14. f : name-morph(I;J)
15. a1 : Delta(I)
16. z : {z:Cname| ¬(z ∈ I)} 
17. u2 : <A1, A2>(iota(z)((s)a1))
18. name-path-endpoints(X;<A1, A2>a;b;I;(s)a1;z;u2)
19. z1 : {z:Cname| ¬(z ∈ I)} 
20. u3 : <A1, A2>(iota(z1)((s)a1))
21. name-path-endpoints(X;<A1, A2>a;b;I;(s)a1;z1;u3)
22. (u2 iota(z)((s)a1) rename-one-name(z;z1)) = u3 ∈ <A1, A2>(iota(z1)((s)a1))
23. v : X(I)
24. (s)a1 = v ∈ X(I)
25. ∀[u:<A1, A2>(iota(z)(v))]
      (((u iota(z)(v) rename-one-name(z;z1)) rename-one-name(z;z1)(iota(z)(v)) f[z1:=fresh-cname(J)])
      = (u iota(z)(v) (rename-one-name(z;z1) o f[z1:=fresh-cname(J)]))
      ∈ <A1, A2>((rename-one-name(z;z1) o f[z1:=fresh-cname(J)])(iota(z)(v))))
⊢ (u2 iota(z)(v) f[z:=fresh-cname(J)])
= ((u2 iota(z)(v) rename-one-name(z;z1)) iota(z1)(a1) f[z1:=fresh-cname(J)])
∈ <A1, A2>(iota(fresh-cname(J))((s)f(a1)))
Latex:
Latex:
1.  X  :  CubicalSet
2.  Delta  :  CubicalSet
3.  s  :  Delta  {}\mrightarrow{}  X
4.  A1  :  I:(Cname  List)  {}\mrightarrow{}  X(I)  {}\mrightarrow{}  Type
5.  A2  :  I:(Cname  List)  {}\mrightarrow{}  J:(Cname  List)  {}\mrightarrow{}  f:name-morph(I;J)  {}\mrightarrow{}  a:X(I)  {}\mrightarrow{}  (A1  I  a)  {}\mrightarrow{}  (A1  J  f(a))
6.  \mforall{}I:Cname  List.  \mforall{}a:X(I).  \mforall{}u:A1  I  a.    ((A2  I  I  1  a  u)  =  u)
7.  \mforall{}I,J,K:Cname  List.  \mforall{}f:name-morph(I;J).  \mforall{}g:name-morph(J;K).  \mforall{}a:X(I).  \mforall{}u:A1  I  a.
          ((A2  I  K  (f  o  g)  a  u)  =  (A2  J  K  g  f(a)  (A2  I  J  f  a  u)))
8.  a  :  \{X  \mvdash{}  \_:<A1,  A2>\}
9.  b  :  \{X  \mvdash{}  \_:<A1,  A2>\}
10.  X  \mvdash{}  <A1,  A2>
11.  Delta  \mvdash{}  (<A1,  A2>)s
12.  I  :  Cname  List
13.  J  :  Cname  List
14.  f  :  name-morph(I;J)
15.  a1  :  Delta(I)
16.  z  :  \{z:Cname|  \mneg{}(z  \mmember{}  I)\} 
17.  u2  :  named-path(X;<A1,  A2>a;b;I;(s)a1;z)
18.  z1  :  \{z:Cname|  \mneg{}(z  \mmember{}  I)\} 
19.  u3  :  <A1,  A2>(iota(z1)((s)a1))
20.  name-path-endpoints(X;<A1,  A2>a;b;I;(s)a1;z1;u3)
21.  (u2  iota(z)((s)a1)  rename-one-name(z;z1))  =  u3
22.  v  :  X(I)
23.  (s)a1  =  v
\mvdash{}  (u2  iota(z)(v)  f[z:=fresh-cname(J)])
=  ((u2  iota(z)(v)  rename-one-name(z;z1))  iota(z1)(a1)  f[z1:=fresh-cname(J)])
By
Latex:
(DVar  `u2'
  THEN  (InstLemma  `cubical-type-ap-morph-comp` 
              [\mkleeneopen{}X\mkleeneclose{};\mkleeneopen{}<A1,  A2>\mkleeneclose{};\mkleeneopen{}[z  /  I]\mkleeneclose{};\mkleeneopen{}[z1  /  I]\mkleeneclose{};\mkleeneopen{}[fresh-cname(J)  /  J]\mkleeneclose{};\mkleeneopen{}rename-one-name(z;z1)\mkleeneclose{};
              \mkleeneopen{}f[z1:=fresh-cname(J)]\mkleeneclose{};\mkleeneopen{}iota(z)(v)\mkleeneclose{}]\mcdot{}
              THENA  Auto
              )
  )
Home
Index