Commit graph

367 commits

Author SHA1 Message Date
Leonardo de Moura
251b53c669 refactor(library/blast/strategies): rename 'debug_action_strategy' to 'action_strategy'
Now, we can also provide a "name" for tracing purposes when
instantiating action_strategy.
2015-12-29 20:45:24 -08:00
Leonardo de Moura
41a01bb606 feat(library/blast/forward/ematch): add option 'blast.ematch.max_instances' 2015-12-29 20:36:11 -08:00
Leonardo de Moura
0148bb08fd feat(library/blast): add 'ematch_simp' strategy for blast and msimp shortcut for it.
This strategy is based on ematching and congruence closure, but it uses
the [simp] lemmas instead of [forward] lemmas.
2015-12-29 20:04:31 -08:00
Leonardo de Moura
86a5379a96 feat(library/blast): include strategies failure states in the tactic_exception
Reason: better flycheck error messages
2015-12-29 17:14:55 -08:00
Leonardo de Moura
b117a10f82 refactor(library/blast/simplifier): use priority_queue to store simp/congr lemmas, use name convention used at forward/backward lemmas, normalize lemmas when blast starts, cache get_simp_lemmas 2015-12-28 17:52:57 -08:00
Leonardo de Moura
5b7dc31ad1 chore(library/blast/backward): remove unnecessary include 2015-12-28 14:26:18 -08:00
Leonardo de Moura
079a25f770 refactor(library/blast/forward): make sure backward and forward modules use same naming convention 2015-12-28 12:37:16 -08:00
Leonardo de Moura
c8b9c98eb6 refactor(library/blast/backward): use priority_queue, make sure head is normalized when building index 2015-12-28 12:26:06 -08:00
Leonardo de Moura
26d0a62052 refactor(*): make sure we use LEAN_DEFAULT_PRIORITY
We recently implemented the attribute manager.
2015-12-28 10:47:56 -08:00
Leonardo de Moura
f177082c3b refactor(*): normalize metaclass names
@avigad and @fpvandoorn, I changed the metaclasses names. They
were not uniform:
- The plural was used in some cases (e.g., [coercions]).
- In other cases a cryptic name was used (e.g., [brs]).

Now, I tried to use the attribute name as the metaclass name whenever
possible. For example, we write

   definition foo [coercion] ...
   definition bla [forward] ...

and

  open [coercion] nat
  open [forward] nat

