src/HOL/IMP/Abs_Int2.thy
changeset 46066 e81411bfa7ef
parent 46063 81ebd0cdb300
child 46068 b9d4ec0f79ac
equal deleted inserted replaced
46065:d7eb081cf220 46066:e81411bfa7ef
   191 proof(simp add: CS_def AI_WN_def)
   191 proof(simp add: CS_def AI_WN_def)
   192   assume 1: "pfp_WN (step' \<top>) c = Some c'"
   192   assume 1: "pfp_WN (step' \<top>) c = Some c'"
   193   from pfp_WN_pfp[OF allI[OF strip_step'] mono_step' 1]
   193   from pfp_WN_pfp[OF allI[OF strip_step'] mono_step' 1]
   194   have 2: "step' \<top> c' \<sqsubseteq> c'" .
   194   have 2: "step' \<top> c' \<sqsubseteq> c'" .
   195   have 3: "strip (\<gamma>\<^isub>c (step' \<top> c')) = c" by(simp add: strip_pfp_WN[OF _ 1])
   195   have 3: "strip (\<gamma>\<^isub>c (step' \<top> c')) = c" by(simp add: strip_pfp_WN[OF _ 1])
   196   have "lfp c (step UNIV) \<le> \<gamma>\<^isub>c (step' \<top> c')"
   196   have "lfp (step UNIV) c \<le> \<gamma>\<^isub>c (step' \<top> c')"
   197   proof(rule lfp_lowerbound[simplified,OF 3])
   197   proof(rule lfp_lowerbound[simplified,OF 3])
   198     show "step UNIV (\<gamma>\<^isub>c (step' \<top> c')) \<le> \<gamma>\<^isub>c (step' \<top> c')"
   198     show "step UNIV (\<gamma>\<^isub>c (step' \<top> c')) \<le> \<gamma>\<^isub>c (step' \<top> c')"
   199     proof(rule step_preserves_le[OF _ _ 3])
   199     proof(rule step_preserves_le[OF _ _ 3])
   200       show "UNIV \<subseteq> \<gamma>\<^isub>o \<top>" by simp
   200       show "UNIV \<subseteq> \<gamma>\<^isub>o \<top>" by simp
   201       show "\<gamma>\<^isub>c (step' \<top> c') \<le> \<gamma>\<^isub>c c'" by(rule mono_gamma_c[OF 2])
   201       show "\<gamma>\<^isub>c (step' \<top> c') \<le> \<gamma>\<^isub>c c'" by(rule mono_gamma_c[OF 2])
   202     qed
   202     qed
   203   qed
   203   qed
   204   from this 2 show "lfp c (step UNIV) \<le> \<gamma>\<^isub>c c'"
   204   from this 2 show "lfp (step UNIV) c \<le> \<gamma>\<^isub>c c'"
   205     by (blast intro: mono_gamma_c order_trans)
   205     by (blast intro: mono_gamma_c order_trans)
   206 qed
   206 qed
   207 
   207 
   208 end
   208 end
   209 
   209