Leonardo de Moura
244e115412
chore(library/init/data): add more "short-circuit" instances for int/nat
2016-12-27 11:51:42 -08:00
Leonardo de Moura
61d007892b
feat(library/data/stream): add stream module
2016-12-25 16:40:52 -08:00
Leonardo de Moura
3061d8b9a3
feat(library): add mk_int_val_ne_proof
2016-12-24 15:22:31 -08:00
Leonardo de Moura
58ca9a3059
feat(library/init/data/int/comp_lemmas): add auxiliary lemmas for comparing int numerals
2016-12-24 13:52:48 -08:00
Daniel Selsam
95882c14cd
feat(init/data/string/basic.lean): inhabited string
2016-12-23 14:45:53 -08:00
Leonardo de Moura
6b416b4618
feat(library/vm): use native representation for int in the VM
2016-12-18 15:04:02 -08:00
Leonardo de Moura
d2ffa6c476
fix(library/init/data/int/basic): bug in instance definition
2016-12-18 14:45:55 -08:00
Sebastian Ullrich
d95e817a56
refactor(library/data/{bitvec,tuple}): style, conventions, conversions
2016-12-18 13:25:00 -08:00
Leonardo de Moura
1d0d45d890
feat(library/init/data/to_string): mark list.to_string as protected
2016-12-18 13:17:10 -08:00
Sebastian Ullrich
26ead0e7ac
feat(library/data/int/basic): has_to_string int
2016-12-18 13:15:41 -08:00
Leonardo de Moura
1726d37d4e
fix(library/algebra/order): decidable_linear_order
...
Add fields for decidable_eq and decidable_le.
We need this because a concrete instance may have its own
implementation that is not definitionally equal to
the old ones defined at library/algebra/order.lean.
Without this change, types such as nat and int would
have multiple definitions for decidable_eq and decidable_le
which are not definitionally equal.
2016-12-17 14:01:43 -08:00
Leonardo de Moura
422d43cf47
fix(library/init/data/nat/basic): issue reported by @kha
2016-12-17 13:17:30 -08:00
Gabriel Ebner
6b15f6cef9
feat(library/tools/super): add super prover
2016-12-16 18:18:13 -08:00
Leonardo de Moura
bcf15b0d39
feat(library/init/data/int): import int by default
2016-12-15 16:59:36 -08:00
Jeremy Avigad
8b84af4853
feat(library/init/data/int/basic,order): the integers as an ordered ring
2016-12-15 09:56:22 -08:00
Jeremy Avigad
57dcbcc1c6
feat(library/init/data/nat/lemmas): add facts about order and subtraction
2016-12-15 09:56:09 -08:00
Leonardo de Moura
13ae8b07b3
feat(library/init/data/nat/lemmas): add missing lemmas
2016-12-12 13:25:30 -08:00
Leonardo de Moura
c8d6836aa1
feat(library): port nat sub lemmas
2016-12-11 09:46:45 -08:00
Leonardo de Moura
18098e9455
perf(library/init/data/list/basic): avoid naive quadratic implementations
2016-12-10 13:18:11 -08:00
Leonardo de Moura
692701c5ef
feat(library/init/meta): use cheap "reflexivity" after simp and rewrite
...
The idea is to make sure lean doesn't timeout (at reflexivity) when we apply simp or
rewrite in goals such as
(x y : nat) |- x + y + 10000000000 = x + y + 200000000000000
This commit also addresses an issue raised at #1218
2016-12-08 14:41:26 -08:00
Leonardo de Moura
6577cc87a3
feat(library): add pre_monad
...
closes #1235
2016-12-08 12:48:55 -08:00
Jeremy Avigad
281903edee
refactor(library/init/data/nat/lemmas): better name for self_lt_succ
2016-12-08 07:20:39 -08:00
Jeremy Avigad
9c6605c992
refator(library/init/data/set): make implicit argument in subset weak
2016-12-08 07:20:12 -08:00
Jeremy Avigad
814da88858
refactor(library/init/data/nat/basic,lemmas): alternative name, and rename le.elim to le.dest
2016-12-08 07:20:02 -08:00
Jared Roesch
e65d90ac79
feat(*): C++ code generator
...
in progress move of Lean.native to init
2016-12-05 16:11:41 -08:00
Leonardo de Moura
5d1716a983
refactor(library/data): delete init/data/instances.lean
2016-12-02 16:41:16 -08:00
Leonardo de Moura
e4285bf684
refactor(library/init): list classes => instances
2016-12-02 16:29:15 -08:00
Leonardo de Moura
46cb2dfd02
refactor(library/init): move instances.lean => init.data
2016-12-02 16:25:27 -08:00
Leonardo de Moura
e423588463
refactor(library/init): merge some files
2016-12-02 16:13:45 -08:00
Leonardo de Moura
d96fed26b0
refactor(library/init): move propext to its own file
2016-12-02 16:04:39 -08:00
Leonardo de Moura
fb38b6e016
refactor(library/init): move combinator logic to core
2016-12-02 15:56:52 -08:00
Leonardo de Moura
00f5a807af
refactor(library/init): create init.category folder
2016-12-02 15:52:49 -08:00
Leonardo de Moura
e11fd8820a
refactor(library/init): create init.data folder
2016-12-02 14:23:06 -08:00