Full CNF Clause Set Builder from Truth Table
Build equivalent canonical CNF clauses from every false truth-table row without auxiliary variables.
Description
Canonical conjunctive normal form joins one maxterm for each false truth-table row.
Canonical conjunctive normal form joins one maxterm for each false truth-table row. Every clause excludes precisely its associated false assignment without introducing auxiliary variables.1
The tool returns clauses, formula. Interpret the result under the rule and assumptions below; an encoded premise’s truth is not independently established.
When to use Full CNF Clause Set Builder from Truth Table
Use this for the following task: Build equivalent canonical CNF clauses from every false truth-table row without auxiliary variables. Prepare the specified logical encoding before running the check or transformation.
How to use Full CNF Clause Set Builder from Truth Table and understand its results
- Prepare the requested Boolean values, complete truth-table rows, or identifier atoms. An atom is a name such as p or premise_1, not a natural-language sentence.
- Enter variables, values according to the field table, then run the tool.
- Read clauses, formula. Use the matching rule, assignment order or nonempty-class assumptions below to interpret the result.
- For a false check, inspect the supplied encoding and matching rule. A well-formed false result is different from an input error.
| Input field | Meaning | Value type and bounds | Requirement |
|---|---|---|---|
| variables | Distinct variables in most-significant-bit order | list of string; minimum entries 0; maximum entries 12; each entry: maximum text length 100; pattern ^(?!(?:true|false)$)[A-Za-z_][A-Za-z0-9_]*$(?![\s\S]) | Required |
| values | Truth values in binary counting order | list of boolean; minimum entries 1; maximum entries 4096 | Required |
Supply distinct variables in most-significant-bit order and exactly 2^n Boolean rows in binary counting order. For each false row negate one-bit literals, join them with OR, then join all clauses with AND.
CNF = AND of maxterms for false rows The symbols and boundary conditions refer to the supplied fields and the implementation described above.
| Output field | Meaning | Value type |
|---|---|---|
| clauses | Canonical CNF clauses | list of string |
| formula | Conjunctive normal form | string (propositional-formula) |
{
"input": {
"variables": [
"p",
"q"
],
"values": [
true,
false,
false,
true
]
},
"output": {
"clauses": [
"p || !q",
"!p || q"
],
"formula": "(p || !q) && (!p || q)"
}
} Limitations and assumptions
At most 12 variables and 4096 rows are accepted; very large rendered forms are rejected. An all-true column gives true. This is canonical CNF, not minimized CNF or a Tseitin encoding.
The supplied encodings must represent the intended propositions or classes. No natural-language parsing or assessment of empirical premise truth is performed. Malformed input gives a tool error rather than a logical false result.
Alternative or Complementary methods
Choose Full DNF Minterm List Builder from Truth Table when you need its operation: Build canonical DNF minterms and their indices from true rows in binary counting order. Choose Maxterm Index Complement Convention Checker for the complementary operation: Construct a maxterm from a binary row index and check a proposed most-significant-bit negation mask.
Background reference: Complete truth tables.
References
-
Complete truth tables — forallx Calgary, Open Logic Project
Similar or alternative tools
- Full DNF Minterm List Builder from Truth Table
Build canonical DNF minterms and their indices from true rows in binary counting order.
- Maxterm Index Complement Convention Checker
Construct a maxterm from a binary row index and check a proposed most-significant-bit negation mask.