Commit graph

33 commits

Author SHA1 Message Date
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