# Category Archives: Appendix-Logic

## Protected: Planar 3-Satisfiability

This content is password protected. To view it please enter your password below:

## Monotone EQSat

Today I’m posting 2 problems relating to my student Dan Thornton’s independent study work.  I’m out of town this week and next, so I have these posts set to automatically go up on Tuesday afternoon.

Dan’s independent study was based on the “Automaton Identification” problem, but to show that reduction, he needs to use a variant of 3SAT, which he shows here:

The problem: Monotone EQ SAT. This is a specific instance of Monotone SAT.

The description:
We are given a conjunction of clauses where each clause in contains all negated or non-negated variables and the number of clauses and variables are equal, is there an assignment of the variables so that is satisfied? Our instance will have clauses and variables.

Example:
Here is an that has variables and clauses.

F =

The above may be satisfied by the following assignment:

The reduction:
We will reduce from Monotone SAT. So we are given an instance of Monotone  SAT with the clauses here each clause is of the form where each clause has all negated or non-negated variables. This is different from Monotone EQ SAT as we do not require the number of variables and clauses to be equal.
From this we must build an instance of Monotone EQ SAT.
We may transform our instance of Monotone SAT, , into one of Monotone EQ SAT by the following iterative procedure. New variables will be denoted by and new clauses by .

  = ;
i = 1;
j = 1;
While{number of clauses != number of variables}{
introduce two new variables ;
If{number of variables  number of clauses}{
Create the new clause ;
;
;
}
else {
Create three new clauses:

;
;
;
}
;
}



The above algorithm will produce an equation that is in Monotone EQ  SAT. This may be shown by induction. Notice that before the procedure if that we will add 2 new variables and 3 new clauses.

If then we will add 2 new variables but only a single new clause. Either way the difference between the number of variables and clauses, will decrease by . So in steps we will obtain an formula where = 0. Such an formula is an instance of Monotone EQ SAT.

