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