Commit graph

26741 commits

Author SHA1 Message Date
Leonardo de Moura
16e7976b1a chore(library/init/data/vector): remove [...] notation for vectors
This is a temporary workaround. The problem is that this notation
overloads the one in list, and we currently can't handle nary
overloads in patterns.
2017-07-26 13:45:30 +01:00
Leonardo de Moura
a258620425 feat(library/init/data/default): add vector and bitvec 2017-07-26 13:38:51 +01:00
Leonardo de Moura
1ec65bed44 refactor(library/init): move bitvector to main repo
@digama0 I moved bitvec back to the main repo, and many nat lemmas.
I want these lemmas here for now. I will need some of them for future
decision procedures.
2017-07-26 13:35:38 +01:00
Leonardo de Moura
d5850871da fix(leanpkg/leanpkg): list.for and monad.for issues 2017-07-26 12:02:08 +01:00
Mario Carneiro
fb2447468b chore(init/category/combinators): remove monad.for
and variations, in favor of monad.map and variations
2017-07-26 11:52:11 +01:00
Mario Carneiro
4dc261393f refactor(init/data/list): move out advanced list defs 2017-07-26 11:52:11 +01:00
Mario Carneiro
813fda9ba5 refactor(init/data/{nat,list}): rename for consistency with stdlib 2017-07-26 11:52:10 +01:00
Mario Carneiro
09f9cada65 chore(init/data/nat): rename add_one_eq_succ -> add_one 2017-07-26 11:52:10 +01:00
Mario Carneiro
cc81118892 refactor(init/data): move out some nat lemmas 2017-07-26 11:52:10 +01:00
Mario Carneiro
7d4fe55bff fix(tests/lean/run/choice_anon_ctor): fix test 2017-07-26 11:52:10 +01:00
Mario Carneiro
36b2fb228e fix(leanpkg): fix leanpkg (use list instead of hash_map) 2017-07-26 11:52:10 +01:00
Mario Carneiro
74aeb250ec refactor(*): move out stdlib 2017-07-26 11:52:10 +01:00
Sebastian Ullrich
b3bc4b73fa fix(.appveyor.yml): ... 2017-07-26 09:55:38 +02:00
Sebastian Ullrich
f1316eaf40 fix(.appveyor.yml): ugh 2017-07-25 18:36:10 +02:00
Sebastian Ullrich
eea5370292 fix(.appveyor.yml): fix build 2017-07-25 18:08:51 +02:00
Sebastian Ullrich
a54ac12918 chore(.appveyor.yml,.travis.yml,CMakeLists): set Lean version string to "nightly" for nightly builds to make artifact name and contents version-independent 2017-07-25 17:57:53 +02:00
Sebastian Ullrich
fdc1df49ec fix(.appveyor.yml): use correct variable syntax... 2017-07-25 14:29:35 +02:00
Sebastian Ullrich
f998fed50e fix(.travis.yml): fix script working dir 2017-07-25 14:02:16 +02:00
Sebastian Ullrich
a93dba699e feat(.appveyor.yml): add artifact with version-independent name 2017-07-25 13:46:13 +02:00
Sebastian Ullrich
586d355703 feat(.travis.yml): deploy nightly builds to Github Pages 2017-07-25 13:33:36 +02:00
Gabriel Ebner
d68665f7a2 chore(library/init/meta/tactic): fix copy-paste error in docstring 2017-07-23 09:48:08 +01:00
Gabriel Ebner
25aa847aba fix(library/constructions/brec_on): make motive explicit in *.below
Otherwise you can't figure out the type from the pretty-printed output
`nat.below n`.
2017-07-23 09:38:44 +01:00
Gabriel Ebner
537b11f358 fix(library/tactic/cases_tactic): do not let internal exception escape
This was doubly ungood since the contained vm_obj was shared across
threads.  @digama0 wseq.exists_of_lift_rel_left should work now.
2017-07-22 15:25:56 +01:00
Mario Carneiro
667e1e1381 fix(CMakeLists): remove executable before overwriting on windows, third try
This one is tested to work on my machine
2017-07-21 05:09:02 -07:00
Leonardo de Moura
c7c8387bd8 chore(tests/lean/run/bin_tree): fix broken test 2017-07-21 05:05:42 -07:00
Leonardo de Moura
4faae27069 perf(frontends/lean): add notation #[...]
The new notation should be use to input long sequences.
Closes #1755
2017-07-21 04:20:48 -07:00
Leonardo de Moura
3bcbfbf348 perf(library/compiler/elim_recursors): beta_reduce ==> head_beta_reduce
This commit fixes the byte code generation performace problem
exposed by #1755
2017-07-21 03:32:23 -07:00
Leonardo de Moura
af80c2890d chore(library/init/meta/tactic): define focus_aux using is_assigned 2017-07-21 02:39:55 -07:00
Mario Carneiro
94ecc3292f fix(tests): fix tests 2017-07-21 02:10:48 -07:00
Mario Carneiro
97a01d25fd fix(init/meta/tactic): skip solved goals in seq_focus and seq
and all/any_goals. This occurs when solving the first subgoal generated by `tac1; tac2` closes the second goal as well, before the second `tac2` invocation is run. Reported by @jldodds on gitter.
2017-07-21 02:10:48 -07:00
Gabriel Ebner
17a501f024 fix(CMakeLists): remove executable before overwriting on windows, second try
@digama0 Does this fix the problem for you?
2017-07-21 10:03:32 +01:00
Gabriel Ebner
3943ffccfb fix(shell/CMakeLists): remove lean executable before copying
On windows, running executables cannot be overwritten.
2017-07-21 02:00:36 -07:00
Sebastian Ullrich
7e619487f0 fix(frontends/lean/elaborator): suppress error messages containing synthetic sorrys 2017-07-21 01:46:31 -07:00
Sebastian Ullrich
46c1a1a844 refactor(frontends/lean/elaborator,kernel/error_msgs): remove duplicate code 2017-07-21 01:46:31 -07:00
Sebastian Ullrich
f8cfc4ea1b feat(kernel/error_msgs,frontends/lean/elaborator): add more context to 'type/function expected' errors 2017-07-21 01:46:31 -07:00
Corey Richardson
ed0c3d227a chore(cmake): let MINGW_INSTALL_PATH be configurable 2017-07-20 21:50:23 +01:00
Corey Richardson
5fd504bec3 dist: add leanpkg.bat script for invocation on Windows 2017-07-20 21:50:23 +01:00
Sebastian Ullrich
ae5bc52d97 fix(frontends/lean/elaborator): pass expected type through visit_function 2017-07-20 01:58:29 -07:00
Sebastian Ullrich
9e8d30ec74 fix(frontends/lean/elaborator): suppress errors in visit_overloaded 2017-07-20 01:58:29 -07:00
Sebastian Ullrich
a1066525ca feat(init/meta/interactive): auto-generalize inductive major premise args
Like Isabelle
2017-07-20 01:51:00 -07:00
Sebastian Ullrich
9ed72acabe fix(frontends/lean/builtin_exprs): allow constant patterns in do notation 2017-07-20 01:51:00 -07:00
Sebastian Ullrich
20c2232bc6 feat(init/meta/interactive): auto-generalize induct parameter
Like Isabelle
2017-07-20 01:51:00 -07:00
Sebastian Ullrich
7d39b3e948 refactor(init/meta/interactive): merge generalize and generalize2 and introduce nicer syntax 2017-07-20 01:51:00 -07:00
Mario Carneiro
89e860ac8b doc(init/core): Document init_quotient in lean
This way people can search for "constant quot" and find it in the lean source. Plus the init_quotient command only occurs once, so this way people know what it means.
2017-07-20 01:36:28 -07:00
Mario Carneiro
dfbcb72f38 chore(init/meta/tactic): remove superfluous fail clause 2017-07-20 01:28:21 -07:00
Mario Carneiro
4ae2f87bc8 refactor(init/meta/tactic): use dite instead of cases in by_cases
This fixes the issue in PR #1752 by using `dite`, which is essentially nondependent cases, so that the decidable instances are not substituted.
2017-07-20 01:28:21 -07:00
Gabriel Ebner
53898d47b0 fix(library/tactic/smt/congruence_tactics): fix cc_state.add 2017-07-20 09:17:23 +01:00
Gabriel Ebner
776b440d55 fix(library/constructions/projection): fix macro expansion
Thanks to @fpvandoorn for noticing this issue in Lean 2!  We encountered
this situation when the inferred type of the projection argument did not
reduce to the structure type with the current transparency setting of
the type context.
2017-07-18 19:56:20 +01:00
Gabriel Ebner
ba2718a89d feat(library/init/meta/environment): expose function to unfold all macros 2017-07-18 19:49:53 +01:00
Gabriel Ebner
e94095cdf3 chore(library/tactic/cases_tactic): add a bit more information to error message 2017-07-18 09:07:09 +01:00