Leonardo de Moura
|
2c0f596665
|
fix(library/choice): avoid assertion violation when Lua API is misused
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-24 12:14:38 -07:00 |
|
Leonardo de Moura
|
3169f8c126
|
feat(library): add mk_explicit/is_explicit procedures for '@'-expressions
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-24 12:11:27 -07:00 |
|
Leonardo de Moura
|
d915f0cc32
|
refactor(kernel/converter): converter should fail instead of relying on unification hints for solving a constraint, the hints must be applied by the frontend
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-24 09:00:14 -07:00 |
|
Leonardo de Moura
|
aa8b5655dd
|
feat(frontends/lean): add notation overwrite
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-23 16:10:36 -07:00 |
|
Leonardo de Moura
|
7df397fe63
|
test(lua): add universe constraint unifier test
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-23 14:19:02 -07:00 |
|
Leonardo de Moura
|
60c60c6cf5
|
feat(library/kernel_bindings): add mk_choice_cnstr to Lua API
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-23 13:39:21 -07:00 |
|
Leonardo de Moura
|
2fa5b17592
|
feat(library/unifier): add unifier.max_steps unifier.use_exceptions options
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-23 12:38:57 -07:00 |
|
Leonardo de Moura
|
7b188ea37e
|
feat(library/unifier): implement flex-rigid case
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-23 11:00:35 -07:00 |
|
Leonardo de Moura
|
5bd86754af
|
feat(frontends/lean/builtin_cmds): change notation for marking implicit/cast parameter in sections
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-22 17:51:00 -07:00 |
|
Leonardo de Moura
|
c8a07dee53
|
feat(library/unifier): add unifier_plugin support, and unit test with plugin implemented using Lua
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-22 16:27:04 -07:00 |
|
Leonardo de Moura
|
b936c4d860
|
test(lua): add type checker test
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-22 14:13:30 -07:00 |
|
Leonardo de Moura
|
29a00c46d0
|
feat(library/unifier): add main loop and resolve_conflict
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-22 11:57:10 -07:00 |
|
Leonardo de Moura
|
644c387cfe
|
refactor(kernel/constraint): rename: level constraints are also equality constraints
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-22 10:50:47 -07:00 |
|
Leonardo de Moura
|
1c47bd4847
|
fix(kernel/converter): remove temporary workaround, and temporarily disable unit test
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-22 10:39:22 -07:00 |
|
Leonardo de Moura
|
3953d4d122
|
feat(kernel/type_checker): add push/pop methods to type_checker, they control the cache, and allow the type checker to reuse results even when it is used inside of a backtracking search
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-22 09:58:05 -07:00 |
|
Leonardo de Moura
|
eca22edda3
|
fix(kernel/type_checker): restore type checker cache when a failure occurs, do not send constraints to add_cnstr_fn when a type checker failure occurrs
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-22 09:00:32 -07:00 |
|
Leonardo de Moura
|
9c745057b4
|
feat(library/unifier): add unify_fn skeleton
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-21 20:08:39 -07:00 |
|
Leonardo de Moura
|
bf8f3318d8
|
feat(library): add unifier module skeleton
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-21 13:38:17 -07:00 |
|
Leonardo de Moura
|
37bee8c852
|
refactor(kernel/type_checker): simplify replace constraint_handler with closure
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-21 12:25:54 -07:00 |
|
Leonardo de Moura
|
67088b130e
|
refactor(kernel/constraint): simplify constraint interface, and add choice constraint
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-21 12:25:54 -07:00 |
|
Leonardo de Moura
|
2589d60bfd
|
feat(frontends/lean): add nameless 'have' expression
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-20 17:18:18 -07:00 |
|
Leonardo de Moura
|
4b227409bf
|
feat(frontends/lean): add 'then have' expression
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-20 14:27:21 -07:00 |
|
Leonardo de Moura
|
4560413a92
|
feat(frontends/lean): add '[fact]' modifier for 'have' expression
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-20 11:58:05 -07:00 |
|
Leonardo de Moura
|
39177ec10a
|
feat(frontends/lean): flip definition modifiers position, now they must occur after the identifier
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-20 11:58:05 -07:00 |
|
Leonardo de Moura
|
5c17411a86
|
fix(kernel/converter): relax is_def_eq test, for example is_def_eq(f(?m1), a) should generate a constraint instead of returning an error
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-20 09:46:58 -07:00 |
|
Leonardo de Moura
|
bdab979e09
|
feat(frontends/lean): add inductive_cmd
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-18 16:00:59 -07:00 |
|
Leonardo de Moura
|
3bb53810c5
|
test(lean/run): add notation test
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-18 09:48:47 -07:00 |
|
Leonardo de Moura
|
08845be2fc
|
feat(frontends/lean/notation_cmd): improve 'notation' cmd
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-18 09:28:01 -07:00 |
|
Leonardo de Moura
|
3e3c4ee5ed
|
feat(frontends/lean/parser): add local_scope object to Lua API
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-18 08:38:23 -07:00 |
|
Leonardo de Moura
|
6259d20218
|
feat(frontends/lean/parser): expand Lua parser API
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-18 08:03:17 -07:00 |
|
Leonardo de Moura
|
813e033f54
|
test(lean): add simple example of notation implemented using Lua
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-17 22:37:22 -07:00 |
|
Leonardo de Moura
|
32d54ef9a3
|
fix(tests/lua): remove os.exit(0), it does not work if it is executed in the scope of a lock
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-17 22:17:06 -07:00 |
|
Leonardo de Moura
|
1378fa5cbb
|
refactor(util/script_state): remove support for threads and communication channels from the Lua API, the goal is to keep is simple, and use one Lua state object per thread
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-17 21:56:45 -07:00 |
|
Leonardo de Moura
|
4cbc429192
|
feat(frontends/lean/calc): add parse_calc function
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-17 17:16:15 -07:00 |
|
Leonardo de Moura
|
e178979061
|
feat(frontends/lean): add calc_subst, calc_refl, calc_trans commands for configuring calc-expressions
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-17 13:35:31 -07:00 |
|
Leonardo de Moura
|
819c8276f2
|
feat(frontends/lean/builtin_cmds): add 'variables' command family
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-17 08:25:00 -07:00 |
|
Leonardo de Moura
|
ea49176043
|
feat(frontends/lean/builtin_cmds): add 'using' command, and 'hiding/renaming' directives
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-16 18:42:39 -07:00 |
|
Leonardo de Moura
|
639d58f4c7
|
feat(frontends/lean/builtin_cmds): add 'print options' command
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-16 17:31:28 -07:00 |
|
Leonardo de Moura
|
3e377a9732
|
feat(frontends/lean/builtin_cmds): add 'set_option' command
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-16 17:27:43 -07:00 |
|
Leonardo de Moura
|
4f3da90443
|
feat(frontends/lean/builtin_exprs): add 'have' and 'show' expressions
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-16 15:04:29 -07:00 |
|
Leonardo de Moura
|
2c4175341c
|
feat(library/placeholder): allow types to be attached to placeholders
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-16 14:35:55 -07:00 |
|
Leonardo de Moura
|
873a5c8605
|
test(lean): add 'let' expression test
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-16 14:11:26 -07:00 |
|
Leonardo de Moura
|
21c54755a9
|
fix(kernel/converter): bug in is_def_eq
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-16 14:09:12 -07:00 |
|
Leonardo de Moura
|
f70b1b028a
|
feat(frontends/lean): provide position to parse_fn external function, add 'by' expression
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-16 12:28:58 -07:00 |
|
Leonardo de Moura
|
34dfacc10e
|
refactor(frontends/lean): Bool does not need to be a reserved keyword
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-16 10:52:12 -07:00 |
|
Leonardo de Moura
|
6db265e7ab
|
feat(frontends/lean/builtin_exprs): parse '_' placeholder
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-16 10:41:08 -07:00 |
|
Leonardo de Moura
|
5ce0502a36
|
feat(frontends/lean/builtin_exprs): add parser for 'let' expressions
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-16 09:50:34 -07:00 |
|
Leonardo de Moura
|
27130c9499
|
feat(frontends/lean): local notation 'shadows' global one
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-15 11:50:41 -07:00 |
|
Leonardo de Moura
|
28047a33ae
|
feat(frontends/lean): add local notation support
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-15 11:30:52 -07:00 |
|
Leonardo de Moura
|
64cafd6875
|
feat(frontends/lean/notation_cmd): add 'notation' command
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-06-15 10:49:05 -07:00 |
|