Leonardo de Moura
73f5801d8a
proto: use generalizeTelescope
2020-03-30 11:47:03 -07:00
Leonardo de Moura
fdfa3fc0de
chore: minor
2020-03-19 17:01:59 -07:00
Leonardo de Moura
6ccade1738
proto: mkDepElim
2020-03-19 15:47:47 -07:00
Leonardo de Moura
2113e45dd0
chore: fix test
2020-03-19 09:29:07 -07:00
Leonardo de Moura
5b7d25727d
doc: matcher for values example
2020-03-13 06:39:13 -07:00
Leonardo de Moura
04f071606f
chore: cleanup example
2020-03-13 06:39:13 -07:00
Leonardo de Moura
a0090b378b
feat: move Array extensionality theorems to Init
2020-03-13 06:39:13 -07:00
Leonardo de Moura
a8c3322ac8
doc: expand dependent pattern matching support for array literals
2020-03-13 06:39:13 -07:00
Leonardo de Moura
65234064ec
doc: dep elim experiments
2020-03-11 19:25:38 -07:00
Leonardo de Moura
dc740307fa
doc: "plan" for matching array literals
...
The new equation compiler will generate code similar to
`matchArrayLit`. Of course, we will not use an auxiliary inductive datatype.
2020-03-11 12:00:11 -07:00
Leonardo de Moura
c05559a99d
refactor: cleanup
2019-12-06 14:41:39 -08:00
Leonardo de Moura
55626ba60d
chore(library/init/lean): disable new frontend for now
...
We are going to start making drastic changes in the parser,
elaborator, attributes, etc. Examples:
- No View objects. I am going to implement match_syntax.
- No RecT in the parser. I am going to implement parser extensions
using an approach similar to the one I used to implement environment
extensions.
- No Parsec. I will use an approach similar to the one used in the
experiment https://github.com/leanprover/lean4/tree/master/tests/playground/parser
It is easier to perform these changes with the new frontend disabled.
I will slowly re-active it as I apply the changes.
cc @kha
2019-06-05 15:26:43 -07:00
Leonardo de Moura
080c2dabde
chore(*): cleanup
2018-09-07 09:01:48 -07:00
Leonardo de Moura
54b45c19b3
chore(tmp/lean4.md): moved to google docs
2018-03-20 17:26:43 -07:00
Leonardo de Moura
c17e5b913b
doc(tmp/lean4): expand explicit reference counter section
2018-03-19 21:42:16 -07:00
Leonardo de Moura
f81f0452ee
doc(tmp/lean4): explicit reference counting
2018-03-19 19:18:02 -07:00
Leonardo de Moura
ae60d2bf48
doc(tmp/lean4): add SSA/SIL remark
2018-03-19 18:42:34 -07:00
Leonardo de Moura
78accd059c
doc(tmp/lean4): object memory layout
2018-03-19 18:33:35 -07:00
Leonardo de Moura
e7760eaa0b
doc(tmp/lean4): expr, level, name, ... in Lean
2018-03-19 17:39:46 -07:00
Leonardo de Moura
785466507a
doc(tmp/lean4): document the inline issue
2018-03-19 17:26:31 -07:00
Leonardo de Moura
d52b5a9f4f
doc(tmp/lean4): update notes
2018-03-19 17:21:11 -07:00
Leonardo de Moura
16f28315ee
doc(lean4): design notes
...
@kha I added some notes for the Lean4 branch. It is very unpolished.
2018-03-09 17:48:00 -08:00
Leonardo de Moura
8c9cee3efc
doc(tmp/fresh_name): document impact of new mk_fresh_name design on thread local caches
2018-02-01 18:06:19 -08:00
Leonardo de Moura
50a43da17c
doc(tmp/fresh_name): plan for fixing mk_fresh_name
...
@kha If you have time, could you please take a look and send feedback.
I may be forgetting other problems and issues related with `mk_fresh_name`.
2018-02-01 16:19:25 -08:00
Leonardo de Moura
7f80bf60d1
feat(library/init/data): start rbtree module
2017-11-15 16:17:39 -08:00
Leonardo de Moura
3a216785ba
feat(tmp/rbtree_no_index): cleanup interface
2017-11-14 17:22:24 -08:00
Leonardo de Moura
6e4ef51f26
feat(library/tmp/rbtree_no_index): unbundled rbtree experiment
2017-11-14 12:31:53 -08:00
Leonardo de Moura
db4c9838d1
test(tmp/rbtree_no_index): rbtree without indexed families
2017-11-09 19:42:53 -08:00
Leonardo de Moura
2c3e99d538
chore(tmp): save rbtree experiment
2017-11-08 16:23:12 -08:00
Leonardo de Moura
4fbb65d9f1
feat(frontends/lean,library/equations_compiler): store tactics for generating well founded relation and decreasing proofs
2017-05-23 15:00:29 -07:00
Leonardo de Moura
729e798d6f
feat(frontends/lean/definition_cmds): copy equational lemmas to top level definition
2017-05-22 14:51:06 -07:00
Leonardo de Moura
9fb7e5c931
feat(library/equations_compiler): generate equational lemmas for auxiliary _main definitions
2017-05-21 15:21:28 -07:00
Leonardo de Moura
ce71b4c5c2
feat(frontends/lean/definition_cmds): define top-level mutual definitions
...
We still need the equational lemmas.
2017-05-21 10:26:43 -07:00
Leonardo de Moura
4e496b78d5
feat(library/equations_compiler): unpack auxiliary definition
...
We still need to unpack auxiliary lemmas, and propagate information in
the frontend.
2017-05-20 20:34:18 -07:00
Leonardo de Moura
fa863496da
feat(library/equations_compiler): prove equational lemmas for auxiliary definition
2017-05-20 16:38:32 -07:00
Leonardo de Moura
08560acf07
fix(library/equations_compiler): bugs in wf_rec
2017-05-20 13:26:49 -07:00
Leonardo de Moura
789d4e148f
feat(library/equations_compiler): add pack_mutual
...
This step packs a collection of mutually recursive functions into a
single one. We use `psum` to combine the different domains, and
`psum.cases_on` to combine the codomains.
2017-05-18 15:29:51 -07:00
Leonardo de Moura
737136e8fd
feat(library/equations_compiler/wf_rec): apply well_founded.fix
2017-05-17 16:44:53 -07:00
Leonardo de Moura
ab1a92ac3b
feat(tmp/micro_lenses): experiment with van Laarhoven-style lens
2017-03-11 11:35:02 -08:00
Leonardo de Moura
300f6b2344
chore(tmp/micro_lenses): update
2017-03-10 18:42:15 -08:00
Leonardo de Moura
b6f6126075
feat(frontends/lean/pp): add attribute [pp_using_anonymous_constructor] for marking structures we should use the anonymous constructor notation when pretty printing instances
2017-03-09 15:17:18 -08:00
Leonardo de Moura
bc01593639
chore(tmp/micro_lenses): better set for lenses.compose
2017-03-07 11:58:11 -08:00
Leonardo de Moura
cf2db32cf3
feat(tmp/micro_lenses): better definition that supports destructive updates
2017-03-07 11:18:31 -08:00
Leonardo de Moura
09c70a7e03
chore(tmp/micro_lenses): experiment for RFC
2017-03-07 09:44:10 -08:00
Leonardo de Moura
552a185e6a
feat(frontends/lean): 'let' in 'do' blocks
2017-02-24 09:10:36 -08:00
Leonardo de Moura
321105099f
feat(library/type_context): add compilation flag for disabling type inference cache
2017-02-21 20:17:25 -08:00
Leonardo de Moura
09819cb159
feat(library/type_context): add compilation flag for disabling type class resolution flag
2017-02-21 20:04:43 -08:00
Leonardo de Moura
296d4b0f09
refactor(library/tactic, library/init/meta): simplify_config => simp_config
2017-02-19 13:10:36 -08:00
Leonardo de Moura
0d22410e2e
feat(library/tactic): add zeta option, refactor simplify config option, allow users to change simplify_config in interactive mode
2017-02-19 12:11:22 -08:00
Leonardo de Moura
2928273a1e
feat(tmp/mini_crush): add experiments
2017-02-18 22:52:50 -08:00