Commit graph

318 commits

Author SHA1 Message Date
Leonardo de Moura
dc6a3e30c0 refactor(library): test simp and msimp in the standard library 2015-12-30 11:22:58 -08:00
Leonardo de Moura
41a01bb606 feat(library/blast/forward/ematch): add option 'blast.ematch.max_instances' 2015-12-29 20:36:11 -08:00
Leonardo de Moura
0148bb08fd feat(library/blast): add 'ematch_simp' strategy for blast and msimp shortcut for it.
This strategy is based on ematching and congruence closure, but it uses
the [simp] lemmas instead of [forward] lemmas.
2015-12-29 20:04:31 -08:00
Leonardo de Moura
726867a8fb refactor(library/algebra/ring): minor cleanup 2015-12-29 11:16:18 -08:00
Leonardo de Moura
3557bd36e7 refactor(library/algebra/group): cleanup proofs using simp and add [simp] attribute 2015-12-29 10:48:47 -08:00
Jeremy Avigad
c52ffda0e0 feat(library/algebra/intervals): add notation for intervals 2015-12-26 10:45:53 -08:00
Jeremy Avigad
84cdf3d36d feat(library/theories/analysis/normed_space): start theory of normed spaces for analysis 2015-12-22 16:39:13 -05:00
Jeremy Avigad
5b3fbf1618 feat(library/algebra/module): make a start on modules and vector spaces (with material from Nathaniel Thomas) 2015-12-22 16:39:13 -05:00
Jeremy Avigad
baf11d0018 feat(library/algebra/ring_bigops): make start on file with more properties of sums and products 2015-12-22 16:39:13 -05:00
Jeremy Avigad
0e3b13f1a0 refactor(library/algebra): combine group_bigops and group_set_bigops 2015-12-22 16:39:13 -05:00
Soonho Kong
f1daf8f24e fix(algebra/group.lean): remove unnecessary use of add.assoc from theorem bit0_add_bit1_helper 2015-12-22 09:12:57 -05:00
Floris van Doorn
da5f10ce63 feat(hott): minor fixes. allow the usage of numerals for trunc_index 2015-12-17 12:46:16 -08:00
Leonardo de Moura
42eda36225 chore(library/algebra/ordered_ring): use 'note' 2015-12-15 09:33:57 -08:00
Leonardo de Moura
193a9d8cde refactor(library/norm_num): avoid manual constant name initialization
@rlewis1988 We group all Lean constants used in the C++ code at
src/library/constants.txt

Jeremy and Floris check this file before renaming constants in the
library. So, they can quickly decide whether C++ code will be affected
or not.

We also have a python script for initializing the C++ name objects.
To use the script:
   - go to src/library
   - execute
       python ../../script/gen_constants_cpp.py constants.txt

It will create the boring initialization and finalization code, and
declare a procedure get_<id>_name() for each constant in the file constants.txt.

I also move the norm_num1.lean to the set of unit tests that are
executed whenever we push a commit to the main branch.

I found an assertion violation at line 606. Could you take a look?

