src/HOL/Option.thy
changeset 67399 eab6ce8368fa
parent 67091 1393c2340eec
child 68011 fb6469cdf094
equal deleted inserted replaced
67398:5eb932e604a2 67399:eab6ce8368fa
   321   "(rel_option A ===> (A ===> rel_option B) ===> rel_option B)
   321   "(rel_option A ===> (A ===> rel_option B) ===> rel_option B)
   322     Option.bind Option.bind"
   322     Option.bind Option.bind"
   323   unfolding rel_fun_def split_option_all by simp
   323   unfolding rel_fun_def split_option_all by simp
   324 
   324 
   325 lemma pred_option_parametric [transfer_rule]:
   325 lemma pred_option_parametric [transfer_rule]:
   326   "((A ===> op =) ===> rel_option A ===> op =) pred_option pred_option"
   326   "((A ===> (=)) ===> rel_option A ===> (=)) pred_option pred_option"
   327   by (rule rel_funI)+ (auto simp add: rel_option_unfold Option.is_none_def dest: rel_funD)
   327   by (rule rel_funI)+ (auto simp add: rel_option_unfold Option.is_none_def dest: rel_funD)
   328 
   328 
   329 end
   329 end
   330 
   330 
   331 
   331