Leonardo de Moura
64c3927e0b
feat(library/equations_compiler/elim_match): report unused equations
...
closes #1162
2016-10-19 09:58:08 -07:00
Leonardo de Moura
e74cfa9db7
fix(library/equations_compiler/elim_match): bug at complete transition
...
It also updates the condition for triggering the inaccessible
transition. Before this commit, we would only perform this kind
of transition if *all* terms were marked inaccessible. Now,
we perform it if *some* are marked inaccessible. Reason:
when we perform the complete transition we don't have enought
information for deciding whether an argument should be marked as
inaccessible or not. If this decision creates confusion for users,
we may try to mark them with an "maybe-inaccessible" annotation, and
then enforce that the inaccessible transition is performed onlty if
*all* terms are marked as inaccessible or *maybe-inaccessible"
2016-10-19 09:10:19 -07:00
Leonardo de Moura
7b806755d9
chore(library/tactic/simplify): remove subsingleton support
...
It is left over from the blast tactic.
Moreover, it is incomplete.
2016-10-16 22:11:12 -07:00
Leonardo de Moura
9810a5f941
refactor(library/tactic/simplifier): simplify simplifier
2016-10-16 15:55:30 -07:00
Gabriel Ebner
888609013f
feat(tests): run tests in emscripten build
2016-10-16 14:41:35 -07:00
Gabriel Ebner
9f1c2a050c
fix(tests): update to name hashing changes
2016-10-16 14:41:35 -07:00
Leonardo de Moura
0f72de217a
chore(library/tactic/simplifier): simplify simplifier
2016-10-15 18:14:59 -07:00
Leonardo de Moura
9b84db083d
fix(frontends/lean): error localization bugs
2016-10-15 13:40:57 -07:00
Leonardo de Moura
a5029ab5d2
fix(frontends/lean): improve error localization
2016-10-15 10:43:33 -07:00
Gabriel Ebner
b05b514cc2
refactor(*): structured message objects
2016-10-13 18:49:10 -07:00
Leonardo de Moura
bf7bae6eaf
feat(library/init/meta/tactic): add beta/zeta tactics
2016-10-13 18:47:27 -07:00
Daniel Selsam
b4644acba4
fix(meta/mk_dec_eq_instance): handle indices and ginductives
2016-10-13 10:12:37 -07:00
Leonardo de Moura
ef23c591fc
feat(library/init/meta): implement unfold tactics in Lean using new building blocks
2016-10-12 17:25:56 -07:00
Leonardo de Moura
4f2db5702f
feat(library/tactic/unfold_tactic): allow user to set transparency_mode at dunfold_expr
2016-10-12 14:07:50 -07:00
Leonardo de Moura
46eb7decde
feat(library/tactic/unfold_tactic): add unfold_projection tactic
2016-10-12 13:43:32 -07:00
Leonardo de Moura
deb2bb92b2
feat(library/tactic/simp_lemmas_tactics): add dunfold_expr tactic based on equational lemmas
2016-10-12 13:18:10 -07:00
Leonardo de Moura
f66aec2309
feat(library/tactic/simp_lemmas_tactics): add simp_lemmas.drewrite
2016-10-12 09:01:47 -07:00
Leonardo de Moura
1a4ac3a102
fix(library/tactic/dsimplify): bugs and implement dsimp using new dsimplify
2016-10-12 08:33:40 -07:00
Leonardo de Moura
e37207e8a9
feat(library/tactic): expose new dsimplify in Lean
2016-10-12 07:25:09 -07:00
Leonardo de Moura
d655310ecf
feat(library/init/meta): rename rsimp* back to dsimp*
2016-10-11 16:37:08 -07:00
Sebastian Ullrich
b0e6c83ea9
feat(library/tactic): add back notation for by assumption
2016-10-11 14:17:18 -07:00
Leonardo de Moura
85486ad82e
refactor(library/init/core): define nat.add using equations
...
Several tests had to be patched. The new ouput is bad in several cases.
Future commits will fix that.
2016-10-11 14:10:49 -07:00
Leonardo de Moura
231c124be8
feat(library/init/meta): rename dsimp => rsimp, and add primitive tactic that takes an arbitrary simp_lemmas
2016-10-09 10:02:26 -07:00
Leonardo de Moura
a78e8fb11a
refactor(library/tactic/simp_lemmas_tactics): consistent naming
2016-10-09 09:37:20 -07:00
Daniel Selsam
1644e52c47
fix(frontends/lean/decl_cmds): allow noncomputable meta
2016-10-08 22:21:56 -07:00
Leonardo de Moura
476684a284
refactor(library,library/tactic/defeq_simplifier): use simp_lemmas in the defeq_simplifier
2016-10-08 22:15:27 -07:00
Leonardo de Moura
eaef8dae20
chore(library/init/core): remove unnecessary annotations
2016-10-07 16:09:14 -07:00
Leonardo de Moura
61d68f4abf
feat(library/type_context): solve ?m s =?= ?m t by first-order unification in approximate mode
2016-10-07 12:06:22 -07:00
Leonardo de Moura
3fbdb71f3e
feat(library/tactic/simplifier): remove simp_extensions
2016-10-06 20:50:23 -07:00
Leonardo de Moura
d747fcb17c
refactor(library/tactic/simp_lemmas): new caching mechanism
2016-10-06 20:20:01 -07:00
Leonardo de Moura
fd3158d37d
chore(tests/lean/induction_tac1): adjust output
2016-10-05 22:01:16 -07:00
Leonardo de Moura
bf0f24e22d
feat(src/library/defeq_canonizer): improve cache
2016-10-05 22:00:23 -07:00
Leonardo de Moura
91076b06ad
feat(library/init/meta/converter): add 'find_pattern' conversional
2016-10-05 19:22:17 -07:00
Leonardo de Moura
895a94d17e
feat(library/init/meta/converter): match based conversions
2016-10-05 18:54:11 -07:00
Leonardo de Moura
68df31df67
feat(library/init/meta/converter): add adapter for applying propext automatically
2016-10-05 17:13:28 -07:00
Leonardo de Moura
990c414b86
feat(library/init/meta/converter): add 'congr' and 'depthfirst' conversionals
2016-10-05 15:05:22 -07:00
Leonardo de Moura
a6808cfbad
fix(library/init/meta/converter): fix conversion error message
2016-10-05 15:05:22 -07:00
Leonardo de Moura
4a9a637ddf
feat(library/init/meta/converter): add 'funext' converter and 'conversion' tactic
2016-10-05 15:05:07 -07:00
Leonardo de Moura
3a3e30523b
feat(library/init/meta): start converter library
2016-10-04 20:50:54 -07:00
Leonardo de Moura
76fca40be2
test(tests/lean/slow_error): add test that exposed perf problem in type context
2016-10-04 02:06:25 -07:00
Leonardo de Moura
4516d1b046
feat(library/init/meta/attribute, library/tactic/user_attribute): make sure caching_user_attribute is in (Type 1)
2016-10-04 02:05:34 -07:00
Leonardo de Moura
6b582ca6c3
fix(library/vm/vm): bug at get_constant
2016-10-04 01:58:39 -07:00
Leonardo de Moura
269fb198fb
perf(library/type_context): process function before arguments
2016-10-03 23:34:14 -07:00
Leonardo de Moura
629cfa6ba1
feat(library/tactic/simplifier): disable broken theory_simplifiers
2016-10-03 22:06:44 -07:00
Leonardo de Moura
f9ca306fe2
chore(tests/lean/run): fix tests
2016-10-03 21:44:48 -07:00
Leonardo de Moura
d549044d27
feat(library/init/meta,library/tactic/simplifier): user defined simp attributes
2016-10-03 21:39:17 -07:00
Leonardo de Moura
4a2946f5dd
feat(library/tactic/eval): eval_expr for arbitrary expressions
2016-10-03 19:01:22 -07:00
Leonardo de Moura
16985d0de1
feat(frontends/lean/elaborator): better error message for eval_expr
2016-10-03 18:23:47 -07:00
Leonardo de Moura
7465529445
feat(library/tactic): 'eval_expr' tactic skeleton
2016-10-03 16:26:28 -07:00
Leonardo de Moura
7c07d269f9
refactor(library/tactic/user_attribute): cache builder must be a tactic
2016-10-03 14:20:37 -07:00