Semantic Tableau Result
Classification: Satisfiable Open Branches: 3 Closed Branches: 0 Stopped Branches: 0 Expanded Nodes: 3Parsed Formula: (((P → Q) ∧ P) → Q)
Variables: P, Q
Mode: Direct satisfiability analysis.
Interpretation: At least one tableau branch remains open.
Calculator
Branch Expansion Steps
-
Branch B1 used
Implication on
(((P → Q) ∧ P) → Q).
Created B2 with: ¬(((P → Q) ∧ P))Created B3 with: Q
-
Branch B2 used
Negated Conjunction on
¬(((P → Q) ∧ P)).
Created B4 with: ¬((P → Q))Created B5 with: ¬P
-
Branch B4 used
Negated Implication on
¬((P → Q)).
Created B6 with: P, ¬Q
Final Branches
| Branch | Status | Depth | Reason | Remaining Formulas |
|---|---|---|---|---|
| B3 | Open | 1 | All remaining formulas are literals. | Q |
| B5 | Open | 2 | All remaining formulas are literals. | ¬P |
| B6 | Open | 3 | All remaining formulas are literals. | P, ¬Q |
Open Branch Assignments
| Open Branch | P | Q |
|---|---|---|
| Open 1 | Undetermined | T |
| Open 2 | F | Undetermined |
| Open 3 | T | F |
Plotly Graph
This graph compares branch depth across open, closed, and stopped outcomes.
Generated Truth Data
| P | Q | Formula Value |
|---|---|---|
| F | F | T |
| F | T | T |
| T | F | T |
| T | T | T |
Example Data Table
| Formula | Goal | Expected Result | Reason |
|---|---|---|---|
| ((P -> Q) & P) -> Q | Validity test | Unsatisfiable negation | Modus ponens is valid. |
| P & !P | Direct test | Unsatisfiable | One branch closes immediately. |
| P | Q | Direct test | Satisfiable | At least one open branch exists. |
| (P <-> Q) + R | Direct test | Usually satisfiable | Branching depends on assignments. |
Formula Used
Semantic tableaux do not rely on one numeric formula. They rely on decomposition rules that preserve logical meaning while splitting formulas into branch conditions.
- Conjunction:
A ∧ Badds both formulas to one branch. - Disjunction:
A ∨ Bsplits into one branch withAand another withB. - Implication:
A → Bbecomes branches¬AorB. - Negated implication:
¬(A → B)becomes one branch containingAand¬B. - Biconditional:
A ↔ Bbecomes branchesA, Bor¬A, ¬B. - Closure test: a branch closes when both
Pand¬Pappear.
If every branch closes, the tested set is unsatisfiable. If one branch stays open, the set is satisfiable.
How to Use This Calculator
- Enter a propositional logic formula using the supported operators.
- Select direct satisfiability or validity testing by negation.
- Click Build Tableau to expand branches automatically.
- Review the result summary above the form.
- Read the expansion steps to understand each decomposition rule.
- Inspect final branches for contradictions and open assignments.
- Use the truth data table for verification.
- Download CSV or PDF reports for documentation.
Frequently Asked Questions
1. What does this calculator solve?
It analyzes propositional logic formulas with semantic tableau rules. It shows whether a formula set is satisfiable, unsatisfiable, or limited by the expansion cap.
2. What operators can I enter?
You can use not, and, or, implication, biconditional, and xor. Supported symbols include !, &, |, ->, <->, and +.
3. What is an open branch?
An open branch contains no contradiction. It represents a possible assignment that keeps the tested formulas true together.
4. What is a closed branch?
A closed branch contains a contradiction such as P and not P. That branch cannot represent any valid assignment.
5. Why include a truth table section?
The truth data verifies tableau outcomes. It also helps compare symbolic branch reasoning with direct valuation results for each assignment.
6. What does validity mode do?
Validity mode negates the entered formula first. If the negated formula closes on every branch, the original formula is logically valid.
7. Why might a branch show undetermined values?
Open branches may not force every variable. Some propositions remain free because the branch already stays consistent without assigning them.
8. Can this handle predicate logic quantifiers?
No. This version is designed for propositional logic only. Predicate logic needs quantifier rules, instantiation control, and more advanced parsing.