repaired logic for default provers -- ensures Z3 is kept if installed and configured as noncommercial
authorblanchet
Thu, 13 Feb 2014 13:16:17 +0100
changeset 55453 0b070d098d1a
parent 55452 29ec8680e61f
child 55454 6ea67a791108
repaired logic for default provers -- ensures Z3 is kept if installed and configured as noncommercial
src/HOL/Tools/Sledgehammer/sledgehammer_prover.ML
--- a/src/HOL/Tools/Sledgehammer/sledgehammer_prover.ML	Thu Feb 13 13:16:17 2014 +0100
+++ b/src/HOL/Tools/Sledgehammer/sledgehammer_prover.ML	Thu Feb 13 13:16:17 2014 +0100
@@ -118,17 +118,16 @@
 
 val is_atp = member (op =) o supported_atps
 
-fun remotify_atp_if_supported_and_not_already_remote thy name =
-  if String.isPrefix remote_prefix name then
-    SOME name
+fun remotify_atp_if_not_installed thy name =
+  if is_atp thy name then
+    if String.isPrefix remote_prefix name orelse is_atp_installed thy name then
+      SOME name
+    else
+      let val remote_name = remote_prefix ^ name in
+        if is_atp thy remote_name then SOME remote_name else NONE
+      end
   else
-    let val remote_name = remote_prefix ^ name in
-      if is_atp thy remote_name then SOME remote_name else NONE
-    end
-
-fun remotify_atp_if_not_installed thy name =
-  if is_atp thy name andalso is_atp_installed thy name then SOME name
-  else remotify_atp_if_supported_and_not_already_remote thy name
+    SOME name
 
 type params =
   {debug : bool,