src/HOL/Tools/Lifting/lifting_info.ML
changeset 53284 d0153a0a9b2b
parent 53219 ca237b9e4542
child 53650 71a0a8687d6c
equal deleted inserted replaced
53283:be0491d86d19 53284:d0153a0a9b2b
   177 fun delete_quotients quot_thm ctxt =
   177 fun delete_quotients quot_thm ctxt =
   178   let
   178   let
   179     val (_, qtyp) = quot_thm_rty_qty quot_thm
   179     val (_, qtyp) = quot_thm_rty_qty quot_thm
   180     val qty_full_name = (fst o dest_Type) qtyp
   180     val qty_full_name = (fst o dest_Type) qtyp
   181     val symtab = get_quotients' ctxt
   181     val symtab = get_quotients' ctxt
   182     fun compare_data (_, data) = Thm.eq_thm_prop (#quot_thm data, quot_thm)
   182     fun compare_data (_, data:quotient) = Thm.eq_thm_prop (#quot_thm data, quot_thm)
   183   in
   183   in
   184     if Symtab.member compare_data symtab (qty_full_name, quot_thm)
   184     if Symtab.member compare_data symtab (qty_full_name, quot_thm)
   185       then Data.map (map_quotients (Symtab.delete qty_full_name)) ctxt
   185       then Data.map (map_quotients (Symtab.delete qty_full_name)) ctxt
   186       else ctxt
   186       else ctxt
   187   end
   187   end