equal
deleted
inserted
replaced
50 val (ls, l) = the_default ([], "") (try split_last (filter_out jnk output)) |
50 val (ls, l) = the_default ([], "") (try split_last (filter_out jnk output)) |
51 in |
51 in |
52 if String.isPrefix "unsat" l then ls |
52 if String.isPrefix "unsat" l then ls |
53 else if String.isPrefix "sat" l then raise_cex true recon ls |
53 else if String.isPrefix "sat" l then raise_cex true recon ls |
54 else if String.isPrefix "unknown" l then raise_cex false recon ls |
54 else if String.isPrefix "unknown" l then raise_cex false recon ls |
55 else error (solver_name ^ " failed") |
55 else raise SMT_Solver.SMT (solver_name ^ " failed") |
56 end |
56 end |
57 |
57 |
58 fun core_oracle ({output, recon, ...} : SMT_Solver.proof_data) = |
58 fun core_oracle ({output, recon, ...} : SMT_Solver.proof_data) = |
59 check_unsat recon output |
59 check_unsat recon output |
60 |> K @{cprop False} |
60 |> K @{cprop False} |