Commit graph

26741 commits

Author SHA1 Message Date
Leonardo de Moura
7c44d4632b fix: induction ... generalizing 2020-11-02 16:58:14 -08:00
Leonardo de Moura
73903267a5 feat: extend cases tactic syntax 2020-11-02 16:46:33 -08:00
Leonardo de Moura
a0ab1b9eb4 chore: remove with 2020-11-02 13:35:26 -08:00
Leonardo de Moura
876345bfa6 chore: update stage0 2020-11-02 13:32:03 -08:00
Leonardo de Moura
f64bd9e1e3 chore: remove unnecessary with at induction/cases tactics 2020-11-02 13:30:54 -08:00
Leonardo de Moura
dfc346e76f chore: remove obsolete attribute 2020-11-02 06:47:20 -08:00
Leonardo de Moura
072fb93cc2 chore: update stage0 2020-11-02 06:39:59 -08:00
Leonardo de Moura
83fb51f601 chore: remove StrategyAttrs 2020-11-02 06:39:21 -08:00
Leonardo de Moura
438494ae3f chore: fix assertion 2020-11-02 06:22:46 -08:00
Leonardo de Moura
9c40b90f72 chore: update stage0 2020-11-01 09:39:11 -08:00
Leonardo de Moura
2367d4d122 chore: fix test 2020-11-01 09:38:39 -08:00
Leonardo de Moura
7b5f283507 chore: remove Expr.localE constructor
It was used by the old frontend
2020-11-01 09:37:48 -08:00
Leonardo de Moura
806e8784e7 chore: cleanup Quot/Quotient 2020-11-01 09:12:24 -08:00
Leonardo de Moura
eb2b1d56eb chore: argument name 2020-11-01 08:03:37 -08:00
Leonardo de Moura
0d6a3080ad chore: remove broken expandWhere 2020-10-31 19:19:18 -07:00
Leonardo de Moura
de8f8f0e28 feat: improve local context reduction approximation 2020-10-31 19:19:18 -07:00
Leonardo de Moura
f9194737f0 chore: fix tests 2020-10-31 19:19:18 -07:00
Leonardo de Moura
bcae20381f chore: naming convention 2020-10-31 19:19:18 -07:00
Leonardo de Moura
5d20cd1f46 chore: move CDot code to BuiltinNotation 2020-10-31 19:19:18 -07:00
Leonardo de Moura
85a3810b10 fix: where is not a term
See #191

TODO: add proper support for it in key places
2020-10-31 19:19:18 -07:00
Leonardo de Moura
665c3ed2f7 chore: cleanup 2020-10-31 19:19:18 -07:00
Leonardo de Moura
b8a6f3fb5c chore: update stage0 2020-10-31 19:19:18 -07:00
Leonardo de Moura
8c9f148e2f chore: use new termFor, termReturn, termTry, and tryUnless 2020-10-31 19:19:18 -07:00
Leonardo de Moura
6cf5faf0f9 chore: update stage0 2020-10-31 19:19:18 -07:00
Leonardo de Moura
eacca1342f fix: expandLiftMethod
We should not visit the new `termFor`, `termTry`, etc.
2020-10-31 19:19:18 -07:00
Leonardo de Moura
dd3501a4a7 chore: move test 2020-10-31 19:19:18 -07:00
Leonardo de Moura
2808dc2090 chore: update stage0 2020-10-31 19:19:18 -07:00
Leonardo de Moura
34a6125ae2 feat: add coercion from String to IO.Error 2020-10-31 19:19:17 -07:00
Leonardo de Moura
87bf97bdc1 feat: expand term try, for, unless, and return 2020-10-31 19:19:17 -07:00
Leonardo de Moura
a042212909 chore: update stage0 2020-10-31 19:19:17 -07:00
Leonardo de Moura
d20081c548 feat: add term version of unless, for, try, and return notations 2020-10-31 19:19:17 -07:00
Leonardo de Moura
77b160a5a8 chore: use mkFreshUserName at generalizeTelescope 2020-10-31 19:19:17 -07:00
Sebastian Ullrich
9d78e2268d doc: test & deploy on CI 2020-10-31 13:36:48 +01:00
Leonardo de Moura
3101b83f98 fix: missing do 2020-10-30 18:15:37 -07:00
Leonardo de Moura
f856849f8f test: tactic framework 2020-10-30 18:01:20 -07:00
Leonardo de Moura
870f9a6215 fix: use robust matchEq? 2020-10-30 17:28:08 -07:00
Leonardo de Moura
c2cc74a7ef chore: update stage0 2020-10-30 15:03:56 -07:00
Leonardo de Moura
060535679f test: let rec in tactic mode
@Kha: I added support for using `let rec` in tactic mode.
2020-10-30 14:58:17 -07:00
Leonardo de Moura
f2530e069a feat: do not create subgoals for auxiliary let-rec metavariables 2020-10-30 14:58:17 -07:00
Leonardo de Moura
0af30273c5 feat: hide auxiliary metavariables used to compile let-rec 2020-10-30 14:58:17 -07:00
Leonardo de Moura
4f3e932b3e feat: expand "let rec" tactic notation 2020-10-30 14:58:17 -07:00
Leonardo de Moura
cb1a4cb7c1 chore: update stage0 2020-10-30 14:58:17 -07:00
Leonardo de Moura
b880181cee feat: add let rec tactic parser 2020-10-30 14:58:17 -07:00
Leonardo de Moura
0a56057db1 feat: better error message for "unknown" tactic
@Kha The hack I posted at Zulip didn't really work
```
macro x:ident : tactic => throw $ Lean.Macro.Exception.error x s!"unknown tactic '{x.getId}'"
```

For example, we would still get a weird error message at
```
theorem ex3 (x : Nat) : x = x → x = x :=
  have x = x by foo (aaa bbb) -- The error would be at `bbb`
  fun h => h
```
There were other minor issues that could be fixed, but this one was bad.
2020-10-30 14:58:17 -07:00
Sebastian Ullrich
0731d3f080 fix: double indentation inside parentheses
Ideally we would skip the indentation after any leading token without trailing
whitespace, but it's not quite clear how to do that in general
2020-10-30 19:10:08 +01:00
Sebastian Ullrich
bc8cb5edda feat: pretty printer: adapt new indentation style 2020-10-30 19:08:39 +01:00
Sebastian Ullrich
e73a04d492 doc: basic mdbook test support 2020-10-30 17:55:09 +01:00
Sebastian Ullrich
2129798376 doc: add # prefix to hide lines in lean code blocks 2020-10-30 16:00:20 +01:00
Sebastian Ullrich
ac0d0ab32d doc: document documentation build, mention fork 2020-10-30 15:59:56 +01:00
Sebastian Ullrich
6d29111fbc doc: Lean syntax highlighting 2020-10-30 14:46:05 +01:00