diff -r f0e876ed43fa -r f139bdc0dcd5 thys/Lexer.thy --- a/thys/Lexer.thy Mon Aug 19 16:24:28 2019 +0100 +++ b/thys/Lexer.thy Tue Aug 20 23:42:28 2019 +0200 @@ -286,6 +286,11 @@ apply(simp_all add: comp_def) by meson +lemma flex_fun_apply2: + shows "g (flex r id s v) = flex r g s v" + by (simp add: flex_fun_apply) + + lemma flex_append: shows "flex r f (s1 @ s2) = flex (ders s1 r) (flex r f s1) s2" apply(induct s1 arbitrary: s2 r f) @@ -397,7 +402,14 @@ shows "flex (der a r) (injval r a) s v = injval r a (flex (der a r) id s v)" by (simp add: flex_fun_apply) - - +lemma Prf_flex: + assumes "\ v : ders s r" + shows "\ flex r id s v : r" + using assms + apply(induct s arbitrary: v r) + apply(simp) + apply(simp) + by (simp add: Prf_injval flex_injval) + end \ No newline at end of file