equal
deleted
inserted
replaced
665 |
665 |
666 fun print_and_check_model genuine bounds |
666 fun print_and_check_model genuine bounds |
667 ({free_names, sel_names, nonsel_names, rel_table, scope, ...} |
667 ({free_names, sel_names, nonsel_names, rel_table, scope, ...} |
668 : problem_extension) = |
668 : problem_extension) = |
669 let |
669 let |
|
670 val _ = |
|
671 print_t (fn () => |
|
672 "% SZS status " ^ |
|
673 (if genuine then |
|
674 if falsify then "CounterSatisfiable" else "Satisfiable" |
|
675 else |
|
676 "Unknown") ^ "\n" ^ |
|
677 "% SZS output start FiniteModel") |
670 val (reconstructed_model, codatatypes_ok) = |
678 val (reconstructed_model, codatatypes_ok) = |
671 reconstruct_hol_model |
679 reconstruct_hol_model |
672 {show_datatypes = show_datatypes, show_skolems = show_skolems, |
680 {show_datatypes = show_datatypes, show_skolems = show_skolems, |
673 show_consts = show_consts} |
681 show_consts = show_consts} |
674 scope formats atomss real_frees pseudo_frees free_names sel_names |
682 scope formats atomss real_frees pseudo_frees free_names sel_names |
678 sound_finitizes andalso total_consts <> SOME true andalso |
686 sound_finitizes andalso total_consts <> SOME true andalso |
679 codatatypes_ok |
687 codatatypes_ok |
680 fun assms_prop () = |
688 fun assms_prop () = |
681 Logic.mk_conjunction_list (neg_t :: def_assm_ts @ nondef_assm_ts) |
689 Logic.mk_conjunction_list (neg_t :: def_assm_ts @ nondef_assm_ts) |
682 in |
690 in |
683 (print_t (fn () => |
691 (pprint_a (Pretty.chunks |
684 "% SZS status " ^ |
|
685 (if genuine then |
|
686 if falsify then "CounterSatisfiable" else "Satisfiable" |
|
687 else |
|
688 "Unknown") ^ "\n" ^ |
|
689 "% SZS output start FiniteModel"); |
|
690 pprint_a (Pretty.chunks |
|
691 [Pretty.blk (0, |
692 [Pretty.blk (0, |
692 (pstrs ((if mode = Auto_Try then "Auto " else "") ^ |
693 (pstrs ((if mode = Auto_Try then "Auto " else "") ^ |
693 "Nitpick found a" ^ |
694 "Nitpick found a" ^ |
694 (if not genuine then " potentially spurious " |
695 (if not genuine then " potentially spurious " |
695 else if genuine_means_genuine then " " |
696 else if genuine_means_genuine then " " |