Commit graph

343 commits

Author SHA1 Message Date
Frederik Hanghøj Iversen 43563d1ad9 [WIP] Univalence for category of homotopy sets 2018-03-19 16:27:03 +01:00
Frederik Hanghøj Iversen 2058154c65 Helpers to work with isomorphisms and equivalences 2018-03-19 15:15:03 +01:00
Frederik Hanghøj Iversen f69ab0ee62 [WIP] Univalence for the category of hSets 2018-03-19 14:08:59 +01:00
Andrea Vezzosi f7f8953a42 Voe: Use the isomorphism directly for better computation 2018-03-15 13:39:42 +00:00
Frederik Hanghøj Iversen 438978973d Construct isomorphism from equivalence
Using this somewhat round-about way of constructing an isomorphism from
an equivalence has made typechecking slower in some situations.

E.g. if you're constructing an equivalence from gradLemma and later use
that constructed equivalence to recover the isomorphism, then you
might as well have kept using those functions.
2018-03-15 12:33:00 +01:00
Frederik Hanghøj Iversen 360e2b95dd Make parameter to monad equivalence explicit 2018-03-14 11:20:07 +01:00
Frederik Hanghøj Iversen 7aec22b30a Expose both monad formulations qualified from Cat.Category.Monad 2018-03-14 11:00:52 +01:00
Frederik Hanghøj Iversen 6229decfb2 Merge branch 'master' into dev 2018-03-14 10:50:57 +01:00
Frederik Hanghøj Iversen 41e2d02c8d [WIP] Prove voe §2.3
By Andrea

The reason you cannot use cong in [1] is that §2-fromMonad result type
depends on the input, you need a dependent version of cong:

cong-d : ∀ {ℓ} {A : Set ℓ} {ℓ'} {B : A → Set ℓ'} {x y : A}
               → (f : (x : A) → B x)
               → (eq : x ≡ y)
               → PathP (\ i → B (eq i)) (f x) (f y)
cong-d f p = λ i → f (p i)

I attach a modified Voevodsky.agda.

