static void Main(string[] args) { Z3BaseDirective directive = new Z3MILPDirective(); for (int i = 0; i < args.Length; ++i) { if (args[i] == "-s" || args[i] == "-solve") { ExecuteZ3(args[i + 1], directive); return; } if (args[i] == "-c" || args[i] == "-convert") { ConvertToSMT2(args[i + 1], directive); return; } if (args[i] == "-v" || args[i] == "-validate") { ValidateZ3(args[i + 1], directive); return; } if (args[i] == "-t" || args[i] == "-term") { directive = new Z3TermDirective(); } } if (args.Length > 0) { ExecuteZ3(args[0], directive); return; } Console.WriteLine(@" Validator is a simple command line to migrate benchmarks from OML, MPS and SMPS to SMT2 formats. Commands: -solve <file_name> : solving the model using Z3 -convert <file_name> : converting the model into SMT2 format -validate <file_name> : validating by comparing results between Z3 and MSF solvers -term : change the default Z3 MILP solver to Z3 Term solver where <file_name> is any file with OML, MPS or SMPS extension. Examples: Validator.exe -convert model.mps Validator.exe -term -solve model.oml "); }