09.09.2014 Views

13th International Conference on Membrane Computing - MTA Sztaki

13th International Conference on Membrane Computing - MTA Sztaki

13th International Conference on Membrane Computing - MTA Sztaki

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

A new approach for solving SAT by P systems with active membranes<br />

The SAT problem. Let X = {x 1 , x 2 , x 3 , . . .} be a recursively enumerable set<br />

of propositi<strong>on</strong>al variables (variables, to be short), and, for every n ∈ N, where N<br />

denotes the set of natural numbers, let X n := {x 1 , . . . , x n }. An interpretati<strong>on</strong> of<br />

the variables in X n (or just an interpretati<strong>on</strong> if X n is clear from the c<strong>on</strong>text) is<br />

a functi<strong>on</strong> I : X n → {true, false}.<br />

The variables and their negati<strong>on</strong>s are called literals. A clause C is a disjuncti<strong>on</strong><br />

of finitely many pairwise different literals satisfying the c<strong>on</strong>diti<strong>on</strong> that there<br />

is no x ∈ X such that both x and ¯x occur in C, where ¯x denotes the negati<strong>on</strong><br />

of x. The set of all clauses over the variables in X n is denoted by C n . A formula<br />

in c<strong>on</strong>junctive normal form (CNF) is a c<strong>on</strong>juncti<strong>on</strong> of finitely many clauses. We<br />

will often treat formulas in CNF as finite sets of clauses, where the clauses are<br />

finite sets of literals. A clause C ∈ C n is called a complete clause if, for every<br />

x ∈ X n , x ∈ C or ¯x ∈ C.<br />

Let ϕ be a formula in CNF over the variables in X n (n ∈ N) and let I<br />

be an interpretati<strong>on</strong> for ϕ. We say that I satisfies ϕ, denoted by I |= ϕ, if ϕ<br />

evaluates to true under the truth assignment defined by I. Note that I |= ϕ if<br />

and <strong>on</strong>ly if, for every C ∈ ϕ, I |= C. We say that ϕ is satisfiable, if there is<br />

an interpretati<strong>on</strong> I such that I |= ϕ. The SAT problem (boolean satisfiability<br />

problem of propositi<strong>on</strong>al formulas in CNF) can be defined as follows. Given<br />

a formula ϕ in CNF, decide whether or not there is an interpretati<strong>on</strong> I such<br />

that I |= ϕ. Let ϕ 1 and ϕ 2 be two formulas in CNF over the variables in X n<br />

(n ∈ N). We say that ϕ 1 and ϕ 2 are equivalent, denoted by ϕ 1 ∼ ϕ 2 , if, for every<br />

interpretati<strong>on</strong> I, I |= ϕ 1 if and <strong>on</strong>ly if I |= ϕ 2 .<br />

Let ϕ be a formula in CNF. The set of variables occurring in ϕ, denoted by<br />

var(ϕ), is defined by var(ϕ) := {x ∈ X | ∃C ∈ ϕ : x ∈ C or ¯x ∈ C}. For a<br />

clause C ∈ C n and a set Y ⊆ X n (n ∈ N) such that var(C) ∩ Y = ∅, let C Y be<br />

the following set of clauses. Assume that Y = {x i1 , . . . , x ik } (k ≤ n, 1 ≤ i 1 <<br />

. . . < i k ≤ n). Then let C Y := {C ∪ {l 1 , . . . , l k } | 1 ≤ j ≤ k : l j ∈ {x ij , ¯x ij }}.<br />

For a formula ϕ = {C 1 , . . . , C m } in CNF over the variables in X n (m, n ∈ N),<br />

let ϕ ′ := ⋃ C∈ϕ C Y , where Y := X n − var(C).<br />

The correctness of the P systems that we are going to c<strong>on</strong>struct to solve SAT<br />

is based <strong>on</strong> the following statement which can be proved by standard arguments<br />

of propositi<strong>on</strong>al logic.<br />

Propositi<strong>on</strong> 1. For a formula ϕ = {C 1 , . . . , C m } in CNF over the variables in<br />

X n (m, n ∈ N), ϕ ′ c<strong>on</strong>tains every full clause in C n if and <strong>on</strong>ly if ϕ is unsatisfiable.<br />

Proof. Let ϕ := {C 1 , . . . , C m } be a formula in CNF over the variables in X n<br />

(m, n ∈ N). We prove the above statement in two steps. First, we show that<br />

ϕ ∼ ϕ ′ , then we show that ϕ ′ is unsatisfiable if and <strong>on</strong>ly if it c<strong>on</strong>tains every full<br />

clause in C n .<br />

To see that ϕ ∼ ϕ ′ we show that, for every interpretati<strong>on</strong> I, I |= ϕ if<br />

and <strong>on</strong>ly if I |= ϕ ′ . Let I be an interpretati<strong>on</strong> and assume first that I |= ϕ.<br />

Let C ∈ ϕ. Then I |= C and, for every C ′ ∈ C Y , where Y = X n − var(C),<br />

var(C) ⊆ var(C ′ ). This clearly implies that, for every C ′ ∈ C Y , I |= C ′ . It<br />

follows then that I |= ϕ ′ as well.<br />

213

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!