Leonardo de Moura
|
8375626cb6
|
fix(doc/lean/tutorial): adjust tutorial to library changes, fix test
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-20 18:32:53 -07:00 |
|
Jeremy Avigad
|
6264fb52d6
|
fix(lean/library/standard): fix tests, more cleanup
|
2014-08-20 18:04:31 -07:00 |
|
Leonardo de Moura
|
f5987b7bda
|
refactor(library/unifier): make it easier to add new options to the unifier
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-20 17:30:08 -07:00 |
|
Leonardo de Moura
|
9588336c15
|
refactor(kernel/type_checker): remove "global" constraint buffer from type_checker, and use constraint_seq instead
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-20 16:46:19 -07:00 |
|
Leonardo de Moura
|
b60c9d9ecc
|
test(tests/lean/run): add test
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-20 16:46:19 -07:00 |
|
Leonardo de Moura
|
f0d50e0d33
|
feat(frontends/lean): change the name resolution rules: when in a namespace N that defines C, then C always refers to N.C (i.e., it overrides any alias)
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-18 18:58:50 -07:00 |
|
Leonardo de Moura
|
08ae17650b
|
feat(frontends/lean): try overloaded notation and declarations in the order they were defined
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-18 18:58:50 -07:00 |
|
Leonardo de Moura
|
919f02983e
|
feat(frontends/lean/elaborator): case-split on coercions that cannot be resolved by postponing
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-18 18:58:50 -07:00 |
|
Leonardo de Moura
|
4a96fefd96
|
fix(library/unifier): bug in unifier priority queue
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-18 18:58:50 -07:00 |
|
Leonardo de Moura
|
1d306c09ee
|
fix(tests/lean/interactive): remove leftover from test output
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-17 17:29:52 -07:00 |
|
Leonardo de Moura
|
05b0f24cb5
|
fix(frontends/lean/decl_cmds): improve error message for invalid end of theorem
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-17 17:03:54 -07:00 |
|
Leonardo de Moura
|
13af81d554
|
fix(tests/lean/interactive): adjust test output to reflect new features
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-17 15:23:53 -07:00 |
|
Leonardo de Moura
|
55b0a03e3d
|
refactor(frontends/lean/info_manager): to allow cache to be used when producing info data, fixes #37, closes #45
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-17 12:16:32 -07:00 |
|
Leonardo de Moura
|
1436212a34
|
fix(library/unifier): use depth-first search strategy for solving class-instance constraints
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-16 13:51:24 -07:00 |
|
Leonardo de Moura
|
670bfe24f5
|
chore(build): remove hott library directory, and move hott tests
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-15 13:30:56 -07:00 |
|
Leonardo de Moura
|
094459504b
|
fix(tests/lean/run): adjust test to changes in the library
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-15 13:27:18 -07:00 |
|
Leonardo de Moura
|
28b7d87f1f
|
feat(frontends/lean/pp): pretty print numerals
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-14 09:12:22 -07:00 |
|
Leonardo de Moura
|
e778e3faec
|
fix(tests/lean): adjust tests expected output
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-13 12:35:14 -07:00 |
|
Leonardo de Moura
|
60ab6d3bd8
|
feat(frontends/lean): remove feature that in declarations such as (A B : Type), forced A and B to be in the same universe
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-12 17:40:30 -07:00 |
|
Leonardo de Moura
|
7d0c0818e5
|
test(tests/lean/slow): add self contained path_groupoids test file
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-11 16:44:30 -07:00 |
|
Leonardo de Moura
|
70c0eda9fc
|
feat(frontends/lean): make sure all scopes are closed in the end of the module
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-07 17:08:59 -07:00 |
|
Leonardo de Moura
|
1a67e69678
|
feat(library/scoped_ext): force user to end a scope with an identifier matching the one used in beginning of scope, closes #30
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-07 16:59:08 -07:00 |
|
Leonardo de Moura
|
2486c483cf
|
chore(kernel/error_msgs): change type mismatch error messages, closes #33
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-07 16:18:40 -07:00 |
|
Leonardo de Moura
|
9e6c5695be
|
fix(library/unifier): make sure the imitation step is type correct, fix ensure_sufficient_args
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-07 16:09:45 -07:00 |
|
Leonardo de Moura
|
4ad7e709aa
|
feat(frontends/lean): default for inductive types, closes #32
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-07 07:52:37 -07:00 |
|
Leonardo de Moura
|
8d9ca4c4ea
|
fix(tests/lean): remove obsolete test
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-06 19:40:02 -07:00 |
|
Leonardo de Moura
|
a173b7f6e6
|
test(tests/lean/interactive): add old 'interactive' tests
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-06 14:57:08 -07:00 |
|
Leonardo de Moura
|
069f217215
|
fix(frontends/lean/elaborator): use full local context for metavariables due to coercions and overloads
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-05 17:21:21 -07:00 |
|
Leonardo de Moura
|
9cc2015caa
|
feat(library/unifier): better error message for invalid local context
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-05 16:25:22 -07:00 |
|
Leonardo de Moura
|
d1924097d5
|
feat(library/match): add 'local' backtracking
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-05 10:09:00 -07:00 |
|
Leonardo de Moura
|
e6ffda0c51
|
feat(library/match): add basic match_plugin that just invokes whnf before failing
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-05 08:37:03 -07:00 |
|
Leonardo de Moura
|
56d151ef7f
|
feat(frontends/lean): 'partial' aliases. closes #24
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-04 22:08:10 -07:00 |
|
Leonardo de Moura
|
c34c2f4f5c
|
feat(library/match): match universe levels
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-04 18:30:30 -07:00 |
|
Leonardo de Moura
|
0d5e346143
|
fix(library/expr_lt): make sure the builtin order is AC-compatible
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-04 15:51:10 -07:00 |
|
Leonardo de Moura
|
63d478c63f
|
fix(tests/lua/hop1): incorrect assertion
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-03 20:06:50 -07:00 |
|
Leonardo de Moura
|
552be37d48
|
feat(library/hop_match): port higher-order (pattern) matcher to Lean 0.2, we still have to implement support for universe levels
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-03 16:03:58 -07:00 |
|
Leonardo de Moura
|
50b0c17092
|
feat(library/unifier): add more information in error messages due to type errors when assigning metavariables
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-03 09:49:30 -07:00 |
|
Leonardo de Moura
|
938b4e8421
|
test(tests/lean/run): add unicode in identifiers test
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-02 20:05:46 -07:00 |
|
Leonardo de Moura
|
fbc4a7af3b
|
feat(library/unifier): when unifier.expensive == true, then use only restrict higher-order unification (a fragment slightly more general than higher-order pattern matching) for solving class-instance constraints
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-02 14:30:25 -07:00 |
|
Leonardo de Moura
|
5e2185cfbe
|
feat(library/unifier): postpone as much as possible universe constraints of the form ?m1 =?= max(l1, l2) and ?m1 =?= imax(l1, l2) where ?m1 occurs in the right hand side. When there is nothing else to be done, try to solve them by reducing to ?m1 = l1 and ?m1 = l2.
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-02 09:14:35 -07:00 |
|
Leonardo de Moura
|
3795d466c1
|
fix(frontends/lean/elaborator): provide type information for expressions using '@' operator, and strict function applications
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-01 20:57:24 -07:00 |
|
Leonardo de Moura
|
4cb8fb20fe
|
fix(frontends/lean/elaborator): bug when mixing string and non-strict implict arguments
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-01 10:58:20 -07:00 |
|
Leonardo de Moura
|
01908c4dac
|
chore(tests/lean): add 'expensive' file
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-01 10:35:32 -07:00 |
|
Leonardo de Moura
|
8e6324185a
|
fix(tests/lean): adjust tests to new library structure
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-01 09:37:23 -07:00 |
|
Leonardo de Moura
|
6ca80b5000
|
feat(frontends/lean): add 'sorry'
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-07-31 18:35:57 -07:00 |
|
Leonardo de Moura
|
de05c041c7
|
feat(library/unifier): add flag for enabling/disabling expensive extensions in the unifier
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-07-31 16:46:16 -07:00 |
|
Leonardo de Moura
|
f57fc33442
|
fix(library/unifier): bug that was making unifier miss solutions, and add a new case-split that tries to solve flex_rigid constraints by putting the rhs into whnf
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-07-31 16:46:16 -07:00 |
|
Leonardo de Moura
|
9637ceb86e
|
feat(frontends/lean): allow user to provide a terminator for 'foldr' and 'foldl'
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-07-30 15:04:44 -07:00 |
|
Leonardo de Moura
|
450131692a
|
fix(library/converter): missing constraint on eta expansion
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-07-30 10:43:47 -07:00 |
|
Leonardo de Moura
|
936bb2744b
|
fix(library/unifier): add a flag to sign that a choice constraint owns a metavariable ?m, that is, it has the right to assign ?m, and the unifier should postpone any other constraint that tries to assign ?m
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-07-29 17:32:55 -07:00 |
|