Commit graph

7010 commits

Author SHA1 Message Date
Leonardo de Moura
fc0230730d feat(frontends/lean/elaborator): make sure all equations have the same number of patterns 2016-09-09 12:13:41 -07:00
Leonardo de Moura
f64d1483e9 fix(library/equations_compiler/elim_match): avoid nontermination at process_no_equation 2016-09-09 09:00:57 -07:00
Leonardo de Moura
3857ae09f7 feat(library/equations_compiler/elim_match): add max number of steps 2016-09-09 08:48:34 -07:00
Daniel Selsam
39683fd1de fix(simplifier): was calling is_def_eq on open term 2016-09-08 19:28:05 -07:00
Leonardo de Moura
89bc55aece feat(frontends/lean/elaborator): improve expected type for equation rhs 2016-09-08 19:22:26 -07:00
Leonardo de Moura
23e443ef71 feat(frontends/lean/elaborator): add support for no_confusion in the new elaborator 2016-09-08 18:48:48 -07:00
Leonardo de Moura
b12fa5c8da feat(frontends/lean): add support for 'suffices'-expression in the new elaborator 2016-09-08 17:26:27 -07:00
Leonardo de Moura
96fa8856bc feat(library/equations_compiler): add mk_nonrec 2016-09-08 14:09:05 -07:00
Leonardo de Moura
dcc314c109 feat(library/noncomputable): improve is_noncomputable 2016-09-08 14:02:23 -07:00
Leonardo de Moura
14d009ce92 refactor(library/equations_compiler): improve mk_equation_lemma 2016-09-08 11:50:58 -07:00
Leonardo de Moura
5c7150c813 fix(frontends/lean/elaborator): make sure equations do not contain unassigned metavars before using eqn compiler 2016-09-08 10:47:15 -07:00
Leonardo de Moura
f4f92ed2d1 chore(library/equations_compiler/util): add comment 2016-09-08 10:28:30 -07:00
Leonardo de Moura
7d56382baa feat(library/equations_compiler/util): generate equation lemmas for equations using invertible functions 2016-09-07 17:57:10 -07:00
Leonardo de Moura
f7699d8719 fix(library/equations_compiler/elim_match): support dependent functions handling invertible functions 2016-09-07 16:04:08 -07:00
Leonardo de Moura
159653f253 feat(frontends/lean/definition_cmds): bytecode generation failure should generate warning 2016-09-07 16:03:25 -07:00
Leonardo de Moura
dd574f6a60 feat(library/error_handling): add display_warning 2016-09-07 16:03:07 -07:00
Leonardo de Moura
2f7a1a3579 feat(library/equations_compiler/elim_match): add support for invertible functions 2016-09-07 08:53:56 -07:00
Leonardo de Moura
9c8e9e07ae refactor(library): injectivity ==> inverse 2016-09-07 08:16:14 -07:00
Leonardo de Moura
75155c3824 fix(library/tactic/cases_tactic): missing normalization 2016-09-06 18:46:14 -07:00
Leonardo de Moura
f3d2a9f1e4 feat(library/tactic/induction_tactic): improve error messages 2016-09-06 18:39:42 -07:00
Leonardo de Moura
89ccecc287 chore(library/exception): fix bad message 2016-09-06 18:38:39 -07:00
Leonardo de Moura
5e654b37d9 chore(library/injectivity): fix style 2016-09-06 18:03:16 -07:00
Leonardo de Moura
f954ddbdbf feat(library/injectivity): add injectivity attribute 2016-09-06 18:01:09 -07:00
Leonardo de Moura
bedb508a8f feat(library/equations_compiler): do not generate bytecode for lemmas 2016-09-06 15:14:47 -07:00
Leonardo de Moura
c9cee9a702 feat(library/equations_compiler): add flag indicating whether we are compiling a lemma or not 2016-09-06 15:09:54 -07:00
Leonardo de Moura
385a28a410 chore(library/equations_compiler/util): use nested_exception 2016-09-06 13:37:10 -07:00
Leonardo de Moura
01107f7aae feat(library/equations_compiler): generate bytecode for auxiliary definitions 2016-09-06 13:29:12 -07:00
Leonardo de Moura
31de40ff4d refactor(frontends/lean): rename attribute [constructor] ==> [elab_with_expected_type] 2016-09-06 13:12:51 -07:00
Leonardo de Moura
ff9500d7f9 feat(library/exception): add nested_exception 2016-09-06 12:57:06 -07:00
Leonardo de Moura
d8caecff49 refactor(library/exception): avoid throw_generic_exception functions 2016-09-06 12:37:56 -07:00
Leonardo de Moura
a0b8766ffb refactor(library): merge exception modules 2016-09-06 09:12:26 -07:00
Leonardo de Moura
f354b6e430 chore(library/generic_exception): we will keep using generic_exception 2016-09-06 09:03:52 -07:00
Leonardo de Moura
95487f9985 feat(library/aux_definition): add mk_aux_lemma 2016-09-06 08:57:04 -07:00
Leonardo de Moura
d5aae42b7c feat(frontends/lean): use new elaborator to elaborate examples when set_option new_elaborator true 2016-09-05 09:52:01 -07:00
Leonardo de Moura
2a912c2650 feat(frontends/lean, library): move constructor attribute to frontend
Now, it only affects the elaborator.
2016-09-05 09:34:45 -07:00
Leonardo de Moura
1cbeb071b6 chore(library/unifier): do not use normalizer in the old unifier
Remark: the old unifier will be deleted soon.
2016-09-05 08:59:15 -07:00
Leonardo de Moura
81a30a69d2 refactor(library/normalize): remove unfold and unfold_full attributes 2016-09-05 08:40:58 -07:00
Leonardo de Moura
41a958fdf4 chore(library/tactic/simplifier/util): warning in release mode 2016-09-05 08:20:59 -07:00
Leonardo de Moura
10d26679f6 feat(frontends/lean/definition_cmds): improve error message 2016-09-05 08:16:35 -07:00
Leonardo de Moura
d6d68cd70a feat(library/vm): expose reducibility_hints 2016-09-04 18:09:10 -07:00
Leonardo de Moura
e8397681a5 fix(library/tactic/induction_tactic): normalize type in the induction tactic 2016-09-04 17:36:26 -07:00
Leonardo de Moura
120bffce25 chore(library/equations_compiler/elim_match): add cases/induction tactic error message to trace 2016-09-04 17:33:26 -07:00
Leonardo de Moura
6c80f7b75c feat(library/tactic/cases_tactic): normalize type 2016-09-04 17:18:50 -07:00
Leonardo de Moura
0b2c3659cf perf(library/compiler/nat_value): replace all numerals with nat_value_macro
Reason: Later we try to type check the compiler intermediate results.
If only some of the numerals are converted, we may spend a lot of time
making sure the two different representations are equivalent.
2016-09-04 16:42:40 -07:00
Leonardo de Moura
f7df7dc9a7 refactor(kernel): add reducibility_hints 2016-09-04 16:30:02 -07:00
Leonardo de Moura
7c535a53d6 chore(*): fix warnings messages 2016-09-04 09:20:19 -07:00
Leonardo de Moura
a74f02546b refactor(*): remove abbreviation command 2016-09-03 17:11:29 -07:00
Leonardo de Moura
696b190a8d feat(library/type_context): mimic behavior of the kernel type_checker 2016-09-03 16:43:33 -07:00
Leonardo de Moura
dfc897eda6 refactor(library/init): avoid nat cases_on/rec_on hack 2016-09-03 16:22:20 -07:00
Leonardo de Moura
01a2c32d38 fix(library/old_default_converter): avoid underflow 2016-09-03 16:21:34 -07:00