Leonardo de Moura
f461b53a7f
refactor(library): remove eq.ops namespace
2016-07-31 12:50:11 -07:00
Leonardo de Moura
1aeda0e74b
feat(frontends/lean/elaborator): invoke tactics
2016-07-31 11:56:52 -07:00
Leonardo de Moura
e28e4fc896
feat(frontends/lean/elaborator): convert unassigned universe levels into universe parameters, basic support for by tactic
2016-07-31 03:45:18 -07:00
Leonardo de Moura
c46403265b
feat(library/local_context): add instance_mvars method for local_context object
2016-07-31 02:36:51 -07:00
Leonardo de Moura
f72f9dd561
fix(frontends/lean/pp): purify metavar_decl_ref's
...
The tests become too fragile if we don't purify them.
2016-07-30 20:30:03 -07:00
Leonardo de Moura
96ec2e5914
fix(library/type_context): missing case
2016-07-30 20:04:56 -07:00
Leonardo de Moura
1b528ba327
chore(util/name): remove assertion
...
The procedure get_tagged_name_suffix violates the assertion.
Alternative solution: change return type of get_tagged_name_suffix to
optional<std::string> since it is only used for pretty printing.
2016-07-30 19:53:58 -07:00
Leonardo de Moura
fafea473b8
feat(frontends/lean/elaborator): coercions to sort
2016-07-30 19:47:04 -07:00
Leonardo de Moura
5c6ee38181
fix(library/type_context): reject instances containing tmp universe metavars
2016-07-30 19:43:34 -07:00
Leonardo de Moura
b4fefd8c0b
feat(frontends/lean/elaborator): coercions to functions
2016-07-30 18:54:20 -07:00
Leonardo de Moura
b6139ab59d
fix(library/type_context): bug in type class resolution
2016-07-30 15:54:28 -07:00
Leonardo de Moura
8b533a54c2
feat(frontends/lean/pp): improve purify_metavars
2016-07-30 15:31:06 -07:00
Leonardo de Moura
44a77f6907
test(tests/lean/coe1): add coercion tests
2016-07-30 12:29:12 -07:00
Leonardo de Moura
f18c84ca59
feat(frontends/lean/pp): add option for hiding coercions
2016-07-30 12:25:18 -07:00
Leonardo de Moura
68f73851d9
test(tests/lean/elab4b): test error messages when pp.full_names is false
2016-07-30 12:02:14 -07:00
Leonardo de Moura
a0589ce8b8
feat(frontends/lean): automatic coercions
2016-07-30 11:53:25 -07:00
Leonardo de Moura
32eb37472f
feat(library/init/coe): make sure base case is tried before transitive case, add (decidable (coe b)) instance
2016-07-30 11:44:05 -07:00
Leonardo de Moura
4f72fa5fc5
feat(library/type_context): add trace.type_context.univ_is_def_eq and trace.type_context.univ_is_def_eq_detail
2016-07-30 11:14:36 -07:00
Leonardo de Moura
2ad5c2ab73
feat(library/init): add has_lift has_coe has_coe_to_fun type classes
2016-07-30 10:11:30 -07:00
Leonardo de Moura
671784e35f
chore(tests/lean/pp_all2): fix test output
2016-07-29 23:35:10 -07:00
Leonardo de Moura
29f79d71e3
chore(library): remove dead code
2016-07-29 23:32:36 -07:00
Leonardo de Moura
0169989411
chore(library/class): remove transitive instance support
...
Conflicts:
src/frontends/lean/structure_cmd.cpp
src/library/class.cpp
src/library/class.h
2016-07-29 23:32:10 -07:00
Leonardo de Moura
4a0eb15a5c
chore(library/type_context): remove support for transitive instances
2016-07-29 23:28:51 -07:00
Leonardo de Moura
264c23a24f
chore(library/class): disable [trans_instance] attribute
...
Conflicts:
src/library/class.cpp
2016-07-29 23:28:36 -07:00
Sebastian Ullrich
03b1daa0bf
feat(bin): GDB pretty printer for lean::buffer
2016-07-29 23:44:29 -04:00
Sebastian Ullrich
e090326f98
fix(library): remove classical instances from global scope
2016-07-29 23:44:23 -04:00
Sebastian Ullrich
5247b426a8
fix(library/reducible): use class hierarchy to fix reducibility attributes
2016-07-29 23:44:22 -04:00
Sebastian Ullrich
31f599e088
refactor(library/attribute_manager): introduce hierarchy of attribute classes
2016-07-29 23:44:22 -04:00
Sebastian Ullrich
3974d798c8
chore(util/name): remove confusing precondition comment
2016-07-29 23:44:22 -04:00
Sebastian Ullrich
e69b508492
refactor(library/export_decl): Re-implement for new scoped_ext
...
Use environment_extension to persist mapping from namespaces to export
decls, use new scoped_ext to keep track of currently active export decls.
2016-07-29 23:44:22 -04:00
Sebastian Ullrich
6f4a6c39f3
fix(util/lp): fix compilation error
2016-07-29 23:44:22 -04:00
Sebastian Ullrich
c4edad0372
feat(frontends/lean, library): remove attribute and metaclass scoping
...
All data is now part of either a global, permanent scope or a local,
temporary one
2016-07-29 23:44:21 -04:00
Sebastian Ullrich
463e4a2cf3
refactor(library/reducible): replace ext with attribute_manager
2016-07-29 18:51:23 -04:00
Sebastian Ullrich
0ebc9eada2
chore(tactic/simplifier/simp_lemmas): replace string literals
2016-07-29 18:51:23 -04:00
Sebastian Ullrich
661fafc940
refactor(frontends/lean): replace different attribute classes with single scoped_ext
2016-07-29 18:51:23 -04:00
Leonardo de Moura
a64d1a77ea
refactor(library, frontends/lean): remove old coercion management module
2016-07-29 13:51:26 -07:00
Leonardo de Moura
de237fa6e4
chore(library/coercion): disable coercion attribute
2016-07-29 13:15:10 -07:00
Leonardo de Moura
7ddf1e817b
chore(frontends/lean): coercions are disabled by default
2016-07-29 13:03:23 -07:00
Daniel Selsam
1b7f70dde9
feat(simplifier): expose simp_lemmas data structure
2016-07-29 10:44:44 -07:00
Daniel Selsam
5fe08cb24c
fix(simplifier): closes #1093
2016-07-29 10:44:44 -07:00
Daniel Selsam
ca6058134c
fix(arith_instance_manager): do not store type_context ptr in object
2016-07-29 10:44:44 -07:00
Daniel Selsam
41da351f7a
fix(arith_instance_manager): shared pointers instead of references
2016-07-29 10:44:44 -07:00
Daniel Selsam
79e5e80dae
test(frontends/smt2): basic tests for parser and elaborator
2016-07-29 10:44:44 -07:00
Daniel Selsam
04be7a6ae6
fix(arith_instance_manager): check local context compatibility when caching
2016-07-29 10:44:44 -07:00
Daniel Selsam
ef3921f65f
feat(frontends/smt2/parser): add ':verbose' option
2016-07-29 10:44:44 -07:00
Daniel Selsam
8b9f3f1e47
fix(frontends/smt2/elaborator): (/ <int> <int>) needs to coerce both arguments
2016-07-29 10:44:44 -07:00
Daniel Selsam
f336e817b3
fix(src/library/arith_instance_manager): detect requests for concrete arith types
2016-07-29 10:44:44 -07:00
Daniel Selsam
fb57b5e3e4
refactor(frontends/smt2): remove legacy type context
2016-07-29 10:44:44 -07:00
Daniel Selsam
75145c29ef
refactor(library/smt): move smt files from algebra
2016-07-29 10:44:44 -07:00
Daniel Selsam
e946ebc8fc
feat(frontends/smt2): new frontend for smt2 format
2016-07-29 10:44:43 -07:00