src/HOL/Tools/ATP/atp_translate.ML
changeset 43185 697d32fa183d
parent 43181 cd3b7798ecc2
child 43188 0c36ae874fcc
equal deleted inserted replaced
43184:b16693484c5d 43185:697d32fa183d
  1789   |> sort_wrt fst
  1789   |> sort_wrt fst
  1790   |> rpair []
  1790   |> rpair []
  1791   |-> fold_rev (append o problem_lines_for_sym_decls ctxt format conj_sym_kind
  1791   |-> fold_rev (append o problem_lines_for_sym_decls ctxt format conj_sym_kind
  1792                                                      nonmono_Ts type_sys)
  1792                                                      nonmono_Ts type_sys)
  1793 
  1793 
  1794 fun needs_type_tag_idempotence (Tags (Polymorphic, level, Heavyweight)) =
  1794 fun needs_type_tag_idempotence (Tags (poly, level, heaviness)) =
  1795     level = Nonmonotonic_Types orelse level = Finite_Types
  1795     poly <> Mangled_Monomorphic andalso
       
  1796     ((level = All_Types andalso heaviness = Lightweight) orelse
       
  1797      level = Nonmonotonic_Types orelse level = Finite_Types)
  1796   | needs_type_tag_idempotence _ = false
  1798   | needs_type_tag_idempotence _ = false
  1797 
  1799 
  1798 fun offset_of_heading_in_problem _ [] j = j
  1800 fun offset_of_heading_in_problem _ [] j = j
  1799   | offset_of_heading_in_problem needle ((heading, lines) :: problem) j =
  1801   | offset_of_heading_in_problem needle ((heading, lines) :: problem) j =
  1800     if heading = needle then j
  1802     if heading = needle then j