Leonardo de Moura
36770119b6
feat(library): do not generate C.destruct (for structures), and C.induction_on (for structures and inductive datatypes)
2017-03-15 14:45:13 -07:00
Leonardo de Moura
a00f2e49a7
chore(frontends/lean): remove several command aliases
...
We still have many more to remove and rename.
See issue #1432
2017-03-09 16:49:03 -08:00
Leonardo de Moura
0768bb28f4
chore(library/init/wf): rename parameter
2017-03-03 16:56:40 -08:00
Leonardo de Moura
17556758cb
feat(library/constructions,library/inductive_compiler): automatically generate dependent eliminator for inductive predicates
...
The dependent eliminator for an inductive predicate C is called C.drec
TODO: construct dcases_on and drec_on using C.drec
We need this recursor for implementing dependent elimination for
inductive predicates.
We don't need to define acc.drec and eq.drec in the standard library anymore.
2017-02-28 20:58:04 -08:00
Leonardo de Moura
32e6442d0a
feat(frontends/lean): no global universes in the frontend
2017-02-08 17:23:04 -08:00
Leonardo de Moura
4a2ffefdaf
fix(library/init/wf): wf eliminators should be able to eliminate into Prop and Type
2017-01-30 19:14:43 -08:00
Leonardo de Moura
77a9feaf70
refactor(frontends/lean): PType ==> Sort
...
see #1341
2017-01-30 11:54:00 -08:00
Leonardo de Moura
bf9f7560f7
feat(frontends/lean): (Type u) can't be a proposition
...
(Type u) is the old (Type (u+1))
(PType u) is the old (Type u)
Type* is the old (Type (_+1))
PType* is the old Type*
The stdlib can be compiled, but we still have > 70 broken tests
See discussion at #1341
2017-01-30 11:54:00 -08:00
François G. Dorais
b305130ec3
fix(library/init/wf): typo
...
Same typo as #1091 , different location.
2017-01-13 11:35:52 -08:00
Leonardo de Moura
e423588463
refactor(library/init): merge some files
2016-12-02 16:13:45 -08:00
Leonardo de Moura
e11fd8820a
refactor(library/init): create init.data folder
2016-12-02 14:23:06 -08:00
Leonardo de Moura
0d2d595c31
chore(library/init): remove unnecessary space
2016-11-23 10:53:19 -08:00
Leonardo de Moura
c816b80855
chore(*): don't use upper case letter for type variables, and camelCase for declarations
2016-11-17 14:54:08 -08:00
Leonardo de Moura
e304d778a1
chore(library/init): cleanup
2016-09-24 16:38:39 -07:00
Leonardo de Moura
0641f3f714
chore(library/init): cleanup proofs using new elaborator
2016-09-23 17:36:32 -07:00
Leonardo de Moura
5e5285ee67
refactor(library): rename pr1/pr2 ==> fst/snd
2016-09-21 09:48:39 -07:00
Leonardo de Moura
b716827206
chore(library/init): uniform style
2016-09-21 09:21:37 -07:00
Leonardo de Moura
4c15c9833d
fix(frontends/lean/elaborator): use_elim_elab_core
2016-09-17 20:04:14 -07:00
Leonardo de Moura
75d5087d43
fix(library/type_context): using incorrect local_context at revert
2016-09-17 19:44:38 -07:00
Leonardo de Moura
5e8f2add84
refactor(library/init): use universe variables
2016-09-17 12:25:02 -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
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
8c36cd04a3
feat(library/init/sigma_lex): add skip_left relation for sigma
2016-08-09 11:17:12 -07:00
Leonardo de Moura
9ac7ee1624
refactor(library/init): well_founded is not a type class anymore
2016-08-08 14:28:45 -07:00
Leonardo de Moura
de237fa6e4
chore(library/coercion): disable coercion attribute
2016-07-29 13:15:10 -07:00
Leonardo de Moura
7ddf1e817b
chore(frontends/lean): coercions are disabled by default
2016-07-29 13:03:23 -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
e06713b3cd
chore(library/init/wf): make sure we can generate code for acc.drec
2016-05-23 17:02:51 -07:00
Leonardo de Moura
de64750621
chore(frontends/lean): disable expressions that use tactic framework
2016-04-25 15:07:26 -07: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
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
Leonardo de Moura
17f2c240e1
refactor(library/init/wf): cleanup wf proofs using tactics
...
add dependent elimination for acc.
2015-06-06 16:58:24 -07:00
Jeremy Avigad
8bebd104ff
refactor(library/*): remove 'Module:' lines
2015-05-23 20:52:23 +10:00
Leonardo de Moura
670eac9d50
refactor(library): avoid 'context' command in the standard library
2015-04-21 19:13:19 -07:00
Jeremy Avigad
2b56a2b891
feat(library/init): create markdown directory file
2014-12-15 16:43:42 -05:00
Leonardo de Moura
697d4359e3
refactor(library): add 'init' folder
2014-11-30 20:34:12 -08:00