equal
deleted
inserted
replaced
1023 Library.exists Old_Datatype_Aux.is_rec_type ds) constrs |
1023 Library.exists Old_Datatype_Aux.is_rec_type ds) constrs |
1024 end |
1024 end |
1025 | NONE => false) |
1025 | NONE => false) |
1026 | _ => false) types |
1026 | _ => false) types |
1027 val _ = |
1027 val _ = |
1028 if maybe_spurious then |
1028 if maybe_spurious andalso Context_Position.is_visible ctxt then |
1029 warning ("Term contains a recursive datatype; " |
1029 warning "Term contains a recursive datatype; countermodel(s) may be spurious!" |
1030 ^ "countermodel(s) may be spurious!") |
1030 else () |
1031 else |
|
1032 () |
|
1033 fun find_model_loop universe = |
1031 fun find_model_loop universe = |
1034 let |
1032 let |
1035 val msecs_spent = Time.toMilliseconds (Timer.checkRealTimer timer) |
1033 val msecs_spent = Time.toMilliseconds (Timer.checkRealTimer timer) |
1036 val _ = maxtime = 0 orelse msecs_spent < 1000 * maxtime |
1034 val _ = maxtime = 0 orelse msecs_spent < 1000 * maxtime |
1037 orelse raise TimeLimit.TimeOut |
1035 orelse raise TimeLimit.TimeOut |
1054 (* add the well-formedness side condition *) |
1052 (* add the well-formedness side condition *) |
1055 val fm_u = (if negate then toFalse else toTrue) (hd intrs) |
1053 val fm_u = (if negate then toFalse else toTrue) (hd intrs) |
1056 val fm_ax = Prop_Logic.all (map toTrue (tl intrs)) |
1054 val fm_ax = Prop_Logic.all (map toTrue (tl intrs)) |
1057 val fm = Prop_Logic.all [#wellformed args, fm_ax, fm_u] |
1055 val fm = Prop_Logic.all [#wellformed args, fm_ax, fm_u] |
1058 val _ = |
1056 val _ = |
1059 (if member (op =) ["cdclite"] satsolver then |
1057 (if member (op =) ["cdclite"] satsolver andalso Context_Position.is_visible ctxt then |
1060 warning ("Using SAT solver " ^ quote satsolver ^ |
1058 warning ("Using SAT solver " ^ quote satsolver ^ |
1061 "; for better performance, consider installing an \ |
1059 "; for better performance, consider installing an \ |
1062 \external solver.") |
1060 \external solver.") |
1063 else ()); |
1061 else ()); |
1064 val solver = |
1062 val solver = |