Leonardo de Moura
|
010ecebfea
|
feat(frontends/lean): add proof-qed expression
Remark: we still have to add support to it in the elaborator.
Right now, it is just an embellished parenthesis.
|
2014-09-11 18:14:49 -07:00 |
|
Leonardo de Moura
|
7ffe73b8ca
|
fix(frontends/lean): name clash inside section, fixes #181
|
2014-09-11 16:37:23 -07:00 |
|
Leonardo de Moura
|
85f7132efe
|
feat(frontends/lean/placeholder_elaborator): perform class-instance resolution in a completely independent unifier object, it also triggers the resolution when expected type does not contain metavariables, closes #175, closes #173, closes #68
|
2014-09-11 14:49:35 -07:00 |
|
Leonardo de Moura
|
03902d4b45
|
refactor(library/unifier): add option m_discard too unifier, if m_discard == false, then unsolved flex-flex constraints are returned, the unifier also does not apply "last resource" techniques that may miss many solutions.
|
2014-09-11 14:49:35 -07:00 |
|
Leonardo de Moura
|
80fd14b39e
|
refactor(frontends/lean): replace collect_metavars with metavar_closure helper class
|
2014-09-11 14:49:35 -07:00 |
|
Leonardo de Moura
|
1e5ba9bd75
|
refactor(frontends/lean/elaborator): move coercion_elaborator to its own module
|
2014-09-10 16:42:49 -07:00 |
|
Leonardo de Moura
|
6bc41f8dde
|
refactor(frontends/lean/elaborator): move placeholder_elaborator to its own module
|
2014-09-10 16:42:49 -07:00 |
|
Leonardo de Moura
|
9ce356e515
|
refactor(frontends/lean/local_context): do not use references in the local context
|
2014-09-10 16:42:49 -07:00 |
|
Leonardo de Moura
|
669b1bff45
|
refactor(frontends/lean/elaborator): rename choice_elaborator to choice_iterator and move to separate module
|
2014-09-10 11:20:16 -07:00 |
|
Leonardo de Moura
|
4a4de27a6c
|
refactor(frontends/lean/elaborator): move local_context to separate file
|
2014-09-10 11:20:16 -07:00 |
|
Leonardo de Moura
|
4ea322febc
|
chore(frontends/lean/elaborator): minor cleanup
|
2014-09-10 11:20:16 -07:00 |
|
Leonardo de Moura
|
b82092a123
|
fix(frontends/lean/parser): segmentation fault after REPLACE, fixes #172
|
2014-09-10 08:39:39 -07:00 |
|
Leonardo de Moura
|
570879b55f
|
feat(frontends/lean): add declaration to namespace without opening it, closes #161
|
2014-09-09 18:02:14 -07:00 |
|
Leonardo de Moura
|
e856a268a2
|
fix(frontends/lean): OVERLOAD info for overloaded notation, fixes #132
|
2014-09-09 17:44:19 -07:00 |
|
Leonardo de Moura
|
c92a9b8808
|
fix(frontends/lean/class): take whnf into account in add_instance
|
2014-09-09 16:09:05 -07:00 |
|
Leonardo de Moura
|
38058450d4
|
fix(frontends/lean/elaborator): whnf may produce assertion violation if term contains free variables
|
2014-09-09 16:09:05 -07:00 |
|
Leonardo de Moura
|
47e02342bb
|
feat(frontends/lean/elaborator): use whnf in class-instance resolution, closes #160
|
2014-09-09 15:04:44 -07:00 |
|
Leonardo de Moura
|
2d94584816
|
feat(frontends/lean/pp): add 'pp.beta' option, closes #154
|
2014-09-09 14:10:20 -07:00 |
|
Leonardo de Moura
|
ee196bbf1a
|
fix(frontends/lean/pp): pretty printing coercions to functions, fixes #151
|
2014-09-09 12:49:32 -07:00 |
|
Leonardo de Moura
|
d8caa294b5
|
fix(frontends/lean/parser): configuration options defined in a context are transient, fixes #162
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-09 11:02:54 -07:00 |
|
Leonardo de Moura
|
0505be2aca
|
feat(frontends/lean/server): unifier maximum number of steps error in FINDG, closes #155
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-09 10:36:41 -07:00 |
|
Leonardo de Moura
|
53292d8297
|
feat(frontends/lean/server): add timebound to WAIT command, closes #156
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-09 10:28:47 -07:00 |
|
Leonardo de Moura
|
d9afb3ca96
|
fix(frontends/lean/elaborator): missing constraint
|
2014-09-09 09:27:26 -07:00 |
|
Leonardo de Moura
|
4088cdc139
|
chore(frontend/lean/pp_options): use consistent name convention for pp option names
|
2014-09-09 09:27:26 -07:00 |
|
Soonho Kong
|
c88bfc0c02
|
chore(frontends/lean/server.cpp): add BEGIN/END for WAIT command
|
2014-09-08 16:04:19 -07:00 |
|
Leonardo de Moura
|
11addbb594
|
fix(frontend/lean/server): auto completion doesn't use prefix, fixes #147
|
2014-09-08 08:04:04 -07:00 |
|
Leonardo de Moura
|
b4793df653
|
feat(frontends/lean): rename '[fact]' to '[visible]'
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-08 07:47:42 -07:00 |
|
Leonardo de Moura
|
cbdfb0dcdc
|
feat(frontends/lean/elaborator): (Pi/forall) intro in class inference, closes #77
|
2014-09-07 19:59:34 -07:00 |
|
Leonardo de Moura
|
da701eb6de
|
fix(frontends/lean/elaborator): bug in recent change
|
2014-09-07 19:08:31 -07:00 |
|
Leonardo de Moura
|
fea516af24
|
feat(frontends/lean/elaborator): allow Pi/forall local instances
|
2014-09-07 18:16:33 -07:00 |
|
Leonardo de Moura
|
c378a58cc2
|
feat(frontends/lean): add [class] modifier for inductive datatypes as a shortcut for 'class' command.
|
2014-09-07 18:16:33 -07:00 |
|
Leonardo de Moura
|
3310eb3dfc
|
feat(frontends/lean): remove restriction on implict arguments, add new test that demonstrates the new feature
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-07 12:29:32 -07:00 |
|
Leonardo de Moura
|
6d2df80a17
|
feat(frontends/lean/server): use '?a' instead of '?M_i' for implicit arguments when displaying FINDP and FINDG matches
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-07 09:36:03 -07:00 |
|
Leonardo de Moura
|
1bc31d7df0
|
feat(frontends/lean/server): instantiate implicit arguments with metavariables when generating FINDP and FINDG output
|
2014-09-06 13:17:26 -07:00 |
|
Leonardo de Moura
|
87d7391d7a
|
fix(frontends/lean/server): do not fail if file does not exist in 'VISIT file'
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-06 12:34:20 -07:00 |
|
Leonardo de Moura
|
5549295c47
|
fix(frontends/lean/inductive_cmd): bug when elaborating inductive tyoe parameters
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-06 11:38:32 -07:00 |
|
Leonardo de Moura
|
bbff564a1c
|
feat(frontends/lean): persistent notation in sections
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-06 11:14:20 -07:00 |
|
Leonardo de Moura
|
bdb91f6783
|
feat(frontends/lean/server): give preference to prefix matches
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-05 21:57:35 -07:00 |
|
Leonardo de Moura
|
629feb77ef
|
feat(frontends/lean/server): ingore keywords and commands in FINDP
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-05 20:59:14 -07:00 |
|
Leonardo de Moura
|
b5f595c432
|
fix(frontends/lean/inductive_cmd): bugs when declarating inductive datatypes in sections, fixes #141, fixes #142
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-05 19:17:09 -07:00 |
|
Leonardo de Moura
|
a8361f128f
|
feat(frontends/lean/server): sort fuzzy matches by number of errors
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-05 18:03:04 -07:00 |
|
Leonardo de Moura
|
f1436d78ca
|
feat(frontends/lean/server): using fuzzy matching
|
2014-09-05 18:01:18 -07:00 |
|
Leonardo de Moura
|
898021c1b8
|
fix(frontends/lean/server): cleanup info in modified line
|
2014-09-05 01:36:17 -07:00 |
|
Leonardo de Moura
|
613c035ff8
|
fix(frontends/lean): missing pre_info for type incorrect declarations
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-05 01:12:08 -07:00 |
|
Leonardo de Moura
|
5fa1c0a5fb
|
feat(frontends/lean/server): take current namespace into account when processing FINDP command
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-05 00:40:34 -07:00 |
|
Leonardo de Moura
|
364bba2129
|
feat(frontends/lean/inductive_cmd): prefix introduction rules with the name of the inductive datatype
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-04 17:26:36 -07:00 |
|
Leonardo de Moura
|
8743394627
|
refactor(kernel/inductive): replace recursor name, use '.rec' instead of '_rec'
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-04 15:04:57 -07:00 |
|
Leonardo de Moura
|
ffc871ea8c
|
feat(frontends/lean/server): only display 'EXTRA_TYPE' info when the column number is provided to the 'INFO' command, closes #133
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-04 14:02:53 -07:00 |
|
Leonardo de Moura
|
d75a4739e4
|
refactor(util/name): move string_to_name to name module
|
2014-09-04 13:09:42 -07:00 |
|
Leonardo de Moura
|
b5b68613b1
|
feat(shell): remove '--server' command line option when compiling with -DMULTI_THREAD=OFF
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-04 12:43:14 -07:00 |
|
Leonardo de Moura
|
de8a71bc5b
|
perf(frontends/lean): do not create extra_info annotation when we are not collecting info
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-04 11:25:41 -07:00 |
|
Leonardo de Moura
|
d76218e9d1
|
fix(frontends/lean/elaborator): bug when elaborating expressions with multiple annotations
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-04 11:23:58 -07:00 |
|
Leonardo de Moura
|
9876d07094
|
chore(frontends/lean): use consistent filename convention
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-04 09:59:24 -07:00 |
|
Leonardo de Moura
|
b94ec07b29
|
feat(frontends/lean): associate type information with left '('
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-04 09:56:27 -07:00 |
|
Leonardo de Moura
|
c532dcfaac
|
feat(library/declaration_index): add 'a|abbreviation-name|declaration-name' entries in .ilean files
|
2014-09-04 09:30:25 -07:00 |
|
Leonardo de Moura
|
f9a90b9920
|
feat(frontends/lean): add 'export' command
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-03 18:37:01 -07:00 |
|
Leonardo de Moura
|
5e18e6609c
|
feat(frontends/lean): add 'as' clause to 'open' command
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-03 17:37:02 -07:00 |
|
Leonardo de Moura
|
e51c4ad2e9
|
feat(frontends/lean): rename 'using' command to 'open'
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-03 16:00:38 -07:00 |
|
Leonardo de Moura
|
e14814d4bf
|
feat(frontends/lean): add '[protected]' modifier
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-03 15:01:13 -07:00 |
|
Leonardo de Moura
|
5a203d1c75
|
feat(frontends/lean): add '?' for inspecting the type of any expression, it produces a EXTRA_TYPE info entry
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-03 11:54:42 -07:00 |
|
Leonardo de Moura
|
9702a66a29
|
feat(frontends/lean/server): use alias (if available) in FINDG command output
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-03 11:54:42 -07:00 |
|
Leonardo de Moura
|
ef1912eddf
|
feat(frontends/lean): improve COERCION info
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-03 09:34:13 -07:00 |
|
Leonardo de Moura
|
8c3d839968
|
feat(frontends/lean/server): add FINDG command (find declarations that can be used to fill a placeholder)
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-03 08:57:57 -07:00 |
|
Leonardo de Moura
|
36674eb8d9
|
feat(frontends/lean/server): add NAY and STALE status to --BEGININFO
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-02 19:04:01 -07:00 |
|
Leonardo de Moura
|
974a0a4217
|
feat(frontends/lean/elaborator): generate COERCION info
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-02 18:39:06 -07:00 |
|
Leonardo de Moura
|
24fc89ff70
|
refactor(frontends/lean/server): move option display_value to option_declarations
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-02 17:42:21 -07:00 |
|
Leonardo de Moura
|
b8c34eceed
|
feat(frontends/lean/server): display current option value instead of default value
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-02 17:29:49 -07:00 |
|
Leonardo de Moura
|
40cd50b1ca
|
fix(frontends/lean/pp): add necessary '@' when pp.implicit is true, otherwise produced output will not even type check
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-02 17:11:26 -07:00 |
|
Leonardo de Moura
|
fc0f12101c
|
fix(frontends/lean/pp): bug when pretty printing arrows
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-02 15:55:14 -07:00 |
|
Leonardo de Moura
|
0f9478d91e
|
feat(frontends/lean): add 'class' command back
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-02 15:04:23 -07:00 |
|
Leonardo de Moura
|
bbdb13172e
|
feat(frontends/lean/server): add 'FINDP' command
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-02 12:59:48 -07:00 |
|
Leonardo de Moura
|
87926b774f
|
fix(frontends/lean/info_manager): user provided options override saved options, fixes #119
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-01 18:44:43 -07:00 |
|
Leonardo de Moura
|
b7d7f12b8e
|
fix(frontends/lean/info_manager): several bugs: invalid flag was not being reset for empty lines, merge with overwrite=false was adding 'poluting' state, --NAY generation
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-30 10:35:36 -07:00 |
|
Leonardo de Moura
|
231039ad26
|
chore(frontends/lean/inductive_cmd): add auxiliary assertion for debugging
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-29 22:28:22 -07:00 |
|
Leonardo de Moura
|
373bda0c74
|
fix(frontends/lean/server): in valid line tracking, add 'VALID' command similar to show, but marks invalid lines with a '*'
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-29 18:17:07 -07:00 |
|
Leonardo de Moura
|
cb27407fcb
|
feat(frontends/lean): add SHOW and SLEEP debugging support commands, fixes worker interrupted bug, and LEAN_SERVER_DIAGNOSTIC compilation mode
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-29 18:17:07 -07:00 |
|
Leonardo de Moura
|
9a4472cff5
|
fix(frontends/lean): wrong displayed type in proof with multiple sorry's, fixes #112
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-29 14:32:53 -07:00 |
|
Leonardo de Moura
|
eeffb498b8
|
feat(frontends/lean/dependencies): send all missing files to standard error, closes #111
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-29 13:20:25 -07:00 |
|
Leonardo de Moura
|
d7da307f85
|
feat(frontends/lean/server): add 'OPTIONS' command to 'lean --server'
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-29 12:59:22 -07:00 |
|
Leonardo de Moura
|
bd3fb3489b
|
feat(frontends/lean/dependencies): do not stop computing dependencies at error, compute as many as possible, and sign error in the end
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-29 12:34:37 -07:00 |
|
Leonardo de Moura
|
b9489ce585
|
fix(frontends/let): let-expression pretty printer
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-29 10:58:27 -07:00 |
|
Leonardo de Moura
|
d8548369e7
|
feat(frontends/lean/pp): improve let-expr pretty printer
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-29 07:46:58 -07:00 |
|
Leonardo de Moura
|
2ce92feae1
|
fix(frontends/lean/pp): remove unreachable code: elaborator eliminates typed_expr macros
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-28 18:30:33 -07:00 |
|
Leonardo de Moura
|
be56fcf0bd
|
fix(frontends/lean/pp): pretty print 'let-expressions', closes #87
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-28 18:20:58 -07:00 |
|
Leonardo de Moura
|
662345e2af
|
fix(frontends/lean/elaborator): missing '\n' in error message
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-28 18:17:00 -07:00 |
|
Leonardo de Moura
|
1e80a9dfe9
|
feat(frontends/lean): avoid exponential blowup when processing let-expressions with a lot of sharing, cleanup show-expression
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-28 16:27:52 -07:00 |
|
Leonardo de Moura
|
823a3a7c56
|
feat(frontends/lean/server): add ECHO command for debugging purposes
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-28 07:40:02 -07:00 |
|
Leonardo de Moura
|
1a8eb9799e
|
feat(frontends/lean/server): preserve info that occurs in columns before first changed column
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-27 21:09:52 -07:00 |
|
Leonardo de Moura
|
8df5fc0623
|
fix(frontends/lean/server): compilation warning
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-27 17:53:00 -07:00 |
|
Leonardo de Moura
|
8719dff361
|
fix(frontends/lean): distribute '@' over choice
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-27 16:31:18 -07:00 |
|
Leonardo de Moura
|
19c14fcca7
|
refactor(frontends/lean/server): refactor lean info server, closes #90, closes #69
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-27 14:53:16 -07:00 |
|
Leonardo de Moura
|
c7e9e238ec
|
fix(frontends/lean/server): ignore output produced by worker thread, fixes #98
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-27 10:46:49 -07:00 |
|
Leonardo de Moura
|
fab4eb0d69
|
feat(frontends/lean/server): add CLEAR_CACHE command, closes #100
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-27 10:31:01 -07:00 |
|
Leonardo de Moura
|
dd99e60a00
|
refactor(frontends/lean/info_manager): store environment+options in the info_manager, fixes #96
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-26 18:07:09 -07:00 |
|
Leonardo de Moura
|
b8b5a59117
|
fix(frontends/lean/info_manager): do not rely on typeid::before, the behavior is a platform specific
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-26 14:23:12 -07:00 |
|
Leonardo de Moura
|
44c597724b
|
fix(frontends/lean): fail if theorem type has metavariables after type elaboration (and before proof elaboration)
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-26 09:01:17 -07:00 |
|
Leonardo de Moura
|
3903be34a4
|
feat(frontends/lean): process theorem statement independently of proof, thus we have the same behavior in sequential and parallel compilation modes, closes #84
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-25 21:26:17 -07:00 |
|
Leonardo de Moura
|
82a7de83cc
|
feat(frontends/lean/pp_options): use a more effective get_distinguishing_pp_options
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-25 10:23:28 -07:00 |
|
Leonardo de Moura
|
fbf13994d8
|
refactor(*): use + for concatenating format objects
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-24 09:35:25 -07:00 |
|
Leonardo de Moura
|
df60ab4ada
|
fix(frontends/lean/calc): allow calc_subst to be defined for multiple operators, allow calc cmds to be organized into namespaces, fixes #65
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-08-23 16:45:04 -07:00 |
|