Leonardo de Moura
632c98aade
feat(library/data/list): cleanup proofs
2017-02-17 19:42:57 -08:00
Leonardo de Moura
32e6442d0a
feat(frontends/lean): no global universes in the frontend
2017-02-08 17:23:04 -08:00
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
4e80094927
feat(frontends/lean/inductive_cmd): use new elaborator in the inductive command
2016-08-03 13:13:12 -07:00
Leonardo de Moura
f461b53a7f
refactor(library): remove eq.ops namespace
2016-07-31 12:50:11 -07:00
Leonardo de Moura
477a137db9
feat(frontends/lean): remove 'using' expressions
...
Reason: we have include/omit commands
2016-07-28 09:53:27 -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
26bc1602a7
refactor(library): move 'filter' to init folder
2016-07-09 17:23:28 -07: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
9aa6ac62ec
refactor(library): add has_append type class, string concatenation is now an instance of has_append instead of has_add
2016-06-27 08:04:47 +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
a208f9473c
refactor(library): reorder and rename decidable constructors
...
Motivation: make sure the "false" case will have constructor idx 0.
2016-05-10 17:30:22 -07:00
Leonardo de Moura
d88098f38d
chore(frontends/lean): remove some of the tactic support
2016-04-25 15:26:56 -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
4a43e33d45
chore(*): disable big chunk of the standard library and tests
2016-03-03 13:43:08 -08:00
Leonardo de Moura
faa0031d4e
refactor(library,hott): remove 'by+' and 'begin+'
2016-02-29 13:15:48 -08:00
Leonardo de Moura
deb1b3dc79
refactor(library): replace assert-exprs with have-exprs
2016-02-29 11:53:26 -08:00
Leonardo de Moura
101cf1ec4c
feat(frontends/lean): remove difference between 'have' and 'assert'
2016-02-29 11:28:20 -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
Sean Leather
7852524370
fix(library/data/list/sorted): incorrect name
2016-02-22 11:06:39 -08:00
Rob Lewis
ffed988a34
feat(data/list): add missing theorems
2016-02-04 11:03:28 -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
b117a10f82
refactor(library/blast/simplifier): use priority_queue to store simp/congr lemmas, use name convention used at forward/backward lemmas, normalize lemmas when blast starts, cache get_simp_lemmas
2015-12-28 17:52:57 -08:00
Jeremy Avigad
8ccafc4267
fix(library/init/function): fix typo
2015-12-22 16:39:13 -05: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