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
IsBiUnateFunction IsCovering IsInverse IsLinearFunction IsUnateFunctionTo AndXor FromBinary BinaryNumberToString GrayCode bool() bool ExcitationTable Get Load LogicScript long MantissaToPositiveInteger OrAnd Realization ShortestInputsForDistinguishTwoStates StateTransitionBasedly FullTable BestVariableOrder FastVerificationData SimpleCover SimpleInner CreateFromLogicFunctions GetNegativeLogicFunction XORP Zero