Commit graph

153 commits

Author SHA1 Message Date
Joe Hendrix
641ccbc846 chore(library/data): remove (list/tuple).firstn in favor of taken 2017-01-25 18:39:54 -08:00
Gabriel Ebner
03e09db70e refactor(library/data/bitvec,library/data/tuple): use automation 2017-01-21 09:48:35 +01:00
Leonardo de Moura
97b98c58d0 refactor(library): move nat lemmas to library/init/data/nat/lemmas.lean 2017-01-17 17:42:13 -08:00
Joe Hendrix
767ac42dfe chore(library/data): remove redundent decidable_eq instances 2017-01-17 17:34:10 -08:00
Joe Hendrix
985c3697b9 chore(library/data/list): add back copyright notice 2017-01-17 17:33:59 -08:00
Joe Hendrix
8e2cf491e5 refactor(library/data/list): move theorems to separate modules per lean2 2017-01-17 17:33:45 -08:00
Leonardo de Moura
d97e5b5061 chore(library): remove old files 2016-09-21 11:46:40 -07:00
Sebastian Ullrich
fd2c42a8bf chore(library, tests): switch to new attribute declaration syntax
sed -Ei 's/^(\s*)((private |protected )?(noncomputable )?(abbreviation|definition|meta_definition|theorem|lemma|proposition|corollary)\s+\S+\s*)((\s*\[(\S+(\s+[0-9]+)*|priority.*)\])+)\s*/\1attribute \6\n\1\2/' library/**/*.lean tests/**/*.lean
sed -Ei 's/\s+$//' library/**/*.lean  # remove trailing whitespace
2016-08-12 15:36:12 -07:00
Leonardo de Moura
1602a53336 feat(frontends/lean): nary match 2016-08-08 10:04:58 -07:00
Leonardo de Moura
f461b53a7f refactor(library): remove eq.ops namespace 2016-07-31 12:50:11 -07:00
Leonardo de Moura
ff59fc39b9 fix(library/data/list/basic): broken proof 2016-07-18 18:48:25 -04:00
Leonardo de Moura
5a96237989 refactor(library/data/list): move dropn to init 2016-07-18 18:14:21 -04:00
Leonardo de Moura
393f926563 refactor(library): move head to init folder 2016-07-16 16:27:30 -04:00
Leonardo de Moura
97719a4c5f refactor(frontends/lean): disable '!' operator, and adjust standard library 2016-07-02 01:41:46 +01:00
Leonardo de Moura
3b6b487e43 feat(library/init/meta/tactic): add 'focus', 'first', 'solve' and LCF-style AND_THEN tactical 2016-06-29 01:07:41 +01:00
Leonardo de Moura
9371aa0e99 refactor(library/data/list/basic): move tail to init 2016-06-18 14:27:57 -07:00
Leonardo de Moura
7089762cd6 refactor(library/data/list): move nth to init 2016-06-18 12:40:00 -07:00
Leonardo de Moura
31e066633c chore(library): fix dependencies 2016-06-06 16:43:43 -07:00
Leonardo de Moura
f60d088572 feat(library/init): add 'has_to_string' type class 2016-05-26 10:43:26 -07:00
Leonardo de Moura
9530f716f9 refactor(library): move list.is_inhabited instance to init folder 2016-05-25 17:26:42 -07:00
Leonardo de Moura
1bce20c322 feat(library/init): make sure list, char and string decidable_eq instances are defined in the init folder 2016-05-25 15:16:12 -07:00
Leonardo de Moura
d22d850b28 refactor(library): redefine string and char 2016-05-24 14:11:24 -07:00
Leonardo de Moura
9dfc5ed787 chore(library/data): make sure we can generate code for the modified functions 2016-05-23 17:50:01 -07:00
Leonardo de Moura
de64750621 chore(frontends/lean): disable expressions that use tactic framework 2016-04-25 15:07:26 -07:00
Leonardo de Moura
f573ebd0a4 refactor(library): make sure prod.pr1 is a projection 2016-03-25 16:28:29 -07:00
Leonardo de Moura
384e8bf7bf refactor(library): remove unifier_plugin 2016-03-21 17:57:53 -07:00
Leonardo de Moura
9d0dfb8404 refactor(frontends/lean): remove calc_proof_elaborator 2016-03-03 17:22:45 -08:00
Leonardo de Moura
2c70ca83a8 refactor(frontends/lean/calc): remove '{}' notation for eq.subst in calc mode 2016-03-03 14:18:20 -08:00
Leonardo de Moura
deb1b3dc79 refactor(library): replace assert-exprs with have-exprs 2016-02-29 11:53:26 -08:00
Jeremy Avigad
8f83c78bc9 fix(library/logic/identities,library/*): fix implicit arguments, add implications. Closes #1002. 2016-02-22 11:25:23 -08:00
Leonardo de Moura
52ec7e6d57 feat(library/blast/recursor): add 'blast.recursor.max_rounds' options and iterative deepening for recursor_strategy 2016-01-01 13:09:37 -08:00
Leonardo de Moura
54f2c0f254 feat(library/blast/forward): inst_simp should use the left-hand-side as a pattern (if none is provided by the user)
The motivation is to reduce the number of instances generated by ematching.

For example, given

   inv_inv:  forall a, (a⁻¹)⁻¹ = a

the new heuristic uses ((a⁻¹)⁻¹) as the pattern.
This matches the intuition that inv_inv should be used a simplification
rule.

The default pattern inference procedure would use (a⁻¹). This is bad
because it generates an infinite chain of instances whenever there is a
term (a⁻¹) in the proof state.
By using (a⁻¹), we get
   (a⁻¹)⁻¹ = a
Now that we have (a⁻¹)⁻¹, we can match again and generate
   ((a⁻¹)⁻¹)⁻¹ = a⁻¹
and so on
2015-12-31 20:20:39 -08:00
Leonardo de Moura
bd03619b5c refactor(library/data/list/basic): test 'rec_inst_simp' blast strategy
recursor + instantiate [simp] lemmas + congruence closure
2015-12-31 13:03:47 -08:00
Leonardo de Moura
ef546c5c5b refactor(library): use anonymous instance implicit arguments 2015-12-13 11:46:48 -08:00
Leonardo de Moura
b94e31a72c refactor(library): remove algebra namespace 2015-12-05 23:50:01 -08:00
Joe Hendrix
42afd89583 feat(library/data/list): Add additonal list combinators. 2015-12-02 23:01:26 -08:00
Floris van Doorn
0537ef2bd9 chore(*): add me as author to files where I made nontrivial contributions 2015-11-22 14:21:26 -08:00
Floris van Doorn
482c68b387 feat(*/list): add some computation rules for lists in both libraries 2015-11-22 14:21:26 -08:00
Floris van Doorn
5abc450fad feat(list): port list.basic from the standard library 2015-11-22 14:21:26 -08:00
Leonardo de Moura
724aacb2c1 fix(library): remove "-[notations]" hack at "open -[notations] algebra" 2015-11-08 14:04:55 -08:00
Leonardo de Moura
26eb6fa849 feat(*): new numeral encoding 2015-11-08 14:04:55 -08:00
Leonardo de Moura
a618bd7d6c refactor(library): use type classes for encoding all arithmetic operations
Before this commit we were using overloading for concrete structures and
type classes for abstract ones.

This is the first of series of commits that implement this modification
2015-11-08 14:04:54 -08:00
Sebastian Ullrich
d1b5031dbd feat(library): add some spacing hints 2015-09-30 17:36:32 -07:00
Leonardo de Moura
811bae5566 feat(library/data/vec): expand vec 2015-07-30 23:17:01 -07:00
Leonardo de Moura
0a29581b0e feat(library/data/vec): add more theorems to vec (vectors as subtypes) 2015-07-30 18:09:10 -07:00
Leonardo de Moura
8be82d7405 feat(data/list): add count for lists 2015-07-24 23:44:11 -07:00
Leonardo de Moura
092c8d05b9 feat(frontends/lean,library): rename '[rewrite]' to '[simp]' 2015-07-22 09:01:42 -07:00
Leonardo de Moura
ff425b66e7 feat(library/data/list): test type notation in the standard library 2015-07-20 22:00:05 -07:00
Leonardo de Moura
10e5b182b5 refactor(library/data): use "suppose"-expressions to cleanup proofs 2015-07-20 19:45:54 -07:00
Leonardo de Moura
6936d71030 feat(library/data/list/basic): add 'firstn' definition and theorems 2015-07-19 20:15:40 -07:00