Commit graph

93 commits

Author SHA1 Message Date
Leonardo de Moura
30a1876fc8 feat(library/init/meta): add add_aux_decl and abstract tactics 2017-02-05 16:00:47 -08:00
Leonardo de Moura
5da8b205b9 feat(library/type_context, frontends/lean/elaborator): type classes with output parameters 2017-01-30 18:32:54 -08:00
Leonardo de Moura
146eaf5281 fix(library/tactic/tactic_state): has_to_format universe changed
see #1341
2017-01-30 11:54:00 -08:00
Gabriel Ebner
952f444710 feat(init/meta/task): allow task creation from VM 2017-01-28 08:27:23 +01:00
Gabriel Ebner
5fdc737dfc feat(library/tactic): store name of current declaration in tactic_state 2017-01-28 08:27:19 +01:00
Leonardo de Moura
6f502b9afd fix(library/vm): make sure vm_rb_map objects can be stored in ts_vm_obj
See discussion at #1337
2017-01-26 15:58:11 -08:00
Leonardo de Moura
434ada7dcc chore(library/vm,library/tactic): add missing override 2017-01-24 16:19:36 -08:00
Leonardo de Moura
7a6b9e193c feat(library/vm, frontends/lean/info_manager): add thread safe vm_obj wrapper, and use it to store arbitrary vm thunks in the info_manager 2017-01-21 22:38:33 -08:00
Leonardo de Moura
5d750ba0a4 fix(library/tactic/tactic_state): closes #1293 2017-01-09 16:23:02 -08:00
Leonardo de Moura
94f16d1e44 refactor(library/tactic): move defeq_canonizer::state to tactic_state
It was being stored in the environment before. This was very hackish,
and it was producing a series of unnecessary environment updates, and
thread local caches invalidations.

