Step
*
2
1
1
1
2
1
1
1
1
3
1
2
1
3
of Lemma
csm-cubical-identity
.....subterm..... T:t
6:n
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))))
26. u2 ∈ <A1, A2>(iota(z)(v))
27. ((u2 iota(z)(v) rename-one-name(z;z1)) rename-one-name(z;z1)(iota(z)(v)) f[z1:=fresh-cname(J)])
= (u2 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)))
28. <A1, A2>(iota(fresh-cname(J))((s)f(a1))) = <A1, A2>(f[z1:=fresh-cname(J)]((s)iota(z1)(a1))) ∈ Type
⊢ (u2 iota(z)(v) rename-one-name(z;z1)) = (u2 iota(z)(v) rename-one-name(z;z1)) ∈ <A1, A2>((s)iota(z1)(a1))
BY
{ TACTIC:(Fold `member` 0 THEN InferEqualType THEN 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))))
26. u2 ∈ <A1, A2>(iota(z)(v))
27. ((u2 iota(z)(v) rename-one-name(z;z1)) rename-one-name(z;z1)(iota(z)(v)) f[z1:=fresh-cname(J)])
= (u2 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)))
28. <A1, A2>(iota(fresh-cname(J))((s)f(a1))) = <A1, A2>(f[z1:=fresh-cname(J)]((s)iota(z1)(a1))) ∈ Type
⊢ (iota(z) o rename-one-name(z;z1))(v) = (s)iota(z1)(a1) ∈ X([z1 / I])
Latex:
Latex:
.....subterm.....  T:t
6:n
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  :  <A1,  A2>(iota(z)((s)a1))
18.  name-path-endpoints(X;<A1,  A2>a;b;I;(s)a1;z;u2)
19.  z1  :  \{z:Cname|  \mneg{}(z  \mmember{}  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
23.  v  :  X(I)
24.  (s)a1  =  v
25.  \mforall{}[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:=...])
            =  (u  iota(z)(v)  (rename-one-name(z;z1)  o  f[z1:=fresh-cname(J)])))
26.  u2  \mmember{}  <A1,  A2>(iota(z)(v))
27.  ((u2  iota(z)(v)  rename-one-name(z;z1))  rename-one-name(z;z1)(iota(z)(v))  f[z1:=fresh-cname(J)])
=  (u2  iota(z)(v)  (rename-one-name(z;z1)  o  f[z1:=fresh-cname(J)]))
28.  <A1,  A2>(iota(fresh-cname(J))((s)f(a1)))  =  <A1,  A2>(f[z1:=fresh-cname(J)]((s)iota(z1)(a1)))
\mvdash{}  (u2  iota(z)(v)  rename-one-name(z;z1))  =  (u2  iota(z)(v)  rename-one-name(z;z1))
By
Latex:
TACTIC:(Fold  `member`  0  THEN  InferEqualType  THEN  Auto)
Home
Index