Best,
Leo
2015-12-13 21:38:59 -08:00
Leonardo de Moura
49eae56db4 test(library/theories/group_theory): test auto-include in the group theory library 2015-12-13 13:40:54 -08:00
Leonardo de Moura
ef546c5c5b refactor(library): use anonymous instance implicit arguments 2015-12-13 11:46:48 -08:00
Floris van Doorn
2325d23f68 feat(hott): port nat and int from the standard library 2015-12-09 12:36:11 -08:00
Floris van Doorn
46739c8b70 feat(hott/algebra): port abstract structures 2015-12-09 12:34:06 -08:00
Leonardo de Moura
b36ce49f2b fix(tests,doc): adjust tests to changes in the standard library 2015-12-05 23:52:16 -08:00
Leonardo de Moura
b94e31a72c refactor(library): remove algebra namespace 2015-12-05 23:50:01 -08:00
Leonardo de Moura
fa938bb94c feat(frontends/lean/decl_cmds): allow modifier to be provided after the 'attribute' keyword, test 'at' keyword 2015-12-05 11:50:08 -08:00
Daniel Selsam
934b502c6f refactor(algebra/numeral): prove lemmas incrementally 2015-12-05 08:56:56 -08:00
Daniel Selsam
2e4765482b fix(algebra/ring): fix names 2015-12-05 08:56:56 -08:00
Daniel Selsam
a04c28d4c9 refactor(library/algebra): construct simplifier sets incrementally 2015-12-04 18:28:56 -08:00
Leonardo de Moura
564e8f947d refactor(library): cleanup 2015-11-22 14:10:02 -08:00
Leonardo de Moura
5a98a2538c refactor(library): move basic simp/congr rules to init folder, delete some legacy files 2015-11-20 16:38:10 -08:00
Daniel Selsam
2eeab1c757 fix(algebra/simplifier): use export 2015-11-16 20:39:15 -08:00
Daniel Selsam
49ff8640d9 fix(library/blast/simplifier): use ac rules for numerals 2015-11-16 20:39:15 -08:00
Daniel Selsam
8ca5d87f0b feat(library/blast/simplifier): rely on norm_num for recursion 2015-11-16 20:33:22 -08:00
Leonardo de Moura
dfaf1c2ba3 refactor(library): move basic theorems to init, remove sorry's from algebra/simplifier.lean 2015-11-16 10:26:09 -08:00
Daniel Selsam
5e8068b2b2 feat(library/blast/simplifier): draft of fusion 2015-11-16 09:13:07 -08:00
Daniel Selsam
30b1b79c4e fix(algebra/simplifier): update numeral simp rules 2015-11-16 09:12:29 -08:00
Leonardo de Moura
0dc31227f8 feat(library/init/logic): mark ne reducible 2015-11-15 15:09:02 -08:00
Daniel Selsam
4ba6b4f3f1 fix(algebra/simplifier): reference norm_num namespace 2015-11-12 21:28:11 -08:00
Daniel Selsam
00a5cd519e feat(algebra/simplifier): simp rule set for units 2015-11-12 21:23:28 -08:00
Daniel Selsam
e7890fb456 feat(algebra/simplifier): useful simp rule sets 2015-11-12 21:23:28 -08:00
Rob Lewis
44a099f6f1 feat(norm_num): performance and style fixes 2015-11-12 20:53:37 -08:00
Rob Lewis
4bf0519843 feat(norm_num): numeral normalizer works for +, -, *, / 2015-11-12 20:53:37 -08:00
Rob Lewis
616450be64 feat(library/norm_num): extend norm_num to handle subtraction 2015-11-12 20:53:37 -08:00
Leonardo de Moura
9bedbbb739 refactor(library,hott): remove coercions between algebraic structures
They are classes, and mixing coercion with type class resolution is a
recipe for disaster (aka counterintuitive behavior).
2015-11-11 11:57:44 -08:00
Jeremy Avigad
697df0e68c refactor(library/*): use type classes for div and mod 2015-11-08 14:04:59 -08:00
Jeremy Avigad
da5bd03656 refactor(library/init/nat,library/data/nat/*): chagne dots to underscores in protected names 2015-11-08 14:04:59 -08:00
Jeremy Avigad
6dfaf1863c refactor(library/data/int/{basic,order}): protect theorem names 2015-11-08 14:04:59 -08:00
Jeremy Avigad
dc8858d764 refactor(library/init/nat,library/): protect more nat theorems 2015-11-08 14:04:59 -08:00
Jeremy Avigad
7bb2ffb79a refactor(library/data/nat/*): protect some theorems in nat 2015-11-08 14:04:59 -08:00
Leonardo de Moura
c2ed5d3f1f fix(library/algebra/category/constructions): make proof more robust 2015-11-08 14:04:58 -08:00
Leonardo de Moura
65d7c05737 fix(library/algebra/complete_lattice): avoid looping instances 2015-11-08 14:04:57 -08:00
Rob Lewis
958add9ef8 feat(library/norm_num): fix numeral normalization to work on new numeral structure; add support for multiplication 2015-11-08 14:04:56 -08:00
Leonardo de Moura
6df31d3406 refactor(library/data/nat/basic): mark some theorems as protected to avoid overloading 2015-11-08 14:04:56 -08:00
Leonardo de Moura
26eb6fa849 feat(*): new numeral encoding 2015-11-08 14:04:55 -08:00