Commit graph

1607 commits

Author SHA1 Message Date
Leonardo de Moura
b5444c1314 refactor(frontends/lean/builtin_cmds): allow "constant" edges in the instance transitive closure graph 2015-06-29 18:57:05 -07:00
Leonardo de Moura
0fc2efe88e fix(library/tactic/rewrite_tactic): fixes #702 2015-06-28 20:37:17 -07:00
Leonardo de Moura
1b864a838f fix(library/tactic/induction_tactic.cpp): condition for checking whether 'induction' tatic is applicable or not
fixes #690
2015-06-28 13:07:02 -07:00
Leonardo de Moura
88844f6261 chore(src/library/user_recursors): add missing include 2015-06-28 12:53:48 -07:00
Leonardo de Moura
2f75768243 feat(library/tactic/rewrite_tactic): fail when nothing is rewritten
fixes #686
2015-06-28 12:05:00 -07:00
Leonardo de Moura
8616ed096e fix(library/composition_manager): typo 2015-06-27 14:12:26 -07:00
Leonardo de Moura
ca0aa4eb47 feat(library/composition_manager): simplify compositions of the form (mk ... (proj (mk ...)) ...)
closes #666
2015-06-27 14:07:32 -07:00
Leonardo de Moura
430dc21a28 feat(library/composition_manager): disable conversion optimization for automatically generated compositions
see issue #666
2015-06-27 14:07:22 -07:00
Leonardo de Moura
bd0e9d958d feat(library/tc_multigraph): shorter names for transitive edges
see issue #666
2015-06-27 14:07:15 -07:00
Leonardo de Moura
859ef441a0 feat(library/class): transitive instances
see issue #666
2015-06-27 14:06:56 -07:00
Leonardo de Moura
68785b8bed fix(library/tactic/generalize_tactic): fixes #711 2015-06-26 19:35:30 -07:00
Leonardo de Moura
1886b71c17 fix(library/unifier): fixes #705 2015-06-26 19:10:46 -07:00
Leonardo de Moura
e3e9220ab9 fix(library/tactic/rewrite_tactic): fixes #708 2015-06-26 18:41:08 -07:00
Leonardo de Moura
c61e6f6595 feat(library/unifier): add new rule for constraints of the form (pr ...) =?= t, where (pr ...) is a "stuck" projection application 2015-06-26 17:18:29 -07:00
Leonardo de Moura
0b7859f387 feat(library,frontends/lean): add support for projections in the elaborator
The idea is to simulate the computation rules such as

    pr1 (mk a b) ==> a

in the elaborator
2015-06-26 17:18:29 -07:00
Leonardo de Moura
31a4ee2ac3 fix(library/inductive_unifier_plugin): avoid potential assertion violation 2015-06-26 17:18:29 -07:00
Leonardo de Moura
a680114fd8 fix(library/tactic/rewrite_tactic): potential crash in the rewrite tactic 2015-06-26 17:18:29 -07:00
Leonardo de Moura
5581b735f4 feat(library/constants.txt): add poly_unit and poly_unit.star 2015-06-25 17:36:34 -07:00
Floris van Doorn
fa1979c128 feat(datatypes): let the type of unit be the lowest non-Prop universe
The definitional package (brec_on and cases_on) now use poly_unit instead of unit

closes #698
2015-06-25 17:33:46 -07:00
Leonardo de Moura
5687c24944 refactor(library/tactic/induction_tactic): cleanup 2015-06-22 10:23:54 -07:00
Leonardo de Moura
aeea8f83c4 feat(library/composition_manager): check if existing definition is definitionally equal 2015-06-21 16:53:08 -07:00
Leonardo de Moura
b8243934de feat(library/tc_multigraph): finish transitive closed multigraph 2015-06-20 20:25:20 -07:00
Leonardo de Moura
c6ad37a651 chore(src/library/tc_multigraph): fix typo 2015-06-19 21:12:11 -07:00
Leonardo de Moura
6872761c67 fix(library/tc_multigraph): typos 2015-06-19 20:11:31 -07:00
Leonardo de Moura
1f753aeccb feat(library): add tc_multigraph skeleton 2015-06-19 20:05:05 -07:00
Leonardo de Moura
70fc05294b refactor(library/local_context): avoid hack in local_context 2015-06-18 15:41:00 -07:00
Leonardo de Moura
694eef7f6a fix(util/sexpr/format): retract change that may be creating problems for emscripten 2015-06-18 10:49:13 -07:00
Leonardo de Moura
a4c0699e81 feat(library/tactic/constructor_tactic): restore 'constructor' tactic old semantics, add 'fconstructor' tactic
See issue #676

