conjunctiondemo.java

来自「Java版的SAT求解器」· Java 代码 · 共 38 行

JAVA
38
字号
package positronic.satisfiability.demos;import java.util.List;import positronic.satisfiability.elements.BitEqualizer;import positronic.satisfiability.elements.BitFixer;import positronic.satisfiability.elements.BooleanLiteral;import positronic.satisfiability.elements.BooleanVariable;import positronic.satisfiability.elements.Conjunction;import positronic.satisfiability.elements.IBooleanVariable;import positronic.satisfiability.elements.IProblem;import positronic.satisfiability.solutions.PartialSolution;public class ConjunctionDemo{  public static void main(String[] args) throws Exception  {    IBooleanVariable X=BooleanVariable.getBooleanVariable("X");    IBooleanVariable Y=BooleanVariable.getBooleanVariable("Y");    IBooleanVariable Z=BooleanVariable.getBooleanVariable("Z");        IProblem fixY=new BitFixer(Y,true);    IProblem fixZ=new BitFixer(Y,true);    IProblem conjunction1 = new Conjunction(new BitEqualizer(X,Y),new BitEqualizer(Y,Z));    IProblem problem=new Conjunction(fixY,fixZ,conjunction1);    System.out.println(problem);    List s=PartialSolution.solveList(problem);		if(s!=null && s.size()>0)    {      BooleanLiteral.interpret(s);    	System.out.println("X= "+X.getValue());    	System.out.println("Y= "+Y.getValue());    	System.out.println("Z= "+Z.getValue());    }    else      System.out.println("No solution.");  }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?