Gabriel Ebner
3804722b91
fix(init/meta/decl_cmds): avoid blocking
2017-01-28 08:27:23 +01:00
Gabriel Ebner
e839080834
feat(init/meta/async_tactic): add tactic to prove subgoals in a different task
2017-01-28 08:27:23 +01:00
Gabriel Ebner
952f444710
feat(init/meta/task): allow task creation from VM
2017-01-28 08:27:23 +01:00
Gabriel Ebner
5fdc737dfc
feat(library/tactic): store name of current declaration in tactic_state
2017-01-28 08:27:19 +01:00
Leonardo de Moura
6c0ee899ad
chore(tests/lean/interactive): fix tests
2017-01-27 16:32:22 -08:00
Leonardo de Moura
9107439bce
feat(frontends/lean/elaborator): default parameter prototype
...
See #1340
2017-01-27 16:32:22 -08:00
Leonardo de Moura
93ba77f8da
chore(library/data): rename tuple => vector
2017-01-26 22:11:10 -08:00
Leonardo de Moura
b1d097e63a
feat(library/init/meta): add 'delta' tactic for applying delta reduction
...
closes #1331
2017-01-26 19:04:07 -08:00
Leonardo de Moura
3f124f1a15
feat(library/init/logic): add decidable instance for ite and dite
2017-01-26 18:42:46 -08:00
Leonardo de Moura
6f502b9afd
fix(library/vm): make sure vm_rb_map objects can be stored in ts_vm_obj
...
See discussion at #1337
2017-01-26 15:58:11 -08:00
Leonardo de Moura
4e625b35ad
fix(library/vm/vm): memory leak at operator=
2017-01-26 13:32:44 -08:00
Leonardo de Moura
35224685a9
chore(kernel/quotient/quotient): remove leftover
2017-01-26 13:05:09 -08:00
Sebastian Ullrich
2c3f6d0e1c
fix(frontends/lean/structure_cmd): default field values of Pi type
...
There were two separate issues:
* An explicit Pi as the type of a field with a default value would be considered a field reference
* An implicit Pi would be instantiated by the elaborator during `visit_structure_instance`
2017-01-26 18:53:55 +01:00
Sebastian Ullrich
5c5c998813
fix(frontends/lean/structure_cmd): fix default field values referencing universe variables
2017-01-26 18:52:20 +01:00
Sebastian Ullrich
92ebaaa0f8
fix(frontends/lean/builtin_exprs): ite/dite prec should be lowest
2017-01-26 18:52:20 +01:00
Leonardo de Moura
08a0924fe3
fix(library/data/bitvec): typo
2017-01-25 18:41:32 -08:00
Joe Hendrix
641ccbc846
chore(library/data): remove (list/tuple).firstn in favor of taken
2017-01-25 18:39:54 -08:00
Sebastian Ullrich
e8a387b724
fix(emacs/lean-info): do not update info windows during text selection
...
Fixes #1332
2017-01-25 18:33:19 -08:00
Leonardo de Moura
89daecb568
fix(library/type_context): assertion violation
...
fixes #1335
2017-01-25 16:05:23 -08:00
Leonardo de Moura
552ca66e9e
feat(library/init/meta/pexpr): expose low level function mk_placeholder
2017-01-25 15:32:50 -08:00
Leonardo de Moura
258fb522d3
feat(library/tactic/smt): add generation heuristic to control matching loops
2017-01-24 22:46:45 -08:00
Leonardo de Moura
c60024d0c5
test(tests/lean/run): add "array" test
2017-01-24 22:00:33 -08:00
Leonardo de Moura
477ffd1bc7
fix(library/tactic/smt): make sure a partially applied terms can be used to ematch terms with "more arguments"
2017-01-24 19:25:00 -08:00
Leonardo de Moura
750d02c3ac
feat(frontends/lean/definition_cmds): remove equations_result macro from elaborated theorems
2017-01-24 16:51:33 -08:00
Leonardo de Moura
434ada7dcc
chore(library/vm,library/tactic): add missing override
2017-01-24 16:19:36 -08:00
Leonardo de Moura
0ba60e62d7
feat(kernel/quotient/quotient): make quotient module robust against users that define their own prelude's
...
Before this commit, an user could define their own prelude and change
the types of quot, quot.mk, quot.lift or quot.ind.
By doing that, they could prove false.
This commit prevents this kind of abuse.
It also modifies the definition of `quot` and avoids the `setoid`
dependency.
The previous `quot` type is now called `quotient`, and it is defined
using the new `quot` type provided by the kernel.
See discussion at #1330
2017-01-24 15:59:38 -08:00
Leonardo de Moura
ac6bfce01c
feat(library/tactic/smt/congruence_closure): improve propagation for beta reduction in the congruence closure module
2017-01-24 12:09:37 -08:00
Leonardo de Moura
28ce1e6d2b
fix(library/tactic/simplify): make sure a partially applied lhs can be used to rewrite terms with "more arguments" in simp
...
See discussion at issue #1331
2017-01-23 19:53:49 -08:00
Leonardo de Moura
f60bbb5fcb
fix(library/tactic/simp_lemmas): refl_lemma_rewrite, make sure a partially applied lhs can be used rewrite terms with "more arguments"
2017-01-23 19:37:35 -08:00
Leonardo de Moura
e7d27be7b7
chore(tests/lean/1277): remove trace
2017-01-23 18:40:22 -08:00
Leonardo de Moura
418d62ff48
fix(library/tactic/rewrite_tactic): fixes #1277
2017-01-23 16:34:07 -08:00
Leonardo de Moura
6d12de6339
refactor(library/init/meta/smt): use default value for config structures
2017-01-23 14:18:06 -08:00
Leonardo de Moura
1d98192071
fix(util/rb_tree): bug at equal_elems
...
This commit also adds an iterator class to rb_tree and rb_map.
2017-01-23 14:04:26 -08:00
Leonardo de Moura
977c8ed7dd
chore(CMakeLists): do not use TCMALLOC by default
...
@kha @gebner @jroesch
I changed the default to TCMALLOC=OFF.
We have been having problems on OSX, and this morning I had a nasty bug on
Ubuntu 12.04 when using TCMALLOC
2017-01-23 11:03:14 -08:00
Leonardo de Moura
0048d0490b
fix(frontends/lean/parser): structure followed by doc string
2017-01-23 10:35:07 -08:00
Leonardo de Moura
778d5382f6
refactor(library/init/meta/simp_tactic): use default field values at simplify_config
2017-01-23 10:22:48 -08:00
Leonardo de Moura
2ca2920284
fix(library/tactic/simplify): relax test
...
We only need to check whether the resulting expression does not contain
temporary metavariables introduced by the simplifier.
It is ok if it contains regular metavariables that were already in the goal.
This fixes the issue reported at
https://groups.google.com/forum/#!topic/lean-user/3qzchWkut0g
2017-01-23 09:59:06 -08:00
Leonardo de Moura
8ef21040d6
chore(library/init/algebra/order): remove leftover
2017-01-22 21:31:04 -08:00
Leonardo de Moura
71a7a7f466
feat(frontends/lean): add default field values
2017-01-22 21:25:49 -08:00
Leonardo de Moura
f7edf601c8
fix(library/init/data/nat/lemmas): avoid bad patterns in nat sub ematch lemmas
...
The attribute [ematch_lhs] instructs Lean to use the left-hand-side of
the conclusion as a pattern.
2017-01-22 19:48:01 -08:00
Leonardo de Moura
4b11afcb46
feat(library/init/meta/interactive): add doc strings
2017-01-22 16:41:27 -08:00
Leonardo de Moura
3516773644
chore(library/init): minor fixes
2017-01-22 14:20:48 -08:00
Jeremy Avigad
3c65c64e0e
fix(tests/lean/interactive/complete_field): fix test
2017-01-22 14:19:31 -08:00
Jeremy Avigad
7496522830
fix(library/tools/super/clausifier): add rule for new iff
2017-01-22 14:19:11 -08:00
Jeremy Avigad
2b6487065c
feat(library/init/logic): make iff a structure
2017-01-22 14:19:00 -08:00
Gabriel Ebner
b0c67abb2f
feat(library/vm/vm_aux): add vm code for sorry
2017-01-22 14:18:38 -08:00
Leonardo de Moura
3617440d30
chore(tests/lean/interactive/info_goal): fix expected output
2017-01-22 13:03:39 -08:00
Leonardo de Moura
75525a1120
fix(frontends/lean/definition_cmds): allow '.' after equations
2017-01-22 12:51:23 -08:00
Leonardo de Moura
ac1db6a199
feat(library/init/meta/interactive): add some doc strings
2017-01-22 12:45:39 -08:00
Leonardo de Moura
b913ba3336
feat(library/init/meta): add type information for the arguments of the smt tactics: ematch_using and add_lemmas
2017-01-22 12:12:31 -08:00