Leonardo de Moura
5d3b889684
fix(util/lean_path): fixes #1339
2017-02-03 15:19:48 -08:00
Leonardo de Moura
2640d3085b
fix(library/init/meta/interactive): name resolution problems in parametric sections
2017-02-03 14:04:59 -08:00
Leonardo de Moura
ab94e71e37
feat(library/type_context): do not fail on universe constraints of the form ?u =?= max ?u v
...
We solve them by creating a fresh metavariable ?w
?u := max ?w v
Remark: this is a precise solution.
2017-02-02 22:30:30 -08:00
Leonardo de Moura
b2968f450c
fix(frontends/lean/elaborator): use expected type when elaborating application for the form (c^.fn a)
...
For example, the following definition did not work before this commit:
protected meta def map {α β} (f : α → β) : lazy_tactic α → lazy_tactic β
| t s := (t s)^.for (λ ⟨a, new_s⟩, (f a, new_s))
2017-02-02 19:56:50 -08:00
Leonardo de Moura
9bee8ce36d
fix(frontends/lean/elaborator): thunk gadget should not be considered in patterns
...
The new test demonstrates the problem.
2017-02-02 17:28:03 -08:00
Sebastian Ullrich
1bcdbf38bd
feat(emacs/lean-flycheck): Next Error: show all errors at current or next position
2017-02-01 18:48:45 -08:00
Sebastian Ullrich
c3a655fdae
fix(emacs/lean-server): check if current buffer is still there when handling response
2017-02-01 18:48:45 -08:00
Sebastian Ullrich
6eded75702
fix(emacs/lean-flycheck): show running tasks when highlighting disabled or not in current file
2017-02-01 18:48:45 -08:00
Johannes Hölzl
36f8d0f0a0
chore(library/tactic/generalize_tactic): fix spelling in error message
2017-02-01 18:48:10 -08:00
Johannes Hölzl
3be8deb2d2
fix(library/tactic/generalize_tactic): instantiate mvars before calling kabstract
2017-02-01 18:48:10 -08:00
Leonardo de Moura
bb9a0c79f4
feat(frontends/lean/builtin_exprs): better syntax for quoted terms with type ascription
2017-02-01 12:49:38 -08:00
Leonardo de Moura
a9821f6437
fix(library/type_context): bug in revert method
...
We should not assume that the arguments at to_revert are sorted by idx.
This commit fixes the bug reported at:
https://groups.google.com/forum/#!topic/lean-user/x4Zwpou3le0
2017-02-01 10:51:24 -08:00
Leonardo de Moura
6e7929252f
feat(frontends/lean, library/init): add 'thunk' gadget
...
We can now write
trace "hello" t
instead of
trace "hello" (fun _, t)
2017-01-31 18:41:59 -08:00
Leonardo de Moura
7cc31835e4
refactor(library/init/meta/fun_info): cleanup fun_info API
2017-01-31 18:01:54 -08:00
Leonardo de Moura
49a0d13c50
feat(library/init/coe): add coercion from A to (option A)
...
A little hack is used to make sure type class resolution will not enter
in an infinite loop.
2017-01-31 17:45:41 -08:00
Leonardo de Moura
920e845b84
refactor(library/init/meta/congr_lemma): cleanup congr_lemma API
2017-01-31 16:46:13 -08:00
Leonardo de Moura
2874a783e0
test(tests/lean/run/defaul_param3): more tests for default param values
2017-01-31 15:28:06 -08:00
Leonardo de Moura
be6ca7c244
feat(frontends/lean): allow default parameter values in constant decls
2017-01-31 15:19:47 -08:00
Leonardo de Moura
3a4ef00f66
feat(frontends/lean): allow constructor parameters to be declared before ':'
2017-01-31 15:11:39 -08:00
Leonardo de Moura
73c16f95b9
fix(CMakeLists): config
2017-01-31 11:14:12 -08:00
Gabriel Ebner
0f96809f7a
fix(frontends/lean/parser): save noncomputable theory flag in snapshots
2017-01-31 11:05:11 -08:00
Leonardo de Moura
941ba6d96c
chore(*): style
2017-01-31 11:04:21 -08:00
Gabriel Ebner
fb9b719a22
chore(checker/simple_pp): pretty-print changed Sort/Prop/Type
2017-01-31 10:20:56 +01:00
Gabriel Ebner
bc75c2423f
feat(checker): only print axioms that are referenced by the specified theorems
2017-01-31 10:20:56 +01:00
Gabriel Ebner
7d14cb640c
feat(checker/text_import): import definitions whose type is in Prop as theorems
2017-01-31 10:20:56 +01:00
Gabriel Ebner
f404e8a2be
feat(library/export,checker): add basic support for mixfix notation
2017-01-31 10:20:56 +01:00
Gabriel Ebner
63a8070bb3
feat(checker/simple_pp): display binder info
2017-01-31 10:20:56 +01:00
Gabriel Ebner
22d6d6c843
chore(kernel/quotient/quotient): fix style
2017-01-31 10:20:55 +01:00
Gabriel Ebner
54820506e4
feat(library/export): export quotient initialization
2017-01-31 10:20:55 +01:00
Gabriel Ebner
32c97df697
chore(checker): do not set LEAN_PATH unnecessarily
2017-01-31 10:20:55 +01:00
Gabriel Ebner
661dd9c8a3
feat(checker): add simple pretty-printing
2017-01-31 10:20:55 +01:00
Gabriel Ebner
0cd7d6ba7f
fix(checker): fail on file not found
2017-01-31 09:39:31 +01:00
Gabriel Ebner
ba23228903
fix(checker): fix emscripten build
2017-01-31 09:39:31 +01:00
Gabriel Ebner
5769c2ad0f
fix(checker): fix windows build
2017-01-31 09:39:31 +01:00
Gabriel Ebner
fb3d68d172
chore(checker): install leanchecker
2017-01-31 09:39:31 +01:00
Gabriel Ebner
94565113a6
chore(checker): remove gmp, mpfr, and dl library dependencies
2017-01-31 09:39:31 +01:00
Gabriel Ebner
61804eb8e9
chore(util/sexpr): remove mpz and mpq cases
2017-01-31 09:39:31 +01:00
Gabriel Ebner
4f3e603556
chore(doc/export_format): update export format description
2017-01-31 09:39:31 +01:00
Gabriel Ebner
9e7ca0a969
feat(checker): add leanchecker executable
2017-01-31 09:39:31 +01:00
Gabriel Ebner
2f07bf352c
refactor(library/standard_kernel): move standard kernel into kernel
2017-01-31 09:39:31 +01:00
Gabriel Ebner
f3b9439029
feat(library/module_mgr): add function to get combined environment
2017-01-31 09:39:31 +01:00
Gabriel Ebner
50cfbc1fd5
fix(kernel/quotient/quotient): add missing import
2017-01-31 09:39:30 +01:00
Gabriel Ebner
81ff87e2fd
fix(library/unfold_macros): actually unfold all macros
2017-01-31 09:39:30 +01:00
Gabriel Ebner
94438b515e
fix(kernel/kernel_serializer): do not disable validation of external input in release builds
2017-01-31 09:39:30 +01:00
Gabriel Ebner
41787232f6
refactor(library/kernel_serializer): implement maximal sharing directly
2017-01-31 09:39:30 +01:00
Leonardo de Moura
d315e424ff
feat(library/congr_lemma, library/fun_info): make sure opt_param gadget do not confuse the simplifier, fun_info, congr_lemma, etc
...
A definition such as
def f (a : nat) (b : nat := a) (c : nat := a) :=
a + b + c
should *not* be treated as a dependent function.
2017-01-30 20:23:45 -08:00
Leonardo de Moura
2b56040499
fix(library/init/propext): Type => Sort
2017-01-30 19:17:57 -08:00
Leonardo de Moura
4a2ffefdaf
fix(library/init/wf): wf eliminators should be able to eliminate into Prop and Type
2017-01-30 19:14:43 -08:00
Leonardo de Moura
d3db3661af
refactor(library/init/core): simpler has_sep type class with out_param
2017-01-30 18:54:56 -08:00
Leonardo de Moura
04a8518104
refactor(library/init/core): simpler has_insert type class with out_param
2017-01-30 18:50:21 -08:00