Leonardo de Moura
2df280431a
fix(library/compiler/comp_irrelevant): fix #1302
2017-01-11 11:10:17 -08:00
Leonardo de Moura
19e20f7e1a
fix(frontends/lean/elaborator): universe elaboration issue
2017-01-10 22:35:12 -08:00
Leonardo de Moura
e96bbaee3f
fix(library/type_context): fix #1295
2017-01-10 11:54:38 -08:00
Leonardo de Moura
8e26d200b0
test(tests/lean/run/smt_facts_as_hinst_lemmas): add test for facts as hinst_lemmas
2017-01-10 11:27:22 -08:00
Gabriel Ebner
a586cadfa1
chore(tests/lean/run/super_examples): clean up
2017-01-10 09:07:37 -08:00
Gabriel Ebner
890ba702e6
feat(tools/super/demod): demodulation
2017-01-10 09:07:37 -08:00
Gabriel Ebner
244e061f76
refactor(tools/super/simp): do not enable simp by default
...
simp interacts badly with super's term ordering. I believe a better
approach is to pick the term ordering according to the available simp
rules, as in "More SPASS with Isabelle".
2017-01-10 09:07:37 -08:00
Leonardo de Moura
30a962d5e0
test(tests/lean/run): add more tests for the smt_tactic framework
2017-01-09 19:26:29 -08:00
Leonardo de Moura
b1c1d2dfa4
feat(library/init/meta): improve dsimp tactic notation
2017-01-09 17:31:35 -08:00
Leonardo de Moura
b89b1dd4c7
chore(tests/lean/run/nested_common_subexpr_issue): typo
2017-01-09 15:36:49 -08:00
Leonardo de Moura
b526e30c55
fix(library/compiler/cse): common subexpressions inside common subexpressions were not being eliminated
2017-01-09 11:11:55 -08:00
Leonardo de Moura
0a6a09fb3a
fix(library/tactic/smt/hinst_lemmas): pattern normalization issue
2017-01-08 23:35:39 -08:00
Leonardo de Moura
5ba414700f
fix(library/tactic/smt/smt_state): canonize at intros
2017-01-08 19:31:04 -08:00
Leonardo de Moura
347981097a
chore(tests/lean/run/heap): fix travis build, profiler option is not available in single threaded build
2017-01-08 10:53:34 -08:00
Leonardo de Moura
26949db4f1
fix(library/tactic/smt/smt_state): remove auxiliary hypotheses added by the equation compiler
2017-01-08 10:36:38 -08:00
Leonardo de Moura
a1a5a9ab96
test(tests/lean/run/smt_ematch2): add ematching tests
2017-01-08 10:07:15 -08:00
Leonardo de Moura
9d273d924f
fix(library/tactic/smt/congruence_closure): must check whether constructors have the same type or not
2017-01-08 00:36:57 -08:00
Leonardo de Moura
8069872861
fix(library/tactic/backward/backward_chaining): bug in back_chaining tactic
2017-01-07 11:19:03 -08:00
Leonardo de Moura
b0bcb4af57
chore(tests/lean/run/listex2): fix issue at travis, profiler option is not available in single thread build
2017-01-07 10:39:57 -08:00
Leonardo de Moura
94f16d1e44
refactor(library/tactic): move defeq_canonizer::state to tactic_state
...
It was being stored in the environment before. This was very hackish,
and it was producing a series of unnecessary environment updates, and
thread local caches invalidations.
The new test tests/lean/run/heap.lean is 5x-6x faster after this commit.
2017-01-07 10:17:51 -08:00
Leonardo de Moura
d81acfc44a
feat(library/tactic/smt/smt_state): use eta reduction in the smt preprocessor
2017-01-06 20:23:41 -08:00
Leonardo de Moura
d333c444cd
test(tests/lean/run): add tactic examples
2017-01-06 18:48:03 -08:00
Leonardo de Moura
5e3f26ec95
feat(library/tactic/smt/congruence_closure): propagate not_exists
2017-01-06 14:00:36 -08:00
Leonardo de Moura
13a11b4374
feat(library/init/meta/interactive): add get_eqn_lemmas_for tactic, allow user to provide definition name as an argument to simp
2017-01-06 11:45:09 -08:00
Leonardo de Moura
db70c78704
feat(library/equations_compiler): make sure automatically generated equational lemmas use internal names
2017-01-06 11:40:34 -08:00
Leonardo de Moura
15eaf30192
feat(library/tactic/smt/smt_state): allow user to provide a function ("to be unfolded") in the ematch_using tactic
2017-01-06 00:33:58 -08:00
Leonardo de Moura
7e4b79b221
feat(library/tactic/smt/smt_state): add ematch_using tactic
2017-01-06 00:24:25 -08:00
Leonardo de Moura
6f328071ff
feat(library/tactic/smt/congruence_closure): basic support for beta-reduction
2017-01-05 23:36:14 -08:00
Leonardo de Moura
4a76579cd0
feat(library/tactic/smt): add tactics for getting/setting ematching lemmas
2017-01-05 20:35:57 -08:00
Leonardo de Moura
5723b63afe
feat(library/tactic/smt/smt_state): add new tracing for smt
2017-01-05 18:47:42 -08:00
Leonardo de Moura
7ba889b5cf
feat(frontends/lean/tactic_notation): try/repeat for smt_tactic in interactive mode
2017-01-05 18:31:57 -08:00
Leonardo de Moura
82f8eeb280
feat(frontends/lean/definition_cmds): generate equational lemmas for regular definitions that were elaborated without using the equation compiler
2017-01-05 18:02:14 -08:00
Leonardo de Moura
044fe965da
fix(library/tactic/unfold_tactic): failed to unfold prefix
2017-01-05 18:01:19 -08:00
Leonardo de Moura
b18b49dd6b
feat(library/tactic/smt/smt_state): add tactic for adding equational lemmas for a definition
2017-01-05 15:47:58 -08:00
Leonardo de Moura
3742d6573d
feat(library/tactic/smt/smt_state): add preprocess tactic
2017-01-05 13:43:50 -08:00
Leonardo de Moura
8eadaf51d8
feat(library/init/meta/smt): add helper tactics: get_facts, proof_for, refutation_for, add_lemmas_from_facts, ...
2017-01-05 12:59:11 -08:00
Leonardo de Moura
52c1a15313
feat(library/tactic/smt): add tactics for adding new lemmas to ematch state
2017-01-05 11:44:25 -08:00
Leonardo de Moura
0969997c64
feat(library/tactic/smt): add ematch smt_tactic
2017-01-04 22:41:36 -08:00
Leonardo de Moura
8144eaa9bf
feat(library/init/meta/smt/ematch): add hinst_lemmas API
2017-01-04 18:04:53 -08:00
Leonardo de Moura
d53215a2fb
feat(frontends/lean/tactic_notation, library/init/meta/smt): add by_cases and by_contradiction smt_tactics, support for classical reasoning, add support for 'begin [smt] with config, ... end'
2017-01-04 12:03:45 -08:00
Leonardo de Moura
59f3c9775a
feat(frontends/lean/tactic_notation): add support for begin [smt] ... end blocks
...
TODO: add support for inspecting intermediate states.
2017-01-04 11:13:00 -08:00
Leonardo de Moura
30d90533bc
feat(library/tactic/destruct_tactic): support for non-dependent elimination
2017-01-03 18:33:57 -08:00
Leonardo de Moura
3adcf30d2f
feat(library/init/meta/smt_tactic): add assert/assertv/define/definev/pose/note for smt_tactic
2017-01-03 17:12:00 -08:00
Leonardo de Moura
b636f03bb9
test(tests/lean/run/using_smt1): missing test
2017-01-03 15:13:15 -08:00
Leonardo de Moura
554cef1d36
feat(library/tactic/smt/congruence_closure): propagate disequalities
2017-01-03 14:53:27 -08:00
Leonardo de Moura
51efc6c178
fix(library/tactic/smt/congruence_closure): missing propagation
2017-01-03 13:48:14 -08:00
Leonardo de Moura
2262f70545
test(tests/lean/run/using_smt3): add zeta/nozeta test
2017-01-03 11:28:41 -08:00
Leonardo de Moura
61bf8d5902
test(tests/lean/run/blast_unit): add old blast unit propagation tests
2017-01-02 19:38:31 -08:00
Leonardo de Moura
cefccd0e47
feat(library/tactic/smt): perform "unit propagation" in the congruence closure module
2017-01-02 18:49:26 -08:00
Leonardo de Moura
ca6d3743c7
feat(library/tactic/smt): add mk_eq_true_intro mk_of_eq_true mk_eq_false_intro mk_not_of_eq_false
2017-01-02 13:39:16 -08:00