Commit graph

97 commits

Author SHA1 Message Date
Leonardo de Moura
e304d778a1 chore(library/init): cleanup 2016-09-24 16:38:39 -07:00
Leonardo de Moura
49cffc0b20 feat(frontends/lean): add compact notation for setting attributes suggested by Sebastian 2016-09-24 15:45:06 -07:00
Leonardo de Moura
001e06abdc chore(library/init): use 'instance' 2016-09-23 14:00:34 -07:00
Leonardo de Moura
823357462e feat(library/equations_compiler/structural_rec): validation 2016-09-23 13:50:55 -07:00
Leonardo de Moura
f00e6c0a96 feat(frontends/lean): anonymous instances
The instance name is synthesized automatically.
2016-09-23 13:34:34 -07:00
Leonardo de Moura
b716827206 chore(library/init): uniform style 2016-09-21 09:21:37 -07:00
Leonardo de Moura
9df712581b chore(frontends/lean): remove 'new_elaborator' option 2016-09-20 08:32:37 -07:00
Leonardo de Moura
a9b1518042 feat(library/init/nat): make sure constructor like theorems are transparent, otherwise we can't used them as patterns 2016-09-19 15:33:39 -07:00
Leonardo de Moura
564bcaab94 chore(library/init): cleanup using anonymous constructor 2016-09-19 10:31:43 -07:00
Leonardo de Moura
5e8f2add84 refactor(library/init): use universe variables 2016-09-17 12:25:02 -07:00
Leonardo de Moura
83cc67ba67 feat(frontends/lean/definition_cmds): use . instead of [none] to represent the empty set of equations 2016-09-14 09:38:30 -07:00
Leonardo de Moura
24049d8f40 refactor(library/init/logic): rename decidable.tt/ff to decidable.is_true/is_false 2016-09-13 13:40:02 -07:00
Leonardo de Moura
9e601cb1cd feat(library/init/nat): port nat.lean to new elaborator 2016-09-12 13:43:08 -07:00
Leonardo de Moura
2a7d259252 refactor(library/init/nat): cleanup 2016-09-08 19:19:43 -07:00
Leonardo de Moura
c6d44d2e49 chore(library/init/nat): fix style 2016-09-08 16:31:42 -07:00
Leonardo de Moura
5043e30c8e feat(library/init/nat): add helper lemmas for proving that two nat numerals are different 2016-09-08 16:29:44 -07:00
Leonardo de Moura
81a30a69d2 refactor(library/normalize): remove unfold and unfold_full attributes 2016-09-05 08:40:58 -07:00
Leonardo de Moura
dfc897eda6 refactor(library/init): avoid nat cases_on/rec_on hack 2016-09-03 16:22:20 -07:00
Leonardo de Moura
db7b32cf0d fix(library/init/nat): missing annotations 2016-08-18 11:00:31 -07:00
Leonardo de Moura
b37c96d2ea chore(library/init/nat): remove 'local attribute' hack
It is not needed anymore. All attributes are now global.
2016-08-18 10:44:33 -07:00
Daniel Selsam
a9b01991c2 feat(frontends/lean/inductive_cmd): new frontend for the inductive cmd
Conflicts:
	src/frontends/lean/CMakeLists.txt
	src/frontends/lean/structure_cmd.h
