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
IsLinearFunction IsNegativeUnateFunctionTo IsParityFunction IsSelfDualFunction IsUnateFunction IsUnateFunctionTo PureBinary ToAndXor ToDualFunction ToNotFunction ToSOP NumberSystem PositiveDecimalToMantissa RadixFromIndex object PermutationMatrix POS Realization To2LayerNor To2LayerOrAnd ShortestInputsForTransition Assign AutoAssignInputAndStateVariables ToStateTransitionTable To2layerOrAnd ShannonTree Fast ROBDD XORP Zero