Commit graph

24634 commits

Author SHA1 Message Date
Leonardo de Moura
04f3bd1423 chore: update stage0 2021-04-23 19:42:15 -07:00
Leonardo de Moura
b2190da468 feat: add Macro.resolveGlobalName and Macro.resolveNamespace? 2021-04-23 19:38:56 -07:00
Leonardo de Moura
d70f9c232c feat: trace support for MacroM
closes #184
2021-04-23 19:15:14 -07:00
Leonardo de Moura
5c6b13ef9a feat: MonadTrace instance for CommandElabM 2021-04-23 18:49:56 -07:00
Leonardo de Moura
c6e00aba63 chore: finalize Macro.Methods refactoring
We can now add new methods without using `update-stage0` multiple times.
2021-04-23 18:08:44 -07:00
Leonardo de Moura
7b42588909 chore: update stage0 2021-04-23 18:04:15 -07:00
Leonardo de Moura
d1dcf0b067 chore: cleanup
We still need another update stage0
2021-04-23 18:02:50 -07:00
Leonardo de Moura
fe9cb0b5ed chore: update stage0 2021-04-23 17:52:44 -07:00
Leonardo de Moura
9552b6c95f feat: add Macro.hasDecls and Macro.getCurrNamespace
We need update stage0, and cleanup
2021-04-23 17:51:28 -07:00
Leonardo de Moura
0838b95105 chore: add Macro.State.Extra 2021-04-23 16:22:32 -07:00
Leonardo de Moura
1151ef9af0 chore: add Macro.Methods 2021-04-23 16:22:32 -07:00
Leonardo de Moura
a5d1b8f3c5 chore: add Macro.State 2021-04-23 16:22:24 -07:00
Leonardo de Moura
030f53fa43 fix: closes #421
The unifier used to implement the `cases` tactic should not discard
equations of the form `x = t` and `t = x` using proof irrelanvance.
The new test demonstrates the issue. The unifier was reaching the
state
```
x : Conw Con.nil
|- x = Conw.nilw -> x = Conw.nilw
```
and discarding the equality instead of substituting `x`
because `x` and `Conw.nilw` are definionally equal due to
proof irrelevance.

@javra Do you have more complicated examples that were being
affected by this issue?
2021-04-23 12:27:39 -07:00
Sebastian Ullrich
bf5b403bea doc: update dbg_trace docs 2021-04-23 15:48:43 +02:00
Sebastian Ullrich
0e3db5b98b refactor: simplify & generalize runCommandElabM 2021-04-23 15:26:49 +02:00
Sebastian Ullrich
ccb873cea2 fix: panic on variable : 2021-04-23 09:24:35 +02:00
Leonardo de Moura
104b51471c chore: fix warning 2021-04-22 20:38:57 -07:00
Leonardo de Moura
df665bc219 chore: remove leftover 2021-04-22 20:34:52 -07:00
Leonardo de Moura
c0da331e02 chore: remove temp code 2021-04-22 20:32:24 -07:00
Sebastian Ullrich
8895ed47e5 refactor: clean up Thunk
Fixes a bug in the native implementation of `Thunk.bind` by deleting it
2021-04-22 20:29:08 -07:00
Leonardo de Moura
964fd3f520 chore: fixes tests
closes #405
2021-04-22 20:22:43 -07:00
Leonardo de Moura
25144dc91a chore: update stage0 2021-04-22 20:06:26 -07:00
Leonardo de Moura
3a80e87793 chore: #405 step 1 2021-04-22 20:03:48 -07:00
Leonardo de Moura
e6e12ca408 fix: fixes #408 2021-04-22 19:07:03 -07:00
Leonardo de Moura
cebc301c11 chore: remove old test 2021-04-22 18:14:18 -07:00
Leonardo de Moura
61259697bd chore: update stage0 2021-04-22 18:02:47 -07:00
Leonardo de Moura
39abe04e67 chore: remove dead code 2021-04-22 18:00:06 -07:00
Sebastian Ullrich
20cbb4389a fix: Nix: VS Code override 2021-04-21 12:21:02 +02:00
Leonardo de Moura
e593987d3c chore: update stage0 2021-04-19 18:58:02 -07:00
Leonardo de Moura
09d438ca1d chore: enforce notation parameter naming convention 2021-04-19 18:54:09 -07:00
Leonardo de Moura
762cebbbfc fix: match generalization bug 2021-04-19 18:37:25 -07:00
Leonardo de Moura
aaca889bea fix: fixes #414 2021-04-19 15:02:26 -07:00
Leonardo de Moura
1dca9d18d4 fix: missing tactic state info on broken proofs 2021-04-18 20:13:02 -07:00
Sebastian Ullrich
9e7917caf0 chore: Nix: work around https://github.com/NixOS/nixpkgs/issues/119779
Fixes #409
2021-04-18 11:18:00 +02:00
Sebastian Ullrich
60f2faefb7 feat: display placeholder & goal errors even on parse error 2021-04-17 23:46:15 +02:00
Sebastian Ullrich
c09958cf78 chore: do not display MessageData tags by default 2021-04-17 23:46:15 +02:00
Sebastian Ullrich
e96a21631b refactor: move elaboration error filtering into Elab.Command
Also make it dependent on presence of `missing` instead of parse error,
which means that messages from complete commands that are immediately followed
by parse errors are not filtered out anymore
2021-04-17 23:44:57 +02:00
Sebastian Ullrich
61f39d6088 chore: Parser.atomic: preserve partial output 2021-04-17 23:44:45 +02:00
Sebastian Ullrich
fd42b111fb chore: always push missing on a parser error 2021-04-17 23:44:43 +02:00
Sebastian Ullrich
52a4f535d8 doc: fix example 2021-04-17 18:48:58 +02:00
Sebastian Ullrich
8175003707 doc: update links to elan 2021-04-17 16:33:23 +02:00
Leonardo de Moura
46e02bcdcc chore: fix stdlib 2021-04-16 21:59:44 -07:00
Leonardo de Moura
bb5a46cd61 chore: update stage0 2021-04-16 21:50:02 -07:00
Leonardo de Moura
157ef80c5a feat: match auto generalization 2021-04-16 21:48:38 -07:00
Leonardo de Moura
aaa072cf21 feat: add withNewBinderInfos 2021-04-16 09:59:40 -07:00
Leonardo de Moura
3bd34182ee chore: generalizing skeleton 2021-04-16 09:51:12 -07:00
Daniel Fabian
cb18af6184 feat: add withLocalDecls and withLocalDeclsD
They are array versions of `withLocalDecl` and `withLocalDeclD`, respectively. They are useful when you need to create variables dynamically.
2021-04-16 07:54:04 -07:00
Leonardo de Moura
555b978d67 refactor: add GeneralizeVars.lean
Helper methods for performing auto generalization.
2021-04-15 21:37:48 -07:00
Leonardo de Moura
2667744092 fix: panic message 2021-04-15 18:25:19 -07:00
Leonardo de Moura
1c23d68c6a feat: add (generalizing := true/false) optional attribute to match 2021-04-15 17:04:25 -07:00