Leonardo de Moura
|
648f6c5f82
|
fix(library/blast/strategies): constructor action was being applied too soon
|
2015-12-05 19:44:07 -08:00 |
|
Leonardo de Moura
|
20d7727a9c
|
fix(library/blast/forward/pattern): pattern inference bug
|
2015-12-05 19:38:24 -08:00 |
|
Leonardo de Moura
|
ae8efb684e
|
fix(tests/lean/run/blast9): missing option
|
2015-12-05 19:26:37 -08:00 |
|
Leonardo de Moura
|
aa998bfad3
|
fix(library/fun_info_manager): reducibility issue
|
2015-12-05 19:26:06 -08:00 |
|
Leonardo de Moura
|
6193816f6a
|
fix(library/tmp_type_context): bug at pop()
|
2015-12-05 19:14:33 -08:00 |
|
Leonardo de Moura
|
df567717f8
|
feat(library/blast/strategies): add 'blast.strategy "preprocess"'
|
2015-12-05 18:17:15 -08:00 |
|
Leonardo de Moura
|
9736b8d79c
|
test(tests/lean/attr_at3): add test for 'attribute ... at ...'
|
2015-12-05 11:17:42 -08:00 |
|
Leonardo de Moura
|
e5aab3fd63
|
feat(library/scoped_ext,frontends/lean): add support for setting attributes into different namespaces
|
2015-12-05 11:15:02 -08:00 |
|
Daniel Selsam
|
934b502c6f
|
refactor(algebra/numeral): prove lemmas incrementally
|
2015-12-05 08:56:56 -08:00 |
|
Daniel Selsam
|
08e0fc796b
|
feat(library/blast/actions): by_contradiction action
|
2015-12-04 20:19:05 -08:00 |
|
Daniel Selsam
|
a04c28d4c9
|
refactor(library/algebra): construct simplifier sets incrementally
|
2015-12-04 18:28:56 -08:00 |
|
Leonardo de Moura
|
2682fe9525
|
feat(library/blast/blast): force 'ne' to be always transparent
|
2015-12-04 18:24:36 -08:00 |
|
Leonardo de Moura
|
5da1b52e47
|
feat(library/blast/unit/unit_propagate): make sure unif_propagate works even if 'not' is marked as '[reducible]'
|
2015-12-04 16:49:21 -08:00 |
|
Leonardo de Moura
|
5d38a5a5cd
|
test(tests/lean/run/blast_ematch10): make sure the test is for the cc module
|
2015-12-04 14:03:51 -08:00 |
|
Leonardo de Moura
|
a8b6a286dd
|
fix(library/app_builder): make sure app_builder works even if iff is marked as reducible
|
2015-12-04 13:51:56 -08:00 |
|
Leonardo de Moura
|
07cb35fd3c
|
fix(library/abstract_expr_manager): incorrect handling of de-Bruijn variables
|
2015-12-04 09:27:21 -08:00 |
|
Leonardo de Moura
|
2edf91ce42
|
fix(tests/lean/interactive/findp): broken test output
|
2015-12-04 08:40:21 -08:00 |
|
Daniel Selsam
|
6e478696d2
|
feat(library/blast/unit): preprocessor placeholder
|
2015-12-04 08:30:04 -08:00 |
|
Daniel Selsam
|
0df4556eb5
|
feat(library/blast/unit): quantified and non-Prop facts
|
2015-12-04 08:30:03 -08:00 |
|
Daniel Selsam
|
2bf9989bd9
|
refactor(library/blast/unit): simplify module
|
2015-12-04 08:30:03 -08:00 |
|
Leonardo de Moura
|
6bbe72190d
|
fix(library/congr_lemma_manager): bug in congruence lemma generator
|
2015-12-03 14:21:30 -08:00 |
|
Leonardo de Moura
|
038369533e
|
fix(library/blast/recursor_action): indexed families
|
2015-12-02 23:43:15 -08:00 |
|
Leonardo de Moura
|
1c1cfdd010
|
test(tests/lean/run): add Dan's reducible+ematch test
|
2015-12-02 23:32:43 -08:00 |
|
Leonardo de Moura
|
87995b96e3
|
fix(library/blast/congruence_closure): is_relation_app ==> is_equivalence_relation_app
|
2015-12-02 23:28:57 -08:00 |
|
Daniel Selsam
|
139536896c
|
feat(library/light_lt_manager): light wrappers for ordered rewriting
|
2015-12-02 22:56:54 -08:00 |
|
Leonardo de Moura
|
028ef47c84
|
feat(frontends/lean,library/blast/forward/pattern): check whether patterns can be inferred at declaration time
|
2015-12-02 22:52:55 -08:00 |
|
Leonardo de Moura
|
f84c6a6cfa
|
fix(library/blast,frontends/lean): handling pattern hints after unfolding
|
2015-12-02 22:52:55 -08:00 |
|
Leonardo de Moura
|
950f356d9a
|
refactor(library/blast,frontends/lean): forward pattern index
|
2015-12-02 22:52:55 -08:00 |
|
Leonardo de Moura
|
a83a7f8356
|
feat(library/blast/forward/pattern): remove redundant multi-patterns
|
2015-12-02 22:52:55 -08:00 |
|
Leonardo de Moura
|
ec7c38d847
|
feat(library/blast/forward/pattern): add minimal pattern validation
|
2015-12-02 22:52:55 -08:00 |
|
Leonardo de Moura
|
2090e9124c
|
test(tests/lean/run): add more tests from algebra
|
2015-12-02 22:52:55 -08:00 |
|
Leonardo de Moura
|
48de943678
|
test(tests/lean/run): add Daniel's example
|
2015-12-02 22:52:55 -08:00 |
|
Leonardo de Moura
|
4f06e91ce5
|
test(tests/lean/run): add new test
|
2015-12-02 22:52:55 -08:00 |
|
Leonardo de Moura
|
1ab39a518f
|
chore(tests/lean/run/blast_ematch5): disable unnecessary options
|
2015-12-02 22:52:54 -08:00 |
|
Leonardo de Moura
|
32ad59adc1
|
feat(library/blast/forward/ematch): add support for multi-patterns
|
2015-12-02 22:52:54 -08:00 |
|
Leonardo de Moura
|
a8bb4ba109
|
fix(library/blast/congruence_closure): bug in congruence closure proof extraction
|
2015-12-02 22:52:54 -08:00 |
|
Leonardo de Moura
|
5844e96734
|
test(tests/lean/run): add basic ematching tests
|
2015-12-02 22:52:54 -08:00 |
|
Leonardo de Moura
|
08bb966581
|
feat(library/blast/forward/ematch): generate new instances
|
2015-12-02 22:52:54 -08:00 |
|
Leonardo de Moura
|
e4e9c30e66
|
fix(frontends/lean/builtin_cmds): print patterns
|
2015-12-02 22:52:54 -08:00 |
|
Leonardo de Moura
|
fdd442bd38
|
feat(frontends/lean/decl_attributes): turn on [forward] if pattern hints have been provided
|
2015-12-02 22:52:54 -08:00 |
|
Leonardo de Moura
|
41ff4bc193
|
feat(library/blast/forward/pattern): pattern inference and heuristic instantiation index
|
2015-11-25 23:45:08 -08:00 |
|
Leonardo de Moura
|
84b54ad027
|
test(tests/lean/run): disable recursor tactic and add tests for unit+cc
|
2015-11-25 06:43:48 -08:00 |
|
Daniel Selsam
|
ca71a2eb12
|
feat(library/blast/unit): conjunctive conclusions
|
2015-11-24 22:45:39 -08:00 |
|
Daniel Selsam
|
eac1ebbf72
|
feat(library/blast/unit): propagate clauses
|
2015-11-24 21:16:01 -08:00 |
|
Leonardo de Moura
|
67a4cd3972
|
feat(frontends/lean): add print [no_pattern] command
|
2015-11-24 18:48:22 -08:00 |
|
Leonardo de Moura
|
f4a7268bd7
|
fix(library/blast/congruence_closure): bug in add_eqv_step
|
2015-11-23 14:26:33 -08:00 |
|
Leonardo de Moura
|
0bd417bc2a
|
test(tests/lean/run/blast23): missing test
|
2015-11-22 18:23:01 -08:00 |
|
Leonardo de Moura
|
1bd827dffc
|
feat(library/blast/simplifier/simplifier_actions): add simplify_hypothesis_action
|
2015-11-22 17:49:00 -08:00 |
|
Leonardo de Moura
|
989a2e077b
|
fix(tests/lean): adjust tests
|
2015-11-22 17:15:28 -08:00 |
|
Leonardo de Moura
|
a0284b0e82
|
fix(tests/lean/simplifier11): contextual ite lemma has been renamed
|
2015-11-22 17:08:15 -08:00 |
|
Leonardo de Moura
|
fc461ce832
|
feat(library/app_builder): avoid redundant proof terms at mk_of_iff_true and mk_not_of_iff_false
|
2015-11-22 15:49:17 -08:00 |
|
Leonardo de Moura
|
94f7b7f95d
|
feat(library/blast/congruence_closure): add support for propagating units in the congruence closure module
See blast_cc12.lean for example.
|
2015-11-22 15:39:44 -08:00 |
|
Leonardo de Moura
|
6fc0e41439
|
fix(library/blast/congruence_closure): proof generation for congruences such as (a = b) <-> (b = a)
The congruence closure module treats these two terms as the same thing.
So, we should take this into account when building proofs
|
2015-11-21 19:50:59 -08:00 |
|
Leonardo de Moura
|
5e9914ef45
|
feat(library/blast/congruence_closure): avoid eq.rec if major premise is eq.refl
|
2015-11-21 19:00:16 -08:00 |
|
Leonardo de Moura
|
091b0f0cc7
|
feat(library/blast): add option for disabling congruence closure
|
2015-11-21 17:45:25 -08:00 |
|
Leonardo de Moura
|
c4328aad3a
|
feat(library/blast/congruence_closure): missing case
|
2015-11-21 17:40:15 -08:00 |
|
Leonardo de Moura
|
962a61801e
|
test(tests/lean/run/blast_cc8): add card based on finite_set test for congruence closure module
|
2015-11-21 15:04:16 -08:00 |
|
Leonardo de Moura
|
c49caf3740
|
feat(library/blast/congruence_closure): add support for user-defined congruence lemmas in the congruence closure module
|
2015-11-21 14:43:51 -08:00 |
|
Leonardo de Moura
|
c280ddb2b0
|
fix(tests,doc): adjust tests and documentation
|
2015-11-20 17:03:17 -08:00 |
|
Leonardo de Moura
|
1a4068878e
|
fix(tests/lean/run): adjust tests
|
2015-11-20 16:46:10 -08:00 |
|
Leonardo de Moura
|
eb3d73873a
|
test(tests/lean/run/blast_cc4): congruence_closure and type classes
|
2015-11-20 14:01:15 -08:00 |
|
Leonardo de Moura
|
2627eade8b
|
test(tests/lean/run/blast_cc3): add test for congruence_closure with dependent types
|
2015-11-20 13:55:22 -08:00 |
|
Leonardo de Moura
|
8f368cebbf
|
feat(library/blast/congruence_closure): lift equalities
|
2015-11-20 13:48:22 -08:00 |
|
Leonardo de Moura
|
28970ef717
|
feat(library/blast/congruence_closure): proof extraction
|
2015-11-20 12:23:32 -08:00 |
|
Leonardo de Moura
|
6bd92e144a
|
test(tests/lean/run/blast20): uncomment example that can now be solved
|
2015-11-19 11:46:22 -08:00 |
|
Daniel Selsam
|
5ada4312d7
|
feat(library/blast/forward): propositional forward chaining
|
2015-11-19 11:44:53 -08:00 |
|
Leonardo de Moura
|
f78e57fd52
|
feat(shell,frontends/lean): add command line option --dir
See #821
See #788
|
2015-11-19 08:34:23 -08:00 |
|
Leonardo de Moura
|
093a212ed4
|
test(tests/lean/run/blast21): another blast test
|
2015-11-18 19:20:32 -08:00 |
|
Leonardo de Moura
|
3bd83b8e41
|
feat(library/blast/backward/backward_strategy): don't try constructor action by default
|
2015-11-18 19:14:37 -08:00 |
|
Leonardo de Moura
|
3f6ec66b36
|
test(tests/lean/run/blast20): more tests
|
2015-11-18 19:12:58 -08:00 |
|
Daniel Selsam
|
413989afd6
|
feat(library/blast/backward): backward chaining strategy
|
2015-11-18 17:48:39 -08:00 |
|
Leonardo de Moura
|
e580e6cdb1
|
fix(tests/lean/interactive/findp): adjust test
|
2015-11-18 10:10:46 -08:00 |
|
Leonardo de Moura
|
de67288305
|
fix(library/app_builder): mk_rel supports relations where the lhs and rhs are not necessarily the last two arguments (e.g., heq)
|
2015-11-17 18:45:22 -08:00 |
|
Leonardo de Moura
|
f363975856
|
feat(frontends/lean): add command #congr_rel for testing new congruence lemma for equivalence relations
|
2015-11-17 18:45:22 -08:00 |
|
Leonardo de Moura
|
a96aed6dfe
|
test(tests/lean): add tests for simp priorities
|
2015-11-16 22:41:04 -08:00 |
|
Leonardo de Moura
|
491c7c55e1
|
feat(library/simplifier/simp_rule_set): add priorities for simp and congr rules
|
2015-11-16 22:34:06 -08:00 |
|
Leonardo de Moura
|
5095f05303
|
fix(tests/lean/interactive/findp): adjust test to recent changes in the standard lib
|
2015-11-16 21:30:28 -08:00 |
|
Daniel Selsam
|
835e8995b4
|
test(simplifier19): nested fusion
|
2015-11-16 20:39:16 -08:00 |
|
Daniel Selsam
|
a689c66b1e
|
fix(library/blast/simplifier): handle scalar in fusion
|
2015-11-16 20:39:15 -08:00 |
|
Daniel Selsam
|
49ff8640d9
|
fix(library/blast/simplifier): use ac rules for numerals
|
2015-11-16 20:39:15 -08:00 |
|
Daniel Selsam
|
8ca5d87f0b
|
feat(library/blast/simplifier): rely on norm_num for recursion
|
2015-11-16 20:33:22 -08:00 |
|
Daniel Selsam
|
7cd15aaecd
|
test(simplifier11): add necessary simp rule
|
2015-11-16 20:33:22 -08:00 |
|
Daniel Selsam
|
6ba42bb7bc
|
test(simplifier11.lean): add rule for (not P)
|
2015-11-16 20:33:22 -08:00 |
|
Daniel Selsam
|
a02459fe5e
|
test(simplifier9.lean): fix order of congr rules
|
2015-11-16 20:33:22 -08:00 |
|
Daniel Selsam
|
b9a516783c
|
fix(library/blast/simplifier): remove unnecessary casts
|
2015-11-16 20:33:22 -08:00 |
|
Leonardo de Moura
|
60945e95b4
|
feat(library/blast): add 'discard' action for detecting irrelevant hypotheses
|
2015-11-16 11:43:51 -08:00 |
|
Leonardo de Moura
|
b3ca5faa49
|
fix(tests/lean): some of the simplifier tests
|
2015-11-16 11:01:53 -08:00 |
|
Daniel Selsam
|
5e8068b2b2
|
feat(library/blast/simplifier): draft of fusion
|
2015-11-16 09:13:07 -08:00 |
|
Daniel Selsam
|
6290919170
|
test(tests/lean/simplifier_norm_num): add moderate sized test
|
2015-11-16 09:13:07 -08:00 |
|
Daniel Selsam
|
30b1b79c4e
|
fix(algebra/simplifier): update numeral simp rules
|
2015-11-16 09:12:29 -08:00 |
|
Leonardo de Moura
|
db59c6829c
|
feat(library/blast): add basic support for non-recursive recursors/eliminators in the simple_strategy, fix bug at recursor_action
|
2015-11-15 18:39:12 -08:00 |
|
Leonardo de Moura
|
a545860aa1
|
feat(library/blast/intros_action): apply head_beta_reduce at intros
|
2015-11-15 18:14:12 -08:00 |
|
Leonardo de Moura
|
24ed427c2f
|
feat(library/blast): add "recursor" (aka elimination/induction) action
|
2015-11-15 18:00:32 -08:00 |
|
Leonardo de Moura
|
0dc31227f8
|
feat(library/init/logic): mark ne reducible
|
2015-11-15 15:09:02 -08:00 |
|
Leonardo de Moura
|
60434b3487
|
fix(tests/lean/urec): adjust test to recent changes
|
2015-11-15 15:06:05 -08:00 |
|
Leonardo de Moura
|
1308c7c4e2
|
feat(library/blast): add action for not(a ~ a) when ~ is a reflexive relation
|
2015-11-15 15:00:25 -08:00 |
|
Leonardo de Moura
|
ff73fb22fb
|
feat(library/user_recursors): store whether recursor is recursive or not
|
2015-11-15 12:37:35 -08:00 |
|
Leonardo de Moura
|
676ffb77f9
|
test(tests/lean/run): test for simp action
|
2015-11-15 11:36:24 -08:00 |
|
Leonardo de Moura
|
fd41a4f76d
|
feat(library/blast): add simplify_target action
|
2015-11-14 16:18:12 -08:00 |
|
Leonardo de Moura
|
b5db77961d
|
feat(library/blast): add "trivial" action
|
2015-11-14 15:02:14 -08:00 |
|