equal
deleted
inserted
replaced
655 executed we may destruct it backwardly into individual transitions. |
655 executed we may destruct it backwardly into individual transitions. |
656 *} |
656 *} |
657 |
657 |
658 lemma can_exec_snocD: "can_exec root (xs @ [y]) |
658 lemma can_exec_snocD: "can_exec root (xs @ [y]) |
659 \<Longrightarrow> \<exists>root' root''. root =xs\<Rightarrow> root' \<and> root' \<midarrow>y\<rightarrow> root''" |
659 \<Longrightarrow> \<exists>root' root''. root =xs\<Rightarrow> root' \<and> root' \<midarrow>y\<rightarrow> root''" |
660 proof (induct xs fixing: root) |
660 proof (induct xs arbitrary: root) |
661 case Nil |
661 case Nil |
662 then show ?case |
662 then show ?case |
663 by (simp add: can_exec_def transitions_nil_eq transitions_cons_eq) |
663 by (simp add: can_exec_def transitions_nil_eq transitions_cons_eq) |
664 next |
664 next |
665 case (Cons x xs) |
665 case (Cons x xs) |