Commit graph

1373 commits

Author SHA1 Message Date
Leonardo de Moura
d6418299c7 chore: naming convention 2020-10-27 13:05:13 -07:00
Leonardo de Moura
9d82b965b3 feat: allow by ... at suffices 2020-10-27 13:05:13 -07:00
Leonardo de Moura
573ca7dcad chore: remove workarounds 2020-10-27 13:05:13 -07:00
Leonardo de Moura
ec28b26233 chore: improve StateRefT notation 2020-10-27 13:05:12 -07:00
Leonardo de Moura
633578cfaf chore: use StateRefT macro 2020-10-27 13:05:12 -07:00
Leonardo de Moura
f80e2c1db6 feat: elaborate StateRefT macro 2020-10-27 13:05:12 -07:00
Leonardo de Moura
828c0b832f chore: add StateRefT macro 2020-10-27 13:05:12 -07:00
Sebastian Ullrich
8e16589f60 fix: reimplement import profiler 2020-10-27 18:53:22 +01:00
Sebastian Ullrich
bc1acf7a9f doc: document orelse restriction for the pretty printer 2020-10-27 17:29:57 +01:00
Sebastian Ullrich
78a8bc7b7e feat: adapt elaborator to preceding change 2020-10-27 16:50:58 +01:00
Sebastian Ullrich
d8a1742d57 feat: introduce suppressInsideQuot 2020-10-27 16:50:58 +01:00
Sebastian Ullrich
912d24a3ee fix: disambiguate fun syntax alternatives to help the pretty printer 2020-10-27 16:48:31 +01:00
Sebastian Ullrich
20ed65605b fix: don't parenthesize juxtaposed tactics 2020-10-27 14:09:33 +01:00
Sebastian Ullrich
84692acd0e fix: do not introduce parentheses implied by indentation 2020-10-27 14:09:33 +01:00
Sebastian Ullrich
c0e117daa4 fix: Option.ToMessageData 2020-10-27 14:09:33 +01:00
Sebastian Ullrich
5f67c359bc chore: simplify formatter token separation logic 2020-10-27 14:09:33 +01:00
Sebastian Ullrich
73323a7500 fix: remove obsolete workaround confusing the formatter
We don't generate antiquotations for `tparser!` anymore
2020-10-27 14:09:33 +01:00
Sebastian Ullrich
33c861a80e fix: parenthesizer: really make sure a trailing parser is of the same category as the continuation 2020-10-27 14:09:33 +01:00
Sebastian Ullrich
eb125c52f1 fix: never pretty-print whitespace before checkNoWsBefore 2020-10-27 14:09:33 +01:00
Sebastian Ullrich
43c875fd7a fix: tactic block indentation 2020-10-27 14:09:33 +01:00
Leonardo de Moura
c979d81934 refactor: add polymorphic methods for updating/querying reducibility status 2020-10-26 17:07:28 -07:00
Leonardo de Moura
bddc826648 chore: remove unnecessary liftMs 2020-10-26 16:27:45 -07:00
Leonardo de Moura
79609938a8 feat: allow universe constraints to be postponed longer
Before this commit, each `isDefEq u v` invocation would fail if there
were pending universe level constraints. This commit, moves the
postponed universe constraints back to the `MetaM` state.
It also adds the combinator
```lean
withoutPostponingUniverseConstraints x
```
which executes `x` and throws an error if there are pending universe
constraints. We use the combinator at `elabApp` and `elabBinders`.
Without this commit, we would fail to elaborate simple terms such as
```lean
  Functor.map Prod.fst (x s)
```
because after elaborating `Prod.fst` and trying to ensure its type
match the expected one, we would be stuck at the universe constraint:
```
  u =?= max u ?v
```

Another benefit of the new approach is better error messages. Instead
of getting a mysterious type mismatch constraint, we get a list of
universe contraints the system is stuck at.

cc @Kha
2020-10-26 15:50:05 -07:00
Leonardo de Moura
5481999560 chore: cleanup 2020-10-26 14:25:38 -07:00
Leonardo de Moura
91d51d06e0 chore: cleanup 2020-10-26 14:00:13 -07:00
Leonardo de Moura
40f99327e9 fix: missing withMainMVarContext 2020-10-26 11:35:54 -07:00
Leonardo de Moura
c55a65fe00 chore: cleanup 2020-10-26 10:58:56 -07:00
Leonardo de Moura
7e244686e9 chore: remove old notation 2020-10-26 09:16:51 -07:00
Leonardo de Moura
16f7bef88f chore: remove old frontend leftovers 2020-10-26 09:08:07 -07:00
Leonardo de Moura
deb283a415 chore: remove support for Lean3 scopes 2020-10-26 08:20:33 -07:00
Leonardo de Moura
bad6233389 chore: remove legacy support for modification objects 2020-10-26 08:10:51 -07:00
Leonardo de Moura
b4e8862716 chore: cleanup 2020-10-26 07:54:11 -07:00
Leonardo de Moura
cffa3b0039 chore: cleanup 2020-10-26 07:42:08 -07:00
Leonardo de Moura
e4b478ee6a chore: remove support for quotations in the old frontend 2020-10-26 07:35:26 -07:00
Leonardo de Moura
13c2a8ff51 chore: remove #lang lean4 header 2020-10-25 09:54:07 -07:00
Leonardo de Moura
575db3bb3b fix: improve structure/inductive commands universe level inference and validation
chore: cleanup
2020-10-25 05:46:51 -07:00
Leonardo de Moura
c4b9cc509c fix: collect used universe levels in structure resulting type 2020-10-25 03:41:09 -07:00
Leonardo de Moura
3f0cc1d2ec fix: library/constructions primitives crash at kernel_exception 2020-10-24 18:52:01 -07:00
Leonardo de Moura
609c54c57d fix: allow structures to be in Prop 2020-10-24 16:57:57 -07:00
Leonardo de Moura
9e181f5d91 fix: location parser 2020-10-24 16:46:30 -07:00
Leonardo de Moura
632406adcd fix: unused variables being included in theorems 2020-10-24 16:04:13 -07:00
Leonardo de Moura
70bf755938 chore: cleanup 2020-10-24 14:15:56 -07:00
Leonardo de Moura
6ccf086b99 fix: modify mkAppM behavior and fix issue at Structural.lean
`Structural.lean` uses `mkAppM` for creating projections `PProd.fst`
and `PProd.snd`. However, given `x : (([Decidable p] → Bool) × Nat`,
the old ``mkApp `PProd.fst #[x]`` returned
```
Prod.fst ([Decidable p] → Bool) Nat x _inst
```
The extra unexpected argument `_inst` broke `Structural.lean`.
In the new implementation, it returns
```
Prod.fst ([Decidable p] → Bool) Nat x
```
which has type `[Decidable p] → Bool`.
2020-10-24 13:25:51 -07:00
Leonardo de Moura
e8c1647fa5 chore: improve condition 2020-10-24 12:37:11 -07:00
Leonardo de Moura
84926f62ea chore: improve error message 2020-10-24 08:16:05 -07:00
Leonardo de Moura
01251a56e0 chore: improve error message 2020-10-24 07:57:02 -07:00
Leonardo de Moura
d89f559683 chore: fix definitions
See commit before update stage0 for explanation.
2020-10-24 07:27:25 -07:00
Leonardo de Moura
0af4b6fb6f chore: remove hack that produces big search space 2020-10-24 07:21:06 -07:00
Leonardo de Moura
525fb7ca91 chore: cleanup 2020-10-24 06:26:32 -07:00
Leonardo de Moura
0ab38742db chore: cleanup 2020-10-24 06:18:01 -07:00