Commit graph

42 commits

Author SHA1 Message Date
Kiana Sheibani 6c46279ec7
Rename Data.Tensor.swap to swap' 2023-03-07 22:28:54 -05:00
Kiana Sheibani be4985714d
Add assocl and assocr functions to Data.Tensor 2023-03-07 22:21:54 -05:00
Kiana Sheibani 5a35b099c1
Document everything 2023-03-07 22:15:08 -05:00
Kiana Sheibani 5ba5aa222a
Remove special cases of genpastro, etc.
The typechecker can almost always infer which tensor product is
being used, so there's no reason to have these.
2023-03-07 14:16:55 -05:00
Kiana Sheibani c0de1a7a94
Create Data.Profunctor.Representable 2023-03-07 14:10:36 -05:00
Kiana Sheibani 3d350068c5
Add Sieve implementation for Cayley 2023-03-07 13:16:27 -05:00
Kiana Sheibani bb7814b7af
Create Data.Profunctor.Cayley 2023-03-07 13:03:15 -05:00
Kiana Sheibani f24cbd0db0
Create Data.Profunctor.Costrong 2023-03-06 22:47:03 -05:00
Kiana Sheibani d6ec94847c
Implement for Yoneda and Coyoneda 2023-03-06 22:05:45 -05:00
Kiana Sheibani 038a4c588a
Define Coyoneda 2023-03-06 22:05:33 -05:00
Kiana Sheibani fec58179c6
Create Data.Profunctor.Yoneda 2023-03-06 21:42:52 -05:00
Kiana Sheibani 14d392c021
Define free and cofree Mapping functors
This was an absolute mess to port from the Haskell version,
but it should be equivalent to the original code.
2023-03-06 21:39:54 -05:00
Kiana Sheibani f60914d41f
Implement Mapping profunctors 2023-03-06 21:39:12 -05:00
Kiana Sheibani 36f5c18f0f
Create Data.Profunctor.Mapping 2023-03-06 21:38:42 -05:00
Kiana Sheibani b5d5526550
Implement Sieve and Cosieve profunctors 2023-03-06 21:37:56 -05:00
Kiana Sheibani ff82a24001
Define Sieve and Cosieve interfaces 2023-03-06 21:37:27 -05:00
Kiana Sheibani 22da62a6f5
Implement Traversing profunctors 2023-03-06 21:36:44 -05:00
Kiana Sheibani 8cd11e401d
Create Data.Profunctor.Sieve 2023-03-06 19:25:09 -05:00
Kiana Sheibani 013ceae011
Implement Traversing profunctors 2023-03-06 19:24:07 -05:00
Kiana Sheibani f68a0c517c
Use existing equivalence type in Prelude 2023-03-06 16:53:56 -05:00
Kiana Sheibani ebc5de6b2c
Rename get* to run* 2023-03-06 16:44:26 -05:00
Kiana Sheibani 3558ea1741
Implement strongr for Tambara directly 2023-03-06 16:38:13 -05:00
Kiana Sheibani 20c3ce2ee8
Implement free and cofree Traversing functors 2023-03-06 16:37:43 -05:00
Kiana Sheibani 81c9486124
Define the Traversing interface 2023-03-06 14:50:09 -05:00
Kiana Sheibani 85b9d77079
Add visibility for Environment 2023-03-06 12:43:41 -05:00
Kiana Sheibani 9f889aaa94
Implement interfaces for Closure and Environment 2023-03-06 12:33:14 -05:00
Kiana Sheibani af4539e344
Define Closure and Environment 2023-03-06 12:32:34 -05:00
Kiana Sheibani 898087509b
Create Data.Profunctor.Closed 2023-03-06 12:31:03 -05:00
Kiana Sheibani 8d6bc903d0
Implement Strong for some profunctors 2023-03-06 11:31:00 -05:00
Kiana Sheibani f4dffcfa11
Add type synonyms for common tensor products 2023-03-06 11:01:17 -05:00
Kiana Sheibani 2aa29d4bf5
Fix visibility in Data.Tensor 2023-03-06 10:59:05 -05:00
Kiana Sheibani cbebb74423
Add Data.Tensor
I should have done this earlier, but I forgot to.
2023-03-06 10:57:36 -05:00
Kiana Sheibani cf38f4a07e
Use forall instead of implicit argument notation 2023-03-06 10:52:28 -05:00
Kiana Sheibani 2e4fa7ff87
Define Choice as special case of GenStrong 2023-03-06 10:51:23 -05:00
Kiana Sheibani c6215d7509
Define GenPastro 2023-03-06 10:51:03 -05:00
Kiana Sheibani ac292d092e
Define instances for GenTambara 2023-03-06 10:50:30 -05:00
Kiana Sheibani 551f238ab7
Add profunctor strength interface 2023-03-05 17:06:27 -05:00
Kiana Sheibani 80fb506448
Define profunctor adjunctions 2023-03-05 00:00:50 -05:00
Kiana Sheibani f2392954c2
Add profunctor functor interfaces 2023-03-04 23:57:12 -05:00
Kiana Sheibani c8dfbb5189
Fix profunctor record declarations 2023-03-04 23:56:35 -05:00
Kiana Sheibani daf9eaef6e
Change MkTagged to Tag 2023-03-04 23:35:26 -05:00
Kiana Sheibani ffab765e86
Define Profunctor interface 2023-03-04 23:31:48 -05:00