theory Scratch imports "HOL-Library.Z2" begin lemma \(\(a,b)\{0,1}\{0,1}. x a b) = x 0 0 + x 0 1 + x 1 0 + x 1 1\ for x :: \bit \ bit \ nat\ apply simp (* Fails to solve goal! *) oops declare insert_Times_insert[simp del] lemma insert_Times_insert'[simp]: "insert a A \ insert b B = insert (a,b) (A \ insert b B \ {a} \ B)" by blast lemma \(\(a,b)\{0,1}\{0,1}. x a b) = x 0 0 + x 0 1 + x 1 0 + x 1 1\ for x :: \bit \ bit \ nat\ by simp (* Success. *) end