src/HOL/Partial_Function.thy
changeset 61605 1bf7b186542e
parent 61566 c3d6e570ccef
child 61841 4d3527b94f2a
equal deleted inserted replaced
61604:bb20f11dd842 61605:1bf7b186542e
   279 by(auto simp add: flat_ord_def)
   279 by(auto simp add: flat_ord_def)
   280 
   280 
   281 lemma antisymP_flat_ord: "antisymP (flat_ord a)"
   281 lemma antisymP_flat_ord: "antisymP (flat_ord a)"
   282 by(rule antisymI)(auto dest: flat_ord_antisym)
   282 by(rule antisymI)(auto dest: flat_ord_antisym)
   283 
   283 
   284 interpretation tailrec!:
   284 interpretation tailrec:
   285   partial_function_definitions "flat_ord undefined" "flat_lub undefined"
   285   partial_function_definitions "flat_ord undefined" "flat_lub undefined"
   286   rewrites "flat_lub undefined {} \<equiv> undefined"
   286   rewrites "flat_lub undefined {} \<equiv> undefined"
   287 by (rule flat_interpretation)(simp add: flat_lub_def)
   287 by (rule flat_interpretation)(simp add: flat_lub_def)
   288 
   288 
   289 interpretation option!:
   289 interpretation option:
   290   partial_function_definitions "flat_ord None" "flat_lub None"
   290   partial_function_definitions "flat_ord None" "flat_lub None"
   291   rewrites "flat_lub None {} \<equiv> None"
   291   rewrites "flat_lub None {} \<equiv> None"
   292 by (rule flat_interpretation)(simp add: flat_lub_def)
   292 by (rule flat_interpretation)(simp add: flat_lub_def)
   293 
   293 
   294 
   294