Commit graph

12312 commits

Author SHA1 Message Date
Leonardo de Moura
0bf51e63e8 fix(library/init/meta/constructor_tactic): fixes #1598 2017-05-25 09:57:15 -07:00
Leonardo de Moura
5583893991 fix(library/equations_compiler/wf_rec): avoid name collision between auxiliary lemmas produced in different modules 2017-05-24 17:50:39 -07:00
Leonardo de Moura
5604835672 test(tests/lean/tree_map): closes #1457 2017-05-24 17:15:12 -07:00
Leonardo de Moura
7b98484002 test(tests/lean/run/term_app2): another well founded recursion example 2017-05-24 15:58:18 -07:00
Jared Roesch
191a3d662d feat(leanpkg): add initial support for test command 2017-05-24 14:55:59 -07:00
Leonardo de Moura
c396e4519a fix(library/equations_compiler/util): missing case at prove_eq_rec_invertible
@dselsam You have used a function similar to prove_eq_rec_invertible in
the inductive compiler.
I'm wondering if this bug (missing case) may also occur in the inductive
compiler.
2017-05-24 14:34:54 -07:00
Leonardo de Moura
39b850fb10 fix(tests/lean/eqn_hole): test output 2017-05-24 14:34:54 -07:00
Leonardo de Moura
e3249dfdb9 test(tests/lean/run/term_app): add test for nested inductive type 2017-05-24 14:34:54 -07:00
Leonardo de Moura
1d7dd20091 feat(library/init/meta/well_founded_tactics): improve default dec_tac
This is a temporary workaround until we have decision procedures for arithmetic.
2017-05-24 14:34:54 -07:00
Leonardo de Moura
56dd09058f feat(library/init/data/list/basic): add auxiliary list functions 2017-05-24 14:34:54 -07:00
Leonardo de Moura
9e9ebe9edd test(tests/lean/run/even_odd): use default decreasing tactic for defining even and odd 2017-05-24 14:34:54 -07:00
Sebastian Ullrich
491802409a chore(*): remove unused macro_definition_cell::pp method 2017-05-24 09:51:23 +02:00
Leonardo de Moura
6ad9e3ed1e feat(library/init/meta/well_founded_tactics): add simple tactic for discharging decreasing proofs 2017-05-23 22:07:46 -07:00
Leonardo de Moura
a1cfe0367b fix(library/equations_compiler/pack_domain): nested recursive calls 2017-05-23 21:50:26 -07:00
Leonardo de Moura
bebdba1004 fix(library/init/meta/simp_tactic): make sure replace_target does not fail due to reducibility settings 2017-05-23 21:43:37 -07:00
Leonardo de Moura
e163b5c884 feat(library/init/meta/expr): binder_info.other ==> binder_info.aux_decl 2017-05-23 21:42:52 -07:00
Leonardo de Moura
d8713acbdd fix(library/tactic/eqn_lemmas): fix get_eqn_lemmas_for 2017-05-23 20:39:27 -07:00
Leonardo de Moura
18c7f5f1b7 refactor(library/init/data/sigma/lex): define psigma.lex
We actually use psigma instead of sigma in the equation compiler.
2017-05-23 20:39:09 -07:00
Leonardo de Moura
290e7b9cff feat(library/init): use Sort instead of Type for defining acc and well_founded 2017-05-23 16:40:45 -07:00
Leonardo de Moura
2fb77c3e40 feat(library/init/core): add has_sizeof instances for psum and psigma 2017-05-23 16:24:38 -07:00
Leonardo de Moura
229b730c15 feat(library/equations_compiler): invoke tactics for building well founded relation, and proving recursive calls are "decreasing" 2017-05-23 16:04:55 -07:00
Leonardo de Moura
ca684102f6 refactor(library/tactic,frontends/lean): move tactic_evaluator to library/tactic 2017-05-23 15:30:31 -07:00
Leonardo de Moura
4fbb65d9f1 feat(frontends/lean,library/equations_compiler): store tactics for generating well founded relation and decreasing proofs 2017-05-23 15:00:29 -07:00
Leonardo de Moura
9afb09cc1e fix(util/trie): fix the build 2017-05-23 15:00:29 -07:00
Gabriel Ebner
ce44566c7d fix(frontends/lean/parser): do not skip command tokens after error recovery 2017-05-23 11:14:31 -07:00
Gabriel Ebner
47629e9da3 feat(frontends/lean): make most parser_errors recoverable 2017-05-23 11:14:31 -07:00
Gabriel Ebner
95300224aa fix(frontends/lean/builtin_cmds): suppress unhelpful #check output 2017-05-23 11:14:31 -07:00
Gabriel Ebner
183bf63e26 fix(frontends/lean/parser): pass error-recovery flag from parser to elaborator 2017-05-23 11:14:31 -07:00
Gabriel Ebner
77a2311f09 fix(frontends/lean/elaborator): segfault 2017-05-23 11:14:31 -07:00
Gabriel Ebner
166c07e1fe fix(frontends/lean/elaborator): do not leak _elab_u names 2017-05-23 11:14:31 -07:00
Gabriel Ebner
d27a0eff15 chore(tests): fix tests 2017-05-23 11:14:31 -07:00
Gabriel Ebner
f24d790416 chore(tests/lean/fail): update to current syntax 2017-05-23 11:14:31 -07:00
Gabriel Ebner
99754188e6 feat(library/compiler/eta_expansion): also eta-expand expressions containing sorry 2017-05-23 11:14:31 -07:00
Gabriel Ebner
eea61a1991 fix(frontends/lean/definition_cmds): fix trace messages in proofs 2017-05-23 11:14:31 -07:00
Gabriel Ebner
af63d4036b chore(tests): update tests 2017-05-23 11:14:31 -07:00
Gabriel Ebner
5f1b5da099 feat(library/compiler/eta_expansion): eta-expand sorrys 2017-05-23 11:14:31 -07:00
Gabriel Ebner
d4b45abad6 fix(frontends/lean/elaborator): ground universe meta-variables in tactic terms 2017-05-23 11:14:30 -07:00
Gabriel Ebner
40eb5d0556 feat(library/module_mgr): skip reverse dependency rebuild if file content is unchanged 2017-05-23 11:14:30 -07:00
Gabriel Ebner
dd91ef3b22 fix(frontends/lean/elaborator): fix compilation with gcc 2017-05-23 11:14:30 -07:00
Gabriel Ebner
8bd09fe282 chore(tests): add demo for parser error recovery 2017-05-23 11:14:30 -07:00
Gabriel Ebner
6b956ad658 fix(frontends/lean): prevent endless loops 2017-05-23 11:14:30 -07:00
Gabriel Ebner
89ad117be3 chore(tests): update tests with changes to error recovery 2017-05-23 11:14:30 -07:00
Gabriel Ebner
33c737fc53 feat(frontends/lean/brackets): allow trailing commas in brackets 2017-05-23 11:14:30 -07:00
Gabriel Ebner
345cd1bc2a feat(frontends/lean/parser): error recovery in interactive tactics 2017-05-23 11:14:30 -07:00
Gabriel Ebner
0b133f1f2a feat(frontends/lean/elaborator): error recovery for structure instances 2017-05-23 11:14:30 -07:00
Gabriel Ebner
8c80cb8fe9 feat(frontends/lean/equations_validator): report errors instead of
exceptions
2017-05-23 11:14:30 -07:00
Gabriel Ebner
00ac867ddf feat(frontends/lean/elaborator,library/sorry): suppress error message that mention synthetic sorrys 2017-05-23 11:14:30 -07:00
Gabriel Ebner
1468461c47 feat(frontends/lean): recover from many parser errors 2017-05-23 11:14:30 -07:00
Sebastian Ullrich
49e5c69447 fix(init/meta/expr): have all reflected defns accept Sort 2017-05-23 11:00:33 +02:00
Sebastian Ullrich
5a19430f60 fix(frontends/lean/scanner): wrong upos after field projection 2017-05-23 10:33:31 +02:00