Leonardo de Moura
|
60d8369688
|
fix(library/unifier): missing justification when updating choice constraints
The bug was not producing incorrect results, but really bad error
messages.
See: empty.lean.expected.out
|
2014-10-04 10:40:53 -07:00 |
|
Leonardo de Moura
|
64f6601fe3
|
fix(frontends/lean/proof_qed_elaborator): information about synthesized variables in a proof-qed block was being lost
|
2014-10-04 09:15:42 -07:00 |
|
Leonardo de Moura
|
7073f036d8
|
test(tests/lean/run): add additional tests for section parameter/variable and strict implicit argument
|
2014-10-04 08:15:43 -07:00 |
|
Leonardo de Moura
|
bf01cfeec5
|
fix(frontends/lean): avoid superfluous local references of the form @-1 (@ f) ,
This kind of term also confuses the elaborator
|
2014-10-04 07:55:32 -07:00 |
|
Leonardo de Moura
|
e71d4548de
|
fix(frontends/lean): universe levels associated with section variables should not be fixed in the section
|
2014-10-04 07:13:19 -07:00 |
|
Leonardo de Moura
|
938e12baa1
|
feat(frontends/lean/notation_cmd): allow local numeric notation
|
2014-10-03 13:55:57 -07:00 |
|
Leonardo de Moura
|
fd013e8d07
|
chore(tests/lean/run/group3): cleanup test
|
2014-10-03 13:55:57 -07:00 |
|
Leonardo de Moura
|
c0725d1934
|
refactor(frontends/lean): remove 'including' expressions
|
2014-10-03 09:09:27 -07:00 |
|
Leonardo de Moura
|
01d4644026
|
fix(frontends/lean): bug in include/omit commands: in the end of section/context, the configuration must be restored
|
2014-10-03 08:52:35 -07:00 |
|
Leonardo de Moura
|
284f300440
|
feat(frontends/lean): add 'include' and 'omit' commands, closes #184
|
2014-10-03 07:23:24 -07:00 |
|
Leonardo de Moura
|
6950b4aa9b
|
fix(frontends/lean/decl_cmds): do not allow section parameters/variables to shadow existing parameters/variables
|
2014-10-02 18:29:41 -07:00 |
|
Leonardo de Moura
|
f006d93794
|
feat(frontends/lean): section variables occur after section parameters
|
2014-10-02 17:55:34 -07:00 |
|
Leonardo de Moura
|
0a13e7863a
|
feat(frontends/lean): enforce rule section parameters cannot depend on section variables
|
2014-10-02 17:55:34 -07:00 |
|
Leonardo de Moura
|
bf081ed431
|
refactor(kernel): rename var_decl to constant_assumption
Motivation: it matches the notation used to declare it.
|
2014-10-02 17:55:34 -07:00 |
|
Leonardo de Moura
|
4946f55290
|
refactor(frontends/lean): constant/axiom are top-level commands, parameter/variable/hypothesis/conjecture are section/context-level commands
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-10-02 17:55:34 -07:00 |
|
Leonardo de Moura
|
f78d831de3
|
refactor(frontends/lean): remove hardcoded Type', and define it using notation
|
2014-10-02 14:29:51 -07:00 |
|
Leonardo de Moura
|
4cb54ac825
|
feat(frontends/lean/elaborator): more strict test for bad universe solution
|
2014-10-02 14:29:51 -07:00 |
|
Leonardo de Moura
|
98e66586e9
|
feat(frontends/lean/elaborator): elaborator rejects 'Type' if the universe is explicit
|
2014-10-02 14:29:51 -07:00 |
|
Leonardo de Moura
|
153e3927ac
|
feat(frontends/lean/elaborator): modify '!' semantics: it stops consuming arguments as soon it finds an argument that does not occur in the rest of the type.
|
2014-10-01 18:50:17 -07:00 |
|
Leonardo de Moura
|
e64d5c4a4a
|
refactor(library/data/nat): use new operator '!'
|
2014-10-01 18:39:47 -07:00 |
|
Leonardo de Moura
|
716cd4d651
|
refactor(library): rename namespace eq_ops to eq.ops
|
2014-10-01 17:51:17 -07:00 |
|
Leonardo de Moura
|
ead827d6b7
|
feat(frontends/lean): add ! operator the "dual" of @ , closes #220
|
2014-10-01 17:13:41 -07:00 |
|
Leonardo de Moura
|
bc6ebf34be
|
feat(library/data/bool): do not use ! as notation for bnot, rename band/bor -> and/or
|
2014-10-01 17:00:03 -07:00 |
|
Leonardo de Moura
|
c46ec6a548
|
fix(frontends/lean): missing type information for INFO, fixes #218
|
2014-10-01 14:29:07 -07:00 |
|
Leonardo de Moura
|
f863d82e69
|
fix(frontends/lean/pp): pp was not taking into account new namespace name resolution rules, fixes #216
|
2014-10-01 11:24:45 -07:00 |
|
Leonardo de Moura
|
966366e18e
|
feat(kernel/inductive): relaxed rules for defining datatypes with explicit universes, closes #217
|
2014-10-01 10:56:05 -07:00 |
|
Leonardo de Moura
|
263b081e69
|
fix(frontends/lean/inductive_cmd): temporary aliases must take explicit universes into account, fixes #215
|
2014-10-01 10:24:44 -07:00 |
|
Leonardo de Moura
|
2730e5163e
|
feat(frontends/lean): allow 'sorry' implicit argument to access the whole context, and avoid cryptic error message
See new test for explanation.
|
2014-09-30 18:04:04 -07:00 |
|
Leonardo de Moura
|
113879a7dd
|
feat(frontends/lean/server): sort exact matches by size in FINDP
|
2014-09-29 16:44:55 -07:00 |
|
Leonardo de Moura
|
a0c37b231f
|
feat(kernel/expr): add hash_bi function that takes binder information into account
|
2014-09-29 16:44:55 -07:00 |
|
Leonardo de Moura
|
0d6d746d98
|
feat(frontends/lean): check modification time of imported files
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-29 15:17:27 -07:00 |
|
Leonardo de Moura
|
21be308884
|
feat(frontends/lean/inductive_cmd): infer implicit argument annotation after elaboration, allow user to disable it by using '()' annotation, closes #210
|
2014-09-29 11:11:17 -07:00 |
|
Leonardo de Moura
|
9c55bbb871
|
feat(frontends/lean/elaborator): report an error when Type becomes a Prop after elaboration, closes #208
|
2014-09-29 08:18:10 -07:00 |
|
Leonardo de Moura
|
397395bbc9
|
feat(frontends/lean): allow user to associate priorities to class-instances, closes #180
|
2014-09-28 12:20:42 -07:00 |
|
Leonardo de Moura
|
22e47430b5
|
feat(library/unifier): add 'on-demand' choice constraints, they are processed as soon as their type does not contain meta-variables anymore
|
2014-09-27 21:50:39 -07:00 |
|
Leonardo de Moura
|
8e7aac1eb4
|
fix(frontends/lean): add 'eval' command
|
2014-09-26 20:16:03 -07:00 |
|
Leonardo de Moura
|
69f50adb2e
|
fix(frontends/lean/server): must save the starting environment/options when reprocessing file, fixes #209
|
2014-09-26 15:36:47 -07:00 |
|
Leonardo de Moura
|
a3e38dc8a0
|
feat(frontends/lean): allow users to define "numeral notation"
|
2014-09-26 14:55:23 -07:00 |
|
Leonardo de Moura
|
631ebc6c4b
|
fix(tests/lean/uni_bug1): make sure test does not produce a 'used sorry' warning.
Thus, the output behavior is the same when we compile lean with/without IGNORE_SORRY=ON
|
2014-09-26 09:42:31 -07:00 |
|
Leonardo de Moura
|
c775da16ec
|
feat(frontends/lean/elaborator): discard partial solution during
class-instance resolution, use only tactic_hints associated with
classes, enforce is_strict
|
2014-09-25 19:46:08 -07:00 |
|
Leonardo de Moura
|
10a4148adb
|
fix(tests): make sure tests can be executed on Windows msys2 shell
|
2014-09-20 15:51:24 -07:00 |
|
Leonardo de Moura
|
8fe7465ade
|
fix(frontends/lean/pp): when formatting a coercion to function-class
that contains implicit arguments
|
2014-09-20 09:56:46 -07:00 |
|
Leonardo de Moura
|
fd5daa8fda
|
feat(frontends/lean): use coercions to function-class and sort-class in
function arguments, closes #203
|
2014-09-20 09:00:10 -07:00 |
|
Leonardo de Moura
|
86f06a54ea
|
refactor(library/data/vector): rename 'vec' to 'vector'
|
2014-09-19 16:20:50 -07:00 |
|
Leonardo de Moura
|
4e2377ddfc
|
refactor(frontends/lean): replace '[protected]' modifier with 'protected definition' and 'protected theorem', '[protected]' is not a hint.
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-19 15:54:32 -07:00 |
|
Leonardo de Moura
|
5d8c7fbdf1
|
refactor(frontends/lean): replace '[private]' modifier with 'private
definition' and 'private theorem', '[private]' is not a hint.
|
2014-09-19 15:54:32 -07:00 |
|
Leonardo de Moura
|
08ccd58eb6
|
feat(frontends/lean): add 'reducible' modifier for controlling which
definitions are unfolded during elaboration
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2014-09-19 15:54:32 -07:00 |
|
Leonardo de Moura
|
baf4c01de8
|
feat(frontends/lean): definitions are opaque by default
|
2014-09-19 15:54:32 -07:00 |
|
Leonardo de Moura
|
48dbd13eef
|
feat(frontends/lean): allow transient classes/instances, i.e.,
classes/instances that are not saved in .olean files
|
2014-09-19 15:54:32 -07:00 |
|
Leonardo de Moura
|
49d5af473d
|
refactor(kernel): remove support for proof irrelevant classes
Motivation: we can use Prop
|
2014-09-19 07:32:07 -07:00 |
|