Leonardo de Moura
57f830a751
chore: fix test
2019-12-02 19:42:44 -08:00
Leonardo de Moura
7e34cb4474
feat: add SynthInstance.lean
...
It is the first step to integrate the new type class procedure intro
`MetaM`. It implements the main entry point where we preprocess the
instance, check cache, invoke main function, process replacements, and
cache result.
2019-12-01 18:32:48 -08:00
Leonardo de Moura
00b991baf6
feat: add openAbstractMVarsResult
2019-12-01 18:32:48 -08:00
Leonardo de Moura
be9dab41ad
fix: abstractMVars
2019-11-27 10:53:25 -08:00
Leonardo de Moura
e45211f31c
test: display discrimination tree containing type class instances
2019-11-26 18:00:31 -08:00
Leonardo de Moura
120778585d
feat: add isProofQuick
2019-11-25 08:42:23 -08:00
Leonardo de Moura
882db55d11
feat: add reduce
2019-11-25 08:42:23 -08:00
Leonardo de Moura
2cf3e197aa
test: add getUnify basic tests
2019-11-24 08:41:00 -08:00
Leonardo de Moura
c5afa18469
feat: add DiscrTree.getMatch
2019-11-24 07:56:57 -08:00
Leonardo de Moura
4a6d0a8082
feat: projections of classes should not be reducible
2019-11-23 09:25:49 -08:00
Leonardo de Moura
69723b48c3
feat: add Array.insertAt
2019-11-22 17:42:27 -08:00
Leonardo de Moura
ea2d971bd3
chore: add isDefEq abbreviation for isExprDefEq
...
Most tactic users will never use `isLevelDefEq`.
2019-11-22 11:54:06 -08:00
Leonardo de Moura
7306343589
test: foApprox for isExprDefEq
2019-11-22 11:52:21 -08:00
Leonardo de Moura
a146ceafeb
test: offset constraints
2019-11-22 11:19:02 -08:00
Leonardo de Moura
167549de59
chore: fix tests
2019-11-22 07:56:06 -08:00
Leonardo de Moura
617c0a8707
chore: reduce verbosity
2019-11-21 16:33:43 -08:00
Leonardo de Moura
439123e2e7
refactor: ensure that unfoldDefinitionAux is not specialized multiple times
2019-11-21 15:32:24 -08:00
Leonardo de Moura
5d7042aa9e
test: add example on how to disable type checking trace messages
2019-11-21 13:08:51 -08:00
Leonardo de Moura
a28cf323b5
test: test approxDefEq
2019-11-21 11:25:27 -08:00
Leonardo de Moura
aa7afb7285
test: add ho-pattern test
2019-11-21 09:17:03 -08:00
Leonardo de Moura
67c88f12bd
test: add basic test
2019-11-21 09:05:38 -08:00
Sebastian Ullrich
6df256a05e
feat: import runtime
...
A runtime-only import is not loaded into the compile-time environment, but is linked into and initialized in binaries
2019-11-21 15:52:01 +01:00
Sebastian Ullrich
3dcd4febd9
feat: make LEAN_PATH a mapping from package names to root dirs, remove C++ impl
2019-11-20 16:39:53 +01:00
Sebastian Ullrich
ab42cffad2
refactor: rename all Default.lean files except for Init/Default.lean
2019-11-19 13:52:21 +01:00
Leonardo de Moura
033f781724
chore: fix tests
2019-11-17 08:53:18 -08:00
Leonardo de Moura
1d9a76ae45
chore: fix tests
...
Remark: weird discrepancies in the new typeclass module.
Ignoring for now since it was not integrated yet.
2019-11-16 12:19:27 -08:00
Leonardo de Moura
d9f3b4bf63
refactor: remove Expr.mvar hidden field
2019-11-15 10:04:42 -08:00
Leonardo de Moura
524872d68a
chore: avoid Expr constructors in tests
2019-11-14 16:54:36 -08:00
Leonardo de Moura
c768a24735
chore: mkApp => mkAppN
...
We are goint to use `mkApp` for creating unary applications
2019-11-14 15:44:17 -08:00
Leonardo de Moura
0193ead596
test: add corner case
2019-11-12 13:59:24 -08:00
Leonardo de Moura
28d7fe3f49
test: add etaExpanded? tests
2019-11-12 12:24:31 -08:00
Leonardo de Moura
3af65381bd
feat: add isPropQuick
...
It is used to speedup `isProp`.
2019-11-11 20:25:29 -08:00
Leonardo de Moura
01bd502db1
test: add more tests for MetaM
2019-11-11 12:09:10 -08:00
Leonardo de Moura
7469146b0d
test: add tests for MetaM
2019-11-11 11:30:22 -08:00
Daniel Selsam
bff5e4ed37
feat: solves mvars in reverse order during tabled tc
2019-11-09 21:15:34 -08:00
Daniel Selsam
9ce13e93c9
feat: allow metas in intermediate tc answers
2019-11-09 15:49:39 -08:00
Daniel Selsam
0bab51b66e
feat: solve typeclass subgoals in reverse order
...
Some instance arguments may still need to be reversed.
2019-11-09 15:47:50 -08:00
Leonardo de Moura
1e065d495b
feat: expose hasLooseBVar
2019-11-09 12:29:50 -08:00
Leonardo de Moura
41e574d6cc
chore: fix tests
2019-11-05 14:44:05 -08:00
Leonardo de Moura
638ceebab4
feat: helper functions
2019-11-01 17:07:26 -07:00
Leonardo de Moura
ec71dd256f
chore: fix test
2019-10-31 21:01:31 -07:00
Leonardo de Moura
9c5208c81b
test: add new tests
2019-10-26 11:32:33 -07:00
Leonardo de Moura
4559bdef7d
test: add instantiateMVars tests
2019-10-26 11:16:07 -07:00
Leonardo de Moura
d1c9a440d8
feat: add missing Expr.update* functions
2019-10-24 15:10:03 -07:00
Leonardo de Moura
ccfa57d657
chore: rename constructors
...
Before we start writing a lot of Expr code.
- `Expr.pi` does not make sense anymore.
- `Expr.elet` is weird. `«let»` is too inconvenient to write. So, I
used `letE` short for `letExpr`. GHC avoids this issue because
keywords are lowercase and constructors are capitalized.
2019-10-24 13:53:33 -07:00
Leonardo de Moura
0032c02247
feat: expose Expr.equal (structural equality) and adding Expr mappings aliases
2019-10-23 10:49:51 -07:00
Leonardo de Moura
c330600197
chore: add example to demonstrate that messages are computed lazily
2019-10-22 17:12:42 -07:00
Leonardo de Moura
d51c291f2a
refactor: simplify traceCtx
2019-10-22 16:36:18 -07:00
Leonardo de Moura
6498055656
chore: helper instances
2019-10-22 16:18:28 -07:00
Leonardo de Moura
f88561ae68
feat: add trace! macro
2019-10-22 16:08:37 -07:00