def
conv.interactive.erw
(q : interactive.parse tactic.interactive.rw_rules)
(cfg : tactic.rewrite_cfg := {to_apply_cfg := {md := semireducible, approx := tt, new_goals := tactic.new_goals.non_dep_first, instances := tt, auto_param := tt, opt_param := tt, unify := tt}, symm := ff, occs := occurrences.all}) :
guard_target t
fails if the target of the conv goal is not t
.
We use this tactic for writing tests.
def
tactic.interactive.conv_lhs
(loc : interactive.parse (lean.parser.tk "at" *> lean.parser.ident)?)
(p : interactive.parse (lean.parser.tk "in" *> (lean.parser.pexpr std.prec.max))?)
(c : conv.interactive.itactic) :
def
tactic.interactive.conv_rhs
(loc : interactive.parse (lean.parser.tk "at" *> lean.parser.ident)?)
(p : interactive.parse (lean.parser.tk "in" *> (lean.parser.pexpr std.prec.max))?)
(c : conv.interactive.itactic) :