Commit graph

5190 commits

Author SHA1 Message Date
Leonardo de Moura
e01f2ec6a5 feat(library/tmp_type_context): add temporary type_context 2015-11-08 14:05:00 -08:00
Leonardo de Moura
18d9272f22 refactor(library/type_context): revise get_assignment
It is safer to return optional.
2015-11-08 14:05:00 -08:00
Leonardo de Moura
3bc5084bf6 refactor(library/simplifier): disable file
We will eventually delete it.
It will be subsumed by blast.
2015-11-08 14:05:00 -08:00
Leonardo de Moura
27904787fe refactor(library/type_inference): rename type_inference module to type_context 2015-11-08 14:05:00 -08:00
Daniel Selsam
ffc168d63a fix(frontends/lean/elaborator): visit_app partial 2015-11-08 14:05:00 -08:00
Leonardo de Moura
ab940a2001 feat(frontends/lean/elaborator): add support for partial explicit in the elaborator 2015-11-08 14:05:00 -08:00
Daniel Selsam
6b06a19294 chore(frontends/lean): remove whitespace 2015-11-08 14:05:00 -08:00
Daniel Selsam
fa58d7c71e feat(frontends/lean): basic support for partial explicit 2015-11-08 14:05:00 -08:00
Daniel Selsam
946e00f71a feat(library/explicit): support partial explicit 2015-11-08 14:05:00 -08:00
Leonardo de Moura
1d670e3193 feat(frontends/lean): support for '@@' -- the partial explicit operator 2015-11-08 14:05:00 -08:00
Leonardo de Moura
914f3b4e34 chore(library/blast/blast): fix style 2015-11-08 14:05:00 -08:00
Leonardo de Moura
0e4f97792e feat(library/blast): add blast::scope_debug auxiliary class for testing blast related procedures 2015-11-08 14:05:00 -08:00
Leonardo de Moura
fd917effad feat(library/blast): use new type_inference module in blast 2015-11-08 14:05:00 -08:00
Leonardo de Moura
52eb787288 refactor(library/type_inference): move (non-temporary) class.* options to type_inference module 2015-11-08 14:05:00 -08:00
Leonardo de Moura
56c15f4fb5 refactor(library/type_inference): move new type class resolution procedure to genere type_inference 2015-11-08 14:05:00 -08:00
Leonardo de Moura
4c573380b2 feat(library/class): add auxiliary methods 2015-11-08 14:05:00 -08:00
Leonardo de Moura
c361fc1f6f fix(frontends/lean/parser): method for parsing decimals
"division" has been renamed to "div"
2015-11-08 14:04:59 -08:00
Leonardo de Moura
6fa4691eb4 feat(library/type_inference): improve process_assignment 2015-11-08 14:04:59 -08:00
Leonardo de Moura
ab1937d46e feat(library/class_instance_resolution): add new (temporary) option class.force_new to force the new type class resolution procedure in HoTT mode 2015-11-08 14:04:59 -08:00
Floris van Doorn
46dba4ee5e refactor(category): move some files to subfolders, and create file with basic functors 2015-11-08 14:04:59 -08:00
Floris van Doorn
f2d07ca23c feat(category): various small changes in category theory 2015-11-08 14:04:59 -08:00
Floris van Doorn
de1c47eda9 feat(categories): add exponential laws for categories
also give nicer rules to construct equalities between (pre)categories
2015-11-08 14:04:59 -08:00
Floris van Doorn
21723a82b6 fix(lean-syntax): add some more syntax for categories 2015-11-08 14:04:59 -08:00
Floris van Doorn
a358813182 feat(lean-syntax): fix and extend syntax highlighting 2015-11-08 14:04:58 -08:00
Floris van Doorn
3f0d8c0a8c feat(category.adjoint): prove more about functors 2015-11-08 14:04:58 -08:00
Floris van Doorn
c7fd29f854 feat(category): start with the introduction rule for equivalences 2015-11-08 14:04:58 -08:00
Leonardo de Moura
410c9aef79 chore(library/type_inference): fix style 2015-11-08 14:04:58 -08:00
Leonardo de Moura
6465b16951 fix(library/class_instance_resolution): memory initialization bug in new type class resolution procedure 2015-11-08 14:04:58 -08:00
Leonardo de Moura
95348bc90b fix(library/class_instance_resolution): uninitialized variables 2015-11-08 14:04:58 -08:00
Leonardo de Moura
50186e2db3 feat(library/class_instance_resolution): add old type class resolution procedure back to be able to compile HoTT library 2015-11-08 14:04:58 -08:00
Leonardo de Moura
885393f4de feat(library/type_inference): check types when assigning meta-variables 2015-11-08 14:04:58 -08:00
Leonardo de Moura
766fdd415a feat(library/type_inference): postpone "nontrivial" universe unification constraints 2015-11-08 14:04:58 -08:00
Leonardo de Moura
0bf069f016 feat(library/class_instance_resolution): more liberal type class resolution procedure
This modification is needed for the group_theory folder
2015-11-08 14:04:58 -08:00
Leonardo de Moura
21501ccfa4 fix(library/type_inference): temporary hack for solving universe unification problems
We need a better solution. It turns out the universe constraints are not
as simple as we expected.
2015-11-08 14:04:58 -08:00
Leonardo de Moura
5f43b9b183 feat(library/class_instance_resolution): recursively invoke type class resolution when parameters are instances 2015-11-08 14:04:58 -08:00
Leonardo de Moura
6acf7afa16 fix(library/type_inference): bug when using apply_beta 2015-11-08 14:04:58 -08:00
Leonardo de Moura
8d8e43abfd fix(library/class_instance_resolution): transitive instances in the new type class resolution procedure 2015-11-08 14:04:58 -08:00
Leonardo de Moura
a1d200e1c6 feat(library/class_instance_resolution): add support for nested type
class resolution
2015-11-08 14:04:58 -08:00
Leonardo de Moura
e9b92adf29 feat(library/type_inference,library/class_instance_resolution): add on_is_def_eq_failure "event handler" 2015-11-08 14:04:57 -08:00
Leonardo de Moura
21bd30d51a fix(library/class_instance_resolution): bug in mk_choice_point 2015-11-08 14:04:57 -08:00
Leonardo de Moura
0446c43ebf refactor(library/class_instance_resolution): use new generic type_inference module to implement type class resolution 2015-11-08 14:04:57 -08:00
Leonardo de Moura
73543f1279 fix(library/norm_num): use new type-class resolution procedure at norm_num 2015-11-08 14:04:57 -08:00
Leonardo de Moura
f371182a6c feat(library/type_inference): generic and cheap type inference, unification, whnf 2015-11-08 14:04:57 -08:00
Leonardo de Moura
a7655b7d43 feat(library/class_instance_resolution): reset internal indices 2015-11-08 14:04:57 -08:00
Leonardo de Moura
1f01e5480d fix(library/class_instance_resolution): remove reset_cache_and_ctx used for debugging purposes 2015-11-08 14:04:57 -08:00
Leonardo de Moura
2edccf007b fix(library/class_instance_resolution): make sure that terms synthesized by type class resolution have override the ones synthesized by solving unification constraints. 2015-11-08 14:04:57 -08:00
Leonardo de Moura
b71a68c606 fix(frontends/lean/elaborator): visit_prenum was creating unnecessary universe metavariable
This was creating problems for the new type class resolution procedure
since visit_prenum was also not creating any constraint that enforced
the universe level of A to be equal to the superfluous universe level.
2015-11-08 14:04:57 -08:00
Leonardo de Moura
4787cf179e fix(library/class_instance_resolution): skip (instance) meta-variables that have been assigned by solving unification constraints 2015-11-08 14:04:57 -08:00
Leonardo de Moura
eb2236f036 feat(library/class_instance_resolution): bug in mk_choice 2015-11-08 14:04:57 -08:00
Leonardo de Moura
97407eb178 fix(library/class_instance_resolution): add hack for mk_subsingleton_instance API
The comment in the source code explains why the hack is needed
2015-11-08 14:04:57 -08:00