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
Soonho Kong
b2cb49fa1f
feat(bin/lmake): add lmake
...
lmake tries to find a makefile in the current working-directory or its
ancestors and invoke the makefile if found. If a makefile is not found,
it calls lean directly. This is also used for flycheck-lean.
Usage:
$ lmake
$ lmake all
$ lmake clean
$ lmake basic
$ lmake basic.lean
$ lmake /home/user/projects/lean/library/.../basic.lean
$ lmake --flyinfo --flycheck basic
2014-08-04 15:17:23 -07:00
Leonardo de Moura
b9fadeb86e
fix(util/realpath): realpath on cygwin
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-04 15:06:08 -07:00
Leonardo de Moura
5755ce4bfc
fix(util/lean_path): use unix style paths when using cygwin
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-04 14:45:23 -07:00
Leonardo de Moura
53c7124c2b
fix(util/realpath): rename realpath to lrealpath
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-04 14:42:44 -07:00
Leonardo de Moura
bc4cef9ecb
feat(build): clean-olean target deletes .olean and .d files
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-04 14:01:13 -07:00
Leonardo de Moura
59f6cb5962
fix(build): delete incorrect/old .d and .olean files, detect errors when generating .d files.
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-04 13:58:48 -07:00
Leonardo de Moura
d5bb7d45ec
fix(library/unifier): constraint priority in the unifier, and remove hack from if.lean
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-04 13:58:47 -07:00
Leonardo de Moura
47d49643b0
feat(library/standard/logic/connectives/if): add more general if_congr theorem
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-04 13:58:47 -07:00
Soonho Kong
d8ae285f93
fix(library/Makefile.common): clean remove olean/d files recursively
...
[skip ci]
2014-08-04 11:47:24 -07:00
Leonardo de Moura
94efd51fc5
chore(library/standard/logic/connectives/if): cleanup
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-03 23:11:52 -07:00
Leonardo de Moura
c3f57cdb1c
feat(library/standard/logic/classes): add 'by_contradiction' theorem for decidable propositions
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-03 22:58:12 -07:00
Leonardo de Moura
ae2e0fd3dc
feat(library/standard/logic/connectives/if): add 'if-then-else' congruence theorem
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-03 21:41:01 -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
f3cb5f2f84
feat(library/standard/logic/connectives/quantifiers): add some theorems for simplifier
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-03 20:03:49 -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
2dca68e645
chore(util/list): add inline functions for commonly used patterns in list processing code
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-03 13:51:38 -07:00
Leonardo de Moura
5611c6a0a0
chore(util/lean_path): workaround 'spurious' warning produced by g++ in release mode
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-03 13:28:05 -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
aeebd942f2
refactor(library/standard): use relative paths in some files in the standard library
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-02 20:04:27 -07:00
Leonardo de Moura
bae9700260
fix(frontends/lean/dependencies): take relative paths into account when computing dependencies
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-02 20:03:51 -07:00
Leonardo de Moura
4b030c5d5f
feat(library/module): relative module path
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-02 19:47:55 -07:00
Leonardo de Moura
8768197c24
feat(util/lean_path): add dirname and path_append aux functions
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-02 18:12:28 -07:00
Leonardo de Moura
700c911cf7
chore(library/standard/logic/class/decidable): add missing 'end'
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-02 17:00:01 -07:00
Leonardo de Moura
148836d14b
feat(library/standard/data/option): add basic theorems for option types
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-02 16:59:01 -07:00
Leonardo de Moura
689c1ee58d
chore(README.md): add link to standard library documentation
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-02 15:54:03 -07:00
Leonardo de Moura
8c37a95164
fix(frontends/lean/scanner): typo reported by clang++
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-02 15:24:04 -07:00
Leonardo de Moura
249c878597
fix(frontends/lean/elaborator): warning message
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-02 15:21:23 -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
a62e6f84e3
feat(frontends/lean/scanner): allow letter-like unicode characters and sub/super-scripts in identifiers
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-02 00:47:58 -07:00
Leonardo de Moura
52e3505599
feat(frontends/lean): display warning message when importing file that uses 'sorry'
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-02 00:47:58 -07:00
Leonardo de Moura
53833c70e9
fix(library/coercion): spurious 'replacing coercion', fixes #22
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-01 21:45:37 -07:00
Jeremy Avigad
b832b2e33e
refactor(library/standard/data/nat): stylistic changes
2014-08-01 21:22:54 -07:00
Jeremy Avigad
b5db9a4797
feat(library/standard/data/nat): port most recent nat to lean 0.2
2014-08-01 21:22:53 -07:00
Jeremy Avigad
4b05e70762
feat(library/standard/logic/axioms): add import default
2014-08-01 21:22:53 -07:00
Jeremy Avigad
77931f2af8
feat(library/standard): add markdown documentation
2014-08-01 21:22:53 -07:00
Leonardo de Moura
428d5cfb99
chore(util/sexpr/options): typos
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-01 21:20:01 -07:00
Leonardo de Moura
0465c6ef53
fix(frontends/lean): flyinfo for identifiers defined in sections
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-01 21:15:02 -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
0c9317b167
feat(frontends/lean/elaborator): add flyinfo for placeholders
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-01 20:25:06 -07:00
Leonardo de Moura
8bd36dabce
refactor(kernel/pos_info_provider): get_pos_info return none if position is not available
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-01 20:17:26 -07:00
Leonardo de Moura
df57043861
fix(frontends/lean/scanner): decode utf8
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-01 19:58:02 -07:00
Leonardo de Moura
4b604521a0
fix(frontends/lean): add hack for flycheck
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-01 16:26:04 -07:00
Leonardo de Moura
288831dc66
fix(kernel/formatter): fixes #21
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-01 15:07:01 -07:00
Leonardo de Moura
bd766d8b0e
fix(frontends/lean/elaborator): remove duplicate entries in flyinfo data
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-01 14:40:26 -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
Soonho Kong
3cb9b4c265
fix(library/Makefile.common): make OSX-compatible
2014-08-01 10:21:40 -07:00