Leonardo de Moura
5d8c7fbdf1
refactor(frontends/lean): replace '[private]' modifier with 'private
...
definition' and 'private theorem', '[private]' is not a hint.
2014-09-19 15:54:32 -07:00
Leonardo de Moura
97b1998def
refactor(frontends/lean): replace '[opaque]' modifier with 'opaque
...
definition', '[opaque]' is not a hint, but a kind of definition
2014-09-19 15:54:32 -07:00
Leonardo de Moura
08ccd58eb6
feat(frontends/lean): add 'reducible' modifier for controlling which
...
definitions are unfolded during elaboration
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-19 15:54:32 -07:00
Leonardo de Moura
baf4c01de8
feat(frontends/lean): definitions are opaque by default
2014-09-19 15:54:32 -07:00
Leonardo de Moura
48dbd13eef
feat(frontends/lean): allow transient classes/instances, i.e.,
...
classes/instances that are not saved in .olean files
2014-09-19 15:54:32 -07:00
Leonardo de Moura
93c2c30310
feat(frontends/lean): allow transient coercions, i.e., coercions that
...
are not saved in .olean files
2014-09-19 15:54:32 -07:00
Leonardo de Moura
e3e2370a38
feat(frontends/lean): split 'opaque_hint' command into 'opaque' and 'transparent'
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-16 18:03:40 -07:00
Leonardo de Moura
4b51d50ad4
fix(frontends/lean/elaborator): coercion overloading
2014-09-16 15:12:20 -07:00
Jeremy Avigad
74cb289d48
refactor(library): rename algebra directory to struc, move categories.lean to algebra
2014-09-16 13:13:01 -07:00
Jeremy Avigad
9988914189
refactor(library/logic): move files in classes directory to core
2014-09-16 13:13:01 -07:00
Leonardo de Moura
7ea6a17ae8
feat(library/data/num): add 'mul' and 'add' for binary numerals
2014-09-16 08:05:00 -07:00
Leonardo de Moura
8e52c478b1
refactor(library/data/num): add 'succ', 'pred' and 'size' (aka number of bits),
...
rename is_inhabited theorems
2014-09-15 16:05:17 -07:00
Leonardo de Moura
b7023ce1d8
fix(frontends/lean/placeholder_elaborator): do not truncate stream of
...
solutions during class-instance resolution, closes #183
For example, in theorem inverse_unique at category.lean, implicit
arguments are synthesized for inverse_compose. The first solution H' is
not good, and produces a type incorrect solution
2014-09-12 16:12:23 -07:00
Leonardo de Moura
a305012ce5
fix(library/data/category): mark definitions as abbreviations
2014-09-12 09:28:33 -07:00
Leonardo de Moura
c8e20ff3c0
fix(library/data/category): minor problem that was being masked by bug #182 , fixes #183
2014-09-11 16:58:32 -07:00
Floris van Doorn
7f1977694f
feat(library/data/category.lean) the definition of category doesn't depend on 'mor' anymore; make iso a class; add theorems
2014-09-11 16:39:47 -07:00
Leonardo de Moura
7ffe73b8ca
fix(frontends/lean): name clash inside section, fixes #181
2014-09-11 16:37:23 -07:00
Leonardo de Moura
8c11dc1ecd
chore(library/data/quotient): rename aux.lean to util.lean (fix problem with cloning lean repository on Windows machine)
...
See
http://stackoverflow.com/questions/3689137/error-git-checkout-index-unable-to-create-file
for additional details
2014-09-11 14:57:15 -07:00
Leonardo de Moura
746f5bff0d
refactor(library/data/list/basic): cleanup
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-10 16:42:49 -07:00
Leonardo de Moura
1a896a670c
refactor(library/data/list): cleanup, rename concat to assoc
2014-09-10 08:02:18 -07:00
Leonardo de Moura
9ac5f28b03
refactor(library/logic/core/eq): cleanup
2014-09-09 19:15:11 -07:00
Leonardo de Moura
b4d765ff2e
refactor(library/logic/core/cast): cleanup
2014-09-09 19:11:03 -07:00
Leonardo de Moura
9b9adf8831
refactor(library): replace decidable_eq with abbreviation
2014-09-09 16:09:05 -07:00
Leonardo de Moura
bd1bc336fb
feat(library/coercion): add simple trick for defining coercions to function-class in a convenient way, closes #31
2014-09-09 14:36:36 -07:00
Leonardo de Moura
38a4852e7d
feat(library/hott): add 'path' namespace
2014-09-09 14:03:45 -07:00
Leonardo de Moura
ff9a07500d
feat(library/data/int/basic): create alias for int.int
2014-09-09 14:03:44 -07:00
Leonardo de Moura
5087f03889
refactor(library/logic/classes/decidable): rename 'decidable_eq_to_decidable' theorem to 'of_decidable_eq'
2014-09-09 09:27:26 -07:00
Leonardo de Moura
b4793df653
feat(frontends/lean): rename '[fact]' to '[visible]'
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-08 07:47:42 -07:00
Leonardo de Moura
35e68fea76
feat(library/logic/classes/decidable): generalize 'by_cases' theorem
2014-09-08 00:16:20 -07:00
Leonardo de Moura
fa25ddc8e6
chore(library/data/int/basic): remove unnecessary 'hinding' clause
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-07 22:50:43 -07:00
Leonardo de Moura
559dd586f2
feat(library): add 'decidable_eq' class
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-07 22:23:36 -07:00
Leonardo de Moura
c446327ec3
feat(library/data/list): add mem_is_decidable and not_mem_find theorems
2014-09-07 21:22:07 -07:00
Leonardo de Moura
f9b62c53e6
feat(library/data/nat): add nat.is_inhabited theorem
2014-09-07 19:59:34 -07:00
Leonardo de Moura
48e5a2b6ad
feat(library/classes/inhabited): add dfun_inhabited theorem
2014-09-07 19:08:31 -07:00
Leonardo de Moura
4e2f5572f3
feat(library/data/vector): add vec.is_inhabited theorem
2014-09-07 19:08:31 -07:00
Leonardo de Moura
fea516af24
feat(frontends/lean/elaborator): allow Pi/forall local instances
2014-09-07 18:16:33 -07:00
Leonardo de Moura
c378a58cc2
feat(frontends/lean): add [class] modifier for inductive datatypes as a shortcut for 'class' command.
2014-09-07 18:16:33 -07:00
Leonardo de Moura
bbff564a1c
feat(frontends/lean): persistent notation in sections
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-06 11:14:20 -07:00
Floris van Doorn
02d72e4c40
feat(library/data/category): add vector
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-05 09:57:04 -07:00
Floris van Doorn
e9fc4f14a0
feat(library/data/category): add category theory
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-05 09:56:57 -07:00
Floris van Doorn
d2a4bb8a27
feat(library/data/empty): add false.to_empty and false.rec_type theorems
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-05 09:31:27 -07:00
Leonardo de Moura
561753e7f1
refactor(library/data/sigma): cleanup module
2014-09-05 08:01:24 -07:00
Leonardo de Moura
28f025c6d7
refactor(library/logic/core): use subscripts
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-04 22:43:30 -07:00
Leonardo de Moura
9412e604c8
refactor(library/data): cleanup datatypes
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-04 22:31:52 -07:00
Leonardo de Moura
6632a50015
refactor(library): add namespaces 'or', 'and' and 'iff'
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-04 21:25:21 -07:00
Leonardo de Moura
68d9bef860
refactor(library): add 'eq' and 'ne' namespaces
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-04 18:41:06 -07:00
Leonardo de Moura
2bc6f92d33
refactor(library): add 'and' namespace
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-04 17:44:53 -07:00
Leonardo de Moura
364bba2129
feat(frontends/lean/inductive_cmd): prefix introduction rules with the name of the inductive datatype
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-04 17:26:36 -07:00
Leonardo de Moura
8743394627
refactor(kernel/inductive): replace recursor name, use '.rec' instead of '_rec'
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-04 15:04:57 -07:00
Leonardo de Moura
7500761114
refactor(library/data/nat/basic): remove unnecessary nat_
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-03 16:14:29 -07:00
Leonardo de Moura
e51c4ad2e9
feat(frontends/lean): rename 'using' command to 'open'
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-03 16:00:38 -07:00
Leonardo de Moura
f891485a26
refactor(library): use '[protected]' modifier
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-03 15:13:03 -07:00
Leonardo de Moura
6077b3158c
fix(library): remove unnecessary [fact] modifier
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-02 16:06:55 -07:00
Leonardo de Moura
8dec18018c
refactor(library/data/list): avoid placeholders '_', make first argument of false_elim implicit
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-01 19:44:04 -07:00
Leonardo de Moura
aace5c37cd
refactor(library/data/subtype): elaborator does not need help anymore (i.e., 'show'-expression) for this file
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-01 19:04:15 -07:00
Jeremy Avigad
39825d2dc9
fix(library): rename congr class to congruence
2014-08-29 22:28:22 -07:00
Jeremy Avigad
6ffd719c1a
refactor(library/logic): move identities from classical to identities
2014-08-29 22:28:22 -07:00
Soonho Kong
fcb6c71517
chore(library): add .project file
2014-08-29 10:31:16 -07:00
Soonho Kong
226f301044
chore(library/.gitignore): update
2014-08-29 10:31:16 -07:00
Leonardo de Moura
b43313ec43
fix(library/nat/div): remove unnecessary '_''s
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-28 17:40:57 -07:00
Jeremy Avigad
8094884c85
feat(library/data/nat/div.lean): remove dependence on funext
2014-08-28 17:37:32 -07:00
Jeremy Avigad
1864fc2f6c
refactor(library): move more notation to general_notation
2014-08-28 17:37:32 -07:00
Leonardo de Moura
b51fa2b547
chore(library): minor cleanup
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-28 13:04:17 -07:00
Leonardo de Moura
d536475e49
refactor(library): more implicit_args for: and_assoc, and_comm, or_assoc, or_comm, if_pos, if_neg
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-28 11:10:04 -07:00
Leonardo de Moura
6b7e79b62f
feat(library/data/nat): mark more arguments implicit
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-28 10:38:58 -07:00
Jeremy Avigad
00a049a667
refactor(library/logic): rename connectives -> core, basic -> connectives
2014-08-27 18:43:24 -07:00
Leonardo de Moura
2d78387541
refactor(library/logic/basic): rename absurd_elim to absurd, delete contrapos and trivial_not_true theorems
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-27 18:34:09 -07:00
Jeremy Avigad
1011a8022c
refactor(library/logic/connectives): make dependence prop <- eq <- basic
2014-08-27 20:46:07 -04:00
Leonardo de Moura
e7fd8f54c4
fix(library/Makefile): ignore flycheck generated files in the Makefile, fixes #101
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-27 08:36:32 -07:00
Leonardo de Moura
a8d58fdd33
refactor(library): mark absurd_elim argument as implicit
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-26 18:27:39 -07:00
Leonardo de Moura
9bea23111f
feat(library/logic/connectives/basic): add not_not_em theorem
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-26 18:07:09 -07:00
Leonardo de Moura
0099a7b224
refactor(library/logic/connectives/eq): simplify eq_rec_on_id proof
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-26 18:07:09 -07:00
Leonardo de Moura
44c597724b
fix(frontends/lean): fail if theorem type has metavariables after type elaboration (and before proof elaboration)
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-26 09:01:17 -07:00
Leonardo de Moura
99438f0ee0
chore(library): add 'universe polymorphism' to list of extra feat
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-25 23:00:50 -07:00
Jeremy Avigad
5eedca08ea
refactor(library): set up and document standard/classical/hott imports
2014-08-25 22:57:55 -07:00
Jeremy Avigad
413517b86d
fix(library): correct markdown directories, revise defaults for logic and data
2014-08-25 22:57:55 -07:00
Leonardo de Moura
9715d06f4a
feat(library): minor cleanup, replace 'refl _' with 'rfl', define equivalence relation for sets
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-25 22:54:44 -07:00
Leonardo de Moura
3903be34a4
feat(frontends/lean): process theorem statement independently of proof, thus we have the same behavior in sequential and parallel compilation modes, closes #84
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-25 21:26:17 -07:00
Leonardo de Moura
7cb2ca62f4
refactor(Makefile): do not use full path on makefile rules
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-23 18:28:34 -07:00
Leonardo de Moura
06da0ebaaf
refactor(library): rename Makefile.common to Makefile
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-23 18:10:39 -07:00
Leonardo de Moura
dbaf81e16d
refactor(library): remove unnecessary 'standard' subdirectory
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-23 18:08:09 -07:00
Jeremy Avigad
505b93b7cb
refactor(lean/examples/constable.lean): move to library/standard/logic/examples/nuprl_examples.lean
2014-08-23 17:55:00 -07:00
Jeremy Avigad
d0f0e58a85
refactor(library/standard/data/int): split basic.lean into basic.lean and order.lean
2014-08-23 17:53:02 -07:00
Jeremy Avigad
47a1c00a6d
refactor(library/standard): collect notation in general_notation
2014-08-23 17:53:02 -07:00
Jeremy Avigad
ad969b4695
feat(library/standard/logic): add identities
2014-08-23 17:53:02 -07:00
Leonardo de Moura
df60ab4ada
fix(frontends/lean/calc): allow calc_subst to be defined for multiple operators, allow calc cmds to be organized into namespaces, fixes #65
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-23 16:45:04 -07:00
Leonardo de Moura
e602c4ba49
feat(frontends/lean): change multicomment to /- ... -/
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-22 17:55:13 -07:00
Leonardo de Moura
a5f0593df1
feat(*): change inductive datatype syntax
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-22 15:46:10 -07:00
Leonardo de Moura
fdd37fb1f3
chore(library/standard/data/sum): remove hints, they are not needed after the fix
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-21 21:44:02 -07:00
Jeremy Avigad
1fdc483ab9
fix(library/standard/data/int): remove misnamed file
2014-08-21 21:41:28 -07:00
Jeremy Avigad
02fba6e949
feat(library/standard/hott/fibrant.lean): add fibrant to library
2014-08-21 21:41:28 -07:00
Jeremy Avigad
05d0089381
feat(library/standard/sum.lean): add properties of sum
2014-08-21 21:41:28 -07:00
Jeremy Avigad
3afad10a72
feat(library/standard): add decidability of le for int
2014-08-21 21:41:28 -07:00
Leonardo de Moura
c4cc837e34
refactor(library/standard): define abbreviations using '@'
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-21 18:39:38 -07:00
Leonardo de Moura
07bc0727e2
feat(frontends/lean): 'let [inline]' is the default
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-21 18:24:22 -07:00
Leonardo de Moura
0df87bae24
chore(library/standard/data/nat/div): remove TODO
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-21 17:58:03 -07:00
Leonardo de Moura
ab404beb01
chore(library/standard/data/nat/order): remove unnecessary 'proofs'
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-20 21:51:41 -07:00
Leonardo de Moura
38f46b1290
feat(library/standard/data/nat/order): add le_decidable, lt_decidable, ge_decidable, gt_decidable
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-20 21:47:37 -07:00
Leonardo de Moura
129bb5fa09
chore(library/standard/data/int/basic): remove TODO's that were addressed by recent improvements
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-08-20 19:04:48 -07:00
Jeremy Avigad
d78c26977b
feat(library/standard/data/nat/div): port div
2014-08-20 18:04:31 -07:00