SAT.MaxSAT
Back to table
/*
SAT
SAT.MaxSAT
[list() result]=SAT.MaxSAT(Dimacs problem, int K);
problem : the source of the problem in the Dimacs format.
K : an interger
Solve a MaxSAT(K) problem.
In the worst case, it may list out all the possible solution. Therefore, it may be time-consuming.
*/
//-------------------------------------------------------------------
// examples
f=Dimacs()
{
p cnf 5 19
-1 -2 0
-1 -3 0
-2 -1 0
-2 -3 0
-2 -4 0
-3 -1 0
-3 -2 0
-3 -4 0
-3 -5 0
-4 -2 0
-4 -3 0
-4 -5 0
-5 -3 0
-5 -4 0
1 2 3 0
2 1 3 4 0
3 1 2 4 0
4 2 3 5 0
5 3 4 0
}
[result]=SAT.MaxSAT(f,18);
Print(result);
//-------------------------------------------------------------------
// result
Advanced Analysis IsNegativeUnateFunctionTo IsOneFunction IsUnateFunctionTo BDD ToBinary ToTruthTable DigitalSystem Count logicvardef() minterm Minus Not PositiveIntegerToMantissa One PermutationMatrix SOP AutoAssignInputAndStateVariables InputVariables Simplification Compatibility FastVerificationData MultiCover TruthTable CreateFromLogicFunctions Normalization SemanticEval Xor Zero