lean4-htt/library/init/meta
Mario Carneiro fb4e952ac8 fix(init/meta/congr_tactic): congr tries assumption first
This gives a workaround for the situation where the `congr` tactic does too much congruence applications, such as reducing `|- a + b = b + a` to `|- a = b` and `|- b = a`, by supplying the desired equalities to stop at using `have`.
2017-07-28 16:47:53 +01:00
..
converter chore(init/category/combinators): remove monad.for 2017-07-26 11:52:11 +01:00
lean fix(frontends/lean/tactic_notation): always use quote_scope for parsing interactive parameters 2017-07-04 12:20:38 -07:00
smt feat(init/meta/interactive): rw at *, rw at h1 h2 |- support 2017-07-28 16:47:02 +01:00
ac_tactics.lean feat(frontends/lean): 'mutual' and 'meta' are now keywords 2016-09-24 10:44:40 -07:00
async_tactic.lean chore(init/category/combinators): remove monad.for 2017-07-26 11:52:11 +01:00
attribute.lean feat(frontends/lean): swap (t) and ``(t) semantics 2017-05-15 09:41:31 -07:00
backward.lean chore(library/init): definition => def 2016-10-06 16:04:12 -07:00
coinductive_predicates.lean chore(init/category/combinators): remove monad.for 2017-07-26 11:52:11 +01:00
comp_value_tactics.lean feat(frontends/lean): add support for t.<id> and t.<idx> when t is a composite term 2017-03-28 17:47:49 -07:00
congr_lemma.lean refactor(library/init/meta/congr_lemma): cleanup congr_lemma API 2017-01-31 16:46:13 -08:00
congr_tactic.lean fix(init/meta/congr_tactic): congr tries assumption first 2017-07-28 16:47:53 +01:00
constructor_tactic.lean fix(library/init/meta/constructor_tactic): fixes #1771 2017-07-28 09:45:51 +01:00
contradiction_tactic.lean feat(frontends/lean): swap (t) and ``(t) semantics 2017-05-15 09:41:31 -07:00
decl_cmds.lean chore(library): convert comments to docstrings 2017-06-12 15:17:00 +02:00
declaration.lean refactor(library/init/meta/simp_tactic): make sure dunfold tactics use name convention used at simp, dsimp, ... 2017-07-03 21:36:17 -07:00
default.lean feat(init/meta/congr_tactic.lean): tactic to apply congruence rules 2017-06-26 09:17:53 -04:00
environment.lean feat(library/init/meta/environment): expose function to unfold all macros 2017-07-18 19:49:53 +01:00
exceptional.lean refactor(library): add has_to_string back (but it produces unquoted values) 2017-06-18 18:30:10 -07:00
expr.lean fix(init/meta/interactive): implement generalize2 via generalize/kabstract 2017-07-17 13:59:21 +02:00
format.lean chore(library): remove workarounds for issue #1682 2017-06-19 16:09:12 -07:00
fun_info.lean chore(library): convert comments to docstrings 2017-06-12 15:17:00 +02:00
has_reflect.lean refactor(frontends/lean/builtin_exprs,library): suppose ~> assume : 2017-07-05 11:20:10 -07:00
hole_command.lean chore(library): remove workarounds for issue #1682 2017-06-19 16:09:12 -07:00
injection_tactic.lean feat(library/tactic/apply_tactic): make apply tactic more robust 2017-06-27 10:42:26 -07:00
interaction_monad.lean fix(library/init/meta): make sure rw still produces useful error messages 2017-06-21 20:58:59 -07:00
interactive.lean feat(init/meta/interactive): expose custom hyp name in by_contra 2017-07-28 16:47:53 +01:00
interactive_base.lean fix(tests): fix tests 2017-07-28 16:47:02 +01:00
level.lean fix(library): expr, level, hash_map, rb_map has_repr instances should be has_to_string since they do not produce results that can be parsed by Lean 2017-06-18 18:33:27 -07:00
match_tactic.lean feat(library/tactic/match_tactic): automatically convert metavariables occurring in patterns into temporary metavariables (i.e., which are considered during matching) 2017-06-29 11:39:18 -07:00
mk_dec_eq_instance.lean chore(init/category/combinators): remove monad.for 2017-07-26 11:52:11 +01:00
mk_has_sizeof_instance.lean refactor(init/meta,tools): rename now tactic to done 2017-05-03 11:18:31 +02:00
mk_inhabited_instance.lean feat(init/meta/interactive): declare format! and sformat! macros and start putting them to use 2017-06-07 10:09:38 -07:00
name.lean fix(library/init): name has_repr instance is actually a has_to_string instance 2017-06-18 18:33:16 -07:00
occurrences.lean refactor(library): has_to_string ==> has_repr 2017-06-18 18:29:19 -07:00
options.lean feat(frontends/lean): no global universes in the frontend 2017-02-08 17:23:04 -08:00
pexpr.lean chore(library): convert comments to docstrings 2017-06-12 15:17:00 +02:00
rb_map.lean feat(library/init/meta/expr): add expr.has_local_in 2017-07-01 20:23:37 -07:00
rec_util.lean chore(library): convert comments to docstrings 2017-06-12 15:17:00 +02:00
ref.lean chore(library): convert comments to docstrings 2017-06-12 15:17:00 +02:00
relation_tactics.lean feat(library/tactic/apply_tactic): make apply tactic more robust 2017-06-27 10:42:26 -07:00
rewrite_tactic.lean feat(init/meta/interactive): rw at *, rw at h1 h2 |- support 2017-07-28 16:47:02 +01:00
set_get_option_tactics.lean chore(library/init): definition => def 2016-10-06 16:04:12 -07:00
simp_tactic.lean chore(init/category/combinators): remove monad.for 2017-07-26 11:52:11 +01:00
tactic.lean feat(init/meta/interactive): rw at *, rw at h1 h2 |- support 2017-07-28 16:47:02 +01:00
task.lean feat(init): add default value proofs to the monadic hierarchy 2017-03-27 13:42:08 -07:00
transfer.lean chore(init/category/combinators): remove monad.for 2017-07-26 11:52:11 +01:00
vm.lean chore(library): convert comments to docstrings 2017-06-12 15:17:00 +02:00
well_founded_tactics.lean refactor(library/init/meta/simp_tactic): make sure dunfold tactics use name convention used at simp, dsimp, ... 2017-07-03 21:36:17 -07:00