Add new test demonstrating why it is useful to have the old semantics
for 'constructor'
2015-06-17 23:48:54 -07:00
Leonardo de Moura
bf71d9f342 fix(library/tactic/rewrite_tactic): fixes #682 2015-06-17 18:49:02 -07:00
Leonardo de Moura
ce8f2a1674 feat(library/class): allow any constant to be marked as a class
closes #679
2015-06-17 16:26:45 -07:00
Leonardo de Moura
c59e1f49db feat(library): add composition manager 2015-06-17 14:41:50 -07:00
Leonardo de Moura
14c33c4e01 feat(kernel/error_msgs): add workaround for issue #669
This issue should fix the new problem reported at #669.
It only disables beta-reduction in the pretty printer for application
type mismatch at (f n) when f is a lambda expression.
2015-06-17 12:00:25 -07:00
Leonardo de Moura
f60cdee14b fix(library/tactic/rewrite_tactic): memory leak 2015-06-16 15:47:21 -07:00
Leonardo de Moura
0ae24faae3 feat(library/tactic/constructor_tactic): use 'fapply' in 'constructor' tactic
closes #676
2015-06-16 12:03:31 -07:00
Leonardo de Moura
2277b170f6 feat(library/tactic/exact_tactic): use 'append' instead of 'orelse' at eassumption 'tactic' 2015-06-16 11:58:10 -07:00
Leonardo de Moura
169f956143 fix(library/tactic): remove dead code 2015-06-16 11:57:37 -07:00
Leonardo de Moura
d8620ef4c9 fix(kernel,library,frontends/lean): improve error messages
see #669
2015-06-14 19:44:00 -07:00
Leonardo de Moura
8699d2dfb7 feat(library/tactic/rewrite_tactic): display list of overloads occurring in a failed rewrite step 2015-06-14 16:30:18 -07:00
Leonardo de Moura
9fbf267a3f feat(library/tactic/rewrite_tactic): when 'rewrite' step fails apply esimp and try again
closes #670
2015-06-12 19:48:58 -07:00
Leonardo de Moura
7bad9fe554 feat(library/error_handling/error_handling): set 'pp.beta' to false when displaying errors
see issue #669
2015-06-12 14:46:51 -07:00
Leonardo de Moura
69be4c720c fix(library/tactic/subst_tactic): bug in 'subst' tactic 2015-06-12 12:11:44 -07:00
Leonardo de Moura
25cbc5c154 fix(kernel/expr): remove 'cast_binder_info'
We should put it back when we decide to implement it.
We also fix the bogus comment at src/frontends/lean/parser.cpp.

see issue #667
2015-06-11 18:11:22 -07:00
Leonardo de Moura
8b7dc4e03a feat(frontends/lean): apply eta-reduction in postprocessing step
Perhaps, we should add an option to disable this new feature.

Remark: this commit makes commit 46d418a redundant.
I'm keeping 46d418a because we may retract this commit in the future.
2015-06-10 16:29:30 -07:00
Leonardo de Moura
46d418af3d feat(library/abbreviation): apply eta-reduction when expanding abbreviations 2015-06-10 14:52:59 -07:00
Leonardo de Moura
f3d50963ce fix(library/idx_metavar): compilation problem in debug mode 2015-06-09 14:37:17 -07:00
Leonardo de Moura
e3a0e62859 fix(library/unifier): try to generate approximate solution for flex-flex constraints before discarding them
fixes #662
2015-06-09 14:36:31 -07:00
Leonardo de Moura
f7dd85a935 chore(*): fix 'breif' typos 2015-06-08 16:54:55 -07:00
Leonardo de Moura
627e05c9e6 fix(library/tactic/rewrite_tactic): improve krewrite 2015-06-08 16:46:28 -07:00
Leonardo de Moura
d6a483fe84 feat(library): add idx_metavar module 2015-06-08 16:02:37 -07:00
Leonardo de Moura
496189feed feat(kernel/default_converter): cache failures for (f t =?= f s) heuristic
See item 4 at
https://groups.google.com/forum/?utm_medium=email&utm_source=footer#!msg/lean-discuss/oJXwW5wT2Ds/d1Dgr8B-pE0J

See also
https://github.com/leanprover/lean/pull/659
2015-06-08 10:41:30 -07:00