Leonardo de Moura
b65c774f5b
chore(library/init/meta): opened_namespaces ==> open_namespaces
2016-12-18 23:55:45 -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
ca2095f2dd
feat(library/init/algebra): add discrete_linear_ordered_field
2016-12-17 21:18:59 -08:00
Leonardo de Moura
37209d45a5
feat(library/init/algebra/norm_num): add missing norm_num lemmas
2016-12-17 20:20:55 -08:00
Leonardo de Moura
c99f25dbf5
feat(library/init/algebra/ordered_ring): add linear_ordered_comm_ring
2016-12-17 19:48:21 -08:00
Leonardo de Moura
303696e693
feat(library/init/algebra): add ordered_field
2016-12-17 19:34:10 -08:00
Leonardo de Moura
97fe22b20e
feat(library/init/algebra/ordered_ring): ordered semiring/ring lemmas
2016-12-17 17:49:25 -08:00
Leonardo de Moura
060a554db1
feat(library/tactic): add norm_num_tactic
2016-12-17 16:48:40 -08:00
Leonardo de Moura
b84d5811d1
feat(library/init/algebra): add missing min/max/abs lemmas
2016-12-17 15:22:12 -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
626f8db389
feat(library/init/algebra/functions): define min/max/abs
2016-12-17 13:17:55 -08:00
Leonardo de Moura
422d43cf47
fix(library/init/data/nat/basic): issue reported by @kha
2016-12-17 13:17:30 -08:00
Leonardo de Moura
d41c403442
feat(library/init/meta/simp_tactic, library/init/meta/interactive): add simp_using_hs
2016-12-17 12:54:04 -08:00
Leonardo de Moura
7d5b866503
feat(library/init/meta/tactic): add is_prop and is_proof tactics
2016-12-17 11:53:21 -08:00
Leonardo de Moura
8683ea4f60
feat(library/tactic/simp_lemmas): add simp_lemmas.pp
2016-12-17 11:53:02 -08:00
Leonardo de Moura
1320c16e3d
chore(library/init/algebra/field): avoid '.'
2016-12-17 11:02:18 -08:00
Leonardo de Moura
305838bece
refactor(library/debugger): move debugger to tools
2016-12-17 10:50:13 -08:00
Leonardo de Moura
63ec7cd6cf
chore(library/tools/super): replace ↣ with ^.
...
The plan is to delete the funny arrow ↣ notation and keep only ^.
2016-12-16 19:14:05 -08:00
Leonardo de Moura
85ae8ce307
chore(tools/super): add copyright
2016-12-16 19:06:50 -08:00
Leonardo de Moura
4b97b00536
refactor(library/tools/super): move examples to test folder
2016-12-16 19:05:32 -08:00
Gabriel Ebner
6b15f6cef9
feat(library/tools/super): add super prover
2016-12-16 18:18:13 -08:00
Leonardo de Moura
a0ad8a678a
feat(library/init/algebra/norm_num): add missing lemmas for norm_num tactic
2016-12-16 12:15:40 -08:00
Leonardo de Moura
816c315b50
feat(library/init/algebra): add field
2016-12-16 12:02:30 -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
b0ce461fcd
feat(library/vm): native closures that do not depend on vm_state
...
Remark: native_closures are used in the C++ code generator.
2016-12-14 18:51:24 -08:00
Daniel Selsam
317989bf9e
feat(tactic/exact_tactic): exact_core that takes transparency
2016-12-13 08:27:21 -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
9f6e71b374
feat(library/tactic): add "approximate" parameter to apply_core and rewrite_core
...
If this parameter is set to true, then approximate unification is
used.
closes #1208
2016-12-10 10:24:05 -08:00
Jeremy Avigad
0950b7a49f
feat(library/init/meta/interactive): allow cases on an arbitrary expression
2016-12-10 09:54:03 -08:00
Jeremy Avigad
1dd91c6e6a
feat(library/init/meta/interactive): add fapply
2016-12-10 09:53:53 -08:00
Jeremy Avigad
1ba55e5cda
feat(library/init/meta/interactive): allow metavariable in change tactic
2016-12-10 09:53:36 -08:00
Gabriel Ebner
e03c31d2f9
refactor(gitignore): remove old ignore entries
2016-12-10 08:42:39 -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
Jeremy Avigad
6f64244f2a
refactor(library/init/meta/tactic): switch 'pose' and 'note'
2016-12-08 13:17:42 -08:00
Leonardo de Moura
6577cc87a3
feat(library): add pre_monad
...
closes #1235
2016-12-08 12:48:55 -08:00
Daniel Selsam
f952dbc78e
fix(init/meta/expr.lean): is_app_of can return true for constants as well
2016-12-08 11:23:53 -08:00
Leonardo de Moura
b9de2fda0c
chore(library/init/algebra/order): remove unnecessary *.refl lemmas
2016-12-08 07:32:25 -08:00
Leonardo de Moura
023f216cab
chore(init/algebra/order): use new attribute syntax
2016-12-08 07:22:58 -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
16b239cbff
feat(library/init/algebra/order): add refl and trans attribute and dot notation
2016-12-08 07:20:22 -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