Leonardo de Moura
0a29581b0e
feat(library/data/vec): add more theorems to vec (vectors as subtypes)
2015-07-30 18:09:10 -07:00
Leonardo de Moura
be61fb0566
feat(frontends/lean/elaborator): add "noncomputable theory" command, display "noncomputable" when printing definitions
...
When the command "noncomputable theory" is used, Lean will not sign an
error when a noncomputable definition is not marked as noncomputable
2015-07-29 17:54:35 -07:00
Leonardo de Moura
88c659c54e
feaf(library): make sure basic standard library can be compiled with option "--to_axiom"
...
We use this option to erase proofs when generating the javascript
version. The proofs are erased to minimize the size of the file that
must be downloaded by users
2015-07-29 16:11:23 -07:00
Leonardo de Moura
bbd6946a15
refactor(library/logic/axioms): we have only one extra axiom
2015-07-29 13:36:23 -07:00
Leonardo de Moura
0bda39c8ac
feat(frontends/lean): check for noncomputability when moving theorems from theorem_queue to environment
2015-07-29 13:01:07 -07:00
Leonardo de Moura
69ead0ddd8
feat(frontends/lean/decl_cmds): reject unnecessary "noncomputable" annotations
2015-07-29 13:01:07 -07:00
Leonardo de Moura
308af87b69
feat(library): add 'noncomputable' keyword for the standard library
2015-07-28 21:56:35 -07:00
Leonardo de Moura
cfa9412f96
fix(frontends/lean): "show goal" localization, add "position", support "by tactic"
2015-07-28 12:48:12 -07:00
Jeremy Avigad
d02b83b6d6
feat(library/theories/number_theory/prime_factorization): prove that n is equal to its prime factorization
2015-07-27 15:16:16 -07:00
Jeremy Avigad
6355670ac4
fix(library/data/nat/nat.md): add 'find' to markdown file
2015-07-27 07:46:59 -07:00
Jeremy Avigad
471c9058eb
fix/feat(library/logic/connectives,library/data/{finset,set}): fix names or.left_distrib etc., fix implicit arguments, and make small additions
2015-07-27 07:46:59 -07:00
Leonardo de Moura
a124bc246a
feat(library/data/fin): add equivalences between fin types
2015-07-26 15:42:39 -07:00
Leonardo de Moura
d95e3c1e1d
feat(library/data/equiv): basic equivalences
2015-07-26 13:06:01 -07:00
Leonardo de Moura
72d6550a7a
feat(library/data/bag): show that subbag predicate is decidable when A has decidable equality
2015-07-25 17:44:03 -07:00
Leonardo de Moura
31b1606658
feat(library/data/bag): add subbag predicate
2015-07-25 14:31:24 -07:00
Leonardo de Moura
a883b72a25
fix(library/data): 'choose' -> 'find' renaming problems
2015-07-25 11:25:04 -07:00
Jeremy Avigad
1cc6be6052
feat(library/data/finset/comb): define powerset
2015-07-25 14:02:44 -04:00
Jeremy Avigad
c9d6cc5255
feat(library/data/{finset,set}): various basic facts
2015-07-25 14:02:44 -04:00
Jeremy Avigad
9cd7db3fea
fix(library/data/list/perm): fix typo in theorem names
2015-07-25 14:02:44 -04:00
Jeremy Avigad
d3cd0bb8ff
refactor(library/data/nat/find): rename 'choose' to 'find' to avoid conflict with combinatorics 'choose'
2015-07-25 14:02:44 -04:00
Leonardo de Moura
43f5f70414
feat(library/data/bag): add basic properties for bag intersection and union
2015-07-25 08:37:30 -07:00
Leonardo de Moura
ebf8c7fbdb
feat(library/data): define bag using quotients
2015-07-24 23:45:08 -07:00
Leonardo de Moura
8be82d7405
feat(data/list): add count for lists
2015-07-24 23:44:11 -07:00
Leonardo de Moura
99a9dec93f
refactor(library/data/real/basic): declare 'real' in the toplevel like 'nat', 'int' and 'rat'
2015-07-24 11:59:46 -07:00
Leonardo de Moura
5c7a20e5bd
fix(library/unifier): crash when unifying constraints of the form (pr t =?= s)
...
where pr is a projection and t is a stuck term
see issue #737
2015-07-24 11:52:46 -07:00
Leonardo de Moura
0f2c0b6512
feat(library/data/real/basic): replace 'have ... [visible]' with 'assert ...'
...
Remove comments about "sorry"s. Mario has fixed all of them.
2015-07-24 10:07:16 -07:00
Mario Carneiro
066b0fcdf9
feat(library): clean up "sorry"s in library
...
Breaking changes: pnat was redefined to use subtype instead of a custom inductive type, which affects the notation for pnat 2 and 3
2015-07-24 12:21:33 -04:00
Leonardo de Moura
946308b187
feat(frontends/lean): allow anonymous 'have'-expressions in tactic mode
2015-07-23 18:52:59 -07:00
Leonardo de Moura
18dd7c13f9
feat(frontends/lean): add '[congr]' attribute
2015-07-22 17:21:47 -07:00
Leonardo de Moura
fbaa8b21f6
refactor(library/data/nat): cleanup for the tutorial
2015-07-22 13:41:50 -07:00
Leonardo de Moura
e969c7a8d6
refactor(library): remove 'simp' hack
2015-07-22 10:13:19 -07:00
Leonardo de Moura
092c8d05b9
feat(frontends/lean,library): rename '[rewrite]' to '[simp]'
2015-07-22 09:01:42 -07:00
Leonardo de Moura
0de715ae54
refactor(library/data): cleanup proofs using new features
2015-07-21 09:57:10 -07:00
Leonardo de Moura
3e3d37905c
refactor(library/data): cleanup proofs using new features
2015-07-21 08:26:44 -07:00
Leonardo de Moura
ff425b66e7
feat(library/data/list): test type
notation in the standard library
2015-07-20 22:00:05 -07:00
Leonardo de Moura
10e5b182b5
refactor(library/data): use "suppose"-expressions to cleanup proofs
2015-07-20 19:45:54 -07:00
Leonardo de Moura
8ad6312764
feat(library/hlist): add helper eq.rec lemmas
2015-07-20 14:56:50 -07:00
Leonardo de Moura
0a8bab14ee
feat(library/data/vector): add helper lemmas for proving v == w when v and w are vectors
2015-07-20 11:59:03 -07:00
Leonardo de Moura
48f8b8f18d
refactor(library): use new 'suppose'-expression
2015-07-19 21:15:20 -07:00
Leonardo de Moura
c2fc612ec1
fix(library/data/nat/order): add missing theorems back
2015-07-19 20:21:25 -07:00
Leonardo de Moura
6936d71030
feat(library/data/list/basic): add 'firstn' definition and theorems
2015-07-19 20:15:40 -07:00
Leonardo de Moura
d2f64d7744
feat(library/data/nat/order): add 'max/min' auxiliary theorems
2015-07-19 20:15:11 -07:00
Leonardo de Moura
d91627ebec
refactor(library): move 'max/min' to 'data/nat'
2015-07-19 19:47:14 -07:00
Leonardo de Moura
01169ca2a8
feat(library/data/hlist): add heterogeneous lists
2015-07-19 14:33:15 -07:00
Leonardo de Moura
73f665dce3
refactor(library/data/list/perm): use anonymous 'suppose' and 'have' expressions
2015-07-19 12:35:12 -07:00
Leonardo de Moura
812ddf1ef5
feat(frontends/lean): add 'suppose'-expression
...
It is a variant of 'assume' that allow anonymous declarations.
2015-07-19 12:15:12 -07:00
Leonardo de Moura
92f8eb173b
feat(frontends/lean): use 'this' as the name for anonymous 'have'-expression
2015-07-18 13:36:05 -05:00
Leonardo de Moura
ade60278d0
refactor(library): rename iff.mp' to iff.mpr
2015-07-18 08:52:58 -05:00
Leonardo de Moura
16f50d9aea
feat(library/data/list/basic): add list.is_inhabited
2015-07-17 06:52:43 -04:00
Leonardo de Moura
9d83361fdc
refactor(library): use subtype instead of sigma
2015-07-16 22:48:33 -04:00