mirror of
				https://github.com/YosysHQ/yosys
				synced 2025-10-31 03:32:29 +00:00 
			
		
		
		
	qbfsat support for cvc5, fixes #3608
This commit is contained in:
		
							parent
							
								
									f2c689403a
								
							
						
					
					
						commit
						e3c0fd8b10
					
				
					 2 changed files with 7 additions and 3 deletions
				
			
		|  | @ -416,6 +416,8 @@ QbfSolveOptions parse_args(const std::vector<std::string> &args) { | |||
| 					opt.solver = opt.Solver::Yices; | ||||
| 				else if (args[opt.argidx+1] == "cvc4") | ||||
| 					opt.solver = opt.Solver::CVC4; | ||||
| 				else if (args[opt.argidx+1] == "cvc5") | ||||
| 					opt.solver = opt.Solver::CVC5; | ||||
| 				else | ||||
| 					log_cmd_error("Unknown solver \"%s\".\n", args[opt.argidx+1].c_str()); | ||||
| 				opt.argidx++; | ||||
|  | @ -542,8 +544,8 @@ struct QbfSatPass : public Pass { | |||
| 		log("        hope that the solver supports optimizing quantified bitvector problems.\n"); | ||||
| 		log("\n"); | ||||
| 		log("    -solver <solver>\n"); | ||||
| 		log("        Use a particular solver. Choose one of: \"z3\", \"yices\", and \"cvc4\".\n"); | ||||
| 		log("        (default: yices)\n"); | ||||
| 		log("        Use a particular solver. Choose one of: \"z3\", \"yices\", \"cvc4\"\n"); | ||||
| 		log("        and \"cvc5\". (default: yices)\n"); | ||||
| 		log("\n"); | ||||
| 		log("    -solver-option <name> <value>\n"); | ||||
| 		log("        Set the specified solver option in the SMT-LIBv2 problem file.\n"); | ||||
|  |  | |||
|  | @ -29,7 +29,7 @@ struct QbfSolveOptions { | |||
| 	bool specialize = false, specialize_from_file = false, write_solution = false, nocleanup = false; | ||||
| 	bool dump_final_smt2 = false, assume_outputs = false, assume_neg = false, nooptimize = false; | ||||
| 	bool nobisection = false, sat = false, unsat = false, show_smtbmc = false; | ||||
| 	enum Solver{Z3, Yices, CVC4} solver = Yices; | ||||
| 	enum Solver{Z3, Yices, CVC4, CVC5} solver = Yices; | ||||
| 	enum OptimizationLevel{O0, O1, O2} oflag = O0; | ||||
| 	dict<std::string, std::string> solver_options; | ||||
| 	int timeout = 0; | ||||
|  | @ -45,6 +45,8 @@ struct QbfSolveOptions { | |||
| 			return "yices"; | ||||
| 		else if (solver == Solver::CVC4) | ||||
| 			return "cvc4"; | ||||
| 		else if (solver == Solver::CVC5) | ||||
| 			return "cvc5"; | ||||
| 
 | ||||
| 		log_cmd_error("unknown solver specified.\n"); | ||||
| 		return ""; | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue