Commit graph

8732 commits

Author SHA1 Message Date
Leonardo de Moura
510168a387 refactor(library,hott): remove unnecessary annotations 2016-02-25 12:26:20 -08:00
Leonardo de Moura
146edde5b3 feat(library/class): mark instances as quasireducible by default
quasireducible are also known as lazyreducible.

There is a lot of work to be done.
We still need to revise blast, and add a normalizer for type class
instances. This commit worksaround that by eagerly unfolding
quasireducible.
2016-02-25 12:11:29 -08:00
Leonardo de Moura
c85d6d5a1e fix(library/init/tactic): typo 2016-02-24 16:10:35 -08:00
Leonardo de Moura
1924b2884c refactor(library/tactic): remove 'append' and 'interleave' tacticals
Preparation for major refactoring in the tactic framework.
2016-02-24 16:02:16 -08:00
Leonardo de Moura
9b15c4c669 feat(util/rb_map): add find_if 2016-02-24 16:02:16 -08:00
Soonho Kong
f38af35e06 fix(script/check_md_links.py): author name 2016-02-23 20:17:03 -05:00
Soonho Kong
e6895e3619 chore(script/check_md_links.py): add copyright 2016-02-23 18:03:15 -05:00
Soonho Kong
ff1352fcf2 fix(script/check_md_links.py): import print_function from __future__ 2016-02-23 18:02:44 -05:00
Soonho Kong
596fe17f16 feat(script/check_md_links.py): make python2/3 compatible 2016-02-23 18:00:36 -05:00
Leonardo de Moura
494b88e103 fix(library/blast/forward/ematch): must used the right type_context 2016-02-23 13:32:34 -08:00
Sebastian Ullrich
2a35c0f49b feat(script): add .md link checker script 2016-02-23 10:11:24 -08:00
Sebastian Ullrich
3de216d302 chore(*.md): fix/remove broken links 2016-02-23 10:11:24 -08:00
Leonardo de Moura
2a294bcc17 fix(frontends/lean/elaborator): fixes #996 2016-02-22 17:03:14 -08:00
Leonardo de Moura
96f391dda2 feat(library/definitional/projection,frontends/lean/structure_cmd): creating inductive predicates using structure command 2016-02-22 16:09:44 -08:00
Leonardo de Moura
49661a043d feat(library/definitional/equations): improve detection of infeasible cases in the definitional package 2016-02-22 14:16:24 -08:00
Soonho Kong
431ce6ff2d fix(util/lp): instantiate missing functions
close #1005
2016-02-22 16:19:28 -05:00
Jeremy Avigad
1546c04154 feat(library/theories/analysis/complex_norm): instantiate complex numbers as a real normed vector space 2016-02-22 11:25:24 -08:00
Jeremy Avigad
5246072e96 feat(library/theories/analysis/inner_product): add real inner product spaces 2016-02-22 11:25:24 -08:00
Jeremy Avigad
7f1eb76091 feat(library/theories/analysis/normed_space): add specializations to modules over the reals, to help the elaborator 2016-02-22 11:25:24 -08:00
Jeremy Avigad
ea42a76dc5 refactor/feat(library/theories/analysis/sqrt): break out sqrt, add properties 2016-02-22 11:25:23 -08:00
Jeremy Avigad
3c18f05cab feat(library/algebra): add some useful facts 2016-02-22 11:25:23 -08:00
Jeremy Avigad
0f81c2e65b fix(tests/lean/noncomp_theory,simlifier_light): fix tests 2016-02-22 11:25:23 -08:00
Jeremy Avigad
158acf878d feat(library/data/set/filter): work in material from Jacob Gross 2016-02-22 11:25:23 -08:00
Jeremy Avigad
41342f53df refactor(library/data/set/filter): get filters working with complete lattice notation 2016-02-22 11:25:23 -08:00
Jeremy Avigad
a08395b17e refactor(library/algebra/complete_lattice): make complete lattices more usable
I addressed two problems. First, the theorem names and notation were all in
the namespace complete_lattice. The problem was that if you opened that
namespace, names (like "sup" and "inf") and notation clashed with global notation
for lattices.

The other problem was that if you defined a lattice using Sup, the Sup you got
was not the Sup you want; it was the Sup-construction from the Inf-construction
from the Sup.

