Mimsy Boolean Expressions in CNF
About 1082 wordsAbout 14 min
2025-08-07
Question
A boolean expression in Conjunctive Normal Form (CNF) is mimsy if every clause contains a variable that appears in no earlier clause. So, if φ=C1∧C2∧⋯∧Ci∧⋯∧Cm where each Ci is a disjunction of literals, then φ is mimsy if, for each i, there is a variable xi that appears in Ci (either as xi or negated ¬xi) but does not appear in any of C1,…,Ci−1.
For example, the following expression α is mimsy: α:=(x∨¬y)∧(y∨¬z). This is because the first clause, C1=x∨¬y, includes at least one variable that does not appear in any earlier clauses, and the second clause, C2=y∨¬z, includes a variable, z, that does not appear in C1.
On the other hand, the following expression β is not mimsy: β:=(x∨y)∧(x∨y). This is because all the variables in the second clause also appeared in the first clause.
A Boolean expression is satisfiable if there is an assignment of truth values to its variables that makes the expression True.
Prove the following statement, by mathematical induction:
For all m≥1, every mimsy Boolean expression in CNF with m clauses is satisfiable.
(a) Pre-proof exploration: (i) Show that each of the example expressions above, α and β, is satisfiable. For each of them, you just need to give one truth assignment to its variables that satisfies it. (ii) Construct an expression in CNF, with at least two literals in each clause, that is not mimsy and not satisfiable.
(b) Inductive basis: prove the statement (*) for m=1.
(c) Given a mimsy Boolean expression φ with m+1 clauses, show how to construct from it a mimsy Boolean expression φ− with just m clauses that will help with your proof.
(d) What does your Inductive Hypothesis tell you about φ−?
(e) Using the fact that φ is mimsy, and your answer to (d), show that φ has a satisfying truth assignment.
(f) When drawing your final conclusion, don't forget to briefly state that you are using the Principle of Mathematical Induction!
Answer
(a) Pre-proof exploration:
(i) Satisfiability of α and β
For the expression α:=(x∨¬y)∧(y∨¬z), a satisfying truth assignment is x = True, y = True, z = True.
- (True∨¬True)∧(True∨¬True)
- (True∨False)∧(True∨False)
- True∧True, which is True.
For the expression β:=(x∨y)∧(x∨y), a satisfying truth assignment is x = True, y = False.
- (True∨False)∧(True∨False)
- True∧True, which is True.
(ii) Non-mimsy and non-satisfiable expression
An example of an expression in CNF with at least two literals in each clause that is not mimsy and not satisfiable is: (x∨y)∧(¬x∨¬y)∧(x∨¬y)∧(¬x∨y)
- Not Mimsy: All variables in the subsequent clauses (x and y) have already appeared in the first clause.
- Not Satisfiable: There is no truth assignment for x and y that will make all four clauses true simultaneously. For any of the four possible assignments (T,T), (T,F), (F,T), (F,F), one of the clauses will evaluate to False.
(b) Inductive basis:
We must prove the statement for m=1: "every mimsy Boolean expression in CNF with 1 clause is satisfiable". An expression with one clause is just C1. By definition, any expression with one clause is mimsy because there are no earlier clauses for its variables to have appeared in. A clause is a disjunction of literals. We can satisfy the clause by choosing a truth assignment that makes at least one of its literals true. For any variable xi in C1, if the literal is xi, we set xi to True; if the literal is ¬xi, we set xi to False. This satisfies C1. Thus, the statement holds for m=1.
(c) Construction of φ−
Given a mimsy Boolean expression φ with m+1 clauses, φ=C1∧⋯∧Cm∧Cm+1. We construct φ− by removing the last clause: φ−=C1∧⋯∧Cm. This new expression φ− has m clauses and is also mimsy, as the condition for being mimsy holds for each of its clauses C1,…,Cm just as it did in the original expression φ.
(d) Implication of the Inductive Hypothesis
The Inductive Hypothesis (IH) assumes that every mimsy Boolean expression in CNF with m clauses is satisfiable. Since φ− is a mimsy Boolean expression with m clauses, the IH tells us that φ− is satisfiable. This means a truth assignment exists that makes φ− true.
(e) Proving satisfiability for φ
We know φ=φ−∧Cm+1 and that there is a truth assignment, A, that satisfies φ−. Because the original expression φ is mimsy, the clause Cm+1 must contain a variable, xm+1, that does not appear in any of the preceding clauses C1,…,Cm.
This means the variable xm+1 is not in φ−, and the assignment A does not assign it a value. We can extend assignment A by assigning a truth value to xm+1 without affecting the truth of φ−. We choose a value for xm+1 that satisfies Cm+1:
- If Cm+1 contains the literal xm+1, we set xm+1= True.
- If Cm+1 contains the literal ¬xm+1, we set xm+1= False.
This extension makes Cm+1 true. Since the assignment still satisfies φ−, the full extended assignment satisfies φ=φ−∧Cm+1. Therefore, φ is satisfiable.
(f) Conclusion
We have shown that the base case (m=1) is true, and we have shown that if the statement holds for any integer m≥1, it also holds for m+1. Therefore, by the Principle of Mathematical Induction, we conclude that every mimsy Boolean expression in CNF with m clauses is satisfiable for all m≥1.
Changelog
2aa48
-web-deploy(Auto): Update base URL for web-pages branchon
Copyright
Copyright Ownership:WARREN Y.F. LONG
License under:Attribution-NonCommercial-NoDerivatives 4.0 International (CC-BY-NC-ND-4.0)