Notice that the definition of "t" is still highlighted in yellow,
that's because it being a homogeneous path depends on the exact
definition of lem, see the comment with the two definitional equality
constraints.
2018-03-14 10:30:42 +01:00
Frederik Hanghøj Iversen 091e77b583 Rename IsProduct.isProduct to IsProduct.ump
[WIP]: Also some stuff about propositionality for products.
2018-03-14 10:23:23 +01:00
Frederik Hanghøj Iversen 7065455712 More readable goal for voevodsky's construction 2018-03-13 11:29:13 +01:00
Frederik Hanghøj Iversen 896e0d3d37 Stuff about univalence for the category of functors 2018-03-13 10:24:50 +01:00
Frederik Hanghøj Iversen fe453a6d3a Trying to prove cummulativity of homotopy levels 2018-03-12 16:00:27 +01:00
Frederik Hanghøj Iversen c52384b012 Change name of fromMonad 2018-03-12 14:43:43 +01:00
Frederik Hanghøj Iversen 5e092964c8 Change naming and fuse some modules 2018-03-12 14:38:52 +01:00
Frederik Hanghøj Iversen ccf753d438 Move monoidal and kleisli representation to own modules 2018-03-12 14:23:23 +01:00
Frederik Hanghøj Iversen 8dadfa22a0 Add documentation header to monad module 2018-03-12 14:11:31 +01:00
Frederik Hanghøj Iversen aa645fb11e Move voevodsky's construction to own module 2018-03-12 14:04:10 +01:00
Frederik Hanghøj Iversen c0cf6789cd Use propositions straight from the horses mouth 2018-03-12 13:56:49 +01:00
Frederik Hanghøj Iversen a7214fcc66 Finish equality principle for categories 2018-03-12 13:51:29 +01:00
Frederik Hanghøj Iversen 35390c02d3 Stuff about univalence in the category of sets 2018-03-12 13:38:48 +01:00
Frederik Hanghøj Iversen acb5ff4f2b Closer to showing univalence for the category of sets 2018-03-08 14:44:23 +01:00
Frederik Hanghøj Iversen 52297d9073 Clean-up in the category of categories 2018-03-08 11:54:13 +01:00
Frederik Hanghøj Iversen d01514cbdb Do not use ugly ':'-syntax to disambiguate fields 2018-03-08 11:29:16 +01:00
Frederik Hanghøj Iversen 48672b01bd Use dotted expression in Cat 2018-03-08 11:20:51 +01:00
Frederik Hanghøj Iversen 5ad506a09f Rename func* and func-> to omap and fmap respectively 2018-03-08 11:03:56 +01:00
Frederik Hanghøj Iversen 2fcc583646 Add note 2018-03-08 10:50:18 +01:00
Frederik Hanghøj Iversen 63b5f5c68d Use long name for product object 2018-03-08 10:46:28 +01:00
Frederik Hanghøj Iversen 486238e114 Add goals for propositionality of products 2018-03-08 10:38:46 +01:00
Frederik Hanghøj Iversen 1ef57a19f4 Cosmetics 2018-03-08 10:30:35 +01:00
Frederik Hanghøj Iversen 4e7b350188 Factor out objects 2018-03-08 10:28:05 +01:00
Frederik Hanghøj Iversen 181bd1af53 Factor out category 2018-03-08 10:24:17 +01:00
Frederik Hanghøj Iversen faf4c54188 Make parameters explicit 2018-03-08 10:22:21 +01:00
Frederik Hanghøj Iversen fae492a1e3 Restructure products 2018-03-08 10:20:29 +01:00
Frederik Hanghøj Iversen b61749bb91 Fixup some todo-notes 2018-03-08 01:10:52 +01:00
Frederik Hanghøj Iversen fa9a470875 Update backlog 2018-03-08 00:54:42 +01:00
Frederik Hanghøj Iversen e43bee6d9f Feels really close 2018-03-08 00:36:38 +01:00
Frederik Hanghøj Iversen c8fef1d2b5 Use different name for function composition 2018-03-08 00:22:55 +01:00
Frederik Hanghøj Iversen 36cbe711fb Sort of half of the proof of an inverse 2018-03-08 00:09:49 +01:00
Frederik Hanghøj Iversen 459718da23 Finish proof of equivalence of klesili/monoidal categories!! 2018-03-07 17:30:09 +01:00
Frederik Hanghøj Iversen 19103e1678 Update cubical 2018-03-07 16:24:43 +01:00
Frederik Hanghøj Iversen 93d075a6d3 Attempt at proving pureNTEq 2018-03-07 15:23:07 +01:00
Frederik Hanghøj Iversen 00e6e1aa66 State problem with approach 2018-03-07 11:45:11 +01:00
Frederik Hanghøj Iversen aa64e01084 Remove some cruft 2018-03-07 11:33:08 +01:00
Frederik Hanghøj Iversen 125123846e Lay out a strategy for showing the equivalence 2018-03-07 11:29:58 +01:00
Frederik Hanghøj Iversen 085e6eb3d7 Stuff about voe-2-3 2018-03-06 23:18:33 +01:00
Frederik Hanghøj Iversen 110e3510c5 Use postulates 2018-03-06 15:55:03 +01:00
Frederik Hanghøj Iversen 5ae68df582 Prove that fmap is mapped correctly 2018-03-06 15:53:11 +01:00
Frederik Hanghøj Iversen 4d528a7077 Clean-up 2018-03-06 11:25:29 +01:00
Frederik Hanghøj Iversen 485703c85e Tidy up 2018-03-06 10:16:42 +01:00
Frederik Hanghøj Iversen 0cebe1e866 Make private 2018-03-06 10:06:45 +01:00
Frederik Hanghøj Iversen 4de27aa06c Naming 2018-03-06 10:05:35 +01:00
Frederik Hanghøj Iversen 9173468b03 Use omap/fmap 2018-03-06 09:56:44 +01:00
Frederik Hanghøj Iversen bdd67aee53 Rename RR to Romap 2018-03-06 09:55:18 +01:00
Frederik Hanghøj Iversen c57cd5c991 Define stuff in monoidal record 2018-03-06 09:52:37 +01:00
Frederik Hanghøj Iversen cfb7925cb5 Renaming 2018-03-06 09:45:04 +01:00
Frederik Hanghøj Iversen b6457a0b14 Add comment 2018-03-06 09:41:29 +01:00
Frederik Hanghøj Iversen 7647a452cd Tidy up proof a bit 2018-03-06 09:39:48 +01:00
Frederik Hanghøj Iversen 35419ad86e Rename eta and mu 2018-03-06 09:35:50 +01:00
Frederik Hanghøj Iversen f8e08288a0 Cosmetics 2018-03-05 17:31:13 +01:00
Frederik Hanghøj Iversen 9ec6ce9eba Use other equality principle 2018-03-05 17:10:41 +01:00
Frederik Hanghøj Iversen 3151fb3e46 Prove propositionality for naturality 2018-03-05 16:35:47 +01:00
Frederik Hanghøj Iversen 7f4a8a65b8 More stuff about opposite being an involution 2018-03-05 16:10:27 +01:00
Frederik Hanghøj Iversen b26ea18257 Cleanup in nattrans 2018-03-05 15:04:16 +01:00
Frederik Hanghøj Iversen ddd5f17c05 Move propositionality stuff about natural transformations to that module 2018-03-05 15:02:36 +01:00
Frederik Hanghøj Iversen 2b92cee254 Prettier names in Fun 2018-03-05 14:55:45 +01:00
Frederik Hanghøj Iversen bb379fa196 Implement category of presheaves 2018-03-05 14:50:53 +01:00
Frederik Hanghøj Iversen ce4dd83969 Prove that the yoneda embedding is distributive 2018-03-05 14:42:12 +01:00
Frederik Hanghøj Iversen 7fbca1aeeb Clean-up yoneda embedding 2018-03-05 14:04:04 +01:00
Frederik Hanghøj Iversen 1bf565b87a Have yoneda without having a category of categories
I did break some things in Cat.Categories.Cat but since this is
unprovable anyways it's not that big a deal.
2018-03-05 13:52:59 +01:00
Frederik Hanghøj Iversen 5c3616bca5 Make argument to presheaf explicit 2018-03-05 11:17:31 +01:00
Frederik Hanghøj Iversen 059c74b687 Use already defined category 2018-03-05 11:15:45 +01:00
Frederik Hanghøj Iversen a4890a42cf Define Monoidal categories without depending on category of categories 2018-03-05 11:13:58 +01:00
Frederik Hanghøj Iversen 5902c6121b Further reduce dependency on impossible facts.
Provide the data for the product in the category of categories without
requiring such a category to actually exist
2018-03-05 11:07:42 +01:00
Frederik Hanghøj Iversen 77006011d3 Minimize dependency on category of categories 2018-03-05 10:35:33 +01:00
Frederik Hanghøj Iversen 8f8800cb67 More stuff about kleisli \equiv monoidal 2018-03-05 10:28:16 +01:00
Frederik Hanghøj Iversen b079f5e426 Prove propositionality for IsMonad 2018-03-02 13:31:46 +01:00
Frederik Hanghøj Iversen c4e3625746 Finish proof of distributivity 2018-03-01 20:47:36 +01:00
Frederik Hanghøj Iversen 2ceb027f7a Prove monad-equality principle for kleisly monads 2018-03-01 20:23:34 +01:00
Frederik Hanghøj Iversen f2164a6717 Prove equality principle for monads 2018-03-01 20:12:49 +01:00
Frederik Hanghøj Iversen a7f31bb3e2 Prove "foreign naturality condition" 2018-03-01 18:00:51 +01:00
Frederik Hanghøj Iversen f526fd6010 Prove inverse law 2018-03-01 17:50:06 +01:00
Frederik Hanghøj Iversen ff2952e9ad Make postulate 2018-03-01 14:59:19 +01:00
Frederik Hanghøj Iversen ae46a48861 Define goals in Kleisli 2018-03-01 14:58:01 +01:00
Frederik Hanghøj Iversen 64a0292755 Cosmetics 2018-03-01 14:19:46 +01:00
Frederik Hanghøj Iversen e8b29e1f7f \mu is join and it's a natural transformation! 2018-02-28 23:41:59 +01:00
Frederik Hanghøj Iversen 9d3b17245f Provide \zeta 2018-02-28 19:32:07 +01:00
Frederik Hanghøj Iversen f2b1a36a75 Define and use Endofunctor 2018-02-28 19:03:11 +01:00
Frederik Hanghøj Iversen 3c77c69cf6 Move functor definition to Kleisli.Monad 2018-02-28 19:00:21 +01:00
Frederik Hanghøj Iversen 70221377d3 Move proof of equivalence to IsMonad making them lemmas 2018-02-28 18:55:32 +01:00
Frederik Hanghøj Iversen 1aaf81552c Move another proof to category definition 2018-02-26 20:42:00 +01:00
Frederik Hanghøj Iversen 101b2639e1 Move proof to category definition 2018-02-26 20:31:47 +01:00
Frederik Hanghøj Iversen 5b5d21f777 Formatting 2018-02-26 20:23:31 +01:00
Frederik Hanghøj Iversen a0944d69b1 Documentation in Monad 2018-02-26 20:08:48 +01:00
Frederik Hanghøj Iversen 67993be27b Add reverse function composition to category 2018-02-26 20:00:24 +01:00
Frederik Hanghøj Iversen 47882b1110 Rename zeta to pure 2018-02-26 19:58:27 +01:00
Frederik Hanghøj Iversen 043641462d Prove distributive law for monads! 2018-02-26 19:57:05 +01:00
Frederik Hanghøj Iversen 7cddba97a8 Shorten definition 2018-02-25 19:03:48 +01:00
Frederik Hanghøj Iversen 2c6132768e Remove Pathy and Bij 2018-02-25 15:29:52 +01:00
Frederik Hanghøj Iversen 5caecf9796 Rename properties to yoneda 2018-02-25 15:28:42 +01:00
Frederik Hanghøj Iversen 44526b85eb Move CwF 2018-02-25 15:24:44 +01:00
Frederik Hanghøj Iversen f0beec1530 Rename Opposite to opposite 2018-02-25 15:23:33 +01:00
Frederik Hanghøj Iversen cd98736d02 Add documentation in Category-module 2018-02-25 15:21:38 +01:00
Frederik Hanghøj Iversen 2e7220567a Move lemma into IsCategory 2018-02-25 14:44:03 +01:00
Frederik Hanghøj Iversen d63ecc3a65 Use abbreviation 2018-02-25 14:39:11 +01:00
Frederik Hanghøj Iversen caddf83a09 Let IsCategory reexport RawCategory 2018-02-25 14:37:28 +01:00
Frederik Hanghøj Iversen 5deabb7546 Forgot to add monoid-module 2018-02-25 14:28:01 +01:00
Frederik Hanghøj Iversen ce46e0ae7a Module-ify 2018-02-25 14:27:37 +01:00
Frederik Hanghøj Iversen 12dddc2067 Use a module 2018-02-25 03:12:51 +01:00
Frederik Hanghøj Iversen 4c298855e0 [WIP] Proving other fusion law
Also set up framework for equality principle for monads
2018-02-25 03:09:25 +01:00
Frederik Hanghøj Iversen a6b01929f0 Prove distributive law 2018-02-25 01:27:20 +01:00
Frederik Hanghøj Iversen a447cd9c7c Syntax 2018-02-24 20:41:47 +01:00
Frederik Hanghøj Iversen 9d09363f78 Expand definition of isDistributive somewhat
Also contains some side-tracks
2018-02-24 20:37:21 +01:00
Frederik Hanghøj Iversen e7abab0e4c Add pure and >=> to kleisli category 2018-02-24 19:08:20 +01:00
Frederik Hanghøj Iversen be505cdfbe Prove IsAssociative 2018-02-24 19:07:58 +01:00
Frederik Hanghøj Iversen 5d9c820fa2 Add note about haskell 2018-02-24 15:25:07 +01:00
Frederik Hanghøj Iversen e4e327d1d2 [WIP] equivalence of kleisli- resp. monoidal- representation of monad 2018-02-24 15:13:25 +01:00
Frederik Hanghøj Iversen 3e12331294 Monoidal monads addendum 2018-02-24 14:01:57 +01:00
Frederik Hanghøj Iversen 4ec13fe509 Implement monads in the kleisli form 2018-02-24 14:00:52 +01:00
Frederik Hanghøj Iversen 0ca11874bc Remove old name for functor composition 2018-02-24 12:55:08 +01:00
Frederik Hanghøj Iversen 8527fe0df4 Rename functor composition - implement monads...
In their monoidal form.
2018-02-24 12:52:16 +01:00
Frederik Hanghøj Iversen cb8533b84a Rename natural transformation composition 2018-02-23 17:43:38 +01:00
Frederik Hanghøj Iversen dd11b69c71 Documentation for natural transformations 2018-02-23 17:37:27 +01:00
Frederik Hanghøj Iversen 689a6467c6 Move stuff about natural transformations to own module 2018-02-23 17:33:09 +01:00
Frederik Hanghøj Iversen f5dded9561 Do not use IsCategory directly 2018-02-23 16:41:17 +01:00
Frederik Hanghøj Iversen 39284b8d99 Changes in CwF 2018-02-23 14:13:55 +01:00
Frederik Hanghøj Iversen 5796b791b8 Almost prove that arrows are sets in the cateogry of families 2018-02-23 13:59:35 +01:00
Frederik Hanghøj Iversen a321a9c8b2 Use hLevels in Fam 2018-02-23 13:39:59 +01:00
Frederik Hanghøj Iversen 3d0916f448 Use correct name for hSets 2018-02-23 13:20:30 +01:00
Frederik Hanghøj Iversen 4874ed0795 Rename distrib to isDistributive 2018-02-23 12:53:35 +01:00
Frederik Hanghøj Iversen 7787a8f0be Indentation 2018-02-23 12:52:14 +01:00
Frederik Hanghøj Iversen 48423cc816 Rename arrowIsSet to arrowsAreSets 2018-02-23 12:51:44 +01:00
Frederik Hanghøj Iversen 6446435a49 Rename ident to isIdentity 2018-02-23 12:49:41 +01:00
Frederik Hanghøj Iversen 5cbc409770 Rename assoc to isAssociative 2018-02-23 12:43:49 +01:00
Frederik Hanghøj Iversen 852056cc44 Add type-synonyms in functor 2018-02-23 12:41:15 +01:00
Frederik Hanghøj Iversen a57f45d93f Remove yet another postulate 2018-02-23 12:33:20 +01:00
Frederik Hanghøj Iversen 34dec9406d Do not mention IsFunctor outside the module that defines it 2018-02-23 12:29:10 +01:00
Frederik Hanghøj Iversen e46edf1f68 Chain reexport things in Functor 2018-02-23 12:21:16 +01:00
Frederik Hanghøj Iversen 885fd8fa69 Drastically simplify proofs 2018-02-23 12:15:39 +01:00
Frederik Hanghøj Iversen 3f3247c870 Remove commented code 2018-02-23 12:05:38 +01:00
Frederik Hanghøj Iversen de1d19c442 Readd stuff about the yoneda embedding 2018-02-23 11:24:22 +01:00
Frederik Hanghøj Iversen 954a89f8d1 Expose naturalIsProp 2018-02-23 11:12:27 +01:00
Frederik Hanghøj Iversen bc2129b8fc Readd yoneda embedding 2018-02-23 10:55:43 +01:00
Frederik Hanghøj Iversen 9a4d79fa4e Readd commented code 2018-02-23 10:44:23 +01:00
Frederik Hanghøj Iversen 3032dc6130 Make explicit argument 2018-02-23 10:36:59 +01:00
Frederik Hanghøj Iversen cc1ddaac9f Add new type-synonym 2018-02-23 10:35:42 +01:00
Frederik Hanghøj Iversen a87d404aad Refactor category of categories
No longer actually define the category. Just define the raw category and
a few results about it.
2018-02-23 10:34:37 +01:00
Frederik Hanghøj Iversen 32b9ce2ea8 Use new syntax in cat 2018-02-22 15:31:54 +01:00
Frederik Hanghøj Iversen a82095604d Remove unused function 2018-02-21 14:05:10 +01:00
Frederik Hanghøj Iversen 9e96e704e8 Update Fun according to new naming policy 2018-02-21 13:40:24 +01:00