2016-08-17 07:34:03 -07:00
Sebastian Ullrich
8bbcbb14cf chore(library, tests): use new attribute chaining syntax
sed -E -i 's/(attribute(\s*(\w|\.)+)* \[[^]]+)\] \[/\1, /' {library,tests}/**/*.lean  # repeat as needed
2016-08-16 13:49:03 -07:00
Sebastian Ullrich
fd2c42a8bf chore(library, tests): switch to new attribute declaration syntax
sed -Ei 's/^(\s*)((private |protected )?(noncomputable )?(abbreviation|definition|meta_definition|theorem|lemma|proposition|corollary)\s+\S+\s*)((\s*\[(\S+(\s+[0-9]+)*|priority.*)\])+)\s*/\1attribute \6\n\1\2/' library/**/*.lean tests/**/*.lean
sed -Ei 's/\s+$//' library/**/*.lean  # remove trailing whitespace
2016-08-12 15:36:12 -07:00
Leonardo de Moura
1602a53336 feat(frontends/lean): nary match 2016-08-08 10:04:58 -07:00
Leonardo de Moura
f461b53a7f refactor(library): remove eq.ops namespace 2016-07-31 12:50:11 -07:00
Leonardo de Moura
97719a4c5f refactor(frontends/lean): disable '!' operator, and adjust standard library 2016-07-02 01:41:46 +01:00
Leonardo de Moura
c23f4dcce3 chore(library/init): minimize number of sorry's in the init folder
Motivation: the new tactic framework has more dependencies, and cannot
be used until all dependencies have been defined
2016-06-06 18:56:45 -07:00
Leonardo de Moura
31e066633c chore(library): fix dependencies 2016-06-06 16:43:43 -07:00
Leonardo de Moura
8bccfc23da feat(library/vm): add example of C function invoking Lean closure 2016-05-31 18:45:14 -07:00
Leonardo de Moura
d4a8d14a9c feat(library/init/nat): put nat instances in the top-level 2016-05-25 16:03:21 -07:00
Leonardo de Moura
af1908be94 feat(frontends/lean/decl_cmds): do not generate warning for definitions that are implemented in the VM 2016-05-13 18:17:20 -07:00
Leonardo de Moura
a208f9473c refactor(library): reorder and rename decidable constructors
Motivation: make sure the "false" case will have constructor idx 0.
2016-05-10 17:30:22 -07:00
Leonardo de Moura
f05e52e59f fix(library/init/nat): recursor attribute should be in the top-level since nat was defined in the top-level 2016-04-28 16:34:37 -07:00
Leonardo de Moura
de64750621 chore(frontends/lean): disable expressions that use tactic framework 2016-04-25 15:07:26 -07:00
Leonardo de Moura
384e8bf7bf refactor(library): remove unifier_plugin 2016-03-21 17:57:53 -07:00
Leonardo de Moura
510168a387 refactor(library,hott): remove unnecessary annotations 2016-02-25 12:26:20 -08:00
Floris van Doorn
e14d4a4c0c feat(init/wf): port from standard library to HoTT library
After this commit we need some more advanced theorems in init/wf, notably function extenstionality.
For this reason I had to refactor the init folder a little bit.
To keep the init folders in both libraries similar, I did the same refactorization in the standard library, even though that was not required for the standard library
2016-02-09 10:03:48 -08:00
Leonardo de Moura
4e2494f12e refactor(library/init/nat): minor cleanup 2016-01-01 15:56:46 -08:00
Leonardo de Moura
4134fdd925 feat(library/blast/strategies/rec_strategy): give priority to user defined recursors 2015-12-31 14:55:00 -08:00
Leonardo de Moura
a307a0691b refactor(library/data/nat/basic): cleanup some of the nat proofs 2015-12-29 11:43:56 -08: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
Floris van Doorn
46739c8b70 feat(hott/algebra): port abstract structures 2015-12-09 12:34:06 -08:00
Leonardo de Moura
b3ca5faa49 fix(tests/lean): some of the simplifier tests 2015-11-16 11:01:53 -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
dc8858d764 refactor(library/init/nat,library/): protect more nat theorems 2015-11-08 14:04:59 -08:00
Leonardo de Moura
ce21996635 feat(library): define custom recursors for nat, and minimize the use of krewrite 2015-11-08 14:04:55 -08:00
Leonardo de Moura
26eb6fa849 feat(*): new numeral encoding 2015-11-08 14:04:55 -08:00
Leonardo de Moura
3369152559 fix(library/data,library/theories): fin, bag, finset, hf, list, ... 2015-11-08 14:04:54 -08:00
Leonardo de Moura
a618bd7d6c refactor(library): use type classes for encoding all arithmetic operations
Before this commit we were using overloading for concrete structures and
type classes for abstract ones.

This is the first of series of commits that implement this modification
2015-11-08 14:04:54 -08:00
Sebastian Ullrich
d1b5031dbd feat(library): add some spacing hints 2015-09-30 17:36:32 -07:00