Commit graph

24104 commits

Author SHA1 Message Date
Sebastian Ullrich
187a614575 chore: make tryFinally a def 2021-02-17 12:04:20 +01:00
Sebastian Ullrich
010338cb18 chore: improve "no elaborator" error message 2021-02-17 11:52:22 +01:00
Leonardo de Moura
1a7535263e fix: unfolding class projections at simp 2021-02-16 17:55:57 -08:00
Leonardo de Moura
399af03c7c refactor: move defeq unfolding to reduce, use transform to implement dsimp 2021-02-16 17:41:18 -08:00
Leonardo de Moura
15e6ae2cdb chore: cleanup 2021-02-16 16:16:21 -08:00
Leonardo de Moura
2ef6605cdf feat: do not simplify proofs 2021-02-16 16:13:56 -08:00
Leonardo de Moura
5f80659b45 fix: unfold constants at simp 2021-02-16 15:42:31 -08:00
Leonardo de Moura
3e65f586cc fix: smart unfolding 2021-02-16 15:39:07 -08:00
Leonardo de Moura
5e24da0c2e fix: simp argument issue
See new test.
2021-02-16 13:12:57 -08:00
Leonardo de Moura
d1009e8405 chore: add simp lemmas, theorem naming convention 2021-02-16 11:53:49 -08:00
Leonardo de Moura
504a015f9b fix: borrowing annotations 2021-02-16 10:30:30 -08:00
Sebastian Ullrich
e8812ed834 fix: memory leak at Nat.ble 2021-02-16 14:24:28 +01:00
Sebastian Ullrich
1490d095a8 fix: delaborator: bind without lambda 2021-02-16 12:07:46 +01:00
Leonardo de Moura
4ec85a39a5 fix: Not should not be reducible, special support for Ne
Unification hint for `Not`
2021-02-15 17:36:11 -08:00
Leonardo de Moura
99ba21a881 chore: annotations for simp 2021-02-15 17:04:47 -08:00
Leonardo de Moura
e97df2f61b feat: functions to unfold at simp 2021-02-15 15:32:25 -08:00
Leonardo de Moura
1c5de9842d feat: use decide at simp 2021-02-15 13:08:45 -08:00
Leonardo de Moura
51bdf670fa chore: add simp helper lemmas 2021-02-15 12:42:13 -08:00
Leonardo de Moura
7bdd3ae5a2 feat: simplify ctor_1 ... = ctor_2 ... 2021-02-15 12:40:19 -08:00
Leonardo de Moura
9528c1abd7 chore: add basic simp lemmas
TODO: consistent naming convention for theorems.

cc @Kha
2021-02-15 11:32:19 -08:00
Leonardo de Moura
ac51d3e621 feat: eager coe expansion 2021-02-14 11:34:08 -08:00
Leonardo de Moura
f07b9926b1 feat: unfold coercions and coeFun, coeSort, coeM, liftCoeM
TODO: `coe`
2021-02-14 10:27:34 -08:00
Leonardo de Moura
7e3bc30674 feat: add expandCoe 2021-02-14 10:03:44 -08:00
Leonardo de Moura
0787886cea feat: improve simp local lemma elaboration 2021-02-13 18:55:19 -08:00
Leonardo de Moura
2944da2a0b feat: use simp itself as default method for discharging hypotheses of conditional rewriting rules 2021-02-13 18:55:19 -08:00
Leonardo de Moura
3a9cd7e85b refactor: use Simp.Context instead of Config+SimpLemmas+CongrLemmas 2021-02-13 18:55:19 -08:00
Leonardo de Moura
1a4eaa2418 chore: arguments occurring in the lhs should be marked as implicit 2021-02-13 18:55:19 -08:00
Leonardo de Moura
21878030d1 fix: fixes #310
@Kha I implemented the following approach:

- Error if user tries to revert `auxDecl`.
- Clear any `auxDecl` that depends on variables being reverted by the user.
2021-02-12 18:14:42 -08:00
Sebastian Ullrich
75243e7f24 feat: change back seqLeft/Right signature
This was originally changed for the sake of `do`, which does not depend on it anymore
2021-02-12 17:08:06 -08:00
Leonardo de Moura
4ac78266ad fix: make sure temporary metavars don't leak 2021-02-12 16:52:56 -08:00
Leonardo de Moura
1945858d89 fix: assigned metavariables in SimpLemmas 2021-02-12 16:52:56 -08:00
Leonardo de Moura
16a6778fb6 fix: avoid nonstandard instances at ite and dite congruence lemmas
cc @gebner
2021-02-12 16:52:56 -08:00
Leonardo de Moura
b51e3cb1fe feat: process congr lemmas at simp 2021-02-12 16:52:56 -08:00
Leonardo de Moura
da91fc4526 refactor: move synthesizeArgs 2021-02-12 16:52:56 -08:00
Leonardo de Moura
9ba8a30fb2 feat: add Repr instance for CongrLemmas 2021-02-11 18:13:33 -08:00
Leonardo de Moura
3a66dbf0fd chore: annotate ite/dite congruence lemmas 2021-02-11 17:55:42 -08:00
Leonardo de Moura
ffa4a577be feat: add @[congr] attribute 2021-02-11 17:51:04 -08:00
Leonardo de Moura
8b3c61dbb0 fix: checkAssignment 2021-02-11 16:56:32 -08:00
Leonardo de Moura
5e0b6a404f chore: naming convention 2021-02-11 15:05:26 -08:00
Leonardo de Moura
c0f5ab1fa5 feat: add congruence lemmas for simp 2021-02-11 14:07:01 -08:00
Sebastian Ullrich
8320ab6177 fix: syntax match: check identifiers (using strict equality) 2021-02-11 17:50:05 +01:00
Sebastian Ullrich
19306a844f chore: delaborator: print BinderInfo.auxDecl as explicit 2021-02-11 12:13:22 +01:00
Sebastian Ullrich
10bcd0bc9e fix: #check_failure 2021-02-11 11:30:37 +01:00
Sebastian Ullrich
a74960a4ab fix: delaborator: match with shadowing 2021-02-11 11:30:25 +01:00
Leonardo de Moura
2aed9a4ec2 chore: special support for match d with | PUnit.unit => rhs 2021-02-10 09:54:12 -08:00
Leonardo de Moura
4e4194af41 feat: add autoBoundImplicit support for structure fields 2021-02-06 17:58:29 -08:00
Leonardo de Moura
023d7605fb feat: add "transitivity" to "has_loose_bvars_in_domain" 2021-02-06 17:42:38 -08:00
Leonardo de Moura
09ad6cc50a fix: fixes #306 fixes #307 2021-02-06 12:31:51 -08:00
Sebastian Ullrich
4d8859140c feat: improve goal display markup 2021-02-06 17:25:26 +01:00
Sebastian Ullrich
1ca3176143 chore: TacticInfo.format: show range 2021-02-06 17:24:24 +01:00