True{Monotone SAT True{Monotone EQ SAT}
Here we assume that there is a truth assignment function that maps every variable to a truth value, such that is satisfied. Then after we preform the above algorithm we have an instance of , now our instance of will be of the form for some . Now notice that above will satisfy in and we may trivially satisfy by simply assigning all new variables to true.
This will give us a new truth assignment function that will satisfy

True{Monotone EQ SAT} True{Monotone SAT}
Here we assume that there is a truth assignment function that will satisfy then obviously as then must also satisfy .

(Back to me)

Difficulty: 3.  The logical manipulations aren’t hard, but it is possible to mess them up.  For example, it’s important that the algorithm above reduces the difference in variables and clauses by 1 each iteration.  If it can reduce by more, you run the risk of skipping over the EQ state.

## Protected: DNF Non-Tautology

This content is password protected. To view it please enter your password below:

## Monotone 3-Satisfiability

I told Daniel when he gave me his Monotone Satisfiability reduction that the actual problem mentioned in G&J was Monotone 3-Satisfiability.  So he went off and did that reduction too.
The Problem:
Monotone 3 SAT. This is a more restrictive case of Monotone SAT

The Description:
Given an formula of clauses where each clause in contains all negated or non-negated variables, and each clause contains at most variables. Does there exist an assignment of the variables so that is satisfied?

Example:

the following assignment satisfies :

However:

And the following is in Monotone  3SAT form:

are both unsatisfiable.

The reduction:
In the following reduction we are given an instance of 3SAT,
. Here each clause is of the form:
where

and each is a literal of the form .
We use the following construction to build an instance of Monotone  3 SAT out of the above instance of 3SAT :
In each clause we have at most one literal, that is not of the same parity as the rest of the literals in the clause. For every such literal, we may preform the following substitution:
this yields a modified clause .
Now we must be able to guarantee that and are mapped to opposite truth values, so we introduce the new clause:
and conjunct it onto our old formula producing a new formula .

For example:
so we preform the substitution

so and

Now repeating this procedure will result in a new formula: .
We claim logical equivalence between the and This is semantically intuitive as the clause requires all substituted literal in to take the value opposite of this was the stipulation for the substitution initially. It is also verifiable by truth table construction for:

:
If there exists a truth assignment that satisfies , then we may extent this truth assignment to produce which will satisfy
by letting for all and letting for all .
Obviously if is satisfiable must be by the above construction of . So by the above claim we have that will satisfy .
:
Continuing from the above, if we have a truth assignment that satisfies , then by the claim above it also must satisfy . And is a sub-formula of so any truth assignment that satisfies must also satisfy .

(Back to me)

Difficulty: 4, since it’s a little harder than the regular Monotone Sat one.

## Monotone Satisfiability

This semester I’m doing an independent study with a student, Daniel Thornton, looking at NP-Complete problems.  He came up with a reduction for Monotone Satisfiability, and since I hadn’t gotten to that problem yet, I told him if he wrote it up, I’d post it.

So, here it is.  Take it away, Daniel!

The Problem: Monotone SAT. This is mentioned in problem LO2 in the book.

The description:
Given an set of clauses where each clause in F contains all negated or non-negated variables, is there an assignment of the variables so that is satisfied?

Example:

the following assignment satisfies :

The reduction:
In the following reduction we are given an instance of SAT, with the clauses:
. Here each clause is of the form and each is a literal of the form
Now we build an instance of Monotone SAT from the instance of SAT given above:
For each we construct two new clauses and  , such that all elements of are non-negated literals and all terms in are negated literals with the addition of the new special term . Now let us build a new formula this is our instance of Monotone SAT, clauses are either all non-negated or negated.

:
Notice how we added the extra literal or to each of the clauses or respectfully. Now if there is an assignment that satisfies all of the clauses of then as only or may be satisfied by the appended extra literal, one of the clauses must be satisfied by it’s other literals. These literals are also in so such an assignment satisfies all .

:
Using an argument similar to the one above, For to be satisfied there must be at least one literal assignment say that satisfies each clause Now is in either or . This implies that at least one of or is also satisfied by , so simply assign the new term accordingly to satisfy the clause in not satisfied by

(back to me again)

Difficulty: 3.  I like that the reduction involves manipulating the formula, instead of applying logical identities.

## Protected: One-In-Three 3SAT

This content is password protected. To view it please enter your password below:

## Protected: Three-Occurrence 3SAT

This content is password protected. To view it please enter your password below:

## Protected: Maximum 2-SAT

This content is password protected. To view it please enter your password below:

## Not All Equal 3SAT

This is jumping ahead a little, but this is a variant of 3SAT that will be helpful in the future (actually, for the next problem)

The problem: Not-All-Equal-3SAT (NAE3SAT).  This is problem LO3 in the appendix.

The description: Just like 3SAT, except instead of requiring at least one of the literals in each clause to be true, we’re requiring at least one literal to be true and at least one literal to be false.  So we’re removing the case where all three literals can be true.

Notice that if we have an assignment of variables that is a NAE3SAT solution, then if we negate all of the variables, we still have a NAE3SAT solution

The reduction: From regular 3SAT.  We’re given a formula that is a collection of 3-literal clauses.  For each clause (x1 ∨ x2 ∨ x3) we create a new variable ci (for clause i) and add 2 clauses to our NAE3SAT instance:

(x1∨ x2 ∨ ci) and (x3 ∨ ~ci ∨ F)  (Where “F” is the constant value false.  We’ll talk more about this later)

The idea is that ci is there to “fix” the clause.  If the original clause was satisfiable because of x1 or x2, then ci can be false, and its negation can make the second clause true.  If the original clause was satisfiable because of x3, we can make ci true.  If the original clause had all three literals satisfiable, we can make ci false, and become an acceptable NAE3SAT solution.

Note that because the definition of NAE3SAT (and, for that matter, regular 3SAT) is defined in terms of collections of 3 variables, the constant value false we used above isn’t strictly legal.  We’ve really just shown “NAE3SAT with some constants replacing variables” is NP-Hard.  To show “normal” NAE3SAT is NP-Hard, we need to reduce the fixed constant version into the normal version:

Given an instance of NAE3SAT with fixed constants, we create 2 new variables xT and xF.  We replace all instances of the constant value true with xT, and all instances of the constant value false with xF.  We also add one additional clause:

(xT ∨ xT ∨ xF).

Note that this new clause is only NAESatisfiable if xT != xF.  We can’t directly bind xT to true and xF to false because if you take a NAE3SAT solution and negate all literals, you get another NAE3SAT solution.  But because of that, this is NAESatisfiable if and only if the original formula is.

Difficulty: It depends on what you give them.  If you make them do everything I did above, I’d say it’s an 8.  If you let them stop at the NAE3SAT with fixed constants, then maybe a 7.