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
f3ba81a19d
fix(init.path): a couple of small simplifications
2015-08-07 13:34:40 -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
11b1f416f6
feat(nat): add unfold attributes to add, mul, sub and of_num in namespace nat_esimp in both libraries
2015-08-04 13:23:20 +02:00
Floris van Doorn
747d12a385
feat(hott): prove characterization of a pathover in a pathover-type
2015-08-04 13:01:12 +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
267545ca0c
feat(frontends/lean): parse 'with_options' tactical
...
see issue #492
2015-07-13 19:13:41 -04:00
Leonardo de Moura
6ab5cf214c
feat(library,hott): add simp tactic reference
2015-07-13 18:01:40 -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
Leonardo de Moura
de90926eed
refactor(hott): adjust HoTT library to new support for projections
2015-06-26 17:18:30 -07:00
Floris van Doorn
df3ce2b00b
feat(types/eq2): add theorem about eq_of_con_inv_eq_idp
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
ac03bf7a4a
feat(hott/nat): prove computation rule for cases by inequality
2015-06-25 22:31:40 -04:00
Floris van Doorn
0b9c8e14a4
fix(*/init/nat): fix occurrences where both theorem and [unfold-c] were used
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
a4c0699e81
feat(library/tactic/constructor_tactic): restore 'constructor' tactic old semantics, add 'fconstructor' tactic
...
See issue #676
Add new test demonstrating why it is useful to have the old semantics
for 'constructor'
2015-06-17 23:48:54 -07:00
Jeremy Avigad
6b36076ab5
feat({library,hott}/init/nat): add sub_le_succ
2015-06-15 22:53:11 +10:00
Leonardo de Moura
4b91cfccff
feat(frontends/lean/builtin_exprs): make notation ( e : T )
builtin
...
In the previous approach, the following (definitionally equal) term was being generated
(fun (A : Type) (a : A), a) T e
2015-06-10 14:52:59 -07:00
Floris van Doorn
7f5caab694
feat(nat): redefine le and lt in the standard library
2015-06-04 20:14:13 -04: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
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
Leonardo de Moura
ca110012d8
feat(library/tactic): automate "generalize-intro-induction/cases" idiom
...
closes #645
2015-05-30 21:57:28 -07:00
Leonardo de Moura
6f6848968d
feat(frontends/lean/coercion_elaborator): "coercion lifting" for backtracking case
...
closes #252
2015-05-30 16:44:26 -07:00
Leonardo de Moura
00232e70d6
feat(hott,library): auxiliary theorems for simplifier
2015-05-27 16:35:56 -07:00
Leonardo de Moura
85409a59d3
feat(library/tactic/rewrite_tactic): add xrewrite and krewrite tactic variants
...
closes #511
2015-05-27 16:32:43 -07:00
Leonardo de Moura
dc6411b903
feat(library/inductive_unifier_plugin): restrict rule that was generating non-terminating behavior
...
see issue #632
2015-05-27 14:41:12 -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
4a29f4bdd4
feat(types): incorporate pathovers in the files of the types folder
...
Conflicts:
hott/cubical/pathover.hlean
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
54ed8a8e76
feat(hott): small changes in init and category
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
Floris van Doorn
8056f326d7
feat(reserved_notation): make is_typeof parsing-only, add ^ to HoTT
2015-05-26 21:37:01 -07:00
Jeremy Avigad
716da2488b
fix(hott/*.md,library/*.md): use the word 'file' instead of 'module'
2015-05-25 16:50:42 -07:00
Leonardo de Moura
d0987eb3ac
feat(library/tactic): add 'subtvars' tactic
2015-05-25 16:36:44 -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
c430d1d5ba
feat(category.constructions): define comma category
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
Floris van Doorn
1597337c72
feat(path): add unfold-c attribute to definitions
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
Leonardo de Moura
b1ece388a6
feat(frontends/lean,library/tactic/induction_tactic): improve induction tactic notation, expand induction tactic implementation
2015-05-18 09:25:07 -07:00
Leonardo de Moura
065a1f7501
feat(library/tactic): add 'induction' tactic skeleton
2015-05-12 20:21:25 -07:00
Leonardo de Moura
6c958a25e7
refactor(library/tactic/expr_to_tactic): make sure builtin tactics don't need to be marked opaque
...
This modification is needed since we will remove opaque definitions from
the kernel.
see issue #576
2015-05-08 16:06:16 -07:00