Floris van Doorn
3c4c722afd
feat(hott): port more from chapters 4 and 6 of the book
2015-09-28 09:09:21 -07:00
Leonardo de Moura
4a6ff8058d
fix(hott): import commands (some files have been moved to different directories)
2015-09-25 09:39:45 -07:00
Ulrik Buchholtz
384a366e0f
refactor(hott): move homotopy hits to new homotopy folder
2015-09-24 22:52:33 -04:00
Floris van Doorn
e84b22864f
feat(hott): various changes in the HoTT library
2015-09-11 23:35:21 -07:00
Floris van Doorn
fd89aa77a3
feat(hott): prove Yoneda lemma
2015-09-11 23:35:21 -07:00
Floris van Doorn
a8964adb9c
fix(hott): make sure there are no sorry's visible
2015-09-01 15:17:46 -07:00
Floris van Doorn
f4892db432
feat(types.trunc): prove the principle of unique choice
2015-09-01 15:17:46 -07:00
Floris van Doorn
ad5cda48a8
refactor(hott): move cubical folder and files eq2, function and hprop_trunc from types/ to the root HoTT directory
2015-08-07 13:34:41 -07:00
Floris van Doorn
d111607890
feat(hott): add file which maps sections of the HoTT book to the HoTT library
2015-08-07 13:34:41 -07:00
Floris van Doorn
0ec525a8ee
feat(two_quotient): finish proof of elim_incl2
2015-08-07 13:34:40 -07:00
Floris van Doorn
e198be318f
feat(circle): show that x = x in the circle is always Z
2015-08-04 13:01:11 +02:00
Floris van Doorn
7a780b1b60
feat(hott): various minor changes in the HoTT library
2015-08-04 13:01:11 +02:00
Leonardo de Moura
b3cd3efbb4
refactor(hott): fix "sorry"s at int/basic.hlean, and comment the remaining "sorry"s
2015-07-27 08:34:11 -07:00
Leonardo de Moura
584f9e3f49
fix(library/tactic/unfold_rec): support indexed families at unfold_rec
...
This commit also removes many (now unnecessary) folds from the HoTT
library.
See issue #692
We still have to implement support for recursive definitions based on
brec_on that recurse over inductive families.
2015-07-12 12:32:58 -04:00
Leonardo de Moura
4b1b3e277f
feat(frontends/lean): rename '[unfold-c]' to '[unfold]' and '[unfold-f]' to '[unfold-full]'
...
see issue #693
2015-07-07 16:37:06 -07:00
Floris van Doorn
24762fe843
feat(hit): add hits with 2-path constructors
...
In hit.two_quotient we define a general construction to define hits with 2-dimensional path constructors, similar to quotients.
We can add 2-paths between any two 'words', where a word consists of 1-path constructors, concatenation and inverses.
We use this to define the torus, reflexive quotients and the reduced suspension.
There is still one 'sorry' in the construction
2015-06-25 22:31:41 -04:00
Floris van Doorn
ea0f57aef5
feat(hott): various clean-up and small additions
2015-06-25 22:31:40 -04:00
Floris van Doorn
2748525c21
feat(hit/susp): finish the proof that loop space is adjoint to the suspension
2015-06-25 22:31:40 -04:00
Floris van Doorn
124c9d3d8a
feat(hott): various cleanup and fixes, rename \~ to ~, expand types.pointed
2015-06-25 22:31:40 -04:00
Floris van Doorn
fa1979c128
feat(datatypes): let the type of unit be the lowest non-Prop universe
...
The definitional package (brec_on and cases_on) now use poly_unit instead of unit
closes #698
2015-06-25 17:33:46 -07:00
Leonardo de Moura
8b7dc4e03a
feat(frontends/lean): apply eta-reduction in postprocessing step
...
Perhaps, we should add an option to disable this new feature.
Remark: this commit makes commit 46d418a
redundant.
I'm keeping 46d418a
because we may retract this commit in the future.
2015-06-10 16:29:30 -07:00
Floris van Doorn
ff01774fd7
renaming(hit): rename type_quotient to quotient, and quotient to set_quotient
...
This renaming is because type_quotient is a nonstandard name. I've had a discussion with Egbert
Rijke, Steve Awodey and Dan Licata, and the consensus for a better name was 'quotient'. I had to
make changes in src/kernel/hits/hits.cpp, I renamed g_type_quotient* by g_hit_quotient* (to avoid
name clash the standard library quotient, although I don't know whether that name clash would
matter).
2015-06-04 20:14:13 -04:00
Floris van Doorn
06528c4791
refactor(types): create cubical subfolder, update markdown files
2015-06-04 20:14:13 -04:00
Floris van Doorn
33e948d9d1
feat(hit/sphere): Prove that maps from S^n to an (n-1)-type are constant
2015-06-04 20:14:13 -04:00
Floris van Doorn
876aa20ad6
feat(hott): Port remainder of §6.3 and §7.2 from the HoTT book
...
Also prove a theorem similar to Lemma 7.3.1
There are still some sorry's in hit.suspension
2015-06-04 20:14:12 -04:00
Floris van Doorn
883b4fedb9
feat(hott): start with proof to characterize (is_trunc n A) using iterated loop spaces
2015-06-04 20:14:12 -04:00
Floris van Doorn
4117455e97
feat(hott): redefine nat.le and nat.lt
...
also some minor modifications in other files
2015-06-04 20:14:12 -04:00
Floris van Doorn
d4a991ef84
feat(hott): define cubes and cubeovers
2015-06-04 20:13:53 -04:00
Floris van Doorn
96a4a015d9
fix(hit): make the nondependent eliminator standard for hits
2015-05-26 21:37:02 -07:00
Floris van Doorn
43bcdd7994
feat(hott): remove sorry's in circle.hlean, characterize pathovers in degenerate pi's
2015-05-26 21:37:01 -07:00
Floris van Doorn
c64d73aae4
feat(types.nat): prove that inequalities on nat are mere propositions
...
Also some small changes in various other locations
2015-05-26 21:37:01 -07:00
Floris van Doorn
95e0fbb71a
feat(hott): add interval and (start of) squareovers
2015-05-26 21:37:01 -07:00
Floris van Doorn
d7c1a8f2e0
feat(hott): small fixes in hit and cubical.square
2015-05-26 21:37:01 -07:00
Floris van Doorn
0b12d51b25
feat(hott): use pathovers in all the recursors of hits
...
move pathover file to the init folder
2015-05-26 21:37:01 -07:00
Floris van Doorn
40d5f83851
feat(hit): start using induction tactic
2015-05-26 21:37:01 -07:00
Floris van Doorn
50290fb81c
feat(hott): add recursor attribute to hits
...
recursor attribute is added to both the dependent and nondependent elimination, is such a way that the dependent elimination is used by default
2015-05-26 21:37:01 -07:00
Jeremy Avigad
33214f0895
refactor(hott/*): remove 'Module:' lines
2015-05-23 20:52:58 +10:00
Leonardo de Moura
e1c2340db2
fix(frontends/lean): consistent behavior for protected declarations
...
see https://github.com/leanprover/lean/issues/604#issuecomment-103265608
closes #609
2015-05-18 22:35:18 -07:00
Floris van Doorn
6ca9635d53
feat(hit.trunc): replace sorry by proof
2015-05-18 15:59:55 -07:00
Floris van Doorn
2144036cdb
feat(hott.circle): prove that the fundamental group of the circle is equal to the integers, as groups
...
Also many minor fixes at various places
2015-05-18 15:59:55 -07:00
Leonardo de Moura
19361f0196
feat(library/unifier): do not fire type class resolution as last resort when type contains metavariables
...
see discussion at #604
2015-05-18 15:45:23 -07:00
Floris van Doorn
c2c7c4f79f
feat(hit.circle): finish proof that (base = base) is equivalent to int
2015-05-07 16:39:04 -07:00
Floris van Doorn
111c8e1529
feat(hott): add [unfold-c] and [constructor] attributes for HITs
2015-05-07 16:39:04 -07:00
Floris van Doorn
9893de6194
feat(hit/circle): prove partly that the fundamental group of the circle is int
...
Also add markdown files for nat and int
2015-05-07 16:39:04 -07:00
Floris van Doorn
7cfac38eda
feat(hott): port parts of natural numbers and integers from standard library to HoTT
...
This also involves:
- adding definitions about logic and natural numbers existing in the standard library to init
- porting the current algebraic hierarchy
2015-05-07 16:39:03 -07:00
Floris van Doorn
e5241f84ec
fix(init.datatypes): make empty live in Type.{0}
2015-05-07 16:39:03 -07:00
Floris van Doorn
90f1a691fd
feat(hott): change notation of transport to correspond with standard library
2015-05-07 16:39:03 -07:00
Floris van Doorn
43fb334914
feat(circle): prove loop != base
2015-05-07 16:39:03 -07:00
Leonardo de Moura
4e1146a2d5
refactor(hott,library): test new tactics in the HoTT and standard libraries
2015-05-02 22:22:31 -07:00
Leonardo de Moura
3912bc24c8
feat(frontends/lean): nicer syntax for 'intros' 'reverts' and 'clears'
2015-04-30 11:00:39 -07:00