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
PermuteLogicFunction IsBiUnateFunctionTo IsPositiveUnateFunctionTo IsSelfAntiDualFunction IsSymmetricFunction AndOr OneComplement bool ToNotFunction list() Load long() long Nor MantissaToPositiveNumber MostSignificantDigit PermutationMatrix ToFullAnd MaxSAT Assign ToFeedbackSystem Compatibility ShannonTree Fast Full MultiCover SimpleCover RandomGenerate Normalization Zero