Commit graph

62 commits

Author SHA1 Message Date
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
668be38bb2 chore(library): remove old_type_context 2016-09-19 21:34:27 -07:00
Leonardo de Moura
4875741a37 feat(library/app_builder): add mk_ite 2016-09-02 17:04:01 -07:00
Daniel Selsam
4f8db64e23 refactor(simplifier): many fixes, extensions, and tests
fix(simplifier): missing simp rule in prop simplifier
fix(library/unfold_macros): do not look for untrusted macros when using sufficient trust level
2016-08-19 14:57:03 -07:00
Leonardo de Moura
5ffa481634 chore(library): remove dead code 2016-08-17 10:45:54 -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
Leonardo de Moura
a50cbf07ab fix(library/app_builder): do not try to instantiate type class instances that have been explicitly provided 2016-07-20 19:42:21 -04:00
Leonardo de Moura
e4b028c596 feat(library/app_builder): add efficient mk_congr_arg
mk_congr_arg was a bottleneck at perm_ac tactic.
New tests are 10x faster after this commit.
2016-07-04 16:16:58 -07:00
Leonardo de Moura
6526a48c50 feat(library/tactic/ac_tactics): add 'perm_ac' tactic
TODO: add macro to postpone proof generation
2016-07-03 23:09:25 +01:00
Leonardo de Moura
59f2b9e8c2 refactor(library/type_context): "metavar_context & m_mctx" ==> "metavar_context m_mctx" 2016-06-25 13:08:03 -07:00
Daniel Selsam
e1bc0a68e6 refactor(simplifier): port skeleton to new tactic framework
Conflicts:
	library/init/meta/tactic.lean
	src/library/tactic/tactic_state.cpp
2016-06-24 15:20:40 -07:00
Leonardo de Moura
6063d2fc80 feat(library): add cache_helper 2016-06-22 17:10:03 -07:00
Leonardo de Moura
7390e8afda refactor(library/app_builder): simplify app_builder API 2016-06-22 16:57:49 -07:00
Leonardo de Moura
6e007cd12f fix(library/app_builder): use current context when tracing 2016-06-20 10:29:43 -07:00
Leonardo de Moura
73b21b9e48 fix(library): assertion violations 2016-06-17 13:16:17 -07:00
Leonardo de Moura
bceb9aa4f7 refactor(library/app_builder): port app_builder to new type_context 2016-06-14 16:16:07 -07:00
Leonardo de Moura
8dde1489f9 refactor(library/util): isolate util procedures that depend on old_type_checker 2016-03-21 13:36:08 -07:00
Leonardo de Moura
f67181baf3 chore(*): remove support for Lua 2016-02-11 17:17:55 -08:00
Leonardo de Moura
32268b71d2 feat(library/app_builder): avoid redundant heq_of_eq(eq_of_heq(H)) proofs 2016-01-10 19:29:34 -08:00
Leonardo de Moura
2b38d0fe9b chore(library/app_builder): improve trace message 2016-01-10 18:31:54 -08:00
Leonardo de Moura
cf8307ee20 feat(library/app_builder): use types in app_builder trace messages 2016-01-10 17:29:11 -08:00
Leonardo de Moura
934f3b67ff feat(library/blast/congruence_closure): basic support for heterogeneous equality
We still have to process the general congruence lemmas.
2016-01-10 12:53:05 -08:00
Leonardo de Moura
42cdda227a feat(library/congr_lemma_manager): add heterogeneous equality congruence lemmas 2016-01-09 15:41:08 -08:00
Leonardo de Moura
403966792d feat(library/app_builder): add helper heq methods 2016-01-09 12:46:14 -08:00
Leonardo de Moura
fcf532ea67 chore(library/app_builder): fix typo in trace message 2016-01-03 15:16:50 -08:00
Leonardo de Moura
7da64a768f refactor(library/type_context): with the new tracing infrastructure, type_context doesn't need an io_state 2015-12-08 14:58:08 -08:00
Leonardo de Moura
9b69ccd2f8 feat(library/app_builder): add trace messages to app_builder 2015-12-08 13:43:15 -08:00
Leonardo de Moura
9df10a4048 feat(library): add tracing messages to app_builder and congr_lemma_manager 2015-12-08 13:36:11 -08:00
Leonardo de Moura
80725cc416 fix(library): references to algebra in the source code 2015-12-05 23:50:26 -08:00
Leonardo de Moura
00e34683f2 feat(library/app_builder): (try to) address not-issue and other reducibility annotation related issues in the app_builder 2015-12-04 16:03:06 -08:00
Leonardo de Moura
a8b6a286dd fix(library/app_builder): make sure app_builder works even if iff is marked as reducible 2015-12-04 13:51:56 -08:00
Leonardo de Moura
fc461ce832 feat(library/app_builder): avoid redundant proof terms at mk_of_iff_true and mk_not_of_iff_false 2015-11-22 15:49:17 -08:00
Leonardo de Moura
5e9914ef45 feat(library/blast/congruence_closure): avoid eq.rec if major premise is eq.refl 2015-11-21 19:00:16 -08:00
Leonardo de Moura
c76b04719c feat(library/app_builder): add lift_from_eq 2015-11-20 10:27:58 -08:00
Daniel Selsam
5ada4312d7 feat(library/blast/forward): propositional forward chaining 2015-11-19 11:44:53 -08:00
Leonardo de Moura
3f6b79227f refactor(library/blast/congruence_closure,library/app_builder): add helper methods for theorems heavily used in the congruence closure module 2015-11-17 18:57:40 -08:00
Leonardo de Moura
de67288305 fix(library/app_builder): mk_rel supports relations where the lhs and rhs are not necessarily the last two arguments (e.g., heq) 2015-11-17 18:45:22 -08:00
Leonardo de Moura
16bcd2f522 feat(congr_lemma_manager): add congruence lemma for equivalence relation over iff/eq 2015-11-17 18:45:22 -08:00
Daniel Selsam
5e8068b2b2 feat(library/blast/simplifier): draft of fusion 2015-11-16 09:13:07 -08:00
Leonardo de Moura
fee0cff295 feat(library/blast): add simple indexing data-structure for active hypotheses 2015-11-11 00:02:47 -08:00
Leonardo de Moura
1d1f043192 refactor(library/app_builder): throw exception instead of returning none_expr 2015-11-08 14:05:03 -08:00
Leonardo de Moura
ba477a0e98 feat(library/congr_lemma_manager): handle simple congruence lemmas 2015-11-08 14:05:02 -08:00
Leonardo de Moura
5a48a2cebe feat(library/app_builder): add mk_sorry method 2015-11-08 14:05:02 -08:00
Leonardo de Moura
2d04156959 fix(library/app_builder): bug in eq_drec 2015-11-08 14:05:01 -08:00
Leonardo de Moura
f84f024b92 refactor(library/app_builder): change app_builder constructor 2015-11-08 14:05:01 -08:00
Leonardo de Moura
aa697206e8 refactor(library/type_context): rename set_context to set_local_instances 2015-11-08 14:05:01 -08:00
Leonardo de Moura
01259a2d1c feat(library/app_builder): add helper functions for creating eq.rec applications 2015-11-08 14:05:01 -08:00
Leonardo de Moura
f21102a725 feat(frontends/lean): add test commands for new app_builder features 2015-11-08 14:05:01 -08:00
Leonardo de Moura
1c2c2a6077 feat(library/app_builder): mk_app with mask 2015-11-08 14:05:01 -08:00
Leonardo de Moura
0f631889b7 feat(library/app_builder): add helper methods for creating binary relations, and refl/symm/trans proofs 2015-11-08 14:05:00 -08:00