src/HOL/MicroJava/DFA/Kildall.thy
changeset 67613 ce654b0e6d69
parent 67443 3abf6a722518
child 68249 949d93804740
equal deleted inserted replaced
67610:4939494ed791 67613:ce654b0e6d69
   201      \<forall>q. q < n \<longrightarrow> q \<notin> w \<longrightarrow> stable r step ss q; q < n; 
   201      \<forall>q. q < n \<longrightarrow> q \<notin> w \<longrightarrow> stable r step ss q; q < n; 
   202      \<forall>s'. (q,s') \<in> set (step p (ss ! p)) \<longrightarrow> s' +_f ss ! q = ss ! q; 
   202      \<forall>s'. (q,s') \<in> set (step p (ss ! p)) \<longrightarrow> s' +_f ss ! q = ss ! q; 
   203      q \<notin> w \<or> q = p \<rbrakk> 
   203      q \<notin> w \<or> q = p \<rbrakk> 
   204   \<Longrightarrow> stable r step (merges f (step p (ss!p)) ss) q"
   204   \<Longrightarrow> stable r step (merges f (step p (ss!p)) ss) q"
   205   apply (unfold stable_def)
   205   apply (unfold stable_def)
   206   apply (subgoal_tac "\<forall>s'. (q,s') \<in> set (step p (ss!p)) \<longrightarrow> s' : A")
   206   apply (subgoal_tac "\<forall>s'. (q,s') \<in> set (step p (ss!p)) \<longrightarrow> s' \<in> A")
   207    prefer 2
   207    prefer 2
   208    apply clarify
   208    apply clarify
   209    apply (erule pres_typeD)
   209    apply (erule pres_typeD)
   210     prefer 3 apply assumption
   210     prefer 3 apply assumption
   211     apply (rule listE_nth_in)
   211     apply (rule listE_nth_in)