Advertisement
Guest User

Negation

a guest
May 20th, 2019
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.79 KB | None | 0 0
  1. class Negation extends CompositeFormula {
  2. public Negation(Formula formula) {
  3. super(new Formula[]{formula}, "-");
  4. }
  5.  
  6. public Formula originalFormula() {
  7. return subf()[0];
  8. }
  9.  
  10. @Override
  11. public String toString() {
  12. return "-" + originalFormula().toString();
  13. }
  14.  
  15. @Override
  16. public Cnf toCnf() {
  17. Cnf podf = new Cnf();
  18. podf.addAll(this.originalFormula().toCnf());
  19. if (podf.size() > 0) {
  20. podf.remove(0);
  21. }
  22.  
  23. podf.add(new Clause(new Literal(toString()), new Literal(originalFormula().toString())));
  24. podf.add(new Clause(Literal.Not(originalFormula().toString()), Literal.Not(toString())));
  25.  
  26. podf.add(0, new Clause(new Literal(toString())));
  27. return podf;
  28. }
  29. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement