Commit graph

6670 commits

Author SHA1 Message Date
Leonardo de Moura
554a42b407 fix(library/tactic/unfold_rec): add annother brec pattern that should be checked in the unfold recursive definition tactic 2015-07-10 22:16:23 -04:00
Leonardo de Moura
d939509135 doc(library/data/nat/examples): add tail recursive fib example 2015-07-10 20:38:07 -04:00
Leonardo de Moura
fc82b46171 chore(library/data/nat/examples/fib): cleanup example 2015-07-10 08:18:30 -04:00
Leonardo de Moura
32cc2e917b doc(library/data/nat/examples): add examples 2015-07-09 21:56:48 -04:00
Leonardo de Moura
a9515ac7a4 feat(library/tactic/rewrite_tactic): try to fold nested recursive applications after unfolding a recursive function
See issue #692.
The implementation still has some rough spots.
It is not clear what the right semantic is.
Moreover, the folds in e_closure could not be eliminated automatically.
2015-07-08 21:19:18 -04:00
Jeremy Avigad
7f1993be41 feat(library/theories/number_theory/prime_factorization): begin theory, with multiplicity and prime_factors 2015-07-07 21:05:48 -07:00
Jeremy Avigad
ac7f7cee63 refactor(library/theories/number_theory/primes): add some minor theorems, and rename some theorems 2015-07-07 21:05:48 -07:00
Jeremy Avigad
d9098ff4e5 fix(library/theories/number_theory/bezout): make duplicate proof of prime -> irreducible an example 2015-07-07 21:05:48 -07:00
Jeremy Avigad
2e3b1b04cd feat(library/algebra/ring_power): add properties of power in ring structures 2015-07-07 21:05:48 -07:00
Jeremy Avigad
31aeff95d5 refactor(library/algebra/ordered_ring): remove 0 ~= 1 from ordered_semiring, add 0 < 1 to linear_ordered_semiring 2015-07-07 21:05:48 -07:00
Jeremy Avigad
e35f05ad47 feat(library/data/nat/order): add greatest i < n st P i 2015-07-07 21:05:48 -07:00
Leonardo de Moura
967f9ece8e fix(frontends/lean/notation_cmd): workaround incorrect warning produced by clang++ on OSX 2015-07-07 21:01:48 -07:00
Leonardo de Moura
6ffbb05118 feat(library/definitional/no_confusion): add [unfold] hint to no_confusion 2015-07-07 20:07:13 -07:00
Leonardo de Moura
26574e29a9 feat(library/normalize,frontends/lean): allow multiple arguments in [unfold] hint
closes #693
2015-07-07 18:01:57 -07:00
Leonardo de Moura
a27b20cd9c feat(frontends/lean/notation_cmd): allow local notation to override reserved notation
closes #712
2015-07-07 17:30:46 -07:00
Leonardo de Moura
4b1b3e277f feat(frontends/lean): rename '[unfold-c]' to '[unfold]' and '[unfold-f]' to '[unfold-full]'
see issue #693
2015-07-07 16:37:06 -07:00
Leonardo de Moura
991ff67b45 refactor(library/relation_manager): cleanup and add API for declaring a relation that may not be reflexive, symmetric nor transitive 2015-07-07 15:58:24 -07:00
Leonardo de Moura
fb833a724b fix(src/frontends/lean/parser): add extra annotations to workaround with clang 6.0.0 2015-07-06 16:39:47 -07:00
Leonardo de Moura
b0c56273e2 fix(frontends/lean/elaborator): fixes #724 2015-07-06 15:19:19 -07:00
Leonardo de Moura
7e0844a9e6 fix(tests): to reflect recent changes in the standard library 2015-07-06 15:05:01 -07:00
Leonardo de Moura
0828ca775c feat(library/data): add type equivalence lemmas for subtype and vector 2015-07-06 12:44:51 -07:00
Leonardo de Moura
9f7c4aac69 feat(library): add helper lemmas for equivalent types 2015-07-06 12:17:57 -07:00
Leonardo de Moura
01ba0b4747 feat(library/logic/equiv): add equivalence between types
This is a good test for the simplifier
2015-07-06 11:17:03 -07:00
Leonardo de Moura
77d5657813 refactor(library/algebra/function): move function.lean to init folder
Motivation: this file defines basic things such as function composition.
In the HoTT library, it is located in the init folder.
2015-07-06 07:29:56 -07:00
Leonardo de Moura
9ccd8ff700 feat(library/data/nat/parity): cleanup proofs 2015-07-05 09:35:15 -07:00
Leonardo de Moura
db1fae0461 feat(library/theories/number_theory/primes): cleanup proofs 2015-07-05 08:21:16 -07:00
Leonardo de Moura
d1b5a6be54 feat(library/theories/number_theory/primes): add Haitao's divisor_of_prime_pow lemma 2015-07-04 13:27:10 -07:00
François G. Dorais
10b55bd785 feat(library/data/fin): add proof of finite choice 2015-07-04 09:58:18 -07:00
Leonardo de Moura
f4f77e7f0b feat(library): move data/nat/primes to theories/number_theory 2015-07-04 09:49:14 -07:00
Jeremy Avigad
a776e13c3b feat(library/theories/number_theory/bezout): for nat, irreducible implies prime 2015-07-04 22:56:55 +10:00
Leonardo de Moura
aee8bd8b0c feat(library/data/nat): add coprime_primes theorem 2015-07-04 00:37:09 -07:00
Leonardo de Moura
e630511184 feat(library/data/nat/primes): add more simple theorems for primes 2015-07-03 23:31:04 -07:00
Leonardo de Moura
30ef971bc0 feat(library/data/nat): add basic facts about parity 2015-07-03 17:38:23 -07:00
Leonardo de Moura
1bdc9e0747 feat(library/data/finset/card): add dvd_Sum_of_dvd 2015-07-03 14:01:15 -07:00
Leonardo de Moura
339a7334f8 feat(library/data/finset/card): add exists_two_of_card_gt_one 2015-07-03 14:01:15 -07:00
Leonardo de Moura
c843690d27 fix(frontends/lean/elaborator): fixes #719 2015-07-03 12:37:28 -07:00
Leonardo de Moura
aa2a5b6282 feat(library/data/nat/primes): add infinite primes theorem 2015-07-03 00:31:54 -07:00
Leonardo de Moura
372d17ab96 refactor(library/data/nat/primes): rename is_prime to prime 2015-07-02 23:21:10 -07:00
Leonardo de Moura
d76edf331b feat(library/data/nat/bquant): add not bex and not ball lemmas 2015-07-02 23:18:02 -07:00
Leonardo de Moura
e811bb1a66 chore(library/data/nat/default): add new files to nat/default 2015-07-02 22:28:51 -07:00
Leonardo de Moura
5917a26554 feat(library/data/nat/primes): add is_prime 2015-07-02 22:27:51 -07:00
Leonardo de Moura
072fa7ec49 feat(library/data/nat): add aux lemmas 2015-07-02 22:27:21 -07:00
Leonardo de Moura
e33946ff02 feat(library/data/nat/fact): define factorial 2015-07-02 20:25:34 -07:00
Leonardo de Moura
b9114260f8 feat(script/lib_perf): use gtime if time doesn't work 2015-07-02 11:04:16 -07:00
Leonardo de Moura
7de7c5b73d feat(library/definitional/projection): define projections using auxiliary macro 2015-07-02 10:49:49 -07:00
Leonardo de Moura
c15bcf1354 refactor(library/projection): remove projection macro from library 2015-07-02 08:48:13 -07:00
Leonardo de Moura
dd145926a2 fix(library/coercion): compilation warning 2015-07-02 07:26:00 -07:00
Leonardo de Moura
aa338f6002 test(tests/lean/run): add test showing new coercion module addresses issue #668 2015-07-01 16:41:19 -07:00
Leonardo de Moura
4ae9f3ea81 feat(library/coercion): new coercion manager
closes #668
2015-07-01 16:32:34 -07:00
Leonardo de Moura
fe26c37fcb refactor(library/tc_multigraph): improve tc_multigraph API 2015-07-01 16:01:40 -07:00