src/HOL/Tools/ATP/atp_problem_generate.ML
changeset 69717 eb74ff534b27
parent 69597 ff784d5a5bfb
child 69718 f7f3ed2eea0a
equal deleted inserted replaced
69716:749aaeb40788 69717:eb74ff534b27
   160 (* not clear whether ATPs prefer to have their negative variables tagged *)
   160 (* not clear whether ATPs prefer to have their negative variables tagged *)
   161 val tag_neg_vars = false
   161 val tag_neg_vars = false
   162 
   162 
   163 fun is_type_enc_native (Native _) = true
   163 fun is_type_enc_native (Native _) = true
   164   | is_type_enc_native _ = false
   164   | is_type_enc_native _ = false
   165 fun is_type_enc_full_higher_order (Native (Higher_Order THF_Lambda_Free, _, _)) = false
   165 fun is_type_enc_full_higher_order (Native (Higher_Order THF_Predicate_Free, _, _)) = false
   166   | is_type_enc_full_higher_order (Native (Higher_Order _, _, _)) = true
   166   | is_type_enc_full_higher_order (Native (Higher_Order _, _, _)) = true
   167   | is_type_enc_full_higher_order _ = false
   167   | is_type_enc_full_higher_order _ = false
   168 fun is_type_enc_higher_order (Native (Higher_Order _, _, _)) = true
   168 fun is_type_enc_higher_order (Native (Higher_Order _, _, _)) = true
   169   | is_type_enc_higher_order _ = false
   169   | is_type_enc_higher_order _ = false
   170 
   170 
   669         | ("erased", (NONE, All_Types (* naja *))) =>
   669         | ("erased", (NONE, All_Types (* naja *))) =>
   670           Guards (Raw_Polymorphic With_Phantom_Type_Vars, No_Types)
   670           Guards (Raw_Polymorphic With_Phantom_Type_Vars, No_Types)
   671         | _ => raise Same.SAME))
   671         | _ => raise Same.SAME))
   672   handle Same.SAME => error ("Unknown type encoding: " ^ quote s)
   672   handle Same.SAME => error ("Unknown type encoding: " ^ quote s)
   673 
   673 
   674 fun min_hologic THF_Lambda_Free _ = THF_Lambda_Free
   674 fun min_hologic THF_Predicate_Free _ = THF_Predicate_Free
   675   | min_hologic _ THF_Lambda_Free = THF_Lambda_Free
   675   | min_hologic _ THF_Predicate_Free = THF_Predicate_Free
   676   | min_hologic THF_Without_Choice _ = THF_Without_Choice
   676   | min_hologic THF_Without_Choice _ = THF_Without_Choice
   677   | min_hologic _ THF_Without_Choice = THF_Without_Choice
   677   | min_hologic _ THF_Without_Choice = THF_Without_Choice
   678   | min_hologic _ _ = THF_With_Choice
   678   | min_hologic _ _ = THF_With_Choice
   679 
   679 
   680 fun adjust_hologic hologic (Higher_Order hologic') = Higher_Order (min_hologic hologic hologic')
   680 fun adjust_hologic hologic (Higher_Order hologic') = Higher_Order (min_hologic hologic hologic')