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
|
b8e09bb86e
|
refactor(library/tactic/smt): move ematch Lean bindings to ematch.cpp
|
2017-01-05 10:35:59 -08:00 |
|
Leonardo de Moura
|
aaffcc59a9
|
refactor(library/tactic/smt): move hinst_lemma(s) Lean bindings to hinst_lemmas.cpp
|
2017-01-05 10:30:34 -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
|
df9ee8be69
|
chore(library/tactic/smt/hinst_lemmas): style
|
2017-01-04 20:38:15 -08:00 |
|
Leonardo de Moura
|
d784aba249
|
feat(library/tactic/smt/hinst_lemmas): change how transparency is used to process hinst_lemmas
|
2017-01-04 19:12:37 -08:00 |
|
Leonardo de Moura
|
7c6f449db0
|
chore(library/tactic/smt/hinst_lemmas): improve error message
|
2017-01-04 18:15:15 -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
|
384e8bc795
|
refactor(library/init/meta/smt): move ematch stuff to new file, and remove priority from hinst_lemma
|
2017-01-04 17:23:06 -08:00 |
|
Gabriel Ebner
|
9435762643
|
fix(compiler/vm_compiler): only compile computable non-builtin definitions
|
2017-01-04 16:30:22 -08:00 |
|
Gabriel Ebner
|
96398500b6
|
fix(library/module_mgr): do not cause waits for preimported modules
|
2017-01-04 16:30:22 -08:00 |
|
Gabriel Ebner
|
c9d2eeccf2
|
refactor(library/module): keep track of trust level in decl_modification
|
2017-01-04 16:30:22 -08:00 |
|
Gabriel Ebner
|
f6b8eb6821
|
feat(util/task_queue): lazy tasks
|
2017-01-04 16:30:22 -08:00 |
|
Leonardo de Moura
|
2e15304f05
|
feat(frontends/lean): add support for smt_state in the info_manager
|
2017-01-04 14:23:48 -08:00 |
|
Leonardo de Moura
|
5f2b247af9
|
feat(frontends/lean/tactic_evaluator): step-by-step evaluation for 'begin [smt] ... end' blocks
|
2017-01-04 14:06:44 -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
|
8a74a76720
|
chore(library/scope_pos_info_provider): style
|
2017-01-04 08:45:01 -08:00 |
|
Leonardo de Moura
|
d6ab3739ff
|
refactor(frontends/lean/elaborator): move tactic executation code to tactic_evaluator
|
2017-01-04 08:42:59 -08:00 |
|
Leonardo de Moura
|
0319fd5728
|
refactor(frontends/lean/elaborator): move pos_string_for
|
2017-01-04 07:32:44 -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
|
d546671849
|
chore(library/local_context): style
|
2017-01-03 15:00:46 -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
|
34073c6f32
|
feat(library/tactic/smt/smt_state): improve smt_goal formatting
|
2017-01-03 13:50:25 -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
|
d546dc57cd
|
feat(library/tactic/smt/smt_state): use simplifier in the preprocessing step
|
2017-01-03 11:58:00 -08:00 |
|
Scott Morrison
|
a85e89f555
|
fix(app_builder.h): fixing a typo in an error message
|
2017-01-03 11:23:01 -08:00 |
|
Leonardo de Moura
|
78f4ab605e
|
feat(library/tactic/smt): preprocessing configuration options
|
2017-01-03 11:06:33 -08:00 |
|
Leonardo de Moura
|
7f4693a26d
|
chore(library/vm/vm_nat): add default value at force_to_unsigned
|
2017-01-03 10:26:36 -08:00 |
|
Leonardo de Moura
|
de8491474c
|
feat(library/tactic/smt/congruence_closure): more propagation rules for implication, and cleanup
|
2017-01-02 19:35:12 -08:00 |
|
Leonardo de Moura
|
a7cd840c74
|
fix(library/tactic/smt/congruence_closure): incorrect condition
|
2017-01-02 19:33:55 -08:00 |
|
Leonardo de Moura
|
2239791eab
|
fix(library/tactic/smt/congruence_closure): typo
|
2017-01-02 18:55:45 -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 |
|
Leonardo de Moura
|
b200a86240
|
feat(library/tactic/smt): simplify congruence_closure internalization, visit lemmas at unit_propagation
|
2017-01-02 12:23:32 -08:00 |
|
Leonardo de Moura
|
316507081c
|
feat(library/tactic/smt): unit propagation interface
|
2017-01-02 10:28:26 -08:00 |
|
Leonardo de Moura
|
6e53d73e61
|
feat(library/tactic/smt): add cc_propagation_handler
|
2017-01-02 09:58:57 -08:00 |
|
Leonardo de Moura
|
a516d384ae
|
fix(library/compiler/erase_irrelevant): make sure io monad actions are not erased by dead code elimination optimization
|
2017-01-02 01:42:36 -08:00 |
|
Leonardo de Moura
|
32cc36214a
|
feat(library/init/meta/smt_tactic): allow user to select simp attribute to be used during SMT preprocessing, use preprocessing at intros too
|
2017-01-01 22:26:26 -08:00 |
|
Leonardo de Moura
|
effe19d334
|
feat(library/tactic/smt/smt_state): add smt_tactic.intros, define smt_state in Lean as (list smt_goal)
|
2017-01-01 14:17:03 -08:00 |
|
Leonardo de Moura
|
90096a3ee8
|
feat(library/init/meta/smt_tactic): add smt_tactic.close
|
2017-01-01 11:56:36 -08:00 |
|
Leonardo de Moura
|
19154e1ff3
|
chore(library/tactic/smt/smt_state): typo
|
2017-01-01 10:41:09 -08:00 |
|
Leonardo de Moura
|
d2e935522c
|
feat(library/tactic/smt/smt_state): unique names at intro_all
|
2017-01-01 09:44:39 -08:00 |
|
Leonardo de Moura
|
a44a975388
|
feat(library/type_context,frontends/lean/elaborator): add class_exception (for max depth reached), ignore them during coercion resolution (just add a trace message)
|
2017-01-01 08:51:09 -08:00 |
|
Leonardo de Moura
|
35cc334b10
|
feat(library/init/meta): smt_tactic skeleton
|
2016-12-31 18:22:23 -08:00 |
|
Gabriel Ebner
|
c90530193f
|
fix(library/st_task_queue): handle null dependencies
|
2016-12-31 15:15:49 +01:00 |
|
Gabriel Ebner
|
6fa246032f
|
fix(library/native_compiler): get_exe_location does not exist on emscripten
|
2016-12-31 15:15:20 +01:00 |
|
Leonardo de Moura
|
5f87ec3356
|
feat(library/tactic): allow user to write their own pretty printer for tactic states
|
2016-12-30 18:58:50 -08:00 |
|
Leonardo de Moura
|
5d825483c4
|
refactor(library/init/meta/interactive): tactic.interactive.types ==> interactive.types
Motivation: we will use auto-quotation for other tactic monads
|
2016-12-30 18:06:41 -08:00 |
|
Leonardo de Moura
|
b86494f0d4
|
feat(library/tactic): add destruct tactic that is similar to cases, but does not use revert/intro/clear
This tactic is useful for building more complex tactics using ematch and
cc because it does not invalidate cc_state nor ematch_state.
|
2016-12-30 17:05:24 -08:00 |
|