Leonardo de Moura
|
6234d0d830
|
fix(frontends/lean/decl_cmds): the function name does not need to be atomic
|
2016-06-29 07:55:11 +01:00 |
|
Leonardo de Moura
|
e433417e49
|
feat(frontends/lean/decl_cmds): pattern variables must be atomic
|
2016-06-29 07:34:36 +01:00 |
|
Leonardo de Moura
|
5d225b7056
|
feat(frontends/lean): 'example's don't need to be trusted
|
2016-06-28 10:06:15 +01:00 |
|
Leonardo de Moura
|
c624c2d932
|
feat(frontends/lean): allow patterns in 'do' notation
|
2016-06-24 19:28:48 -07:00 |
|
Leonardo de Moura
|
51b3ddb274
|
chore(frontends/lean/decl_cmds): use 'pattern' instead of recursive equation
|
2016-06-24 16:31:06 -07:00 |
|
Leonardo de Moura
|
5459e9ad8a
|
chore(frontends/lean): remove dead code
|
2016-06-13 10:42:38 -07:00 |
|
Leonardo de Moura
|
09255e9a4c
|
fix(frontends/lean/decl_cmds): generate code for inline definitions
Reason: we only unfold inline definitions when they are fully applied.
|
2016-06-03 16:08:13 -07:00 |
|
Leonardo de Moura
|
2c4935148c
|
fix(frontends/lean/decl_cmds): recursive equations for meta-definitions
|
2016-06-02 17:12:21 -07:00 |
|
Leonardo de Moura
|
5382a5a556
|
feat(frontends/lean): allow unbounded recursion in meta_definitions
|
2016-06-01 09:55:07 -07:00 |
|
Leonardo de Moura
|
e7b47a504e
|
feat(frontends/lean): add meta_definition and meta_constant commands
|
2016-06-01 09:12:41 -07:00 |
|
Leonardo de Moura
|
af1908be94
|
feat(frontends/lean/decl_cmds): do not generate warning for definitions that are implemented in the VM
|
2016-05-13 18:17:20 -07:00 |
|
Leonardo de Moura
|
65b9cab9b4
|
feat(frontends/lean/decl_cmds): generate bytecode when adding definitions
Remark: when the code generator fails we just generate a warning.
Reason: code generator does not support wellfounded recursion yet.
|
2016-05-13 18:05:47 -07:00 |
|
Leonardo de Moura
|
de9df69ef6
|
refactor(src): move compiler folder to library
|
2016-05-09 13:28:00 -07:00 |
|
Leonardo de Moura
|
a4ec6a3a17
|
feat(compiler, frontends/lean): add 'inline' definitions, and add compiler preprocessing step for unfolding them
|
2016-05-04 16:53:25 -07:00 |
|
Leonardo de Moura
|
c4f25cf15b
|
refactor(frontends/lean): rename elaborate methods
|
2016-03-30 15:05:24 -07:00 |
|
Leonardo de Moura
|
7d61f640f6
|
refactor(*): add abstract_type_context class
|
2016-02-26 14:17:34 -08:00 |
|
Leonardo de Moura
|
c9e9fee76a
|
refactor(*): remove name_generator and use simpler mk_fresh_name
|
2016-02-11 18:05:57 -08:00 |
|
Leonardo de Moura
|
ba392f504f
|
feat(kernel/expr,library/blast/blast,frontends/lean/decl_cmds): add workaround for allowing users to use blast inside of recursive equations
|
2016-01-03 21:53:31 -08:00 |
|
Leonardo de Moura
|
b92416d66c
|
refactor(library/error_handling): move error_handling to library main dir
|
2015-12-29 15:31:40 -08:00 |
|
Leonardo de Moura
|
20de22a8ad
|
feat(frontends/lean): automatically include anonymous instance implicit variables/parameters (whenever their parameters have been included)
|
2015-12-13 13:20:54 -08:00 |
|
Leonardo de Moura
|
cf61adc5d5
|
feat(frontends/lean): identifiers starting with '_' are now reserved
|
2015-12-10 22:32:03 -08:00 |
|
Leonardo de Moura
|
1abaa9eb71
|
fix(frontends/lean/parser): fixes #858
|
2015-12-10 10:31:14 -08:00 |
|
Leonardo de Moura
|
cbc3c0cf4f
|
feat(frontends/lean): suppress profiling information for declarations that take less than 0.01 secs to be processed
|
2015-12-09 10:48:36 -08:00 |
|
Leonardo de Moura
|
fa938bb94c
|
feat(frontends/lean/decl_cmds): allow modifier to be provided after the 'attribute' keyword, test 'at' keyword
|
2015-12-05 11:50:08 -08:00 |
|
Leonardo de Moura
|
e5aab3fd63
|
feat(library/scoped_ext,frontends/lean): add support for setting attributes into different namespaces
|
2015-12-05 11:15:02 -08:00 |
|
Leonardo de Moura
|
491c7c55e1
|
feat(library/simplifier/simp_rule_set): add priorities for simp and congr rules
|
2015-11-16 22:34:06 -08:00 |
|
Leonardo de Moura
|
0b8f57841a
|
feat(frontends/lean/decl_cmds): closes #791
|
2015-08-11 17:53:33 -07:00 |
|
Leonardo de Moura
|
6c5832a564
|
feat(frontends/lean/decl_cmds): allow recursive examples
closes #774
|
2015-08-08 08:26:25 -07:00 |
|
Leonardo de Moura
|
be61fb0566
|
feat(frontends/lean/elaborator): add "noncomputable theory" command, display "noncomputable" when printing definitions
When the command "noncomputable theory" is used, Lean will not sign an
error when a noncomputable definition is not marked as noncomputable
|
2015-07-29 17:54:35 -07:00 |
|
Leonardo de Moura
|
69ead0ddd8
|
feat(frontends/lean/decl_cmds): reject unnecessary "noncomputable" annotations
|
2015-07-29 13:01:07 -07:00 |
|
Leonardo de Moura
|
74be3031b1
|
feat(frontends/lean/decl_cmds): sign an error if "noncomputable" keyword is used in the HoTT library or with non-definitions
|
2015-07-29 13:01:06 -07:00 |
|
Leonardo de Moura
|
308af87b69
|
feat(library): add 'noncomputable' keyword for the standard library
|
2015-07-28 21:56:35 -07:00 |
|
Leonardo de Moura
|
2109dff46a
|
feat(frontends/lean): remove unnecessary flag
|
2015-06-17 17:23:20 -07:00 |
|
Leonardo de Moura
|
3d9b557cfd
|
feat(frontends/lean): allow the user to mark subterms that should be automatically abstracted into new definitions
closes #484
|
2015-06-12 17:49:26 -07:00 |
|
Leonardo de Moura
|
4694f47ea4
|
refactor(frontends/lean/decl_attributes): move decl_attributes to a separate module
|
2015-06-12 13:38:57 -07:00 |
|
Leonardo de Moura
|
ca43f6e62e
|
refactor(frontends/lean): add postprocess procedure and cleanup
|
2015-06-10 15:19:35 -07:00 |
|
Leonardo de Moura
|
0fbc944cdd
|
feat(frontends/lean): add '[rewrite]' attribute
|
2015-06-01 17:58:24 -07:00 |
|
Leonardo de Moura
|
b6fde68012
|
feat(frontends/lean/decl_cmds): avoid funny names when displaying error messages for "examples"
|
2015-06-01 15:35:28 -07:00 |
|
Leonardo de Moura
|
3b7b268e40
|
fix(frontends/lean/pp): fixes #634
trying again...
|
2015-05-29 14:07:38 -07:00 |
|
Leonardo de Moura
|
ab58e538a4
|
feat(frontends/lean/elaborator): hide auxiliary 'match' hypothesis during elaboration
|
2015-05-25 15:24:56 -07:00 |
|
Leonardo de Moura
|
c2faa0fe98
|
refactor(library): rename equivalence_manager to relation_manager
|
2015-05-21 12:25:02 -07:00 |
|
Leonardo de Moura
|
e1c2340db2
|
fix(frontends/lean): consistent behavior for protected declarations
see https://github.com/leanprover/lean/issues/604#issuecomment-103265608
closes #609
|
2015-05-18 22:35:18 -07:00 |
|
Leonardo de Moura
|
c61c049152
|
feat(library/user_recursors): generalize acceptable use-defined recursors
see issue #492
|
2015-05-18 14:21:10 -07:00 |
|
Leonardo de Moura
|
750f6d5a43
|
feat(library,frontends/lean): validate user defined recursors and add attribute to mark them
see issue #492
The user-defined recursors will also be used to implement the blast tactic
|
2015-05-12 15:48:01 -07:00 |
|
Leonardo de Moura
|
bd28396be0
|
feat(kernel): transparent theorems
closes #576
|
2015-05-09 11:42:29 -07:00 |
|
Leonardo de Moura
|
4e35afedcc
|
feat(frontends/lean): rename 'wait' to 'reveal'
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2015-05-08 20:54:16 -07:00 |
|
Leonardo de Moura
|
f8e2f68ce0
|
feat(frontends/lean): add 'wait' command
This commit also fixes several problems with -j option (parallel
compilation). The .olean files were not missing data when -j was used
see issue #576
|
2015-05-08 20:05:21 -07:00 |
|
Leonardo de Moura
|
e59456c19f
|
feat(frontends/lean): remove 'opaque' keyword
see issue #576
|
2015-05-08 16:45:13 -07:00 |
|
Leonardo de Moura
|
cf7e60e5a6
|
refactor(kernel): remove "opaque" field from kernel declarations
see issue #576
|
2015-05-08 16:06:16 -07:00 |
|
Leonardo de Moura
|
57ea660963
|
refactor(*): start process for eliminating of opaque definitions from the kernel
see issue #576
|
2015-05-08 16:06:04 -07:00 |
|