Commit graph

11817 commits

Author SHA1 Message Date
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
Daniel Selsam
e7cee1b2cd feat(src/library/mpq_macro): numeral macros 2016-07-29 10:44:43 -07:00
Leonardo de Moura
d05e5422f9 refactor(frontends/lean/elaborator): snapshots 2016-07-29 10:36:14 -07:00
Leonardo de Moura
aae33e02b0 fix(frontends/lean/elaborator): check expected type in applications, make sure we don't accidentally unfold definitions unnecessarily 2016-07-28 17:30:56 -07:00
Leonardo de Moura
cdee8b811a feat(frontends/lean/elaborator): special support for elaborating have-expressions 2016-07-28 16:20:53 -07:00
Leonardo de Moura
931251d403 feat(frontends/lean): remove local_context from parser 2016-07-28 16:19:31 -07:00
Leonardo de Moura
a7c8cbc548 feat(frontends/lean/elaborator): add hard coded coercion from bool to Prop 2016-07-28 15:38:22 -07:00
Leonardo de Moura
b5f006d229 feat(frontends/lean/elaborator): use expected types to disambiguate overloads 2016-07-28 15:32:25 -07:00
Leonardo de Moura
e2f14f2dc4 feat(frontends/lean/elaborator): use full_names when displaying ambiguous overload 2016-07-28 15:21:07 -07:00
Leonardo de Moura
f5ca3cdd68 refactor(frontends/lean/elaborator): simplify visit_default_app_core 2016-07-28 15:09:23 -07:00
Leonardo de Moura
dcf0244ecd chore(frontends/lean/parser): remove dead code 2016-07-28 09:56:03 -07:00
Leonardo de Moura
477a137db9 feat(frontends/lean): remove 'using' expressions
Reason: we have include/omit commands
2016-07-28 09:53:27 -07:00
Leonardo de Moura
e6627cdfc1 feat(frontends/lean/parser): add new_elaborator option 2016-07-28 09:48:12 -07:00
Leonardo de Moura
ba4abed588 fix(frontends/lean/elaborator): better position tracking for applications 2016-07-27 18:52:19 -07:00
Leonardo de Moura
acda62d725 fix(frontends/lean/elaborator): preserve expected_type when annotations are used 2016-07-27 18:48:31 -07:00
Leonardo de Moura
ef2e80e635 refactor(library/type_context): remove dangerous 'get_cache' method 2016-07-27 18:32:36 -07:00
Leonardo de Moura
690e39b261 feat(frontends/lean/elaborator): add checkpoint at typed_expr 2016-07-27 18:08:28 -07:00
Leonardo de Moura
12070e589a feat(frontends/lean/elaborator): elaboration procedure for recursor/eliminator applications 2016-07-27 17:58:18 -07:00
Leonardo de Moura
3af268a95a test(tests/lean/run/elab4): test 'calc'-expressions in the new elaborator 2016-07-27 17:11:34 -07:00
Leonardo de Moura
de9075b19d chore(frontends/lean/builtin_cmds): support 'sorry' at #elab command 2016-07-27 17:09:36 -07:00
Leonardo de Moura
4fd69ca2d4 test(tests/lean/elab10): test show/have-exprs using new elaborator 2016-07-27 16:50:18 -07:00
Leonardo de Moura
084f82b00b feat(frontends/lean/elaborator): elaborate Pi, fix visit_lambda, improve ensure_type 2016-07-27 16:42:45 -07:00
Leonardo de Moura
4f2bb65b1e test(tests/lean): more examples 2016-07-27 16:08:33 -07:00
Leonardo de Moura
cc429b1ab7 refactor(library/local_context,library/type_context): remove frozen mode, cleanup instance cache 2016-07-27 16:07:48 -07:00
Leonardo de Moura
0283d80719 fix(library/type_context): most recent local instances have priority 2016-07-27 16:01:07 -07:00
Leonardo de Moura
3a5f6f2e64 feat(frontends/lean/builtin_cmds): improve output produced by #elab command, use kernel type checker to check elaboration result 2016-07-27 15:29:25 -07:00
Leonardo de Moura
b29a9ce325 chore(tests/lean): fix test output 2016-07-27 15:06:05 -07:00
Leonardo de Moura
7ae1a2c067 fix(frontends/lean/elaborator): synthesize metavariables using the context where they were declared 2016-07-27 15:03:17 -07:00
Leonardo de Moura
e9ebdfb3a3 feat(library/type_context): "read" regular metavariable assignment even when in tmp mode 2016-07-27 15:00:56 -07:00
Leonardo de Moura
75d06ebc34 feat(library/type_context): use delayed abstraction at type_context (instead of restrict_metavars_context) 2016-07-27 14:57:39 -07:00
Leonardo de Moura
e9672a0058 fix(library/type_context): potential problem at mk_nested_instance 2016-07-27 14:12:38 -07:00
Leonardo de Moura
de35a856ec chore(library/type_context): remove question
The answer is yes.
2016-07-27 14:00:31 -07:00
Leonardo de Moura
5b0100ef0b refactor(library/lazy_abstraction): lazy ==> delayed 2016-07-27 13:53:17 -07:00
Leonardo de Moura
1b75a98ea4 feat(library/tactic/tactic_state): add helper mk procedure 2016-07-27 13:42:32 -07:00
Leonardo de Moura
9477b91978 feat(frontends/lean/elaborator): elaborate lambdas 2016-07-27 11:40:30 -07:00
Leonardo de Moura
cc21604e4c fix(library/type_context): bug as is_def_eq for universe levels 2016-07-27 11:36:18 -07:00
Leonardo de Moura
40fc9b8056 feat(library/type_context): missing case at is_def_eq
is_def_eq was failing at

          ?M1 ... =?= ?M2 ...

when context of ?M1 is a strict subset of ?M2.
2016-07-27 11:14:17 -07:00
Leonardo de Moura
f8b48ac955 feat(frontends/lean/elaborator): support for strict implicit arguments 2016-07-27 10:38:59 -07:00
Leonardo de Moura
a05291ed75 chore(library/io_state): fix style 2016-07-26 17:59:22 -07:00