Leonardo de Moura
af4485f40e
fix: fixes #482
2021-05-21 19:20:24 -07:00
Leonardo de Moura
8eceb07caf
feat: new discriminant refinement procedure
2021-05-21 18:08:11 -07:00
Sebastian Ullrich
93327e2324
fix: tactic state on {/·
2021-05-21 17:13:33 -07:00
Sebastian Ullrich
e257caa446
feat: move block tactic macro to Init
2021-05-21 17:13:33 -07:00
Mac Malone
a6dc9e4ef3
feat: class abbrev now supports a type spec (+ test)
2021-05-20 15:23:30 -07:00
Mac Malone
6c07536b33
feat: simplified, improved class abbrev (+ tests)
2021-05-20 15:23:29 -07:00
Daniel Fabian
42bd44ab82
refactor: Capture environment modification in mkMatcher.
...
Doing this allows us to add the declaration in the backtracking case of structural recursion.
2021-05-20 15:20:16 -07:00
Sebastian Ullrich
9f3ddb0c43
fix: do not store solved goals in info tree
2021-05-20 15:17:54 -07:00
Sebastian Ullrich
a02c6fd3eb
chore: adapt stdlib & tests
2021-05-20 15:17:36 -07:00
Sebastian Ullrich
7242c5c513
fix: rw: add all uninstantiated mvars as goals
2021-05-19 07:31:50 -07:00
Daniel Fabian
ab0ef229ac
feat: add getBelowIndices.
2021-05-19 07:28:14 -07:00
Daniel Fabian
91ecbb5b5c
feat: Add withMkMatcherInput.
...
This is the inverse function to `mkMatcher`, i.e. a way to turn a matcher into an input.
2021-05-19 07:28:14 -07:00
Daniel Fabian
cf030a1634
refactor: Add MkMatcherInput.
...
Since we are going to make `mkMatcher` reversible, it's quite useful to have the input be a `structure`. This way we make sure, that the inverse function always returns the same type as `mkMatcher` needs as input.
2021-05-19 07:28:14 -07:00
Sebastian Ullrich
cd5dbc66ce
fix: isolate std streams for all commands in server mode
...
Fixes #475
2021-05-19 13:30:54 +02:00
Sebastian Ullrich
7c3101a51c
chore: produce more efficient/pp-able array code from quotations
2021-05-19 09:52:35 +02:00
Sebastian Ullrich
23f0c1051c
feat: improve ToString/Quote Name
2021-05-19 09:34:01 +02:00
Sebastian Ullrich
3dafe26c72
feat: delab Name.mkStr/Num
2021-05-19 09:21:52 +02:00
Leonardo de Moura
a2cafbf56f
test: for tactic state visualization bug
2021-05-17 15:12:50 -07:00
Leonardo de Moura
e466498e80
chore: fix tests
2021-05-17 15:09:51 -07:00
Leonardo de Moura
8bbe6cac02
chore: fix test
2021-05-17 14:47:24 -07:00
Sebastian Ullrich
eb93894683
fix: do not abort elaboration on unclosed parenthesis
2021-05-17 22:29:06 +02:00
Leonardo de Moura
53b2ceea51
fix: missing withoutModifyingState at elabSimpConfig
2021-05-16 13:07:13 -07:00
Leonardo de Moura
ac90052139
feat: add option for controlling how deep we go when trying to discharge simp theorem hypotheses
2021-05-16 12:32:05 -07:00
Leonardo de Moura
a498a64490
chore: disable injectivity theorems generation for big structure tests
...
The test was producing a stack overflow in debug mode in CI.
2021-05-15 21:30:40 -07:00
Leonardo de Moura
5d305faee0
chore: increase threshold for Windows workaround in the previous commit
2021-05-15 21:15:37 -07:00
Leonardo de Moura
50cf4216ac
feat: closes #440
2021-05-15 20:54:54 -07:00
Leonardo de Moura
3b8b46b16c
test: closes #441
2021-05-15 20:37:48 -07:00
Leonardo de Moura
37c1608ec3
feat: improve error handling in tactic blocks
2021-05-15 20:18:48 -07:00
Leonardo de Moura
c7096f54a2
feat: injectivity theorems for types defined in the prelude
2021-05-14 18:32:26 -07:00
Leonardo de Moura
dbe0d2d706
feat: automatically generate injectivity theorems
2021-05-14 18:05:04 -07:00
Sebastian Ullrich
7ca2f70c2f
feat: Eq.rec delaborator
2021-05-14 18:36:59 +02:00
Sebastian Ullrich
3f9c015dd4
feat: pp.proofs & pp.proofs.withType
...
Resolves #210
2021-05-14 15:14:58 +02:00
Leonardo de Moura
ea45d3bd40
fix: fixes #457
2021-05-12 20:45:54 -07:00
Leonardo de Moura
4db3ccaddb
feat: type ascription should disable implicit lambdas
2021-05-12 19:29:36 -07:00
Sebastian Ullrich
8ae726203d
fix: plainGoal: consider original positions only when deciding whether a tactic is a combinator
2021-05-12 10:51:42 +02:00
Leonardo de Moura
c9db8619f1
fix: fixes #456
2021-05-11 21:07:21 -07:00
Sebastian Ullrich
1e6dadfa52
fix: documentHighlight on partial input
...
Fixes #455
2021-05-11 17:03:18 +02:00
Leonardo de Moura
ad45c18503
fix: fixes #448
2021-05-10 20:07:28 -07:00
Leonardo de Moura
b52edf1259
fix: fixes #452
...
The new syntax is similar to `matchAlts` and uses `colGe`.
The first `|` is not optional anymore.
2021-05-10 17:28:10 -07:00
Leonardo de Moura
0e1f645b07
fix: fixes #450
2021-05-10 13:55:06 -07:00
Leonardo de Moura
2a676b6dfb
fix: fixes #449
2021-05-10 13:10:59 -07:00
Leonardo de Moura
89373bd64f
fix: fixes #447
2021-05-08 19:04:12 -07:00
Leonardo de Moura
4675817a9e
fix: projection of string literals
2021-05-07 14:38:21 -07:00
Leonardo de Moura
5fcd08326f
fix: bug at reduceRec
2021-05-07 14:21:37 -07:00
Sebastian Ullrich
088774536e
fix: syntax match: do not discard other patterns after splices
2021-05-07 16:08:10 +02:00
Leonardo de Moura
475f5fecaa
feat: improve error recovery at Tactic.elabTerm
2021-05-06 20:44:36 -07:00
Leonardo de Moura
7fc6607611
feat: have ... := ... syntax closer to let
2021-05-06 15:38:57 -07:00
Leonardo de Moura
48bffedc74
fix: unresolved holes in the exact tactic, backtracking issues
...
This commit also adds the `throwAbortTactic` for throwing "silent"
exceptions in `TacticM`.
2021-05-06 13:44:01 -07:00
Sebastian Ullrich
99864bbb31
chore: reintroduce ∅ as regular notation
2021-05-06 22:41:23 +02:00
Sebastian Ullrich
9ed8db4bc3
feat: add constructor tactic
2021-05-06 10:40:56 -07:00