Commit graph

97 commits

Author SHA1 Message Date
Floris van Doorn
54ed8a8e76 feat(hott): small changes in init and category 2015-05-26 21:37:01 -07:00
Jeremy Avigad
33214f0895 refactor(hott/*): remove 'Module:' lines 2015-05-23 20:52:58 +10:00
Jeremy Avigad
d33c91d7b9 fix({hott,library}/algebra/*): fix names 2015-05-23 14:05:06 +10:00
Leonardo de Moura
e1c2340db2 fix(frontends/lean): consistent behavior for protected declarations
see https://github.com/leanprover/lean/issues/604#issuecomment-103265608

closes #609
2015-05-18 22:35:18 -07:00
Floris van Doorn
c430d1d5ba feat(category.constructions): define comma category 2015-05-18 15:59:55 -07:00
Floris van Doorn
eedf1992bf feat(functor): prove sorry's, and shorten some proofs 2015-05-18 15:59:55 -07:00
Floris van Doorn
2144036cdb feat(hott.circle): prove that the fundamental group of the circle is equal to the integers, as groups
Also many minor fixes at various places
2015-05-18 15:59:55 -07:00
Leonardo de Moura
19361f0196 feat(library/unifier): do not fire type class resolution as last resort when type contains metavariables
see discussion at #604
2015-05-18 15:45:23 -07:00
Leonardo de Moura
0b57f7d00a refactor(library/tactic): refine interface between tactic and proof-term modes
Some constraints were being lost with the previous interface.
This is why we had a workaround in fintype.lean.

We can also remove some hacks we have used in the past.
2015-05-07 18:02:51 -07:00
Floris van Doorn
7cfac38eda feat(hott): port parts of natural numbers and integers from standard library to HoTT
This also involves:
- adding definitions about logic and natural numbers existing in the standard library to init
- porting the current algebraic hierarchy
2015-05-07 16:39:03 -07:00
Floris van Doorn
90f1a691fd feat(hott): change notation of transport to correspond with standard library 2015-05-07 16:39:03 -07:00
Floris van Doorn
8b4756f9c8 feat(hott): port nat from standard library to HoTT library; make script to port files 2015-05-07 16:39:03 -07:00
Leonardo de Moura
21ee0a5ff9 refactor(hott/algebra/category/constructions/functor): cleanup proof 2015-05-07 15:29:02 -07:00
Leonardo de Moura
4e1146a2d5 refactor(hott,library): test new tactics in the HoTT and standard libraries 2015-05-02 22:22:31 -07:00
Leonardo de Moura
9ba8b284a1 fix(library/tactic/apply_tactic): add eapply, and fix issue #361 2015-05-01 15:08:00 -07:00
Leonardo de Moura
3912bc24c8 feat(frontends/lean): nicer syntax for 'intros' 'reverts' and 'clears' 2015-04-30 11:00:39 -07:00
Floris van Doorn
297d50378d feat(hott): add definitions using truncations and theorems about them
define embedding, (split) surjection, retraction, existential quantifier, 'or' connective
also add a whole bunch of theorems about these definitions

still has two sorry's which can be solved after #564 is closed
2015-04-29 10:04:07 -07:00
Floris van Doorn
40086d0084 feat(hott): standardize the naming of definitions proving equality of elements of a structure
examples:
foo_eq : Pi {A B : foo}, _ -> A = B
foo_mk_eq : Pi _, foo.mk _ = foo.mk _ (if constructor is called "bar", then this becomes "bar_eq")
foo_eq_equiv : Pi {A B : foo}, (A = B) ≃ _

also changed priority of some instances of is_trunc
2015-04-29 10:04:06 -07:00
Floris van Doorn
b70841171a fix(hott): rename retr and sect to right_inv and left_inv 2015-04-29 10:04:06 -07:00
Floris van Doorn
797a2d2047 refactor(category): merge precategory/ and category/, organize construction files differently. 2015-04-29 10:04:06 -07:00
Floris van Doorn
23e6a3131d feat(precategory): add two redundant fields to precategory. Also some cleanup.
In particular, all instances of "set_option apply.class_instance false" are removed
2015-04-29 10:04:06 -07:00
Floris van Doorn
e769fdd9dc feat(hott): make some arguments in init.path implicit and rename apD to apd 2015-04-29 10:04:06 -07:00
Leonardo de Moura
dcc94dde82 refactor(kernel): rename may_reduce_later to is_stuck, and make is_stuck more precise
It now reflects the definition used in the elaboration paper.
2015-04-27 11:20:15 -07:00
Floris van Doorn
b86ee9dfa6 feat(precategory): add composition of nat. trans. with functor 2015-04-22 13:06:11 -07:00
Floris van Doorn
17f3ac6ec2 fix(hott): fix binding power of 2 notations 2015-04-22 13:06:11 -07:00
Leonardo de Moura
22f6a95cc4 feat(frontends/lean): local notation override global one 2015-04-21 19:55:59 -07:00
Leonardo de Moura
76bf8de91a refactor(hott): remove most 'context' commands from the HoTT library 2015-04-21 19:17:59 -07:00
Leonardo de Moura
2bc13f6bfd feat(library/tactic/exact): enforce goal type during elaboration when executing 'exact' tactic
Remark: this was the behavior of the 'sexact' tactic.

This commit also adds the 'rexact' (relaxed exact) tactic which does not
enforce the goal type.

closes #495
2015-04-06 13:23:38 -07:00
Leonardo de Moura
754276a660 feat(frontends/lean): round parenthesis for [tactic1 | tactic2]
This commit also replaces the notation for divides
     `(` a `|` b `)`
with
      a `∣` b

The character `∣` is entered by typing \|

closes #516
2015-04-06 09:24:09 -07:00
Leonardo de Moura
75621df52b feat(frontends/lean): uniform notation for lists in tactics
closes #504
2015-03-27 17:54:48 -07:00
Leonardo de Moura
c0b4a47f63 refactor(hott/algebra/precategory/functor): remove unnecessary annotation 2015-03-24 12:06:16 -07:00
Leonardo de Moura
4817f2a18b refactor(hott/algebra/precategory/basic): improve basic.hlean compilation time 2015-03-24 12:06:16 -07:00
Leonardo de Moura
30e3049c56 feat(hott/algebra/precategory/nat_trans): reduce compilation time using rewrite tactic 2015-03-23 19:55:01 -07:00
Leonardo de Moura
227de07758 fix(hott/algebra/category/constructions): avoid type class resolution loop 2015-03-23 11:32:20 -07:00
Jakob von Raumer
024ce8012f fix(hott/algebra) make previously added lemma more applicable to groupoids 2015-03-23 11:17:57 -07:00
Jakob von Raumer
97a1cc8edb feat(hott/algebra) show that functors preserve inverses and isos 2015-03-23 11:17:56 -07:00
Jakob von Raumer
74824078a8 fix(hott/algebra) fix previous commit by importing 'arity' 2015-03-23 11:17:56 -07:00
Jakob von Raumer
36a102bad2 feat(hott/algebra) add another equality lemma for precategories 2015-03-23 11:17:56 -07:00
Jakob von Raumer
4e790057b3 feat(hott/algebra) add structure for strict precategories 2015-03-23 11:17:56 -07:00
Jakob von Raumer
10c0b3a3ca feat(hott/algebra) add characterization of paths between precategories 2015-03-23 11:17:56 -07:00
Jakob von Raumer
f480d67881 chore(hott/algebra) make carrier hset witness an instance 2015-03-23 11:17:56 -07:00
Floris van Doorn
8948926a07 style(hott/algebra/precategory): some cleanup 2015-03-16 17:15:51 -07:00
Floris van Doorn
57514244b1 feat(hott/algebra/precategory): add todo-file for adjoint functors, equivalences and isomorphisms 2015-03-16 17:15:51 -07:00
Floris van Doorn
c914b79341 feat(hott/algebra/category): show that functor category is univalent if codomain is 2015-03-16 17:15:51 -07:00
Floris van Doorn
ebba33057c feat(hott): add arity.hlean, about multivariate functions 2015-03-16 17:15:51 -07:00
Floris van Doorn
71f9a5d1d2 feat(hott/algebra/precategory): do lots of stuff with categories 2015-03-16 17:15:51 -07:00
Jakob von Raumer
7083f2fccd fix(hott/algebra) correct the name of a groupoid constructor 2015-03-13 15:45:46 -07:00
Jakob von Raumer
25abecaa26 chore(hott/algebra) cmall changes in category files 2015-03-13 15:45:02 -07:00
Leonardo de Moura
a24f8dce67 refactor(hott/algebra/precategory): minor cleanup 2015-03-12 20:52:00 -07:00
Leonardo de Moura
14aeac180a refactor(library/algebra/category/constructions): more rewrite tactic tests 2015-03-12 20:27:11 -07:00