Leonardo de Moura
cbca84a8ea
chore(library/init/data/nat/bitwise): fix copyright date
2017-05-30 13:05:37 -07:00
Mario Carneiro
9d676776b5
feat(library/vm/vm_nat): implementations of bitwise ops
2017-05-30 12:47:44 -07:00
Mario Carneiro
860e2d904d
feat(init/data/nat): bitwise operations
2017-05-30 12:47:44 -07:00
Leonardo de Moura
d0f73c7041
fix(util/trie): compilation issue
...
See #1619
2017-05-30 10:57:59 -07:00
Sebastian Ullrich
4eab11ec3d
fix(frontends/lean/structure_cmd): even less error recovery
2017-05-30 19:02:25 +02:00
Mario Carneiro
e92fba8eda
feat(init/data/ordering): ordering.swap
2017-05-30 14:22:49 +02:00
Gabriel Ebner
d5c7d078eb
fix(library/type_context): check for stack overflow
2017-05-29 14:58:34 +02:00
Gabriel Ebner
5ab28548b8
fix(library/type_context): reduce whnf stack space
2017-05-29 14:58:28 +02:00
Gabriel Ebner
ddab6260aa
fix(library/init/meta/tactic): measure tactic creation time
2017-05-29 14:57:08 +02:00
Gabriel Ebner
b14a248dcd
fix(frontends/lean/structure_cmd): segfault
2017-05-29 07:37:50 +02:00
Johannes Hölzl
ab6797b74c
feat(leanpkg): support (deterministic) timeout value in leanpkg.toml
2017-05-29 06:52:38 +02:00
Mario Carneiro
92d76c22a5
feat(data/pnat): positive natural numbers
2017-05-28 02:32:23 -04:00
Leonardo de Moura
d10a799b79
chore(tests/lean/interactive/complete_field): fix test
2017-05-27 10:18:44 -07:00
Mario Carneiro
9c29206386
feat(init/meta/injection_tactic): injections tactic
...
Runs injection repeatedly on the LC and subgoals
2017-05-27 06:15:47 -04:00
Mario Carneiro
6e88119f55
feat(init/meta/injection_tactic): better injection tactic
...
(1) The lhs and rhs will be reduced to whnf before getting the constructor apps
(2) If the lhs and rhs are distinct constructors, it discharges the goal by contradiction
(3) The interactive injection tactic will try to close the goal by assumption if successful
2017-05-27 04:59:40 -04:00
Mario Carneiro
f5aa07953b
chore(init/logic): slightly more efficient decidability of iff, xor
2017-05-27 04:16:25 -04:00
Mario Carneiro
2251de503d
feat(init/relator): some new base theorems for transfer tactic
2017-05-27 04:16:25 -04:00
Mario Carneiro
961d0cd6ed
feat(init/data/list): list mem lemmas for map, join, bind
2017-05-27 04:16:24 -04:00
Mario Carneiro
0b4cecfc87
refactor(init/core): write std.priority.max in hex
2017-05-27 04:16:23 -04:00
Mario Carneiro
57837c2b3e
fix(init/meta/tactic): let by_cases handle elimination to Type
2017-05-27 04:14:06 -04:00
Mario Carneiro
558efb33c1
feat(init/data/option): option.get
2017-05-27 04:14:05 -04:00
Mario Carneiro
6ebbe40437
chore(init/category/monad): proof optimization
2017-05-27 04:14:04 -04:00
Mario Carneiro
a0503f964c
feat(init/algebra, init/data/int): more ring theorems
2017-05-27 04:14:04 -04:00
Mario Carneiro
b827df8b49
refactor(init/logic): remove "contrapos" (which is a duplicate of "mt")
2017-05-27 04:14:03 -04:00
Mario Carneiro
39e7e5cba8
feat(data/vector): more vector operations
2017-05-27 04:14:02 -04:00
Mario Carneiro
07f4055dc0
feat(init/data/int): some more basic int theorems
2017-05-27 04:14:02 -04:00
Mario Carneiro
d85c3fa74e
feat(init/category/alternative): a monadic "give me a proof" assert operator
2017-05-27 04:14:01 -04:00
Mario Carneiro
0d977f46e6
feat(init/data/quot): show that quot is the quotient by the generated equivalence
2017-05-27 04:14:00 -04:00
Mario Carneiro
b28ff94780
feat(init/data/option_t): option_t is a monad transformer
2017-05-27 04:14:00 -04:00
Mario Carneiro
52e41ecd1d
feat(init/data/subtype): add subtype.eta
2017-05-27 04:13:59 -04:00
Mario Carneiro
20e630ad19
refactor(init/funext): shorten proof
2017-05-27 04:13:59 -04:00
Mario Carneiro
0441605861
feat(init/core): add heq.rfl
2017-05-27 04:13:58 -04:00
Mario Carneiro
1d3887dd3f
fix(init/meta/interactive): bug in generalize2
2017-05-27 04:13:57 -04:00
Leonardo de Moura
1ee1e01f8c
feat(library/tactic/smt/congruence_closure): add builtin support for (@ne A a b)
...
This is needed when using cc in the standard tactic monad.
closes #1608
2017-05-26 17:06:22 -07:00
Leonardo de Moura
82e51ddad5
fix(library/constructions/injective): fixes #1609
...
@dselsam You have assumed that the left-hand-side (t) and
right-hand-side (s) of (t = s) and (t == s) are the last two arguments.
This is a reasonable assumption, and it is correct for eq, but it is
incorrect for heq.
The type of heq is
```
Π {α : Sort u_1}, α → Π {β : Sort u_1}, β → Prop
```
Do you recall other places where we may have made this assumption?
2017-05-26 16:39:38 -07:00
Leonardo de Moura
fe9d5d68c3
chore(README): add "wish list"
2017-05-26 14:43:01 -07:00
Leonardo de Moura
81d16548b8
chore(README): add roadmap
2017-05-26 14:38:42 -07:00
Leonardo de Moura
a31e3a95ae
feat(library/equations_compiler/wf_rec): improve error message for failed decreasing proofs
2017-05-26 13:55:29 -07:00
Leonardo de Moura
4bdb2da1b6
fix(library/equations_compiler): improve pull_nested_rec_fn, and make sure it communicates local propositions to the well founded recursion module
...
The bin_tree and num_consts examples can now be encoded more naturally.
2017-05-26 10:45:39 -07:00
Gabriel Ebner
0cd5feed6e
fix(leanpkg/leanpkg): build command: pass correct directory to lean --make
...
Fixes #1607 .
2017-05-26 09:06:59 +02:00
Leonardo de Moura
62c24f9bb5
chore(*): remove pos_num and num from stdlib
2017-05-25 18:24:16 -07:00
Floris van Doorn
3af2a91112
doc(emacs): fix formatting
2017-05-25 17:03:42 -07:00
Jared Roesch
952eb63d96
chore(doc/make/osx): add build instructions to mac OS
2017-05-25 17:03:15 -07:00
Leonardo de Moura
7ffd7fea3d
feat(kernel): store depth of composite terms and use it in the hash code computation
...
closes #1589
2017-05-25 16:51:02 -07:00
Leonardo de Moura
438ce08748
feat(library/equations_compiler/util): cleanup equation rhs
...
The idea is to remove hints used to define a function by well founded
recursion. See new div_eqn.lean test for an example.
2017-05-25 13:09:13 -07:00
Leonardo de Moura
9b12559239
fix(library/tactic/dsimplify): fixes #1603
2017-05-25 11:21:06 -07:00
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