Example.java 875 B

12345678910111213141516171819
  1. package pl.wojciechkarpiel.tableaux.example;
  2. import pl.wojciechkarpiel.tableaux.api.Formula;
  3. import static pl.wojciechkarpiel.tableaux.api.FormulaBuilder.*;
  4. public class Example {
  5. public static void main(String[] args) {
  6. int searchBound = 3;
  7. boolean isDrinkerParadoxValid = Formula.parse("∃x.(∀y.((Pije(x) ⇒ Pije(y))))").isTautology(searchBound);
  8. System.out.println("Drinker paradox is " + (isDrinkerParadoxValid ? "valid" : "invalid"));
  9. PredicateFormulaBuilder P = predicate("P");
  10. Formula excludedMiddle = forAll("x").apply(x -> or(P.apply(x), not(P.apply(x))));
  11. System.out.println("Hand-crafted formula: " + excludedMiddle);
  12. boolean excludedMiddleHolds = excludedMiddle.isTautology(searchBound);
  13. System.out.println("Excluded middle " + (excludedMiddleHolds ? "holds" : "does not hold"));
  14. }
  15. }