Apostolis Xekoukoulotakis
2017-09-15 03:16:14 UTC
The definition of PathP when it is a path between sets does not make sense
to me.
Here is an example :
```
module test where
open import PathPrelude
-- fun : â{â} â {A B : Set â} â A â¡ B â A â B
-- fun eq a = transp eq a
fun2 : â{â} â {A B : Set â} â A â¡ B â A â B
fun2 eq a = transp (λ i â eq i) a
fun3 : â{â} â {A B : Set â} â A â¡ B â A â B
fun3 eq a = {!!} -- C-u C-u C-c C-,
```
eq ' s type is :
```
eq : PathP (λ _ â Set .â) .A .B
```
but the defintion of PathP is :
```
PathP : â {â} (A : I â Set â) â A i0 â A i1 â Set â
```
which means A B must be elements of Sets, not Sets.
Of course A â¡ B is a path inside Set â , thus the definition of PathP makes
no sense with regards to Sets.
Another problem I am experiencing that might be related is that A=B
requires to be eta-abstracted to work like in the fun/fun2 case.
I also wonder why I cannot fill the hole with ```r i``` here :
https://github.com/xekoukou/cubical-demo/blob/agda-mailing-list/Univalence.agda#L115
to me.
Here is an example :
```
module test where
open import PathPrelude
-- fun : â{â} â {A B : Set â} â A â¡ B â A â B
-- fun eq a = transp eq a
fun2 : â{â} â {A B : Set â} â A â¡ B â A â B
fun2 eq a = transp (λ i â eq i) a
fun3 : â{â} â {A B : Set â} â A â¡ B â A â B
fun3 eq a = {!!} -- C-u C-u C-c C-,
```
eq ' s type is :
```
eq : PathP (λ _ â Set .â) .A .B
```
but the defintion of PathP is :
```
PathP : â {â} (A : I â Set â) â A i0 â A i1 â Set â
```
which means A B must be elements of Sets, not Sets.
Of course A â¡ B is a path inside Set â , thus the definition of PathP makes
no sense with regards to Sets.
Another problem I am experiencing that might be related is that A=B
requires to be eta-abstracted to work like in the fun/fun2 case.
I also wonder why I cannot fill the hole with ```r i``` here :
https://github.com/xekoukou/cubical-demo/blob/agda-mailing-list/Univalence.agda#L115