It is easier to remember and is uniform.
2015-12-28 10:39:15 -08:00
Leonardo de Moura
89a5d00714 chore(library/blast): style 2015-12-28 09:08:18 -08:00
Leonardo de Moura
2a5a904416 feat(library/blast/discr_tree): remove hack for setting m_fn flag 2015-12-28 09:08:18 -08:00
Leonardo de Moura
93b912ec89 feat(library/blast): use discrimination trees instead of head_map for indexing hypotheses 2015-12-28 09:08:18 -08:00
Leonardo de Moura
1f1fafd535 feat(library/blast/discr_tree): erase operation 2015-12-28 09:08:18 -08:00
Leonardo de Moura
45c29d422f feat(library/blast/discr_tree): set edge m_fn flag 2015-12-28 09:08:18 -08:00
Leonardo de Moura
43e1292f22 feat(library/blast): add discrimination trees 2015-12-28 09:08:17 -08:00
Leonardo de Moura
a7d1625765 fix(library/blast/forward/forward_lemma_set): check pattern inference when setting attribute 2015-12-17 22:50:14 -08:00
Leonardo de Moura
45dbf76df9 refactor(library): add attribute manager 2015-12-17 20:58:15 -08:00
Leonardo de Moura
73b28c91a6 fix(library/type_context): local constant management bug 2015-12-15 18:49:26 -08:00
Leonardo de Moura
10273bf176 feat(library/blast/forward/pattern): improve pattern inference heuristic 2015-12-15 12:55:43 -08:00
Leonardo de Moura
8094ca1c70 fix(library/blast/backward): crash when pretty printing backward rule set
We make sure it doesn't depend on the blast state.
2015-12-10 10:38:53 -08:00
Leonardo de Moura
1f8de7b50b feat(library/blast): refine trace messages 2015-12-09 18:38:20 -08:00
Leonardo de Moura
34e85be970 feat(library/blast): add 'blast.deadend' tracing option 2015-12-09 17:45:36 -08:00
Leonardo de Moura
1502248d30 feat(library/blast): trace strategy name 2015-12-09 17:13:28 -08:00
Leonardo de Moura
6abf2fd975 feat(library/blast/congruence_closure): avoid unnecessary propagations in the congruence closure module 2015-12-09 12:17:51 -08:00
Leonardo de Moura
6bbbc3d50e feat(library/blast): improve trace messages 2015-12-09 11:38:39 -08:00
Leonardo de Moura
a7f5d6603a feat(library/blast/actions/recursor_action): trace recursor name 2015-12-09 11:25:05 -08:00
Leonardo de Moura
f9a669665a feat(library/blast/backward/backward_action): display lemma name in backward action 2015-12-09 11:07:53 -08:00
Leonardo de Moura
53a05e845e chore(library/blast/trace): fix style 2015-12-09 09:35:46 -08:00
Leonardo de Moura
fbaa3e13ab chore(library/blast/simplifier/simplifier): use '-->' for tracing a rewrite 2015-12-09 08:06:05 -08:00
Leonardo de Moura
6b91505c0e feat(library/blast/trace): improve trace depth 2015-12-09 08:04:02 -08:00
Leonardo de Moura
e9d6326b88 feat(library/blast/trace): do not show common prefix between states when tracing 2015-12-09 07:55:12 -08:00
Leonardo de Moura
c1a4e0ee4f feat(library/blast): trace target 2015-12-09 07:34:15 -08:00
Leonardo de Moura
36f3549c44 fix(library/blast/blast): make sure blast uses the given ios options for tracing
They might have been updated using the with_options tactic
2015-12-09 07:21:18 -08:00
Leonardo de Moura
c6fc18a8d1 chore(library/blast/simplifier/simplifier): remove "dead" field 2015-12-09 07:13:54 -08:00
Leonardo de Moura
aed0c7cccf chore(library/blast/state): trace msg 2015-12-09 07:13:19 -08:00
Leonardo de Moura
08052c1988 feat(library/blast): improve tracing 2015-12-08 19:53:25 -08:00
Leonardo de Moura
429527eb72 refactor(library/blast): move to new tracing infrastructure 2015-12-08 19:37:06 -08:00
Leonardo de Moura
78533cde0a chore(library/blast/blast): reorg blast tracing 2015-12-08 15:57:25 -08:00
Leonardo de Moura
f0c42defc8 feat(library/blast/grinder): add tracing for suspicious event 2015-12-08 15:53:43 -08:00
Leonardo de Moura
b145a7332a feat(library/blast/congruence_closure): use new tracing infrastructure 2015-12-08 15:18:21 -08:00
Leonardo de Moura
7da64a768f refactor(library/type_context): with the new tracing infrastructure, type_context doesn't need an io_state 2015-12-08 14:58:08 -08:00
Leonardo de Moura
9b69ccd2f8 feat(library/app_builder): add trace messages to app_builder 2015-12-08 13:43:15 -08:00
Leonardo de Moura
e5a6bc5b85 feat(library/blast/simplifier/simplifier): move to new tracing framework 2015-12-08 12:59:30 -08:00
Leonardo de Moura
041c1cbb17 feat(library/blast): add strategies "grind" and "core_grind" 2015-12-07 20:30:59 -08:00
Leonardo de Moura
be99d5f26f fix(library/blast/strategies/preprocess_strategy): do not show failure state again 2015-12-07 19:31:34 -08:00
Leonardo de Moura
6bfc22de11 feat(library/blast/grinder): add grinder strategy 2015-12-07 19:09:10 -08:00
Leonardo de Moura
eefc57af2f feat(library/blast/grinder): add grinder actions 2015-12-07 18:43:15 -08:00
Leonardo de Moura
48bc18d492 feat(library/blast/grinder/intro_elim_lemmas): add intro/elim lemmas validation 2015-12-07 18:43:15 -08:00
Leonardo de Moura
5f5e4fe7fb feat(library/blast/grinder): add intro/elim lemmas 2015-12-07 18:43:12 -08:00