src/HOL/Tools/Quotient/quotient_term.ML
changeset 45274 252cd58847e0
parent 45273 728ed9d28c63
child 45279 89a17197cb98
equal deleted inserted replaced
45273:728ed9d28c63 45274:252cd58847e0
   551           | same_const _ _ = false
   551           | same_const _ _ = false
   552       in
   552       in
   553         if same_const rtrm qtrm then rtrm
   553         if same_const rtrm qtrm then rtrm
   554         else
   554         else
   555           let
   555           let
   556             val rtrm' = #rconst (Quotient_Info.qconsts_lookup thy qtrm)
   556             val rtrm' = case Quotient_Info.qconsts_lookup thy qtrm of
   557               handle Quotient_Info.NotFound =>
   557               SOME qconst_info => #rconst qconst_info
   558                 term_mismatch "regularize (constant not found)" ctxt rtrm qtrm
   558             | NONE => term_mismatch "regularize (constant not found)" ctxt rtrm qtrm
   559           in
   559           in
   560             if Pattern.matches thy (rtrm', rtrm)
   560             if Pattern.matches thy (rtrm', rtrm)
   561             then rtrm else term_mismatch "regularize (constant mismatch)" ctxt rtrm qtrm
   561             then rtrm else term_mismatch "regularize (constant mismatch)" ctxt rtrm qtrm
   562           end
   562           end
   563       end
   563       end