Leonardo de Moura
71685e4dd6
feat(frontends/lean): add support for t.<id> and t.<idx> when t is a composite term
...
Replace `^.` with `.` in the stdlib
2017-03-28 17:47:49 -07:00
Leonardo de Moura
4fa3d31c95
fix(frontends/lean/elaborator): as_atomic at resolve_local_name
2017-03-28 16:21:14 -07:00
Leonardo de Moura
87932f1c56
feat(frontends/lean): change notation for inaccessible patterns
...
The following are accepted
.(t)
._
We don't accept .t anymore because it will conflict with the field
access notation.
2017-03-28 16:09:15 -07:00
Leonardo de Moura
6183c7676e
feat(frontends/lean): use . for field access
2017-03-28 15:29:54 -07:00
Leonardo de Moura
8e2dcb8ad8
chore(frontends/lean): remove ^. variants (~> and ↣)
...
This modification was motivated by a discussion at slack.
2017-03-28 12:23:33 -07:00
Leonardo de Moura
cefe1dd294
chore(frontends/lean/parser): update comments
2017-03-28 12:10:11 -07:00
Gabriel Ebner
480bc4ca2e
fix(tests/lean/.gitignore): ignore file created by io_fs test
2017-03-28 11:55:57 -07:00
Leonardo de Moura
092985f777
fix(frontends/lean/util): fixes #1495
...
We should freeze only constants
2017-03-28 11:55:11 -07:00
Leonardo de Moura
07c29c0779
chore(library/abstract_parser,frontends/lean/parser): remove dead code
2017-03-28 11:51:50 -07:00
Leonardo de Moura
9a4e04b8ca
feat(frontends/lean/structure_cmd): add equational lemma for auxiliary default values
2017-03-27 21:37:31 -07:00
Leonardo de Moura
36c7d46c34
feat(library/tactic): add options trace.rewrite and trace.kabstract for debugging rewrite tactic
...
See #1480
@semorrison We can now use the following commands to trace the rewrite
tactic
```lean
set_option trace.rewrite true
set_option trace.kabstract true
```
When these options are used, Lean will pretty print the subterm selected
by the rewrite tactic. That is, the subterm that will be rewritten.
This option may help you diagnose what is going on.
2017-03-27 18:18:20 -07:00
Leonardo de Moura
09867fcfe0
fix(library/tactic/simplify): assertion violation
2017-03-27 18:04:57 -07:00
Leonardo de Moura
71bf0bcc5d
fix(frontends/lean/builtin_exprs): fixes #1493
2017-03-27 17:57:13 -07:00
Leonardo de Moura
1cef8af1be
feat(library/tactic/simplify): add eta := tt to simp
2017-03-27 17:38:40 -07:00
Leonardo de Moura
eea46610ea
fix(library/tactic/simplify): missing projection reduction, add proj := tt to simp
2017-03-27 17:38:40 -07:00
Leonardo de Moura
161879b1bf
feat(library/init/meta): add helper tactic guard_target for generating tests
2017-03-27 17:38:40 -07:00
Leonardo de Moura
b09968a37b
feat(library/tactic/simplify): add beta := tt to simp
2017-03-27 17:38:31 -07:00
Leonardo de Moura
34f6a92e24
fix(library/tactic/simplify): simp default behavior should eliminate annotations
2017-03-27 15:10:47 -07:00
Sebastian Ullrich
68c1ff6219
feat(frontends/lean/builtin_exprs): use local field inference for info too
2017-03-27 14:01:38 -07:00
Sebastian Ullrich
00cb784bd8
fix(frontends/lean/builtin_exprs): do not hide elaborated field info when local inference fails
2017-03-27 14:01:29 -07:00
Sebastian Ullrich
e63c1d3347
refactor(frontends/lean/info_manager): use pos_info
2017-03-27 14:01:19 -07:00
Gabriel Ebner
8c1136c1b6
fix(library/module_mgr): get_first_diff_pos: handle newlines correctly
2017-03-27 14:01:04 -07:00
Gabriel Ebner
318910f99b
refactor(frontends/lean/parser): store snapshots in a lazy async list
2017-03-27 14:00:53 -07:00
Sebastian Ullrich
ecd208af0b
fix(library/module): unfold untrusted macros in imported intro rules
2017-03-27 13:42:08 -07:00
Sebastian Ullrich
a50398f837
fix(library/tactic/eval,kernel/kernel_exception): hide internal definition name on eval_expr type error
2017-03-27 13:42:08 -07:00
Sebastian Ullrich
8fb1a28604
chore(.appveyor.yml,.travis.yml): invoke ctest with --output-on-failure
2017-03-27 13:42:08 -07:00
Sebastian Ullrich
55425e7b1f
fix(frontends/lean/structure_cmd): unfold untrusted macros in intro rules
2017-03-27 13:42:08 -07:00
Sebastian Ullrich
186fe1b792
fix(library/unfold_macros): recursively unfold macros
2017-03-27 13:42:08 -07:00
Leonardo de Moura
494e5b65c5
feat(library/init/meta/tactic): add apply_auto_param and apply_opt_param tactics
...
see #1485
2017-03-27 13:42:08 -07:00
Leonardo de Moura
e98f69d1ac
fix(frontends/lean/elaborator): ignore auto/default params when @ is used
...
see #1485
@kha We need this commit to be able to execute commands such as:
```lean
#check @monad.mk
```
2017-03-27 13:42:08 -07:00
Leonardo de Moura
70e6c380ed
fix(library/vm/vm_io): fix io_monad
...
see #1485
2017-03-27 13:42:08 -07:00
Sebastian Ullrich
9e8ef54402
refactor(init/data/list/instances): simplify proofs
2017-03-27 13:42:08 -07:00
Sebastian Ullrich
b3a0eb9bfc
fix(init/meta/interactive): mk_simp_set: also remove equational lemmas
2017-03-27 13:42:08 -07:00
Sebastian Ullrich
c7b47c7b7f
fix(system/io): try to fix io monad
2017-03-27 13:42:08 -07:00
Sebastian Ullrich
83511bdae1
feat(library/tactic/elaborator_exception): show context of failed placeholders
2017-03-27 13:42:08 -07:00
Sebastian Ullrich
dfd84666e2
feat(library): add functor, applicative, and monad laws, and prove them correct for non-meta instances
2017-03-27 13:42:08 -07:00
Sebastian Ullrich
bf8292cb17
feat(frontends/lean/structure_cmd): allow local notations
2017-03-27 13:42:08 -07:00
Sebastian Ullrich
3aaf64d06f
feat(frontends/lean/elaborator): elaborate auto params and explicitly given fields as soon as possible, too.
...
Also make sure not to elaborate fields before other fields their type depends on.
Makes inline tactic proofs in structure instances possible.
2017-03-27 13:42:08 -07:00
Sebastian Ullrich
b51e666bda
feat(init/category/monad): simplify monad.seq._default
2017-03-27 13:42:08 -07:00
Sebastian Ullrich
3ead6be9ca
feat(init): add default value proofs to the monadic hierarchy
2017-03-27 13:42:08 -07:00
Sebastian Ullrich
3851009ea3
fix(frontends/lean/elaborator): elaborate auto_param fields last
2017-03-27 13:42:08 -07:00
Sebastian Ullrich
d8eef9e68e
feat(frontends/lean/util): allow lazily resolved auto params
2017-03-27 13:42:08 -07:00
Leonardo de Moura
900c56be05
feat(frontends/lean,library/equations_compiler): abstract proofs in equations and regular definitions
2017-03-25 14:22:52 -07:00
Leonardo de Moura
0890ae5c01
fix(library/type_context): When synthesizing subsingleton instances, we should not assign universe metavariables
...
fixes #1487
2017-03-25 10:54:12 -07:00
Gabriel Ebner
122355aa32
fix(emacs/lean-server): emacs 24 compatibility
2017-03-24 08:28:32 -07:00
Gabriel Ebner
69f0d30452
fix(emacs/lean-server): update roi when user changes checking mode
2017-03-24 09:29:06 +01:00
Gabriel Ebner
2c7b6fc48f
fix(frontends/lean/parser): only show sorry warning once per import
2017-03-24 09:19:17 +01:00
Gabriel Ebner
e784fad8c6
feat(shell/server,emacs): add visible lines and above checking mode
2017-03-24 09:08:17 +01:00
Gabriel Ebner
33b55250a8
fix(emacs/lean-server): fix highlight pending tasks toggle
2017-03-24 07:35:14 +01:00
Gabriel Ebner
9db6d1d845
perf(emacs/lean-server): only render visible task overlays
2017-03-24 07:22:28 +01:00