Zulip Chat Archive
Stream: general
Topic: dsimp failing
Kevin Buzzard (Sep 12 2019 at 04:25):
example (A : Type) (a : list A) (L : list (list A)) : list.join (a :: L) = a ++ list.join L := by dsimp -- fails
rfl
works. Does this mean that this example has not been tagged with [simp]
? I don't even know if this theorem has a name -- library_search
tells me the proof is exact rfl
. I couldn't get #find
to give any output at all:
import tactic.find def find_bug_workaround := 37 #find list.join (_ :: _) = _ ++ list.join _ variables (A : Type) (a : list A) (L : list (list A)) #find list.join (a :: L) = a ++ list.join L
Is it a bad simp
lemma?
Scott Morrison (Sep 12 2019 at 04:34):
Sounds like a good simp lemma to me!
Simon Hudon (Sep 12 2019 at 04:40):
Maybe we should tag list.join
with @[simp]
Scott Morrison (Sep 12 2019 at 04:41):
Yes.
Last updated: Dec 20 2023 at 11:08 UTC