src/HOL/Fun.thy
changeset 32554 4ccd84fb19d3
parent 32337 7887cb2848bb
child 32740 9dd0a2f83429
equal deleted inserted replaced
32553:bf781ef40c81 32554:4ccd84fb19d3
     5 
     5 
     6 header {* Notions about functions *}
     6 header {* Notions about functions *}
     7 
     7 
     8 theory Fun
     8 theory Fun
     9 imports Complete_Lattice
     9 imports Complete_Lattice
       
    10 uses ("Tools/transfer.ML")
    10 begin
    11 begin
    11 
    12 
    12 text{*As a simplification rule, it replaces all function equalities by
    13 text{*As a simplification rule, it replaces all function equalities by
    13   first-order equalities.*}
    14   first-order equalities.*}
    14 lemma expand_fun_eq: "f = g \<longleftrightarrow> (\<forall>x. f x = g x)"
    15 lemma expand_fun_eq: "f = g \<longleftrightarrow> (\<forall>x. f x = g x)"
   566     end
   567     end
   567 in proc end
   568 in proc end
   568 *}
   569 *}
   569 
   570 
   570 
   571 
       
   572 subsection {* Generic transfer procedure *}
       
   573 
       
   574 definition TransferMorphism:: "('b \<Rightarrow> 'a) \<Rightarrow> 'b set \<Rightarrow> bool"
       
   575   where "TransferMorphism a B \<longleftrightarrow> True"
       
   576 
       
   577 use "Tools/transfer.ML"
       
   578 
       
   579 setup Transfer.setup
       
   580 
       
   581 
   571 subsection {* Code generator setup *}
   582 subsection {* Code generator setup *}
   572 
   583 
   573 types_code
   584 types_code
   574   "fun"  ("(_ ->/ _)")
   585   "fun"  ("(_ ->/ _)")
   575 attach (term_of) {*
   586 attach (term_of) {*