Everything seems good now.
2016-02-22 11:25:23 -08:00
Jeremy Avigad
7fe71c972f feat(library/data/set/basic): add theorems for bounded unions and intersections 2016-02-22 11:25:23 -08:00
Jeremy Avigad
518a77587a refactor(library/data/{set,finset},library/*): use compl for set and finset complement 2016-02-22 11:25:23 -08:00
Jeremy Avigad
8f83c78bc9 fix(library/logic/identities,library/*): fix implicit arguments, add implications. Closes #1002. 2016-02-22 11:25:23 -08:00
Jeremy Avigad
769ae6830d feat(library/data/set/function): add facts about preimages 2016-02-22 11:25:23 -08:00
Jeremy Avigad
a72f6666e8 feat(library/data/set/basic): add two theorems 2016-02-22 11:25:23 -08:00
Jeremy Avigad
797905b803 feat(library/theories/topology/order_topology): add order_topology, from Jacob Gross 2016-02-22 11:25:23 -08:00
Jeremy Avigad
b8d3f34d14 feat(library/data/set/basic): add a couple of theorems 2016-02-22 11:25:23 -08:00
Jeremy Avigad
03cd2c0013 feat/refactor(library/algebra/interval): use i for infinite, add some theorems 2016-02-22 11:25:23 -08:00
Jeremy Avigad
e80559237a fix(library/data/real): tinker with instances
Convert two instances of has_zero and has_one to local instance,
and change one "[instance]" to a "[trans_instance]". This (by
accident) fixed a problem Rob had a couple of weeks ago.
2016-02-22 11:25:23 -08:00
Jeremy Avigad
15c9ec12cf fix(library/data/real/division): make temporary has_div only a local instance 2016-02-22 11:25:23 -08:00
Floris van Doorn
6cdbc0f79f feat(pointed/equiv): add more theorems
The theorems are mostly about the interaction between pointed equivalences and pointed homotopies
Some of these theorems were missing for (unpointed) equivalences, so I also added them there
2016-02-22 11:15:39 -08:00
Floris van Doorn
eea2a1ac91 feat(hott): add some more abstracts 2016-02-22 11:15:39 -08:00
Floris van Doorn
b2181497fd fix(tests): fix delta_issue2 2016-02-22 11:15:38 -08:00
Floris van Doorn
facd94a1b4 feat(hott): various changes
more about pointed truncated types, including pointed sets.
also increase the priority of some basic instances that nat/num/pos_num/trunc_index have 0, 1 and + (in both libraries)
also move the notation + for sum into the namespace sum, to (sometimes) avoid overloading with add
2016-02-22 11:15:38 -08:00
Floris van Doorn
087c44d614 style(hott): rename instances of pType using pfoo instead of Foo
For example, the pointed suspension operation was called Susp before this commit, but now is called psusp
2016-02-22 11:15:38 -08:00
Floris van Doorn
c64e5a114c feat(circle): add missing facts that the circle is 1-truncated and 0-connected 2016-02-22 11:15:38 -08:00
Floris van Doorn
bac6d99cc7 style(hott): rename Pointed to pType
also rename sigma_equiv_sigma_id to sigma_equiv_sigma_right and similarly for pi
2016-02-22 11:15:38 -08:00
Floris van Doorn
43cf2ad23d style(hott): replace all other occurrences of hprop/hset
They are replaced by either Prop/Set or prop/set
2016-02-22 11:15:38 -08:00
Floris van Doorn
4e2cc66061 style(*): rename is_hprop/is_hset to is_prop/is_set 2016-02-22 11:15:38 -08:00
Floris van Doorn
816237315c feat(hott): various additions, especially for pointed maps/homotopies/equivalences 2016-02-22 11:15:38 -08:00
Floris van Doorn
ecc141779a feat(init.path): update init.path to use tactics, also some additions
Now the file hardly uses eq.rec explicitly anymore.
Also add the fact that horizontal and vertical inverses of paths are equal
Make one more argument explicit in eq.cancel_left and eq.cancel_right (to make it nicer to write 'apply cancel_right p')
2016-02-22 11:15:38 -08:00
Floris van Doorn
7f09ba328e feat(hott): small changes 2016-02-22 11:15:38 -08:00
Floris van Doorn
78092af27f feat(hott): add some attributes 2016-02-22 11:15:38 -08:00
Floris van Doorn
cd74b6bff0 fix(hott): abstract some equivalence proofs
Note: this is important. I proved a quite complicated equivalence with calc, by chaining these
equivalences. Now if I want to know the underlying function of this composite equivalence, I have to
unfold all these instances. Without the abstracts, this took 14 seconds, and afterwards, it took 2
seconds.
2016-02-22 11:15:38 -08:00
Jacob Gross
db8ed5dd08 feat (library/theories/topology/basic) : add separation theorems
add T0, T1, T2 separation theorems and add closed singleton theorem for T1 spaces
2016-02-22 11:11:54 -08:00