Leonardo de Moura
|
42289d4334
|
feat(library/tactic/class_instance_synth): create class instance synthesis subproblems only for arguments marked with the [] binder annotation
|
2015-02-24 16:12:39 -08:00 |
|
Leonardo de Moura
|
1cd44e894b
|
feat(library/tactic/class_instance_synth): conservative class-instance resolution: expand only definitions marked as reducible
closes #442
|
2015-02-24 16:12:35 -08:00 |
|
Leonardo de Moura
|
787fed95aa
|
fix(library/tactic/inversion_tactic): bug in simpler case (hypotheses were being lost)
|
2015-02-23 16:10:49 -08:00 |
|
Leonardo de Moura
|
7d35d18cad
|
fix(library/tactic/rewrite_tactic): bug when matching terms that expanded into projections
|
2015-02-22 18:23:10 -08:00 |
|
Leonardo de Moura
|
af787d9b7f
|
fix(library/constants): regenerate constants.cpp and fix affected files
|
2015-02-22 09:22:51 -08:00 |
|
Leonardo de Moura
|
7fc216183e
|
feat(library/tactic): produce better error message when a tactic fails
closes #348
|
2015-02-16 18:42:15 -08:00 |
|
Leonardo de Moura
|
5cbdd77ad0
|
feat(library/tactic/rewrite_tactic): improve matcher in rewrite_tactic
closes #433
|
2015-02-13 12:40:55 -08:00 |
|
Leonardo de Moura
|
98960cbeda
|
fix(library/tactic/rewrite_tactic): bug in HoTT mode
|
2015-02-13 10:09:18 -08:00 |
|
Leonardo de Moura
|
058377c8c6
|
feat(library/tactic/rewrite_tactic): treat iff.refl as trivial step in the rewrite tactic
|
2015-02-08 17:27:59 -08:00 |
|
Leonardo de Moura
|
e04250f0d8
|
refactor(library/tactic/rewrite_tactic): use default_converter
|
2015-02-07 16:44:51 -08:00 |
|
Leonardo de Moura
|
c2a296b1de
|
feat(library/tactic/apply_tactic): add flag for disabling class instance resolution in the apply tactic
|
2015-02-06 17:27:24 -08:00 |
|
Leonardo de Moura
|
1557a579ed
|
feat(library/tactic/proof_state): add report_failure flag to proof state
tactic can use the flag to produce nice error messages
|
2015-02-06 16:29:04 -08:00 |
|
Leonardo de Moura
|
2126b8ec9a
|
feat(library/tactic/apply_tactic): perform class-instance resolution in the apply tactic
closes #360
|
2015-02-06 16:14:03 -08:00 |
|
Leonardo de Moura
|
18808d133e
|
refactor(library/tactic/goal): move goal => local_context conversion to goal class
|
2015-02-06 16:09:59 -08:00 |
|
Leonardo de Moura
|
f10424d729
|
fix(library/tactic/rewrite_tactic): memory leak
|
2015-02-06 15:24:09 -08:00 |
|
Leonardo de Moura
|
aa70334f8d
|
feat(library/tactic/rewrite_tactic): add "fold" step
|
2015-02-06 15:21:49 -08:00 |
|
Leonardo de Moura
|
47bd5e53e2
|
fix(library/tactic/rewrite_tactic): memory leak
|
2015-02-06 14:24:10 -08:00 |
|
Leonardo de Moura
|
7aac9f1fdb
|
feat(library/tactic/rewrite_tactic): use expensive convertability checker at reduce_to steps and trivial goal
|
2015-02-06 13:53:03 -08:00 |
|
Leonardo de Moura
|
5b2a9dacc2
|
fix(library/tactic/rewrite_tactic): matcher should unfold only reducible constants
|
2015-02-06 13:44:04 -08:00 |
|
Leonardo de Moura
|
b4139627e5
|
feat(library/tactic/rewrite_tactic): add option to prevent any kind of constant unfolding when perfoming pattern matching in the rewrite tactic
|
2015-02-06 13:27:33 -08:00 |
|
Leonardo de Moura
|
ba9557bb94
|
fix(library/tactic/rewrite_tactic): incorrect assertion
|
2015-02-06 13:02:50 -08:00 |
|
Leonardo de Moura
|
2e626b29fb
|
feat(library/tactic/rewrite_tactic): allow many constants to be provided in a single rewrite unfold step
|
2015-02-06 11:03:36 -08:00 |
|
Leonardo de Moura
|
264cedb3a6
|
fix(frontends/lean/rewrite_tactic): incorrect assertion
|
2015-02-05 20:02:49 -08:00 |
|
Leonardo de Moura
|
e17ba27596
|
fix(library/tactic/rewrite_tactic): adjust the behavior of class resolution in rewriter
The solution is not very satisfactory. I should investigate it more.
|
2015-02-05 19:08:47 -08:00 |
|
Leonardo de Moura
|
ffe0d1186e
|
feat(library/tactic/rewrite_tactic): add "reduce_to" step at rewrite tactic
|
2015-02-05 13:59:55 -08:00 |
|
Leonardo de Moura
|
116c65bff5
|
feat(library/tactic/rewrite_tactic): add reduction step to rewrite tactic
|
2015-02-05 13:42:50 -08:00 |
|
Leonardo de Moura
|
7cdc88701d
|
feat(library/tactic/rewrite_tactic): add "reduction" step to rewrite tactic
|
2015-02-05 13:16:05 -08:00 |
|
Leonardo de Moura
|
808521223b
|
feat(library/tactic/rewrite_tactic): support constant unfolding in rewrite tactic
|
2015-02-05 12:58:30 -08:00 |
|
Leonardo de Moura
|
d6958be7e7
|
fix(library/tactic/location): replace cache must not be used when only a subset of all occurrences should be replaced at replace_occurrences
|
2015-02-05 10:50:40 -08:00 |
|
Leonardo de Moura
|
941b493835
|
chore(library/tactic/rewrite_tactic): modify param name
|
2015-02-05 10:04:03 -08:00 |
|
Leonardo de Moura
|
0abfa30ead
|
fix(library/tactic/rewrite_tactic): elaboration bug in the rewrite tactic steps/elements
|
2015-02-05 10:01:18 -08:00 |
|
Leonardo de Moura
|
14c72e82f6
|
feat(library/tactic/rewrite_tactic): add support for rewriting hypotheses
|
2015-02-04 20:04:19 -08:00 |
|
Leonardo de Moura
|
55fb678db2
|
fix(library/tactic/location): clang++ 3.3 compilation problem
|
2015-02-04 18:48:23 -08:00 |
|
Leonardo de Moura
|
42c2f7eb11
|
fix(library/tactic/rewrite_tactic): memory leak
|
2015-02-04 18:40:11 -08:00 |
|
Leonardo de Moura
|
89fde9d829
|
feat(library/tactic/rewrite_tactic): add maximum number of iterations threshold to rewrite tactic
The idea is to avoid nontermination.
|
2015-02-04 16:13:15 -08:00 |
|
Leonardo de Moura
|
dc297865d4
|
chore(library/tactic/rewrite_tactic): fix compilation warnings
|
2015-02-04 15:34:02 -08:00 |
|
Leonardo de Moura
|
ee079d12f4
|
feat(library/tactic/rewrite_tactic): remove trivial goal in rewrite_tactic
|
2015-02-04 15:29:52 -08:00 |
|
Leonardo de Moura
|
e5381679d6
|
feat(library/tactic/rewrite_tactic): rewrite goal
|
2015-02-04 15:17:58 -08:00 |
|
Leonardo de Moura
|
09818adf90
|
feat(library/tactic/rewrite_tactic): elaborate rewrite rule using unifier
|
2015-02-04 13:51:32 -08:00 |
|
Leonardo de Moura
|
ccae014ef9
|
feat(library/tactic/rewrite_tactic): ignore inst_implicit arguments when matching applications of declarations which contain them
|
2015-02-04 12:14:47 -08:00 |
|
Leonardo de Moura
|
0e05c239a5
|
feat(library/tactic/rewrite_tactic): add custom matcher pluging for rewriter
|
2015-02-04 11:51:39 -08:00 |
|
Leonardo de Moura
|
d6a7ec4621
|
chore(library/tactic/rewrite_tactic): fix style
|
2015-02-04 11:51:39 -08:00 |
|
Leonardo de Moura
|
b4dd2cc729
|
refactor(library/tactic/rewrite_tactic): more general rewrite step
The rule can be an arbitrary expression.
Allow user to provide a pattern that restricts the application of the rule.
|
2015-02-04 11:51:39 -08:00 |
|
Leonardo de Moura
|
461fd45efc
|
feat(frontends/lean): allow a different location for each rewrite element
|
2015-02-04 11:51:39 -08:00 |
|
Leonardo de Moura
|
c845e44777
|
feat(frontends/lean): parse rewrite tactic
|
2015-02-04 11:51:39 -08:00 |
|
Leonardo de Moura
|
180cda304e
|
feat(library/tactic): add rewrite tactic skeleton
The tactic has not been implemented yet, but this commit adds all the
support for storing arguments, serializing and deserializing them.
|
2015-02-04 11:51:39 -08:00 |
|
Leonardo de Moura
|
8a78adc9af
|
feat(library/tactic): add auxiliary object "location"
This object will used to specify the scope of application of tactics
|
2015-02-04 11:51:39 -08:00 |
|
Leonardo de Moura
|
4c7a17cc4a
|
refactor(library/tactic/class_instance_synth): move has_expr_metavar_relaxed to util
|
2015-02-01 10:59:27 -08:00 |
|
Leonardo de Moura
|
c311e0aba6
|
chore(library/tactic/inversion_tactic): cleanup
|
2015-02-01 10:47:32 -08:00 |
|
Leonardo de Moura
|
143143e94c
|
fix(library/tactic/inversion_tactic): missing normalization step in the inversion_tactic
|
2015-02-01 10:38:30 -08:00 |
|