Commit graph

957 commits

Author SHA1 Message Date
Jeremy Avigad
eae047bd31 refactor,feat(library/{data,algebra}): move bigops to algebra, define sums 2015-05-16 18:42:13 +10:00
Jeremy Avigad
87e4f7a951 feat(library/algebra/group.lean): add coercions from additive (comm) monoid to (comm) monoid 2015-05-16 18:27:49 +10:00
Jeremy Avigad
63bb4b558a fix(library/data/set/{classical_inverse.lean,map.lean}): protect definitions in map, to avoid ambiguity 2015-05-16 18:24:19 +10:00
Jeremy Avigad
26ad6dde69 fix(library/data/fintype.lean): reduce imports, to avoid cyclic dependencies 2015-05-16 17:53:35 +10:00
Jeremy Avigad
daf53e4de2 fix(library/algebra/order.lean): rename decidable_eq to had_decidable_eq to avoid conflict 2015-05-16 17:53:35 +10:00
Jeremy Avigad
81d0d4aa53 fix(library/data/{set,finset}/basic.lean: delete \{{ \}}} notation (conflicts with records) 2015-05-16 17:53:35 +10:00
Sebastian Ullrich
77c20e99ff feat(library/tactic/inversion_tactic): consistent orientation of generated equalities
Generated equalities in proof irrelevant environments were inverted
compared with the documentation and the proof relevant case, which
resulted in newly generated local vars replacing equivalent old ones
instead of the other way around.
2015-05-14 23:32:54 +02:00
Jeremy Avigad
8de6a4bb4c feat(library/algebra/group_pow.lean,library/data/nat/power.lean): add generic power operation on monoids and groups 2015-05-13 22:19:02 -07:00
Leonardo de Moura
51a30892a1 chore(examples/ex): move example to library 2015-05-13 17:07:10 -07:00
Leonardo de Moura
065a1f7501 feat(library/tactic): add 'induction' tactic skeleton 2015-05-12 20:21:25 -07:00
Jeremy Avigad
05e28aaf19 feat(library/data/nat/{basic.lean,order.lean}): use migrate 2015-05-12 06:20:51 -07:00
Jeremy Avigad
42616f766f refactor(library/data/{nat,int,rat}/{basic.lean,order.lean}: make algebra instance declarations local 2015-05-12 06:20:47 -07:00
Leonardo de Moura
f25c301c98 fix(library/data/rat): migrate for rat 2015-05-12 04:46:34 -07:00
Leonardo de Moura
d2adf922b7 refactor(library/data/int): use "migrate" command 2015-05-12 04:24:13 -07:00
Leonardo de Moura
396f77aa68 fix(library,hott): comment 'exit' commands to avoid warnings during compilation 2015-05-11 11:49:23 -07:00
Leonardo de Moura
f59a81d744 refactor(library/data): use new 'obtain' expression 2015-05-11 09:14:48 -07:00
Jeremy Avigad
a009cf24e3 feat(library/data/finset/{basic,card,comb}.lean: add theorems, including card of an injective image 2015-05-11 09:03:57 -07:00
Jeremy Avigad
3e07716b5d feat(library/data/finset/to_set.lean): add finset/set translation theorems 2015-05-11 09:03:56 -07:00
Jeremy Avigad
efbca4c78e feat(library/data/finset/finset.md): add markdown file 2015-05-11 09:03:56 -07:00
Jeremy Avigad
9d73aa657b feat(library/data/{finset,list}/comb.lean): add 'any' for finsets 2015-05-11 09:03:56 -07:00
Leonardo de Moura
379af8a04e feat(library): avoid 'definition' hack for theorems 2015-05-09 12:15:30 -07:00
Leonardo de Moura
bd28396be0 feat(kernel): transparent theorems
closes #576
2015-05-09 11:42:29 -07:00
Leonardo de Moura
8086ad7461 feat(library/init): define quot.hrec_on and quot.hrec_on₂ based on heterogeneous equality
They are easier to use than the version with nested eq.rec's
2015-05-09 09:49:41 -07:00
Leonardo de Moura
4f0f739ea6 feat(library): remove occurrences of 'opaque' keyword 2015-05-08 16:40:03 -07:00
Leonardo de Moura
6c958a25e7 refactor(library/tactic/expr_to_tactic): make sure builtin tactics don't need to be marked opaque
This modification is needed since we will remove opaque definitions from
the kernel.

see issue #576
2015-05-08 16:06:16 -07:00
Leonardo de Moura
57ea660963 refactor(*): start process for eliminating of opaque definitions from the kernel
see issue #576
2015-05-08 16:06:04 -07:00
Leonardo de Moura
3aac370629 fix(library/data/finset/basic): type error on the finset.induction proof 2015-05-08 11:08:24 -07:00
Jeremy Avigad
624b664950 refactor(library/data/list/basic.lean): make minor renaming 2015-05-08 20:25:28 +10:00
Jeremy Avigad
75e50fd371 feat(library/data): update defaults and markdown files 2015-05-08 20:23:15 +10:00
Jeremy Avigad
b56f7a06d5 refactor(library/data/finset/bigop.lean): use inter eq empty rather than disjoint 2015-05-08 20:06:21 +10:00
Jeremy Avigad
6fce01385c feat(library/data/{finset,list}/bigop.lean: generalize bigops from group to monoid 2015-05-08 19:51:37 +10:00
Jeremy Avigad
42f2fc973a refactor(library/data/{finset,list,fintype}: rename cross_product to product 2015-05-08 19:51:37 +10:00
Jeremy Avigad
68f7afa053 feat(library/data/finset/card.lean): begin theory of cardinality 2015-05-08 19:51:37 +10:00
Jeremy Avigad
9e04d09381 feat(library/data/finset/comb.lean): add filter, diff, theorems 2015-05-08 19:51:37 +10:00
Jeremy Avigad
4db4c86d37 feat(library/data/finset/basic.lean): add lots of theorems, do minor renaming 2015-05-08 19:51:37 +10:00
Jeremy Avigad
a54a98c1ec feat(library/data/set): add distributivity, diff, uniformize with finset 2015-05-08 19:51:37 +10:00
Jeremy Avigad
9e26dddaf3 feat(library/data/list/perm): add perm_filter 2015-05-08 19:51:37 +10:00
Jeremy Avigad
86a039b6d5 feat(library/data/list/set.lean): add two theorems 2015-05-08 19:51:37 +10:00
Jeremy Avigad
e4c75ae8ae feat(library/logic/connective.lean): add distributivity laws 2015-05-08 19:51:37 +10:00
Jeremy Avigad
ba78cc42f9 fix(library/data/set/basic.lean, function.lean): fix typos 2015-05-08 19:51:37 +10: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
9893de6194 feat(hit/circle): prove partly that the fundamental group of the circle is int
Also add markdown files for nat and int
2015-05-07 16:39:04 -07:00
Floris van Doorn
0a8f4f6dab feat(function): add unfold hints to function.[h]lean 2015-05-07 16:39:03 -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
Leonardo de Moura
e2c1dc92a8 chore(library/data/fintype): add workaround until problem in the elaborator is fixed 2015-05-07 16:32:26 -07:00
Leonardo de Moura
aff9257c72 feat(frontends/lean): allow → to be used in calc proofs
see issue #586
2015-05-07 12:28:47 -07:00
Leonardo de Moura
b03266be70 feat(library/normalize,frontends/lean): rename '[unfold-m]' hint to '[constructor]', and allow it to be attached to constants
closes #587
2015-05-07 12:00:34 -07:00
Leonardo de Moura
5798ac43de fix(frontends/lean/structure_cmd): 'structure' command must set unfold-c attribute for auxiliary recursors
fixes #582
2015-05-07 09:09:07 -07:00
Leonardo de Moura
64cc710ff7 refactor(ordered_group): replace 'match' with 'obtain' 2015-05-06 10:34:43 -07:00
Leonardo de Moura
84deddcca9 feat(library/tactic/rewrite_tactic): apply 'reflexivity' tactic after 'rewrite' instead of hard coded solution 2015-05-05 20:23:49 -07:00