The new test tests/lean/run/heap.lean is 5x-6x faster after this commit.
2017-01-07 10:17:51 -08:00
Leonardo de Moura
c29a2bdac9 feat(library/init/meta/tactic): add eta reduction tactic 2017-01-06 19:56:10 -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
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
104ee1b120 fix(library/tactic/congruence/congruence_tactics): stupid mistake 2016-12-22 20:54:20 -08:00
Leonardo de Moura
eefd4cd6ab feat(library/tactic/congruence/congruence_tactics): add missing functions 2016-12-22 18:11:01 -08:00
Leonardo de Moura
45efccd53e fix(library/tactic/tactic_state): goal pp problem reported by Jared 2016-12-19 20:32:44 -08:00
Leonardo de Moura
0492436c42 chore(library/scoped_ext,tests/lean): fix issues raised by @kha 2016-12-19 10:03:16 -08:00
Leonardo de Moura
b65c774f5b chore(library/init/meta): opened_namespaces ==> open_namespaces 2016-12-18 23:55:45 -08:00
Sebastian Ullrich
d3f57c6497 fix(library/tactic/tactic_state): include implicitly opened namespaces in opened_namespaces 2016-12-18 23:49:00 -08:00
Gabriel Ebner
e070444bbf fix(library/tactic/tactic_state): do not allocate tactic_state_cell using the VM allocator 2016-11-30 14:13:18 -05:00
Leonardo de Moura
94c882f4d5 feat(library/documentation, frontends/lean): add /-! -/ doc string module block 2016-11-27 12:23:53 -08:00
Leonardo de Moura
6978906a78 chore(frontends/lean): remove namespace documentation
We will add module level doc strings /-! -/
2016-11-27 11:57:03 -08:00
Leonardo de Moura
338a46c225 fix(library/documentation): do not store doc strings for namespaces and declarations in the same name_map 2016-11-26 09:41:07 -08:00
Leonardo de Moura
97dd2f34d5 feat(library,frontends/lean): add basic doc string support 2016-11-25 18:52:56 -08:00
Leonardo de Moura
9d52b6607d feat(library/tactic): use annotated_head_beta_reduce instead of head_beta_reduce in tactics 2016-11-21 15:40:12 -08:00
Leonardo de Moura
2844df2279 feat(library/init/meta/tactic): add tactic.opened_namespaces 2016-11-18 14:25:54 -08:00
Leonardo de Moura
d5aa92eaeb feat(library/tactic/tactic_state): add vm_obj introspection 2016-11-14 21:58:34 -08:00
Leonardo de Moura
bf7bae6eaf feat(library/init/meta/tactic): add beta/zeta tactics 2016-10-13 18:47:27 -07:00
Leonardo de Moura
e37207e8a9 feat(library/tactic): expose new dsimplify in Lean 2016-10-12 07:25:09 -07:00
Leonardo de Moura
7be74a6c0c feat(library/init/meta/simp_tactic): add command for creating simp attributes 2016-10-03 20:38:15 -07:00
Leonardo de Moura
3c71d7eda2 feat(frontends/lean,library/tactic/tactic_state): improve error localization 2016-09-25 18:40:41 -07:00
Leonardo de Moura
6a49b2e18b chore(library/vm,library/tactic): fix warnings produced by the new clang++ 2016-09-25 11:14:28 -07:00
Gabriel Ebner
3ef9149902 feat(library/tactic/tactic_state): add get_unused_name 2016-09-19 16:38:03 -07:00
Leonardo de Moura
20ae4200e4 feat(library/tactic/tactic_state): add option for instantiating mvars before printing goal (default is true) 2016-08-25 11:11:52 -07:00
Leonardo de Moura
a93eada058 feat(library/type_context): improved (and simplified) cache management for type_context 2016-08-23 17:56:58 -07:00
Leonardo de Moura
199decea51 fix(library/tactic/tactic_state): remove problematic get_tactic_vm_state 2016-08-23 07:38:44 -07:00
Leonardo de Moura
ddc3789929 feat(frontends/lean): add run_tactic command
This commit also adds the tactic `add_decl`.
2016-08-18 10:56:18 -07:00
Leonardo de Moura
c9475774f4 feat(library/tactic/tactic_state): add is_def_eq and is_def_eq_core tactics 2016-08-16 11:08:03 -07:00
Leonardo de Moura
f8e5753a13 feat(library/type_context, library/tactic): add eta-expansion method and tactic 2016-08-14 16:15:12 -07:00
Leonardo de Moura
2354b63099 feat(library/tactic/tactic_state): add whnf_core 2016-08-14 16:02:40 -07:00
Leonardo de Moura
8498bbaeff refactor(frontends/lean/elaborator): allow elaborator to add auxiliary definitions 2016-08-10 08:31:00 -07:00
Leonardo de Moura
ef28ae5073 feat(library/vm/vm_format,library/tactic): use thunks unit->format when producing error messages 2016-08-04 19:19:09 -07:00
Leonardo de Moura
6d0fa806d8 feat(library/tactic/elaborate): convert unassigned metavars into new goals 2016-07-31 20:38:57 -07:00
Leonardo de Moura
12fa52c77d feat(library/tactic, frontends/lean/elaborator): add to_expr tactic 2016-07-31 20:21:17 -07:00
Leonardo de Moura
1b75a98ea4 feat(library/tactic/tactic_state): add helper mk procedure 2016-07-27 13:42:32 -07:00
Leonardo de Moura
4474f0ce44 feat(library/tactic/tactic_state): add pp_goal 2016-07-05 18:35:11 -07:00
Leonardo de Moura
58569b82d3 refactor(frontends/lean,library,library/tactic): move type_context_cache_helper to type_context module 2016-06-30 12:03:40 +01:00
Leonardo de Moura
1c2804256e fix(library/tactic/tactic_state): do not assume combinator.K is in the environment 2016-06-28 16:48:53 +01:00
Leonardo de Moura
48d6319c1c feat(library/init/meta/tactic): add 'when_tracing' tactical 2016-06-28 11:29:39 +01:00
Leonardo de Moura
d524ab013f refactor(library/init/meta): make sure 'transparency' is the first argument 2016-06-28 10:25:38 +01:00