diff -r edacc141060f -r b755090d0f3d More_Regular_Set.thy --- a/More_Regular_Set.thy Thu Jul 28 14:22:10 2011 +0000 +++ b/More_Regular_Set.thy Thu Jul 28 17:52:36 2011 +0000 @@ -9,25 +9,6 @@ conc (infixr "\" 100) and star ("_\" [101] 102) -lemma conc_add_left: - assumes a: "A = B" - shows "C \ A = C \ B" -using a by simp - -lemma star_cases: - shows "A\ = {[]} \ A \ A\" -proof - { fix x - have "x \ A\ \ x \ {[]} \ A \ A\" - unfolding conc_def - by (induct rule: star_induct) (auto) - } - then show "A\ \ {[]} \ A \ A\" by auto -next - show "{[]} \ A \ A\ \ A\" - unfolding conc_def by auto -qed - lemma star_decom: assumes a: "x \ A\" "x \ []" shows "\a b. x = a @ b \ a \ [] \ a \ A \ b \ A\" @@ -109,9 +90,9 @@ assume eq: "X = B \ A\" have "A\ = {[]} \ A\ \ A" unfolding conc_star_comm[symmetric] - by (rule star_cases) + by(metis Un_commute star_unfold_left) then have "B \ A\ = B \ ({[]} \ A\ \ A)" - by (rule conc_add_left) + by metis also have "\ = B \ B \ (A\ \ A)" unfolding conc_Un_distrib by simp also have "\ = B \ (B \ A\) \ A"