|
|
- def readMinisatResult(path):
- result = {"assignments": [], "satisfiable": False}
-
- resultFile = open(path)
-
- line = resultFile.readline()
-
- if line.strip() == "SAT":
- result["satisfiable"] = True
-
- result["assignments"] = __parseVarAssignments(resultFile.readline())
-
- resultFile.close()
-
- return result
-
- def __parseVarAssignments(line):
- assignmentStrings = line.split()
-
- trailer = assignmentStrings.pop()
-
- assignments = []
-
- if trailer == "0":
- for assignmentStr in assignmentStrings:
-
- assignment = True if int(assignmentStr) > 0 else False
-
- assignments.append(assignment)
- else:
- print("Bad format of assignment string:\n %s", line)
-
- return assignments
-
|