Commit graph

734 commits

Author SHA1 Message Date
Leonardo de Moura
8e63769413 chore(library/tactic/subst_tactic): remove 'static' to avoid warning in release mode 2016-08-22 09:23:18 -07:00
Leonardo de Moura
440d30300f fix(library/tactic/simplifier/simp_lemmas): typo 2016-08-21 22:30:16 -07:00
Leonardo de Moura
1ea3bc1683 fix(library/tactic/cases_tactic): lowlevel interface that gives access to renamed/introduced hypotheses 2016-08-21 15:55:56 -07:00
Leonardo de Moura
f7b9702438 fix(library/tactic/subst_tactic): typo 2016-08-21 15:55:56 -07:00
Sebastian Ullrich
60fa25b665 refactor(library/attribute_manager): remove weakly-typed API
Also reduces number of attribute name literals
2016-08-19 15:02:34 -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
Sebastian Ullrich
ca8be3857c feat(library/user_attribute): add user-defined attributes and make attribute_manager environment-aware 2016-08-18 12:56:44 -07:00
Leonardo de Moura
ddc3789929 feat(frontends/lean): add run_tactic command
This commit also adds the tactic `add_decl`.
2016-08-18 10:56:18 -07:00
Sebastian Ullrich
e15e085126 refactor(frontends/lean/old_attributes, library/tactic/backward/backward_lemmas): merge [intro] and [intro!] attributes 2016-08-16 13:49:03 -07:00
Sebastian Ullrich
34e00cd5a2 refactor(library/attribute_manger): simplify: make every attribute prioritizable 2016-08-16 13:49:02 -07:00
Leonardo de Moura
0f224ff437 fix(library/tactic/subst_tactic): incorrect depends_on 2016-08-16 11:19:06 -07:00
Leonardo de Moura
c9475774f4 feat(library/tactic/tactic_state): add is_def_eq and is_def_eq_core tactics 2016-08-16 11:08:03 -07:00
Leonardo de Moura
f8e5753a13 feat(library/type_context, library/tactic): add eta-expansion method and tactic 2016-08-14 16:15:12 -07:00
Leonardo de Moura
2354b63099 feat(library/tactic/tactic_state): add whnf_core 2016-08-14 16:02:40 -07:00
Leonardo de Moura
8498bbaeff refactor(frontends/lean/elaborator): allow elaborator to add auxiliary definitions 2016-08-10 08:31:00 -07:00
Leonardo de Moura
ef28ae5073 feat(library/vm/vm_format,library/tactic): use thunks unit->format when producing error messages 2016-08-04 19:19:09 -07:00
Daniel Selsam
70a1e53ba8 feat(simplifier/simp_lemmas): take arbitrary list of attributes and cache 2016-08-03 18:04:28 -07:00
Leonardo de Moura
53da866935 feat(library/init/meta/simp_tactic): add tactic for creating empty simp_lemmas 2016-08-02 09:00:49 -07:00
Leonardo de Moura
fefa5ad3b8 fix(library/tactic/elaborate): new subgoals must be inserted after main goal 2016-07-31 21:16:29 -07:00
Leonardo de Moura
6d0fa806d8 feat(library/tactic/elaborate): convert unassigned metavars into new goals 2016-07-31 20:38:57 -07:00
Leonardo de Moura
12fa52c77d feat(library/tactic, frontends/lean/elaborator): add to_expr tactic 2016-07-31 20:21:17 -07: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
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
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
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
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
1b55507971 refactor(library/init/meta): rename C++ intro to intro_core, and define smarter intro in C++ 2016-07-21 16:54:23 -07:00
Leonardo de Moura
cda29ea107 fix(library/tactic/cases_tactic): incorrect mk_app 2016-07-20 09:32:12 -04:00
Leonardo de Moura
f576573466 fix(library/tactic/unfold_tactic): crash 2016-07-20 00:08:38 -04:00
Leonardo de Moura
4c3c2d6236 fix(library/tactic/rewrite_tactic): instantiate mvars in the type 2016-07-19 21:59:09 -04:00
Leonardo de Moura
ed73dafa48 chore(library/tactic/unfold_tactic): fix style 2016-07-18 20:20:54 -04:00
Leonardo de Moura
ceba74f24e feat(library/tactic/unfold_tactic): improve fold failure detection 2016-07-18 20:17:40 -04:00
Leonardo de Moura
16ab639f56 fix(library/tactic/unfold_crash): crash when constant is not a definition 2016-07-18 19:59:17 -04:00
Leonardo de Moura
7597952bad fix(library/tactic/unfold_tactic): should use type_context locals 2016-07-18 19:08:31 -04:00
Leonardo de Moura
0d8213cf92 feat(library/tactic): add unfold tactic 2016-07-18 15:46:56 -04:00
Leonardo de Moura
98867d4ec0 feat(library/tactic/intro_tactic): use head_beta_reduce 2016-07-18 15:14:01 -04:00
Leonardo de Moura
a20abd61e8 feat(library/tactic): implement rewrite and kabstract using occurrences object 2016-07-18 10:10:37 -04:00
Leonardo de Moura
579f643d1d refactor(library): move kabstract to tactic folder 2016-07-18 09:57:02 -04:00
Leonardo de Moura
3e6b4577e2 feat(library/tactic): add occurrences object 2016-07-18 09:49:49 -04:00
Leonardo de Moura
7f0276f592 feat(library/tactic): add 'rewrite' tactic and variants 2016-07-17 16:08:11 -04:00
Leonardo de Moura
be88270f09 feat(library/tactic/assert_tactic): expose API 2016-07-17 14:34:22 -04:00
Leonardo de Moura
26177995c2 feat(library/tactic): add 'generalize' tactic 2016-07-16 15:41:32 -04:00
Leonardo de Moura
fd068344a6 feat(library/tactic/cases_tactic): merge method
The renaming tables are essential for implementing the new definitional package.
2016-07-15 13:56:17 -04:00
Leonardo de Moura
e1a9008d7c feat(library/tactic/cases_tactic): add a list containing the constructor associated with each new goal 2016-07-15 13:56:16 -04:00
Leonardo de Moura
031dbcd380 feat(library/tactic/cases_tactic): add missing case 2016-07-15 13:56:16 -04:00
Leonardo de Moura
8934172ed2 feat(library/tactic/cases_tactic): start unify_eqs 2016-07-15 13:55:51 -04:00