src/HOL/Tools/Lifting/lifting_setup.ML
changeset 60226 ec23f2a97ba4
parent 60225 eb4e322734bf
child 60231 0daab758e087
equal deleted inserted replaced
60225:eb4e322734bf 60226:ec23f2a97ba4
    15     binding * local_theory
    15     binding * local_theory
    16 
    16 
    17   val setup_by_typedef_thm: config -> thm -> local_theory -> binding * local_theory
    17   val setup_by_typedef_thm: config -> thm -> local_theory -> binding * local_theory
    18 
    18 
    19   val lifting_restore: Lifting_Info.quotient -> Context.generic -> Context.generic
    19   val lifting_restore: Lifting_Info.quotient -> Context.generic -> Context.generic
       
    20 
       
    21   val lifting_forget: string -> local_theory -> local_theory
       
    22   val update_transfer_rules: string -> local_theory -> local_theory
       
    23   val pointer_of_bundle_binding: Proof.context -> binding -> string
    20 end
    24 end
    21 
    25 
    22 structure Lifting_Setup: LIFTING_SETUP =
    26 structure Lifting_Setup: LIFTING_SETUP =
    23 struct
    27 struct
    24 
    28 
   986             handle ERROR _ => error "The provided bundle is not a lifting bundle."
   990             handle ERROR _ => error "The provided bundle is not a lifting bundle."
   987         in name end
   991         in name end
   988       | _ => error "The provided bundle is not a lifting bundle."
   992       | _ => error "The provided bundle is not a lifting bundle."
   989   end
   993   end
   990 
   994 
       
   995 fun pointer_of_bundle_binding ctxt binding = Name_Space.full_name (Name_Space.naming_of 
       
   996       (Context.Theory (Proof_Context.theory_of ctxt))) binding
       
   997 
   991 fun lifting_forget pointer lthy =
   998 fun lifting_forget pointer lthy =
   992   let
   999   let
   993     fun get_transfer_rules_to_delete qinfo ctxt =
  1000     fun get_transfer_rules_to_delete qinfo ctxt =
   994       let
  1001       let
   995         val transfer_rel = get_transfer_rel qinfo
  1002         val transfer_rel = get_transfer_rel qinfo