def main(argv=None): """Run MVC, MCLIQUE and MCUT with the given graph and solver.""" args = parse_command_line_arguments(argv) solver = msat_runner.MaxSATRunner(args.solver) graph = Graph(args.graph) if args.visualize: graph.visualize(os.path.basename(args.graph)) min_vertex_cover = graph.min_vertex_cover(solver) print("MVC", " ".join(map(str, min_vertex_cover))) max_clique = graph.max_clique(solver) print("MCLIQUE", " ".join(map(str, max_clique))) max_cut = graph.max_cut(solver) print("MCUT", " ".join(map(str, max_cut)))