Leonardo de Moura
1e93c2c235
refactor(library/rfl_lemmas): simplify
2016-10-06 16:49:20 -07:00
Leonardo de Moura
d0d75c0923
refactor(kernel): reduce number of configurations supported in the kernel
...
Now, eta and impredicativity are assumed to be always true.
Motivation: the rest of the system assumes eta.
Regarding impredicativity, we decided to support only the standard library.
2016-09-27 17:07:01 -07:00
Leonardo de Moura
c8e13cd391
feat(frontends/lean): minimize errors being reported
2016-09-23 09:20:31 -07:00
Leonardo de Moura
d43764b6fb
refactor(library/tactic/defeq_simplifier): move defeq_simp_lemmas to library
...
This commit also renames them to "rfl_lemmas".
Reason: these lemmas will be used at type_context::is_def_eq and type_context::whnf
2016-09-12 10:36:11 -07:00
Leonardo de Moura
e6dd5242fc
feat(library/equations_compiler): add option eqn_compiler.zeta
2016-09-10 14:00:16 -07:00
Leonardo de Moura
1d5f0895d4
chore(library/equations_compiler/util): disable sanitizer by default
2016-09-09 17:53:13 -07:00
Leonardo de Moura
96fa8856bc
feat(library/equations_compiler): add mk_nonrec
2016-09-08 14:09:05 -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
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
bedb508a8f
feat(library/equations_compiler): do not generate bytecode for lemmas
2016-09-06 15:14:47 -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
029766495b
feat(library/equations_compiler/util): try to improve performance of lemma generation
...
There are still performance problems. Lemma generation is fine, but the
kernel is timing out when checking the lemma. We need to provide hints
to the kernel to avoid the performance problem.
2016-09-03 13:24:44 -07:00
Leonardo de Moura
cfbffb41ef
feat(library/equations_compiler): prove equation lemmas that use if-then-else
2016-09-03 13:23:09 -07:00
Leonardo de Moura
6dcf0725d7
fix(library/equations_compiler): erase inaccessible annotations
2016-09-02 14:11:03 -07:00
Leonardo de Moura
691b200244
feat(library/equations_compiler/util): add [eqn_sanitizer] attribute for defeq lemmas that should be automatically applied
2016-09-02 11:06:31 -07:00
Leonardo de Moura
3384139d38
chore(library/tactic/defeq_simplifier): improve error messages
2016-08-31 17:52:36 -07:00
Leonardo de Moura
54fd9adb47
feat(library/equations_compiler): use defeq simplifier to cleanup types of automatically synthesized lemmas
2016-08-31 15:54:03 -07:00
Leonardo de Moura
924c98832b
feat(library/equations_compiler/structural_rec): generate eqn lemmas at structural_rec
2016-08-31 09:07:17 -07:00
Leonardo de Moura
2fc0e5fa05
feat(library/equations_compiler/structural_rec): add aux definition
2016-08-30 18:33:24 -07:00
Leonardo de Moura
b08af16d5f
refactor(library/equations_compiler): remove unnecessary abstraction
...
We changed how we are going to process derived inductive datatypes.
2016-08-29 09:25:01 -07:00
Leonardo de Moura
714817edd5
fix(library/equations_compiler/util): missing get_constructors_of
2016-08-22 13:42:34 -07:00
Leonardo de Moura
963503838c
fix(library/equations_compiler/util): support for noequation
2016-08-22 13:42:03 -07:00
Leonardo de Moura
2d90c73546
chore(library/equations_compiler/util): add helper method
2016-08-21 15:55:56 -07:00
Leonardo de Moura
9f77ca1ab1
feat(library/equations_compiler/elim_match): add is_value_transition
2016-08-18 22:03:01 -07:00
Leonardo de Moura
7cbc178a32
feat(library/equations_compiler): add transition classifiers
2016-08-18 17:55:30 -07:00
Leonardo de Moura
8b67480cee
feat(library/equations_compiler): add step for handling structural recursion
2016-08-15 18:00:25 -07:00
Leonardo de Moura
9a63936339
refactor(library/equations_compiler): move pack_domain to new module
2016-08-15 08:22:23 -07:00
Leonardo de Moura
12cd8bf33c
feat(library/equations_compiler/util): pack_equations_domain does nothing if function is already unary
2016-08-14 17:12:25 -07:00
Leonardo de Moura
7059609f57
feat(library/equations_compiler): equations_compiler stub, add helper equations_editor, add preprocessing
...
The first preprocessing step packs nary functions into unary using sigma types
2016-08-14 17:02:36 -07:00