SATISFIABILITY AND SELF-DUALITY OF MONOTONE BOOLEAN...
Transcript of SATISFIABILITY AND SELF-DUALITY OF MONOTONE BOOLEAN...
SATISFIABILITY AND SELF-DUALITY OF
MONOTONE BOOLEAN FUNCTIONS
Daya Rarn Gaur
B. Tech., inst i tute of Technology, Banaras Hindu University, 1990
M. Sc., S i m o n Fraser University, 1995
A THESIS SC'BMITTED IN PARTIAL F U L F I L L M E N T
OF THE R E Q U I R E M E N T S FOR T H E DECREE OF
DOCTOR O F PHILOSOPHY
in t lie School
of
Computing Science
@ Daya Rarn Caur 1999
SIMON FRASER UNIVERSITY
January 1999
Ail rights reserved. This work may not be
reproduced in whole or in part, by photocopy
or other rneans, without the permission of the author.
National Libraiy Bibliothèque nationale du Canada
Acquisitions and Acquisitions et Bibliographie Services services bibliographiques 395 WeHingtm Street 395, rue Wellington OitawaON KIAON4 OtcewaON K1AON4 canada Canada
The author has granted a non- exclusive licence aiiowing the National Library of Canada to reproduce, loan, dismbute or sel1 copies of this thesis in microform, paper or electronic formats.
The author retains ownership of the copyright in this thesis. Neither the thesis nor substantial extracts fkom it may be printed or otherwise reproduced without the author's permission.
L'auteur a accordé une licence non exclusive permettant à la Bibliothèque nationale du Canada de reproduire, prêter, distribuer ou vendre des copies de cette thèse sous la forme de microfiche/film, de reproduction sur papier ou sur format électronique.
L'auteur conserve la propriété du droit d'auteur qui protège cette thèse. Ni la thèse ni des extraits substantiels de celle-ci ne doivent être imprimés ou autrement reproduits sans son autorisation.
Abstract
The problem of determining if a given monotone boolean function is self-dual arises in
the areas of artificial intelligence, databases, boolean circuits, graph theory, digital signal
analysis, graph theory t o narne a few. The problem has received considcrable attention and
the exact complexity of the probiern is open to the best of Our knowledge.
One of the initial conjectures tha t the problem is Co-NP-Complete was answered in the
ncgative by Frcdman and Ichachiyan [19] who demonstrated the esistence of a 0(n40('"gn)+o('))
for solving the problem. Recent a t tempts a t proving tha t the probIem is in P have met with
little success. The exact relationship with other problems sucli as graph isomorphism is also
not known. Furthermore no non-trivial lower bounds a r e known on the running times of
the aigorit hms for t his problem.
In this thesis we formulate and study a special type of the Xot ,411 Equal Satisfiabil-
ity Problem (NAESPI) which is equivalent to self-duality. ive eshibit polynomial time
algorithms for solving several restricted versions of NAESPI which arise naturally in differ-
ing application domains. We describe a simple 0 ( n ~ ' ~ 9 " + ~ ) algorithm for NAESPI problem
whose performance can be improved to ~ ( n ~ ~ ( ' ~ ~ * ) + ~ ( ' ) ) (by using t he observations of Fred-
man and Khachiyan). We study the average case behaviour of our algorithm and show tha t 2+o(log 1- ' o n average the aigorithm terminates in m a ~ { O ( n ~ - ~ ~ ) , 0(n3 log2 n). O( 9 - 3) P 7?)}
time, where p is the probability with which the instance is generated. We also describe an
approximation algorithm for a generaiization of the problem (which corresponds t o a gcn-
eralization of the MAX-CUT problem and is equivalent t o hypergraph 2-coloring).
"Our life is frit tered away by detail. Simplify, ssimpliiy. "
- Henry David Thoreau
Acknowledgment s
T h e a u t h o r would iike t o express his gra t i tude t o the foilowing peopIe. Dr. Geir Hasle
for hosting t h e author a t SINTEF where t h e foundations o f this work were laid and the
discussions during the incipient stages of t h e research. Dr. Bili Havens for t h e exceUent
research environment, t h e encouragement without which this thesis would not be in the s t a t e
it is in. Dr. Tiko Kameda for introducing t h e problem, numerous discussions, suggestions
and carefuf reading of the proofs. Dr. Ramesh Krishnamurti for t h e denumerable hours of
discussioris in classroom which lead t o the results in this thesis, who painstakingly ploughed
through the rnaterial verifying correctness of t h e claims and help improve the readability
of t h e thesis. Dr. Kaz Makino for t h e fruitful discussions. comments o n the proofs and
pointers t o several related works.
The au thor would also like t o thank Dr. Roman Bacik, Dr. Ken Jackson a n d Morten
Irgens. Financial support in the form of research assistantships and scholarsl~ips from Dr.
Havens, Dr. Krishnamurti and the School of Comput ing Science is gratefuily acknowledged.
Contents
A b s t ract
Quotation
Acknowledgments v
List of Figures ix
1 Preliminaries 1
1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - . . . . - 1
1.2 Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2.1 Relational databases . . . . . . . . . . . . . . . . . . . . . . . . . . . - 3
1 - 2 2 Distributed Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2.3 Mode1 Based Diagnosis . . . . . . . . . . . . . . . . . . . . . . . . . . 6 - 1.2.4 Hypergraph Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . r
1.2.5 Digital Signal Processing . . . . . . . . . . . . . . . . . . . . . . . . . 8
1 . î .6 Pattern Recognition and Classification . . . . . . . . . . . . . . . . . . 8
1.3 Def in i t ions . . . . . . . . . . . . - . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.3.1 Uniform NAESPI . . . . . . . . . . . . . . . . - . . . . . . . . . . . . . 11
1.3.2 c-bounded NAESPI . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.4 R e s u l t s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - . . . . . . . . . 13
1.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4 .5 Variations of t h e algorithm . . . . . . . . . . . . . , . . . . . . . . . . . . . . 63
4.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
4.7 Note . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
5 Average Case Anaiysis 68
5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
5.2 R a n d o m N A E S P I . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
5.3 A v a r i a n t . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.3 --
.5.4 Analysis . . . . . - . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . r t ,
5.5 Concliision . . . . . . . . . . - . - . . - . . . . . . . . . . . . . . . . . . . . . 76
6 Approximation Algorithm for NAESP 77 --
6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . r r
6.2 Approximation Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 6.2.1 1 Appromixat ion -4lgorit hm . . . . . . . . . . . . . . . . . . . . . . . . 80
6.2.2 5 Appro"mation Algorithm . . . . . . . . . . . . . . . . . . . . . . 81
6.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
7 Conclusion and Open problems 84
A List of Symbols 86
Bi bliograp hy 91
List of Figures
3.1 auxiliary graph for the projective plane NAESPI . . . . . . . . . . . . . . . . 43
3.2 1-bounded NAESPI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Chapter 1
Preliminaries
1.1 Introduction
In t his t h a i s we address the worst case and the average case cornplesity of the problern
of determining if a given monotone boolean function is self-dual. We also look a t some
restricted versions of the above problem. A problem ll is said t o be polynornialiy solvable
(o r in class P) if there exists an algorithm A such tha t A solves every instance of ii in t ime
polynomial in t h e Iength of the input. T h e problem II is said t o be non-deterministically
polynomiaily solvable ( o r in class N P ) if t.here esists a non-deterministic algorithm A siich
t h a t A solves every input instance of II in t ime polynomial in the lengtli of t h e input.
A problem II is caLied NP-Hard if cvery problem in N P is polynornially rcducible t o ri.
Problern il is called NP-Complete if i t is in NP and NP-Hard. Co-NP-Complete is t h e class
of problems whose compkment is NP-Complete. T h e work of Ednionds [LS] contains a n
informa1 definition of N P . a notion wliich was later formalized by Cook [IO]. Cook also
showed that t h e problem of deriving a n âssignment which satisfies a given set of clauses
(satisfiabiiity) was NP-Complete. Later Karp [31] reduced a host of other problems t o
the satisfiabiiity problem t o show t h a t they a r e NP-Complete. One of the outstanding
open questions in t h e theory of computational cornplexity is whethcr P = N P . It is widely
bclieved tha t P # NP. Hence, problems which a r e not known t o be NP-Complete o r d o not
have known polynomial time algorithms a re of great interest t o the community. T h c graph
isomorphism problem [21] is a classic example of such a problem; self-duality of monotone
CHAPTER 1. PRELIMINARIES
boolean functions also exhibits this characteristic and has similarity t o graph isomorphism.
.4 potentiaI criticism of the worst case analysis of an algorithm is tha t the csponential
behaviour of the algorithm might be caused by a small set of instances which do not occur
frequently. This problem could be tackled by analyzing the aigorithm for the espected
(average) time. In this thesis we studÿ the worst case and the average case complesity of
algorithms for the problem of self-duaiity of monotone boolean functions and some related
problems. W e show that several special cases of the problem can be solved in polynomial
tinic. The gcnerai problcrn is showed to be solvabIc in quasi-polynomial time.
The problem of determining if a given monotone boolean function is seif-dual arises
in the areas of artificiaI intelligence, databases. boolean circuits. graph thcory, and digital
signal andysis. t o name a few. The problem has received considerablc attention [S. 4. 3.
14. 7, 28. 26, 38. 191 and the exact compiexity of the problem is open t o the best of our
knowledge.
One of the initial conjectures tha t the probIem is Co-NP Complete was answered in the
ncgative bjf Fredman and Khachiyan [19]. who demonstrated the existence of a n 4 ' 0 ( ' 0 ~ n ) i 0 ( 1 )
for solving the problem.' Recent a t tempts a t proring that the problem is in P have met
with little success. The exact relationship with other problems such a s graph isomorphism
is also not known. Furthermore no non-trivial Iower bounds are known on the running timcs
of the algorit iims for this problem.
Problerns in the area of probabilistic knûwledge representation. which arc equivalcnt to
self-duality. have been identified by Khardon [33] and Kavvadias. Papadimitriou and Sideri
[32]. Bioch and Ibaraki [3] describe a host of problems which a re equivalent t o determining
the self-duality of monotone boolean functions. Thcy also address the question of the
existence of incrementally polynomial algorithms for solving the problem of determining
the self-duality of monotone boolean functions, where an algorithm t o enurnerate itcms
a l . n* . . . . ak is incrementallg pofynomial[30. 3-53, if the t ime taken to output t hc ith item a;
is polynomial in the sizes of items ai,a2,. . . , a;-1.
In a related paper [4] they define a decomposition of the problem and give an algorithm
t o determine a minimal canonical decomposition. Bioch and Ibaraki [5] describe an incrc-
mentally polynorniaI algorithm [JI] for generating ail monotone self-dual boolean functions
'It is widely believed that NP-Complcte and Co-NP Cornplete problems are not solvable in ndo(logn)+O(l ) tirne.
C'HA PTER 1. PRELIMINARIES
of n variables. I t haç been shown tha t for 2-monotone [il boolean functions. it is possible
t o check the self-duality in polynornial tirne. Bioch and lbaraki [5] defirie almost self-dual
furictioiis as an approximation t o the class of self-dual functions. They describe an dgo -
rithm based on almost self-duaiity t o determine if a function is self-dual. T h e complexity of
their procedure is exponential in the worst case. Ibaraki and Kameda 1'281 show that every
self-dual function can be decomposed into a set of majority functions over three variables.
This characterization in turn gives an algorithm (though not poiynomial) for checking self-
duality. Makino and Ibaraki [38] define the latency of a monotone boolean ft~nction a n d
relate it t o the complexity of determining if a function is self-dual. Makino [37] investigates
several classes of positive and horn boolean fucctions and exhibits either polynomial time
algorithms or the NP-Completeness of these classes.
In this chapter we describe several applications of the problem of determining seIf-duality
of monotone boolean functions [14]. We recast the problem as a special type of satisfiability
problem and discuss several naturai restrictions of the problem arising in varioiis application
domains which merit sorne detailed study. Section 1.2 describes the applications. Section 1.3
dcscribes some of the basic definitions and the restrictions arising naturally iri the application
domains under which we study the problem in sorne detail in this tliesis. Section 1.4 is a
surnrnarÿ of the results presented in this thesis.
1.2 Applications
Eitcr and Gottlob [14] describe some applications of the problern; wc surnmarize their work
in this section.
1.2.1 Relational databases
One of t he principal design goals for a relational database system is to have a set of schcmcs
which aiiows the storage of information wit hout any unnecessary redundancy. S uch schemes
can be constructed by using some normal foms which satisfy certain constraints on the data .
One such type of constraint is the functional dependency constraint ( to be defined later).
To facilitate the discussion we will introduce some terms. -4 domain is simply a set
of values. A relation is a subset of the Cartesian product of one or more domains. T h e
CHAPTER 1. PRELIMINARIES
members of a relation a re c d e d tuples. A relation can be visuaiized as a table, where each
row is a tuple and cach column corresponds t o a domain. T h e columns are also referred to
as attributes a t times. If t is a tupIe and X a set of a t t r ibutes (domains). t[.Y] denotes the
components of 1 in the attributes of .X, we are given a set of attributes R, and A C R and
B C R.
Definition 1.1 (Functional dependency) The functional d e p n d e n c y cl - B holds o n
R if for euenj relation r ( R ) , and for al1 pairs of tuples t l . t 2 .
Given a set of functional dependencies F over a relation R we denote the closure of F
bÿ Fi which is obtained by using the standard assumptions of reflesivity, transitivity and
symmet ry.
Definition 1.2 (Armstrong Relation) A relation is called a n Armstrong relation zj! ils
functional dependencies satisfies F = F + .
It has been advocated by Mannila and Raiha [39] tha t Armstrong relations arc a good
tool for database design. Hence. the question of determining wliether a given set of fiinctional
dependencies over a relation is equal t o the closure of the functional dependencies is an
interesting problem for the database designer. To s t a t e t he problem formaily. we necd t h e
concept of Boyce-Codd normal form.
Definition 1.3 (Super key) 1; Ç R is called a super key if for any relation r( R ) , for al1
pairs of tupfes t 1 , t 2 such that i l # 1 2 , t l [ l<] # t2[1<].
We require this definition below in the definition of Boyce-Codd normal form.
Definition 1.4 (Boyce-Codd normal form) A relation r ( R ) i s in Boyce-Cdd normal
form if for al1 functional dependencies ,Y - Y , ut least one of the following holds:
X - Y is a t n v i a f functional dependency ( that is Y E ,X),
r X is a super key o f R.
CHAPTER 1. PRELIMINARIES
Mie now define the problem of determining if a given relation r ( R ) together with a set
of functiond dependencies is an Armstrong relation.
PROBLEM: F D RELATIONAL EQUIVALENCE
IST.4ArCE: A relation r ( R ) and a set of functional dependencies in Boyce-Codd normal
form.
QUESTION: 1s R an Arrnst rong relation?
Eiter and Gottlob [14] sllowed t ha t t he above probiem is polynornially equivalent t o the
problem of determining if a hypergraph is saturated (we definc the hypcr graph saturation
problcm later). In Chapter 2, we establish the equivalence of the not al1 equat satisfiability
problem and the hypergraph saturation problem.
1.2.2 Distributed Systems
hfutual exclusion guarantees safc execution of critical operations in distributed systcms.
Mutual exclusion is typically achieved by means of coteries [2].
Definition 1.5 (Coterie) A coterie C = ( Q I , Q 2 , . . . , Q,) is defined as a collection of
sulsets (quorums) Q ; ç (1. . . . , m ) , i = 1 ..n such that euery pair of subsets has a non-ernpty
intersection andV i E (1,. . . , n ) Q; Qj for some j E (1 ?.... n ) .
A group of sites can perform a critical operation only if it contains a quorum frorn the
set C. We need consider only minimal quorums hence the maximality assumption (second
assumption) in the definition of coterie.
Definition 1.6 (Non-dominated coterie) A coterie C is called non-dominated (XD) if
thére does not exist any other coterie Cf such that V Q E C , there is a Q' E C' for tühich
C2' c Q.
N D coteries are of intcrest because of reliability considerations [2]. The following problem
is polynomially equivalent t o the problem of determining if a monotone boolean function is
self-dual.
PROBLEM: ND Coterie
INSTANCE: A coterie C .
QUESTION: 1s C non-dominated?
CNAPTER 1. PRELIMINARIES
1.2.3 Mode1 Based Diagnosis
Diagnostic reasoning, a technique proposed by deKleer and WiUiarns [II] and studied by
Reiter [43], at tcmpts t o identify the dependencies between cornponents of a model and
the discrepancies in the observations. Suppose we have a model for soine circuit and the
output is not correct for a particular input. Diagnosis entails identifying the minimal set
of components such tha t failure of any one component in the set could have causcd the
malfunction. Such a set is caUed a conpict set. A conflict set is minimal if i t does not
contain any other conflict set. A mode1 can now be described as a disjunction of minimal
confiict sets, where each conflict set is a conjunction. For example, let AI be a circuit with
three components { m l , m2, m3} . One of the conflict sets could be ( m l . n2) associated with
some observation c. This means tha t if c has been observed then either one of T R I o r m.2 is
not functioning correctly. To comment on the nature and properties of conflicts we quote
deMeer and Williams from [I l ] .
For complex domains any single symptom can give rise t o a large set of conflicts.
including the set of aU components in the circuit. To reduce the combinatorics of
diagnosis it is essential tha t the set of conflicts be reprcsented and manipulated
concisely. If a set of components is a conflict, t hen every superset of t hat set
must also be a conflict. Thus the set of conflicts can be represented concisely
by only identifying the minimal conflicts, where a conflict is minimal if it hns
no proper subset which is also a conflict. This observation is central t o the
performance of our diagnostic procedure. The g ~ a I of conflict rccopition is t o
identify a complete set of minimal conflicts.
Formaliy, a system is a pair (SD,COh/IPONENTS) where, SD is a set of first order
sentences and COMPONENTS is a finite set of constants. SD contains a unary distin-
guished predicate cailed AB() where A B(z) is interpreted t o mean t ha t x is 'abnormal'. AI,
obseruation of a system is a finite set of first order sentences denoted OBS.
Definition 1.7 (Diagnosis) A diagnosis for (SD, COMPONEIVTS, OBS) is a minimal set
A COMPONENTS such that
SD U O BS U (-4B(c)1c E A} U { i A B ( c ) l c E CO M P O X E N T S - A}
is consistent.
C'HAPTER 1. PRELIMINA RIES
In other words a diagnosis is the smallest set of components such tliat the assumption
that each abnormal component is in the set together with the assumption that aii the other
components are not abnormat is consistent with the observations and the system description.
Definition 1.8 (Conflict set) A Confiict set is a set C C COMPONE.VTS such that
SD w O B S ü { 1 A B ( c ) l c f C)
is consistenl.
Eiter and GottIob 11.11 show the following theorem:
Theorem 1.1 (Eiter and Gottlob [14]) Let C be the set of minimal conflict sets of (SD,
COMPOATENTS, OBS) and D le a set of diagnoses for (SD? COAfPOArE~V'rS. OBS). Giren
C and D for input, deciding if there is an additional diagnoses not contained in D is poly-
nomially equivalent In Co-SIMPLE-II-SA T .
SI-MPLE-H-SAT is the simple hypergraph saturation problem defined below.
1.2.4 Hypergraph Theory
Definition 1.9 (Hypergraph) -4 hypergmph H is pair (K E ) where 17 is a finite set and
E i.5 a jani ly ojjinile subsets of i f .
.A hypergraph is caiied simple il there a r e no pairs of edges E;. Ej such that E; C E j . .A
simple hypergraph is sometimes referrcd t o as a Sperner farnily.
PROBLEM: S I M P L E - H - S A T
IIWTA NCE: -4 simple hypergraph H.
QUESTION: 1s I-I saturated? i.e., is every subset of the vertex set contained in an cdge or
contains a n edge of the hypergraph?
Another problem in hypergraph thcory which is equivalent to self-duality is TRAIW-
HYP. -4 t~nsuersal of a hypergraph N = (V, E) is a set V' Ç V such tha t I/" n Ei # 4 for
al1 E; E E.
Definition 1.10 (Transversal of a hypergraph) The transversal hypergmph T T ( H ) of
a hypeyraph H is the family of all minimal tmnsversals of fi.
CHAPTER 1 . PRELMINARIES
PROBLEM: TRAPU'S-HYP
INSTANCE: T w o hypergraphs 1. a n d G.
QüESTIOrV: 1s T T ( C ) = H, i.e., 1s II a transversal hypergraph of G?
1.2.5 Digital Signal Processing
Here we assume basic familiarity with digital signal processing. Digital d a t a which is being
transmitted has t o be reconstructed a t the receiving end due to noise. If t h e noise is
Gaussian o r additive in na tu re then linear filters suffice for the reconstruction of the data .
If the noise is neither gaussian nor addit ive then Linear filters a re not a viable tooI for d a t a
reconstruction. Also. linear filters t end t o lose crucial high frequency components such as
edges in a digital picture. A new class of non-linear filters calied stack fi1ler.s have been
proposed by Wendt, Coyle and Lin (461 t o get around this problem.
Stack filters can be uniqiiely represented using monotone boolean fiinctions. If the
stack filter identifies some vector x as being noise then the complernent of x cannot be
noise. Hence, i t is in t h e interest of t h e filter designer t o ensure t h a t for every vector and
i t s complement exactly one of t h e m is classified as noise. This problem is equivalent t o
determining if a monotone boolcan function is self-dual.
1 -2 -6 Pattern Recognition and Classification
Suppose we a r e t o corne up with a mode1 which classifies the d a t a into 'good' o r 'bad'
based o n some features. Without loss of generality we can assume t h a t t h e features take
o n boolean values. A good pat tern classifier by definition should be able t o classify every
input pattern. Also, if a n input x is 'good' then its complement cannot be 'good' and vice
versa. Determining if a pat tern classifier has t h e above mentioned property is equivalent t o
determining if some monotone boolean function is self-dual. This problern has applications
in t h e areas of knowledge acquisition a n d d a t a mining [XI.
CHAPTER 1. PRELIMINARIES
1.3 Definitions
I n this section we give some definitions which are used subsequently. Given a boolcan
function f (xi, t p , . . . . xn), its dual denoted by f is defined as follows:
Definition 1.11 (Dual) jd(xf = f ( ~ ) , for a11 vectors x = (x1,x2,. . .. 2,) E { O . 1)".
.A boolean function is monotone if the foiiowing definition holds:
Definition 1.12 (Monotone boolean function) A boolean function f is monotone i / f ( x ) 5 f ( y ) for al1 twclors x 5 y . A ueclor x < y if for euery coonlinate x; < y,.
We are interested in the following problem:
PROBLEM: SELF-DUALITy
IiVSTANCE: A monotone boolean function f in DNF.
QUESTION: 1s f self-dual?
Given such a function / now, we wili construct another problern called the Xot AI1
Equal Satisfiability Problem with Intersection (NAESPI) and show the equivalence of the
two problems. Next we define the KAESPI problem.
PROBLEM: NAESPI
I!VSTANCE: A monotone boolean function / in C N F such tha t every pair of clauses in f
has a non-empty intersection.
QUESTION: 1s therc a boolean vector such tha t every clause contains a t Ieast one variable
set to 1 and a t least one variable set t o O?
In this thesis we show tha t NAESPI is equivalent t o SELF-DU-4LITY. We also investi-
gate the following restrictions of NAESPI:
1 . 6-NAESPI: each clause in the input has at most k variables.
2 . unifornz NAESPI: each clause has t h e same number of variables.
3. c-bounded N A ESPI: Every pair of clauses intersects in a t most c variables.
4. unifunn c-hunded NAESPI: instances which are c-bounded and uniform.
CHA PTER 1 . PRELIMINARIES
5. unijorm c-bounded k-NAESPI: instances of k-NAESPI which are c-bounded a n d uni-
form.
In addition we investigate the NAESPI problem wit h the intersection restriction removed
(called NAESP). NAESP is a generalization of the MAX-CUT problern defined below.
PROBLEM: MAX-CUT
f.MSTA.hTCE: An undirected graph G = ( Y , E ) ; k € En/.
Q IJESTIOIV: A partition of V into S and V - S such t hat the number of edges from S arid
V - S is a t least k.
We describe a simple approximation algorithm for the NAESP problem in this thesis.
It should be noted t h a t c-bounded NAESPI subsumes c-bounded k-NAESPI but we
investigate the lat ter using a cornpletely different approach. It might appear that thesc
restriction a re artificial a t first sight. We argue below tha t these restrictions arise in various
application domains. Also, as advocatcd by Johnson [29]. a good approach t o resolving
the complexity of a problem is t o s tudy the problem under various restrictions. hopcfiilly
gaining enough insigh t t o tackle the general case.
Coteries, originally proposed by Lamport for achieving 'mutual exclusion' in distributed
systems [34], is a general rnechanism which can also be used t o implerncnt coordinator
election [20], and modular redundancy systems for fault-tolerant compu ting [43]. Coteries
when used t o implernent mutual exclusion can be thought of as an esplicit enumcration of
al1 the sets of nodes which can perform the restricted operation sirnultancously. Elemcnts
of the set ( 1 . . . . , m} over which the quorums a re defincd are refcrred t o as nodes a t times
in this chapter.
Reliability is an important issue in a distributed system. We assume tha t undcr failure
if some quorum is the sole survivor then the nodes in the quorum are still connected. This
assumption simplifies the topology issues associated wi t h the underlying network. Failures
can be analyzed either deterministically o r probabiiisticaily. Barbara and Garcia-Molina [2]
dcscribes a deterministic measure of reliability caUed node vuherability of a coterie. Xest , we
argue tha t "uniforrn" coteries a re desirable due t o reliability considerations in a distributed
system.
CHAPTER 1. PRELIMINARIES
1.3.1 Uniforrn NAESPI
Definition 1.13 ( Node Vulnerability) Node vuhembili ty of a coterie C i s the s i t e of
the smallest sulset V of nodes in C such that V has non-empty intersection with euery
quorum in C .
From the definition of node vulnerability t h e following theorem is evident.
Theorem 1.2 [Rnrbam and Garcia-Molina [2]] If S is a non-domina t~d coterie. then ils
node txilnembility is the cardinality of the smallest quorum in S .
Theorem 1.2 implies that t h e best choices as far as node vulnerability is considered for
non-dominated coteries are uniform coteries with quorum sizes 2 for odd n and + 1 o r 2 for even n. Hence Barbara and Garcia-Molina [2] define uniform coteries.
Definition 1.14 (Uniform coteries) A coterie is k-uniform if it is non-dominuted und
al1 i ts quorums are of size k. A k-uniform coterie for some k i s cnlled unifomz colcrie.
Given tha t we are interested in finding non-dominated coteries with t h e highest node
vulnerability, we are interested in dctermining if a given uniform coterie is non-dorninated.
Hence it is naturaI to study the NAESPI problem under the uniformity restriction.
1.3.2 c-bounded NAESPI
Maekawa [36] describes an algorithm tha t uses c f l messages t o achieve niutual cxclusiori
in a distributed nctwork with iV nodes for some constant c. It is aIso known t h a t 3 0 is a
lower bound on the number of messages needed t o achieve mutual excIusion. T h e aigorithm
of Maekawa [36] relies on coteries with t h e additional properties listed below. In what
foLiows, a coterie is denoted C and t h e i th quorum in C is denoted Q;. !V is t h e numbcr of
nodes over whicli the coterie is defined.
1. Q;. 1 5 i < N , always contains i.
2. Each Q; is of size IC.
3. -4ny node j E (1.. .N) belongs t o t h e sarne number of quorums.
CHA PTER 1 . PRELIMINARIES
The first property sirnplÿ reduces the number of messages sent or received by amy node.
T h e second property ensures tha t al1 the nodes receive and send the same nurnber of mes-
sages t o achieve mutua1 exclusion. T h e third property s t a tes t hat each node serves as a n
arbitrator for t h e same number of nodes. If Ii- is a power of some prime p then such a coterie
corresponds t o a finite projective plane of order p [l]. For other values of K. Maekawa [3G]
describes sorne met hods for generating coteries wi t h t h e desired propertics. We dcscribe
another method t o obta in coteries with the properties s ta ted above.
Let graph G, be a union of ( n + 1) cliques {QI, Qz, . . . Q,+I ) of sizc n such tha t cvery
two cliques intersect in exactly one vertex. CVe define C = {QI, Q2,. . .Q,+, ) t o be a
coterie. Since G , obeys t h e rninimaiity and intersection property. C is a coterie. G, can
be constructed in the following fashion. Vertices of G , a r e ail the Y-subsets of the set,
(1.2. . . ., n). There is a n edge between two vertices if t h e corresponding sets have a non-
empty intersection. It is easy t o see tha t G , s o constructed has ( n + 1) cliques of size n.
T h e to ta l number of nodes in G, is (:). We now need to assign a quorum to every vertes
in G,. As there a re only (n + 1) quorums but (2) vertices. each quorum would be assigned
t o q = (;)/(n + 1) vertices.
T h e quorums of a coterie derived using the mechanism outlined above for I< = 5 arc
shown below:
In such a coterie li = d m - 1. Therefore t h e number of messages is at rnost
21c = 2&/5JN versus the lower bound of 3 f i [36]. Furthermore, each j E { l . . . N )
bclongs t o a t most 2 quorums. Also, IQ; n Q j l = 1 for d l i # j E (1 . . . N ) . This coterie
is non-dominated but is almost optimal in terms of t h e number of messages needed t o
achieve mutuai exclusion. T h e relationship between t h e non-domination of coteries and the
CHAPTER 1. PRELIMIIVARIES
minimum nimber of messages needed t o a t tain mut ual exclusion has not been st udied to
the best of our knowledge.
We argue tha t the class of coteries presented above is almost optimal in the nurnber
of messages needed t o achieve mut ua1 excIusion. Furt herrnore t hese coteries have bounded
intersection in the clauses. Tha t is, for any two quorums Q i , Q j . jQi n Q j l 5 c for sorne
constant c. Hence it might be a good idea t o determine the exact complexity of the c-
lounded-unïjorm-.VA ESPI problern. where c-bounded-uniform-NAESPI is equivalen t to the
c-bounded-uniform-coteries. It would aiso be fruitful t o study a generalization of the c-
bounded-uniform KAESPI in which the uniforrnity condition is dropped ( the class c-bounded
NAESPI). In the next section we outline Our contributions.
1.4 Results
In this thesis we first establish the equivalence between NAESPI and SeIf-duality. We de-
scribe an ~ ( n ~ ' ~ g " ~ ' ) algorithm for solving the NAESPI problem. Our bound o f ~ ( n ~ ' ~ ~ " + ~ )
is strictly worse than the running tirne of t he algorithm proposed by Fredman and Khachiyan
[19] which is ~ ( n ~ ~ ( l ~ g " ) + ~ ( l ) ) , but our aigorithm is simple. with a simplcr analysis of the
running time and the approach is different from the approach of Fredman and Iihacliiyan.
Ive also show tha t an adaption of our algorithm using the technique of Fredman and
Iihachiyan runs in 0 (n40( '0~n)+o(1) ) time. W e also show that the bound is tight for the
given algorithm and provide an average case analysis of an adaptation of our algorithm for
a randomly generated instance of NASEPI. The average case running time is
1 1 2+0(log ;-+) r n a x { ~ ( n ~ - ~ ~ ) , 0 ( n 3 log2 n), O(- - -) P fi 1 ?
where p is the probability with which t he instance is generated. LVe show that k-YAESPI
and c-bounded NAESPI can be solved in ~ ( ( n k ) " ' ) and 0 (n2C+2) tirne. WC also describc
an algorithm linear in n for the k-NAESPI problern. We show that for unifonn-c-boundcd
NAESPI the number of clauses n is bounded. We also show that finding special types of
solutions to the XAESPI problem is NP-Complete. Finally we dcscribe an approximation
algorithrn for the NAESP problern (where the intersection property is relaxed).
T h e organization of the thesis is as follows, Chapter 2 shows the equivalence between
NAESPI and Self-duaiity, and provides an ~ ( ( n k ) ~ + ' ) algorithrn for solving the k-NAESPI
CHA PTER 1. PRELMINARIES
problem. T h e algorithm is then improved t o an algorithm, t ha t is linear in the number
of clauses n. It also shows that finding a 'particular' type of solutions t o NAESPI is NP-
Complete. We also give an alternate characterization of nlmost self-dual functioris in terms
of NAESPI instances which do not admit easy solutions.
Chapter 3 shows tha t for c-bounded k-NAESPI, the number of clauses is bounded.
This bound on the number of clauses implies tha t c-bounded kNAESPI can be solveci in
O(nc+' k ) time for some constants c and k. We show tha t c-bounded NAESPI can be solved
in 0 ( n 2 c + 2 ) time. -4s c-bounded k-NAESPI is a subclass of c-bounded SAESPI the lat ter
result is weaker.
Chapter 4 describes an 0(n210gn+2) algorithm for solving NAESPI. We show tha t the
analysis is tight and ruie out some obvious modifications which could be made t o the algo-
rithm t o improve its complexity.
Chapter 5 describcs a way of generating NAESPI instances using random graphs. CVe
describe a variant of our basic algorithm for solving N,;\ESPI. This variant is based on the
observations of Fredman and Kliachiyan [19]. WC show tha t the new algorithm terrninates
in ~ ( n . " ' ( ~ ~ ~ " ) + ~ ( ' ) ) time. We aIso present an average case analysis for the new algoritlim.
givcn that the input instances a re generated in a random way. The average case riinning
time is 1 1 Z+o(log ;- '
r n a x { ~ ( n ~ . ~ ~ ) . 0 ( n 3 log2 n): O(- - -) 3)). p fi
~vhere p is the probability with which the instance is generated.
Chapter 6 describes a & approximation algorithm for the XAESP. where s is the
minimum number of variabIes in cach clause.
1.5 Conclusion
In this chapter we introduced the problem of determining if a monotone boolean function
is self-dual. We identified several applications of the problem. We also defined the Not
Al1 Equal Satisfiability Problem with Intersection (NAESPI) and severai restrictions t o it.
We discussed the relevance of t h e restricted versions of NAESPI t o the application areas.
Finally, we outiined the contributions made in this thesis. We hope t ha t the results presented
in this thesis would lead t o an improved understanding of issues related to the problem of
CHAPTER 1 . PRELIMINA RIES
sel f-duali ty.
Chapter 2
NAESPI and Self-duality
2.1 Introduction
In this chapter we introduce the problern of determining wtiether a monotone boolean func-
tion is self-dual. CVe also introduce t h e not aU eqiial satisfiability problem with only positive
LjteraIs (XAESP). Next we show t h a t self-duality of monotone boolean functions is ccluiv-
alent t o the satisfiability of a special type of NAESP problem. which we refer t o as the
SA ESPI problem. Having establislied the equivalence of the t ~ + o problems. we will idcntify
two special cases of NAESPI which can be solved in polynomial time. One of these is tanta-
niount t o restricting the definition of a solution t o the NAESPI. We study t h e relationship
of this ciass of NAESPI instances t o t h e class of afmost seif-dual functions defined by Bioch
and Ibaraki [ 5 ] . For another type of restriction on the solution t o NAESPI. we show t h a t
t h e problem is NP-Complete. We then describe an ~ ( ( n l ; ) ~ + ' ) algorithm for solving the
k N A E S P I problem. Finaiiy, we improve t h e running t ime algorithm of the algorithm for
the k-N-4ESPI problem t o ( 0 ( ( 2 q k n k ) ) . which is linear in n.
2 -2 Self-duality of Monotone Boolean Funct ions
llven a First let us recapitulate some of t he definitions presented in the previous chapter. C e boolean function f (x i , zz, . . . , x,), we define its dual denoted by f as foiiows:
CHAPTER 2. N A E S P I AND S E L F - D O A L I T Y
Definition 2.1 (Dual) f d ( x ) = /(if), for al1 uectors x = (xi, xz, . . . , x,) E (O, 11".
Next we define monotone boolean functions.
Definition 2.2 (Monotone boolean function) A boolean function f is monotone if f(z) 5 f ( y ) for al1 uectors x 5 y . -4 vector x < y if for et.enJ coordinate xi 5 y ; , ( O < 1).
Equivâlently, a boolean function is monotone if it has a D N F witliout any negativc
literals. If a monotone function f is in disjunctive normal form (DNF) then f can be
obtained by interchanging every and operator with an or operator and vice versa. f d will
then be in conjunctive normal form (CNF).
Self-Duality can now be defiried as:
PROBLEM: Self-Duality.
IArSTA NCE: A boolean function f (zl, x2,. . . , x,).
QUESTION: 1s f d ( x ) = / (x) for every vector x E {O. 1)".
From the definition of self-duaiity it follows that:
Property 1 .A boolean function f is self-dual for al1 vectors x E { O . 1)". f ( x ) # f ( x ) .
Determining i f an arbit rary boolean function f ( not necessarily monotone) is self-dual
is Co-NP Hard. However, whether a monotone function is self-dual can be determined i n
polynomial time is stiU open. Self-duality of monotone boolean functions was believed to
b t a strong contender for a Co-NP Comptete problem [20] until Fredman and Khacliiyari
[19] discovered a n40('09(n))c0(1) algorithm for the problern.
W e can assume tha t the monotone function f whose self-duality we are interestcd in is
in disjiinctive normal forrn. Given a DNF representation of the monotone function /. ive
can think o f f as being cornprised of terms, where al1 the variables in a term are connected
by the and operator and al1 t h e terms a r e connected by the or operator.
Next we show tha t if there cxists a pair of terms in monotone function f whicti do not
intersect in any variable, then f is not self-dual. This observation is also implicit in [19].
Lemma 2.1 If there exists a pair of non-intersecting terms in a monotone function f thcn
f is nnt self-dual.
CHA PTER 2. N A ESPI AND SELF-DUA LITY
Proof: Let Ti and T2 be two such terms. Let x be a {O, 1)" vector in which al1 the variables
in Tl are set t o 1 and the variables in T2 are set t o O. The rernaining variables are arbitrarily
set t o O o r 1. f (x) = 1 as the term Ti evaluates t o 1. Also, f (5) = i as T2 evaluates to 1 .
Hence by Property 1 f is not self-dual.
Lemma 2.1 ailows us t o focus only on those monotone boolean functions in which every
pair of terms has a rion-empty intersection. Hencefortb we will assunie that al1 mono-
tone boolean functions under consideration have this pair-wise intersection propcrty. Such
monotone boolean functions are aiso referred t o as duai-minor functions [28].
i lnother assumption which we will use throughout this thesis is the following:
Property 2 Every variable in f belongs t o a t least two terms in f.
This assumption is valid because the variables which belong only to a single term can
be used t o satisfy the term once some variables are set t o a value of 1 or O in the tcrm.
Propcrty 2 coupled with Lemma 2.1 implies that each term has a t most n variables wherc
n is thc total number of clauses in f . Therefore the total number of variables m 5 n2 in f .
Ii'ST-4 NCE: -4 collection of terms T = (Tl. T2, . . . , T,) , Ti E V = { u l . 2'2.. . . .27,). such
t h a t every pair of terms Ti, Ti has a non-empty intersection.
QUESTION: 1s tticre a set S C V such t ha t S contains at lcast one clemcnt from every
term and no term is contained inside S.
The next lemma states tha t the complement of a solution t o a given NiIESPI problern
P(f ) is also a solution t o P(f).
Lemma 2.2 If S is solution to a giuen N A ESPi problern P ( / ) then su is .$.
CVe are interested in the self-duality of / in DNF forrn. Let P(f ) be the NAESPI
problem obtained by treating each term of f as a clause in P(I). For example, if / =
( x l A 5 2 ) v (xl A 23) v (x2 A 5 3 ) then P( f ) = ( X I v x2 ) A ( X I V 23) A ( 2 2 V 23). Evcry pair
of clarises in P( f ) obeys the intersection property as f obeys the intersection property. The
next lemma asserts t ha t f is not self-dual if and only if P(f) is satisfiable.
Lemma 2.3 / is not self-dual t=> IVAESPI P( f ) is salisfiable.
CHAP TER 2. NAESPI AKD SELF-DUALITY 19
Proof: + Assume tha t f is not self-dual. By Property 1 we have a vector x such that
f ( x ) = f (5). There are two cases:
/ ( x ) = f ( 3 ) = 1 . Let Ti be the term in f which evaluates t o 1 for x. For x. Ti evaluates t o O. As Ti intersects every clause in f , each term in f has a t least one
variable set t o O. This is a contradiction as f ( z ) = 1 . Hence this case cannot happen.
This also arnounts t o saying that the function is not dual-minor. hence it cannot be
self-dual.
f ( x ) = f ( 3 ) = O . Each term in f contains a t least one O because f ( x ) = O. SimiIarly
each term in f contains a t least one 1 as f ( 3 ) = O. Let S be thc union of ail the
variables in f , which are assigncd t o 1 in the vcctor x. Thus S contains a t least one
element from each term in P( j ) and does not contain at least one elcrnent from each
term in P(f). Hence Sintersects every clause in P(f) but does not contain any clause
in P ( ' . Therefore, S is a valid solution.
e Given a solution S t o P(f l? Iet x E { O . 1 ) " be the vector constructed in the following
way :
Clearly. f ( z ) = O. Since S is alço a solution t o P o (by Lernrna 2.2 . taking the
characteristic irector x of s implies f (i.) = O . Hence by Property 1 f is not self-dual. U
In this section we have established the equivalerice of NAESPI and the complement of
self-duality of monotone boolean functions. In the next section we describe two particular
types of solutions to N.4ESPI which can be computed in polynornial time.
2.3 Easily obtainable solution types
Definition 2.3 (Easy solution) Given an NAESPlproblem P(f ) , let S be a solution such
that S is contained in sorne clause of P(f). We call S an easy solution îo P(f) .
Definition 2.4 (Easily satisfiable) A n NAESPI problern is easily satisfiable if il admils
an easy solution.
CHAPTER 2. NAESPI AND SELF-D UALIT1'
Given an easy solution S to the NAESPI problem P(f), we show that eit her there esists
a clause C E P(f ) such tha t C intersects S in al1 but one variable from C or we can augment
S until the above mentioned property is true. Armed with this fact we can try out al1 the
possibIe valid subsets t o see if any one of them is a solution. As the numher of valid subsets
is polynomial in n, we terminate in time polynomiai in n. More formally we need the
iollowing lemma:
Lemma 2.4 Let S be an easy solution to the NAESPI problem P(f) . S can k exlended to
another easy solution S' svch that for a clause C E P( f ), fC n S'i = ICI - 1.
Proof: Let Co be the clause which contains S. Let a be a n elernent of not in S. Let
S' = S U (a). If S' is not a solution t o P(j), then there is some clause C = S', in which case
/C n SI = /CI - 1. M;e keep adding elernents t o S iteratively.
Lemma 2.4 implics tha t if for every clause C, we t ry a.li the ICI subsets of C' of size
ICI - 1 we should obtain our easy solution if one exists, Let n be the nurnber of ctauscs in
P(f ) . It takes 0(n2) tirne to verify if a given subset is a solution to P(f ) . As there are a t
most n x ICI 5 n x n subsets which have t o be tried. we caii find an easy solution (if one
exists) t o the problem P ( f ) in 0(n4) time.
It should be noted that Lemma 2.4 is valid for NAESPI problems even i f we drop the
requirement that every pair of clauses ticas a non-empty interscct ion.
Nest we show that i f every pair of clauses in a given NAESPI problem P(f) always
intersects in more than one variable then P( f ) is trivially satisfiable.
Lemma 2.5 NAESPI with cadinality of inlersection 2 2 is always solvable.
Proof: Let C be the clause which does not properly contain any other clause (such a cIause
always exists). Let the cardinality of this clause be m. Pick any m - 1 elements frorn this
clause and denote this set S. We claim that S is a solution. Sincc C intersects every ottier
clause in a t least two variables, S has t o have a variable common with every clause. No
clause can have al1 its Lterals set to 1 either. This follows from the fact that every otlier
clause contains a literal not in C and that literal is assigned a value of O. rn As we wiU see in the next section, NAESPI instances which are not easily satisfiable
give an alternate characterization of almost self-dual functions as an approximation t o the
class of self-dual functions proposed by Bioch and Ibaraki [.5].
CHA PTER 2. NAESPI AhrD SELF-DUALITY
2 -4 NAESPI and Almost Self-Dual functions
In this section wc study t h e relationship between easily satisfiable NAESPI instances and
almost self-dual functions [5]. In particular we give a n alternative characterization of al-
most self-dua1 functions. We assume t h a t t h e inputs (monotone boolean functions) a re in
disjunctive normal form. We begin with some more definitions.
Definition 2.5 (Dual-minor) f is dual-minor if f 5 fd.
Given w , a minterm of f, we represent by 15 t h e product of ail the variables which are
not in w but are in f . wd is t h e dual of W .
Definition 2.6 (Sub-dual) Subdual of a junction j is dejined as CYEI wwd, whem w
is a minterm in f.
Definition 2.7 (Almost dual-major) A junction f is almost dual-major if jS < f.
A function f (in DNF) is satisfiable if there exists a vector x E { O 1 1)" such tha t sorne
term evaIuates t o 1. T h e set of variables set t o 1 is referred t o as the solution set S. f is
easily satisfiable if the solution set S is properly contained in some term in f .
Definition 2.8 (Almost self-dual) A function / is called almost self-dual if f is almost
dual-major and ut the same tirne dual-minor.
By definition al1 self-dual functions a r e almost self-dual but the converse is not true.
The following is one sucli example from the paper of Bioch and Ibaraki [.?il at tr ibuted to
Makino.
Example 2.1
f = ( ~ A ~ A ~ ~ ) V ( ~ A ~ A - ~ ) V ( ~ A ~ A ~ )
V ( l ~ 3 A 6 ) V ( l ~ 3 ~ 6 ) ~ ( 2 ~ 3 ~ 5 )
v ( 2 A 3 A 6 ) V ( 2 A t i A 6 ) V ( 3 A 4 / \ 5 )
CHAPTER 2. ArAESPl AND SELF-DüALITY
The next theorem characterizes almost self-dual functions in t e rms of instances of NAE-
SPI which admi t easy solutions.
Lernrna 2.6 A monotone boolean function f is almos! self-duo1 c--- f = P( f) does nnt
hace any easy solution.
Proof: Given a n a lmost self-dual function f , we want to prove t h a t fd is not casily
satisfiable. As f is self-dual, f s 5 f . which implies fd 5 Suppose t h a t f d is
easily satisfiable. This irnplies ( fSld evaluates t o 1 on the s a m e vector x. Lct x hc propcrly
contained inside clause C E f d . But in (fs)d we have C as a clause and as ( f.ld is in
conjunctive normal form, x is not a solution t o f.
e Given t h a t fd does not have any easy solution, wc want t o show tha t f d 5 ( f S ) d .
Suppose tha t f d ( x ) = 1 for sorne vector x. We want t o show t h a t ( f S j d ( x ) = 1 on t h e s a m c
vector x . As t h e solution to fd is a s t rong solution, it intersects every clause in ( f S ) d . It
cannot contain a clause in ( J')~. otherwise the solution would have been a n casy solution.
f is dual-minor because / has t he intersection property. Th i s follows from the fact t h a t
Vx E (O, l}" (/(x) = f(S)) # 1, else we have two terrns Ti, T, in f such t h a t Ti n T, = Q. W
CHAPllER 2. NAESPI AND SELF-DUA LlTY 23
Bioch a n d Ibaraki [5] also defirie a n operator p on monotone boolean functions which
preserves self-duaiity. Given f a n d a minterm w of f . p , ( f ) = w + u7wd + ( / \ w ) . where
A \ B denotes elements t ha t a r e in t h e se t A but not in t h e set B.
An analogous opera tor for t h e KAESPI can be defined. Given a NAESPI problem P { f j .
we define p for a clause C aç p c ( P ( f ) ) = C /r {Vu E C (C v v ) ) A ( P ( f ) \ C). Let us look a t
t h e foliowing KAESPI defined by the projective plane of order 3.
Example 2.2
T h e n p appiied on clause ( 1, '2.3) is
I t should be noted t h a t the application of this opera tor does not return an instance in
minimal form, in t h a t there might be clauses which contain o the r clauses in the probIem.
It has been shown in [5] t ha t if f is a self-dual function then any nuniber of applications
of the p opera tor preserves seIf duaiity. If f is not self-duai then it can happen t h a t after
repeated applications of t h e p operator. the instance can becorne easily satisfiable. This
characterization leads to t h e following algorithm for detecting self-duality (proposed in [.5]).
T h e input is a monotone boolean function of m variables. We a r e interested in detcrrnining
if f is self-dual. Let g be a known self-dual function over m variables. For a function f . the
set of ail t rue (false) vectors is denoted Dy T ( f ) ( F ( f ) ) respectiveiy . T h e minima1 set of
true (false) vcctors is denoted by min(T( f ) ) ( r n i n ( F ( f ) ) ) respectively. T h e algorithm is as
follows:
1. If f = g re turn yes
2. If either f < g o r f has an easy solution then o u t p u t no a n d halt.
3. Take some w E rnin(T( 1 ) ) n F ( g ) ) and let f = p,( f ) a n d return t o Step 1-
1t hasi been argued in [3] t ha t t h e above mentioned algori thm is not polynomial. The
complexity of th is procedure is a function of \T(j) \ T(g) l .
It should be noted t h a t bu rcpeated applications of t h e p, operator. we might obtain a
probIem which contains strictly fewer variables t h a n in t h e original problem. Th i s observa-
tion suggests t h e following variation o n the algorithm proposed in [5] .
M:c? a r e given a n instance P ( f ) of NAESPI with m v a r i a b ~ c s . ~ WC want t o detcrmine i f
t h e input is unsatisfiable, using t h e rccursive procedure outlined below.
1. Let C be the smdes t - s i zed clause. If P ( f ) = pc( P( f ) ) contains fcwer riumber of
variabtes t h a n t h e original problem , then solve P ( I ) = p c ( P ( / ) ) recursively.
'2. If t h e number of variables is 3 and if P( f ) is isomorphic t o f3 (defined below) thcn
return unsatisfiable else return satisfiable. - --
'We use n to denote the nurnber of clauses in P( f ) hence the choice of m.
C'WAPTER 2. NA ESPI AND SELF-DUA LITY
T h i s algorithm was tested o n unsatisfiable instances of NAESPI generated according to
t h e foilowing definition.
2. f i for odd i contains all t he clauses in /i-2 augrnented once with variable i oncc and
once with variable i - 1. T h e last clause is ( i v i - 1).
An cxample of a n unsatisfiable XAESPI with 5 bariables generated according to t h e
method outiined above is given below.
Example 2.3
Mre a r e interested in the number of s teps needed t o reduce the nuniber of variables in t h e
problem a t which point it can be solved recursively. As the nurnber of clauses is exponential
in the number of variables, t h e maximum problem size we tried tiad 15 variables.
T h e first column in the following table is t h e number of variables in t hc problem and
t h e second coliimn is t he number or p iterations needed to reduce t h e size of t h e problem
by one variable.
CHAPTER 2. N A E S P I A N D SELF-DUALITY
1 Number of Variables 11 Nurnber of p Iterations
We can also analyze a randomized variation of this algorithm theoretically. Let us
consider t h e following variation, where in Step 2 of t h e algorithm instead of ciioosing the
srnailest-sized clause we choose a clause a t random. T h e algorithm can be analyzed by using
t h e graph defined in [SI. G = (V, E ) is an undirected graph, with V as the set of aU the
self-dual functions over m variables. There is a n edge (P( f ) ? P ( f )') i f pc( P(f ) ) = P( f )' ( th is nieans t h a t by applying p on P ( / ) we obtain P(J) ' . T h e next lemma gives us a lower
bound on t h e number of self-dual functions on m variables. In t h e variation of the aIgorittim
we a re interested in. the algorithm can now be t hought of as a random wa.lk on the graph
G. As G is connected [SI? the expected number of steps needed t o reach a vertex from any
specified vertex is O( 1 vI2 ) [do].
Let SV(m) be t h e number of self-dual functions of m variables. The following bound
on SD(m) establishes tha t the number of vertices in t h e graph G under consideration is
exponential in m.
Proofi SV(m) > 2 x SV(m - 2) for odd m. T h e first instance is obtained by the reciirsive
construction shown above. T h c second orle is obtained by applying the p(m - 1 V m)(P(f ) )
operator. T h e prcvious recurrence gives the bound rnentioned above. I
Therefore, in t h e worst case, the p operator might have t o be applied SV(m) times until (Z)
the nurnber of variables can be decrernented by 1. In fact, i t is known tliat S D ( m ) > 2 [20]. This was brought t o Our attention by Ibaraki.
CHAPTER 2. NAESPI AND SELF-DLfALITY
In this section we show that finding a particular type of solution (called strong solution)
t o NASEPI is NP-Complete. 7'0 attain this, we first show tha t finding strong solutions
t o NAESP is NP-Complete, Observe that this does imply NP-Completeness of fi~iding a
solution to NAESPI. An explanation of this fact is given a t the end of this section.
Definition 2.9 (NAESP) The generalized version of NA ESPl where the inîersecîion prop-
erty need no: hold i s called NAESP.
Definition 2.10 (Strong Solution) A solution S to hrA ESPI is a strong solution i l mi-
ther S nor s is an easy solution.
Definition 2.1 1 (Strongly satisfiable) 11 n instance of N.4 ESPI i s s t rongly satisfiablc if
it udmits a strong solution.
2.5.1 Finding strong solutions to NAESPI is NP-Complete
Definition 2.12 A n instance of NA ESP is called irredundant if it has t2o clause which
contnins any other clause.
Hencefort h, we will assume tha t tlic givcn NAESP problem is irredundant. WC will
reduce 3-NAES (Not AU Equal Satisfiability with three literals) a well-knowri NP-Complctc
problem [21] to irredundant SYAESP, thereby establishing the XP-Completeness of irrc-
dundant NAESP.
Lemma 2.8 Irredundant N A ESP is NP-Complete.
Proof: Let m be the number of clauses and n the number of variables in 3-N-\ES. We replace
each z; with a new variable xn+; in al1 the clauses. For al1 ( x i , q ) we add the following four
clauses (xi v x,+; V a) A (xi V xn+; V 6) A ( x i V x,+; V c ) A (a V 6 v c ) . T h e N A E S P problem
s o generated is irredundant.
+ If 3-NAES is satisfiable then the set of clauses generated is also satisfiable. The
solution is obtained by setting x,+; t o the same value as L; and a to O and 6, c t o 1.
CHAPTER 2. NAESPI AND SELF-DUALITY
e If the newly generated set of clauses is satisfiable then the solution to 3-XAES is
obtained by setting t o the same value as x,+;. This assignment clearly satisfies ail the
clauses. We have t o show that a variable and its negation are not both 1 or O in the solution.
If this were the case then the clause (a v b V c) would not be satisfied. B
Lemma 2.9 Finding strong solutions to imiiundant NA ESP is NP-Complete.
Proof= Let I be the sct of al1 t hc instances of irredundant NAESP. I can be divided into two
sets: the first set admits only easy solutions and the remaining set admits strong solutions.
If we can find strong solutions t o NAESP in polynomial time then in the same amount of
time we can determine the satisfiability of irredundant NAESP. Hence determining strong
solutions is as hard as determining solutions t o NAESP.
Lemma 2.10 Finding strong solutions to N A ESPJ is NP-Complete.
Proof: We reduce N A E S P problems which admit only strong solutions t o XAESPI. C' liven
a n instance P of NAESP. let -4 be the set of clauses which contain some variable denotcd '1'.
Let B be the remaining set of clauses, If there are n variables in P then the cornpicment of
a clause is defined as the set complement of the variables in the clause. iVe define P ( / ) as
A U B' where every clause in B is complemented in B'. P ( f ) clearly obcys the intersection
property as ail the clauses contain variable 1.
Next we need to prove that S is a strong solution t o P S is also a strong solution
t o P(f )-
a Let S be a strong solution t o P, Clearly S intersects every clause in P ( / ) . Ttierc are
two cases:
1. Let q be a clause in P ( f ) and S C q. Clearly 4 # A since S is a strong solution. Thus
q E B'. This impiies Q E B, which contradicts the fact that S is a solution t o P , as S
does not intersect with Q.
2 . q E P ( f ) C S . Again g E B'. Since S is solution s C q. This violatcs the fact tliat S
was a solution t o P.
CHAPTER 2. NAESPI AND SELF-DUALlTY
1. Let q be a clause in P and S c q. Clearly q & A since S is a strong solution. Thus
q E Br. This implies q E B'. which contradicts with the fact tha t S is a solution t o
P ( f ) , as S does not intersect with q.
2. q E P C S. Again q E B'. Since S is solution 5 C q. This violates the fact that S
was a solution t o P(f) .
It should be noted tha t NP-Completcncss of finding strong solutions to N.4ESPI does
not irnply tha t finding a solution to N.4ESPI is NP-Complcte, as in oiir constriiction clvery
instance of N-4ESPI has an easy solution: the variable denoted '1'.
2.6 The constant case
In this section we study k-N.4ESPI in which evcry clause has a t most k variables for some
constant k. First we show that 3-NAESPI can be solved in polynomial time. A straight
forward generalization of the SNAESPI result t o any constant k does not work but wc
present a n algorit hm which solves the k-NAESPI problem with n clauses for any coiistant k
in ~ ( ( n t ) " ' ) t,ime. We then improve on the complexity of the previous algorithm t o acliieve
an 0((2~))"nl;) algorithm. The 0((2qknk) algorithm for solving BNAESPI is obtaincd
by rnodifying the 0((nk)'+' ) algorithrn. For the salie of exposition we present both the
algorithnis in this section even tliough 0 ( ( 2 ~ ) ~ n k ) algorithrn clcarly has a better runriirig
tirnc than the O((nk)" ' ) algorithrn.
In this section we demonst rate a polynomial-time algorit hm for the .?-NA ES PI problem.
Each clause in $NAESPI probIem contains a t most 3 variables, t herefore a t ha s t one of the
six assignments of O/l's t o the variables in every clause should be estendible to a solution,
if t he problem were satisfiable. Our approach is t o show tliat for each of t hese assignments
the subproblcm is a 2-SAT problem. As 2-SAT can be solved in time linear in the number
of clauses in the problem, the algorit hm for 3-N.4ESPI terminates in polynomial-time.
For the purpose of exposition, consider the following 3-NAES PI:
CHAPTER 2. NAESPI A N D SELF-DUALITY
Let us say t ha t we are goirig t o t ry out ail the 6 assignments of 1's and 0's t o the
variables in the first clause ( 1 V 2 V 3). Suppose that the first assignrnent we t ry is variables
1 and 2 set t o O and variable 3 set t o 1. With this assignrnent we get two sets of clauses, P
and A'. where set P comprises only those clauses which intersect the first clause only in the
variables set t o 1, and set N comprises clauses which intersect the first clause only in the
variables set t o O. Clauses containing bot h types of variables can be ignored. For the above
csample,
P = (:3 v 4 v .5) A (3 v G v 7)
and
1V = ( l V 5 ~ 6 ) ~ ( 1 ~ 4 ~ 7 ) ~ ( 2 ~ 5 ~ 7 )
No clause in t he set P can have al1 the variables set to 1. This is equivalent t o saying
t hat the following clauses a re satisfiable:
,USO. every clause in t he set 1V has t o contain a t least one variable set to 1. This is
equivalent t o saying tliat the set
is satisfiable. Combining the previous two sets of clauses wllich have to be satisfied, we can
say that the assignment of O/l's t o the variables 1,2,3 can be estcnded to a solution if the
set P N of clauses is satisfiable:
Since P N is a YS.4T problern, we can solve it in polynornial timc. Formally we can
s ta te the result as the following t heorem:
T heorem 2.1 3-NA ESPI is polynornially solvable.
Proof: Let the variables in a clause C be assigned 0/1 values. If a literal is assigned value 1
we say t hat it is in the solution. We now generate two sets of clauses, P and N . P comprises
those clauses which intersect C only in the variables which a r e assigned value 1. Similarly
C'HAPTER 2. NAESPI A N D SELF-DCTALITY 3 1
N comprises those clauses which intersect C only in the variables which a re assigned value
zero. Clauses which intersect C in variables which have values O and 1 are discarded since
they are already satisfied. Kext wc remove from P and IV ail the variables t ha t have been
assigned a value. Now ail the clauses in N have t o be satisfied and no clause in P can
have aii the variables set t o 1. Clauses in t he set P can be written down as satisfiability
conditions by complementing each literal in the clause. Let this set be denoted by P'. P'u Ar
is YSAT which can be solved in polynomial time. It should be noted tha t because of the
intersection property we have covered aii the clauses in the original problem. If the new
problern is satisfiable we have a solution: otherwise, we change our assignment of values to
t he variables in C. Since there are a t most six different assignments t o be tried. the overall
tirne taken is linear in t he number of clauses. W
In this section we describe a O((nk) '+ l ) algorit hm for solving the k-NAES PI problem. For
a given clause in the P-NAESPI problem, there are a t most k assignments of O/l's t o the
variables which set esactly one of the variables in the clause to 1 and t he rest of the variables
t o O. We c a l such an assignment a 10' assignment. The algorithm operates in stages. For
eacli subproblcm j in stage i let UiSj be the set of clauses which d o not contain any variable
set t o 1, the algorithm tries out al1 the P possible assignments of the type 10' for al1 the
clauses in Ci;,j. If a t most k stages are needed by the algorithm then tlie totaI arnount of
effort needed is O((nk)'+').
Let us demonstrate t he algorithm by means of the following examplc in which the clauses
have been ordered from left t o right:
Ui, i initially is the set of al1 the clauses In Stage 1. the algorithm has t o t ry out three
possible assignments each for the four clauses. By x - a we denote t he fact t ha t variable x
has been assigned the value a. T h e 12 assignments which the algorithm tries ou t in Stage
1 are:
CHAPTER 2. NAESPI ,4ND SELF-DUALITY
Thi s rneans t h a t in S t a g e 2 t he re a r e n x X. subprobIem(s) conta in ing a t mos t n - 1
clauses of size a t most 6. Suppose we a r e looking at t h e su bproblem obta ined by t lie first
choice of values for t h e variables. T h e n wtiich is t h e se t o f clauses which d o not contain
any variable se t t o 1 is
similarly,
G'HAPTER 2. NAESPI AND SELF-D UA LITY
The algorithm then recurses on cach of the subproblems generated. We later show that
the number of distinct subproblems gencrated from a subproblem in the previous stage
(ariy Stage i ) is a t most nk. Assuming t hat a t most k stages a re needed (proof of which
is presented later). the to ta l number of subproblems generated is 5 O((nk)" . As it takes
O(nk) time t o verify a solution the total time taken is ~ ( ( n k ) % k ) . We will give a formal
proof of this in subsequerit paragraphs.
To prove the correctness of the algorithm we need the concept of minimal solutions.
Definition 2.13 (Minimal) A solution S lo k-NA ESPI is minimal i / no proper subset of
S is a solution.
Suppose that the given k-NAESPI is solvable. Let S be a minimal solution. Tlien WC
have a clause C which coritains at most one element from S. Suppose this were not truc.
then every ciause contains a t least two variables from S. Rernove from S any elernent s E S.
S - ( s ) is still a solution t o t h e problem as every clause contains a t least one 1 iiow. Clearly
this violates the minimality of S. We can use the same argument for any stage i.
Lemma 2 .11 If the partial ussignmenl A can be extended to a complele soluiion -4' fhen
thcre ezists a clause in U which contains at most one element /rom il' provided A' i.9 minimal.
Proof= Assume t h a t we a r e a t Stage i. At this stage we have set some variables to 0/1.
Let us denote this partial assignment of variables set t o I as il. Let U be the set of cIauscs
which d o not contain any of t h e variables set t o 1. Let IV be the set of clauses which have
been removed as they contain some variable set to 1. A is the set of variables which are set
t o 1 . Let B be the set of variables occurring in the clause set U. It is clear tha t A n 13 = 0. This implies that setting any variable in B t o O does not unsatisfy any clause which was
CH.-tPTER 2. N,4ESPf .4ND SEL F-D UALITY
satisfied in the set W. To obtain a contradiction assume that every clause in Cr contains at
least two variables from the set A'. We can set any variable in A' t o O without unsatisfying
anÿ of the previously satisfied clauses. This violates the fact that IL' w w minimal.
Next we need to show tha t the satisfiability of any subproblem a t Stage k+I is easy
to determine. LVe d l achieve this by arguing that if we have k distinct clauses each
of cardinality a t most 2 in a k-NXESPI problem then we can determine the satisfiability
easily. Furt hermore, after the algorithm has made k choices (or is in Stage k+l) the resulting
problem is equivalent to a problem which has k clauses of cardinality 2.
Lemma 2.12 Let P(f) be a k-NAESPIproblem which contains k distinct clauses of size 2.
Satisfiability of P(f) can be determined in polynomial time.
Proof: Wit hout loss of generality assume that the first k clauses are
Suppose that there exists a dause q that does not contain b. Then ai E q, 1 5 i 5 k, for the intersection property t o be obeyed. If such a q exists then P( f ) is unsatisfiable, else
P(f ) is satisfiable. The solution can be obtained by assigning q , irz, . . . , ar; value 1 and all
the o t her variables d u e O. a T h e algorithm moves from Stage i to Stage i+l by picking a clause and setting some
variable in it t o 1 and every other variable to O. The variable set t o 1 is difFerent from any
of the variables which were set t o 1 in the past. This foUows from the fact that a t each
stage the algorithm only considers clauses which do not have any variable set to 1 in them.
Suppose that our aigorithm is in Stage k+l. This means that there are a t least k clauses
which have esactly one variable in them set to 1 and al1 the other variables set to O. ,-ho,
the k variables which have been set t o 1 are ail distinct. Ive nest define the concept of
contraction and describe some properties of contractions. \Ire wiU use contraction to show
CK4 PTER 2. Ar.4FSPl AXD SELF- D UAL ITY 35
that the problern after k stages has a n equivaient formulation in which there are k distinct
clauses of cardinality 2.
Let A be a subset of variables in the k-NAESPI problem.
Definition 2.14 (Contraction) -4 contraction of a subset A of cariables in a k-X.4 ESPI problem P(f ) to s is a new problem ~ ( f ) ' in which every occurrence of any member of -4 is
replaced by the new variable a . Contraction is denoted by A - a. For example let us look a t the foilowing 3-XAESPI.
W e want to contract {1,2,4) t o a. Le. {1,2,4) - a. This means that we replace every
occurrence of either 1, 2 or 4 with the new variable a. The resulting problem is:
For a k-KAESPI problem P(f) let P(f) ' be the problem obtained by the contraction
-4 - a for some subset A of the variables in P(f). The next property of contractions follows
from the definition.
Lemma 2 .13 ~ ( f ) ' is satisfible C- P(f ) has a solution S which contains al1 the variables
in A .
Contraction tells us that some subset A of the variables in the problem are forced to
have the same value. Let us get back to our problem after Our algorithm has esecuted A-
s t ages .
Lemma 2.14 After the algorithm has made k choices (is in Stage k+l) there etists a
contraction such that the resulting problem P( f )' has k clauses of cardinality 5.
We have k clauses of the type
al. a*, . . . , ak are distinct variables and A i , il2. . . . , Ak are subsets of the variables. As
.Al = .A2 = . . . = .Ak = 0 we can contract (AI U A2 U . . . U &) to a new variable 6. This
means that the k clauses look like
and are of cardinality 2. rn .Armed with the last two results we can show tha t the algorit hm terminates in O((nk)k+')
time.
Theorem 2.2 The algorithm stated above terminates in polynomial tirne.
Proof: By Lemma 2.14 the algorithm needs at most k stages. In each stage the dgori thm
has t o try a t most n x k assignments. Therefore the total number of subproblems generated
is given by the following recurrence:
which evaluates t o O(n x k)"). As it takes O(nk) time to verify a solution the total time
taken is O((n x k)"' ). B
In this section we have shown tha t k-NAESPI can be solved in ~ ( ( n k ) ~ + ' ) tirne.
CH.-\ PTER 2. NA ESPI .AND SEL F-D UA LITY
2.7 Linear Time algorithm for solving kNAESPI
The algorithm is again recursive but instead of trying out every possible IO* assignment
for every clause, it tries out all the ' L ~ - 2 contractions For each of some k clauses. The
algorithm begins by choosing a clause of Iength greater than 2 and a contraction for i l .
It then removes aU the clauses which are t r i v i d y satisfied (clauses which contain both
the contracted variables). Suppose that we a r e in Stage 1+1. The clauses which are of
cardinality 2 a r e of the form shown below (Lemma 2.12). This is under the assumption t hat
the contraction we made is extendible t o a solution.
Without loss of generality, we assume t h a t there is a clause which does not contain
any of the variables from the set {al,. . . , ai), else we have a solution to the problem. This
follows frorn the fact that each clause contains a t leas t one of the variables from { a l . . . , a l ) .
Set ting al1 the variables in { a l , . . . , a l ) t o 1 and the rest of the variables t o O, results in a
solution t o the given instance. Let C be such a clause. For Stage 1+1 we t ry out ail the
possible 2*-2 contractions for Clause C. We need t o argue tha t any contraction of C gives
us a subproblem with I f 2 distinct variables al, a2, . . . , al+l. Let A be the set of variables
in C which are set t o the same value and B the set of remaining variables in C (which are
set to a value different from the value to which the variables in A are set) . If b 4 A then
there e.xists a variable in B which is different from any of the ail,. This is due to the fact
tha t C does not contain any of the variables al, a2, . . . , a l . Hence the clause obtained after
the contraction is distinct. Th e case when 6 E A is symmetrical.
Formally the aigorithm is stated below:
Algorit hm
1. S is the set of distinct variables which belong to some clauses of size 2 and are forced
t o have the same value ( S = ( a l . a*, . . . , a l ) in the previous example). Initially S = iP.
2. Find a clause C such tha t C does not contain any variable in S. If no such clause
exists then S intersects with 211 the clauses and we are done.
3. For each contraction {out of the 2k - 2 possible ones). update S, remove all the clauses
which are t r i v i d y satisfied and goto Step 2.
Let u s consider t he projective plane example again.
Example 2.4
Consider the first clause and a contraction in which (L,2) get t he same value and 3 gets
a value different from 1 and 2. Since (1,2) get the same value we can replace them with a
new variable a. Hence, the modified problem is:
and S = { a ) . Let (3 v 4 V 5) be the clause C (which does not contain a) for which
we are going t o t ry ou t ail the possible contractions next. Possible contractions for C are
({3 ,4) , (3, o), (4,s)). Let (3.4) be contracted to variable b. Then t he subproblem obtained
is:
S now is updated t o S U ( 5 ) = {a, 5). Also, the problem is not in minimal form as we have
clauses which contain the clause (a V 6 ) . The minimal subproblern is:
and so on.
The algorit hm solves the subproblem recursively. If the subproblem is unsatisfiable t hen
we try out the next contraction for the first clause. If ail t he contractions have been tried
for the first clause then we return unsatisfiable.
Theorern 2.3 The rnaiified algorithm t e m i n a t e s in 0((2qk x n x k) Lime.
Proof: .ifter k recursive calis we can use Lemma 2.14 t o determine the satisfiability of the
instance, as aU the contracted clauses (of size 2) are distinct. Therefore the number of the
times Lemma 2-14 is invoked is given by the foilowing recurrence:
As it takes O(nk) time to determine the satisfiability in the invocation of Lemma 2.14, k
the running time of the algorithm is 0 ( ( 2 ~ ) x n x k) which is iinear in n. a Consider the following restriction t o the XAESPI in which every clause is of size a t most
log n. The two algorithms mentioned in this chapter can be used to solve this restricted
version of the NAESPI in O(nbgn) time. T h e following question is open t o the best of our
knowledge:
Open Problem 1 Let C be the class of NAESPI such that al1 the clauses a re of size a t
rnost log B. Does there exist an ~ ( n ' ~ g l ~ g * ) for this problem?
2.8 Note
Recently a result of Dorningo [SI aas brought t o our attention bg Kaz Makino, which answers
a restricted version of the previous question. Domingo showed that O ( 4 G ) - N A E S P I can
be solved in polynomial time. Ln fact, Theorem 2.3 also irnplies a polynomial time algorithm
for solving O ( J I I ) - N A E S P I .
2.9 Conclusion
In this chapter we estabiished the equivalence of the complement of the NAESPI and the
self-duality problem. We showed tha t easy solutions to the NAESPI can be computed in
polynomial time. furt hermore, computing strong solutions to KAESPI is NP-Complete. LVe
gave a characterization of almost self-dual functions in terms of NAESPI which do not admit
casy solutions. LVe eshibited an O((nk) '+ l ) algorit hm for solving the k-NAES PI problem
for sorne constant A.. Finally. we provide a iinear tirne algorithm for solving k-NXESPI, ivith
a runiiing time of O ( ( . ~ ' " ) ~ n k ) . This improvement resulted in a polynomial time algorithm
CHAPTER 2. X.4ESPI AND SELF-DUA LlTY
for solving ( 4-1-NAESPI.
Chapter 3
The bounded case
3.1 Introduction
Ln this chapter we describe polynomial time algorithms for the k-NAESPI and the NAESPI
problem when every pair of clauses intersect in a t most c variables. I t should be noted tha t
we treat k and c as constants in this chapter.
Def in i t ion 3.1 (c -bounded NAESPI) A (k-)NAESPI is C-oounded if every two clauses
intersect in less than c+l variables.
As pointed out in Chapter 1 c-bounded k-NAESPI is of interest because this subclass of
NAESPI arises n a t u r d y in designing coteries used t o achieve mutual exclusion in distributed
system with t he minimum number of messages.
For c-bounded k-XAESPI we show that there esists an aigorithm which can determine
the satisfiability of the input instance in O(ncclk) time. We show a n upper bound of PCC'
on the nurnber of clauses (n) for c-bounded k-NAESPI which do not contain any solution of
size strictly less than c. In this case the algorithm shown in Chapter 2 for solving k-SAESPI
terminates in ~ ( I ; ( ~ ~ ' ) ~ n n ) time for c-bounded &-NAESPI. If there exists a solution of size
at most c then we try out a.li the subsets of size c. As there are O(nC) subsets of size c and
verifying the solution takes O(nk) time, the total running time for this case is O(nC+'B)) .
Since O(nc+' k)) dominates ~(k('+ c- bounded LNAESPI can be solved in O ( n C + ' k ) )
time.
CH.-\PTER 3 . THE BOCrYDED C:\SE
For the c-bounded 'YAESPI we give a n 0 ( n 2 c + Z ) algorithm for solving the problem. I t
should be noted that c-bounded QXXESPI is a subclass of c-bounded XXESPI hence the
latter results is weaker. Aso , the techniques used in obtaining the respective results have
no simïlarity whatsoever.
Sections 3.2 and 3.3 describe the results for the c-bounded k-XXESPI and c-bounded
3.4ESPI problems respectively.
3.2 c-bounded k-NAESPI
In this section we show t hat for a c-bounded k-iVA ESPI, the number of clauses n 5 kt+'. The main tool used in obtaining the results is an a u d i a r y graph which is defined below.
Definition 3.2 (Auxiliary Graph) An a u i l i a r y graph is an edge labeled clique graph
whose zertices are the clauses and the labels on edge ( i, j ) are the variables tchich are cornrnon
tu clauses i and j.
Figure 3.2 shows the auxiliary graph for the NAESPI problem derived from the projective
plane coterie. T h e 'IAES PI instance compiises the foUoWing seven clauses:
T h e graph contains seven vertices, one for each clause and the edge (u , v ) contains labels
corresponding t o the variables which are common t o both clauses u and z.. It should be
noted t ha t for a 1-borrnded k-X.4ESPL every edge in the ausiliary graph contains exactly
one label.
CH.4PTER .3. THE BOUNDED C.4SE
Figure 3.1: auxiliary graph for the projective plane NAESPI
Definition 3.3 (c-solvable) A k-NAESPI is c-solvable if there exists a solution S such
that ISI 5 c.
For ease of exposition we describe the special cases of 1-bounded and 2-bounded k-
XAESPI problems in the next subsections. A straightforward generaiization of the results
t o the c-bounded LXAESPI is presented later.
Lemma 3.1 For 1-bounded k-NAESPI (which is not 1-solvable) the number of c/auses n < k 2 .
CH.4 PTER .3. THE BO L 3 D E D CASE
Clique
Figure 3.2: 1-bounded NAESPI
Proof: Let G be the ai~uiliary graph and u be the vertex corresponding to the clause C
with maximum cardinaiïty. For any variable zi E C, if x; belongs to [(xi) clauses then there
is a clique K of size l (z , ) such that every edge in the clique has label xi.
Let v be a vertex different from u and any other vertex in K. Without loss of generality,
we can assume that v does not contain xi as a label, otherwise every clause contains variable
xi (rendering the instance 1-solvable). Let L be ali the edges from z. ont0 u and vertices
in I<. XO two edges in L have the same label. To derive a contradiction assume that two
edges, incident on ul. un. where both ul and u2 are in K have the same label 1. This implies
that the clauses corresponding to vertices ui and uz have variables 1 and xi in common.
This fact is illustrated in Figure 3.2.1 where the dot ted ellipse is the clique I\'.
CHA PTER 3. THE BO LtiYDED CASE
This violates the fact that the given input is 1-bounded.
Frorn the argument presented above. we can deduce t hat
Otherwise, the vertex t. has more than k labels or equivalently we have a clause with
cardinality bigger than k.
W e also know that,
Equation (2) is a consequence of the intersection property. By Equation 1, we infer that
Hence,
In this section we take a closer look a t 2-bounded k-?iAESPI.
Lemma 3.2 For 2-bounded II.-NAESPI (which is not 2-solcable) the number of clauses n 5 k 3 .
Proof- Let G be the auxiiiary graph. For any two variables xi and + j ? let Ici and h; be
the cliques which contain labels xi and xi. Let L;,j = Ir', n h;. be the set of vertices which
are in as well as fi,. CVe claim:
CH.4PTER 3 . THE BO UND ED C.4SE
Let u be a vertex which is not in hei LJ AVj- Such a vertex should exist otherwise the
given input is 2-solvable. No two edges from u which are incident on two vertices in ici n f<, can have the same label, else we have an edge which has 3 labels on it. As lu1 5 k, we get
lK,jl 5 k -
Xotv ive bound the size of Ki. Let v be a vertex which does not belong to Ki ( a es i s t s
because the input is not 1-solvable). Every edge from v ont0 h-; has a label different from x;
(as A-; is ma,uimaI). Let L be the set of labels on the edges incident from v ont0 h-;. Each
label I E L can occur a t most k times or we would bave Iq,rl > k. As ILI 5 k, maximum
number of vertices in K; is 5 k2.
From the previous paragraph, it foilows that every variable x beIongs to at most k2
clauses, Le., l ( z i ) 5 k2. Let C be a clause. We also know that,
Hence,
3.2.3 c-bounded k-NAESPI
In this section we study the k-NAESPI problem which is c-bounded. Ln particular, we show
a generalization of the claims for the 1-bounded and 2-bounded cases.
Theorem 3.1 For c-bounded &-NAESPI (which is not c-solvable) the number of clauses
n 5 kC+l.
Proof: Let G be the aui l ia ry graph. For any c variables X I , . . . , x,, let ICI, . . . , ICc be
the corresponding cliques which contain labels x i , . . . .x,. Let Pi , , = niE{,.-,}fii be the set
of vertices which are in cliques K I through ICC. We claim:
CH.4PTER 3. THE BO LYDED CASE 47
Let u be a vertex which is not in h'',. . ., fip=. Such a vertex should exist otherurise the
given input is c-soloable. No two edges from u which are incident on any two vertices in Pi, , can have the same label, else we have an edge which h a k + I labels on it. As lu1 5 k , we
get 1 1 . i . C l 5 k-
Now we bound the size of niE~l..,-l}f<i. Let o be a vertex which does not belong to
niE{l.-,-llh-i ( u e'cists because the input is not (c-1)-solvable). Every edge from t. ont0
niE{l.-c-llh; has a label different from xi, . . . , x,-1 (as ..,- llh-i is maximal). Let L be
the set of labels on the edges incident fkom v onto niE{i..c- i} Ii;. Each label f E L can occur
at most k times or we would have IVl,,1 > k.
Using the argument presented above, if 1 5 c:
Xow we are ready to bound the size of individual cliques K i . Let u be the vertex not in
Ici (such a vertex exists because the input is not 1-solvable). L is the set of labels on edges
incident from u ont0 Ki. CVe know IL1 5 k and IKi n fi,/ < kc-l for any label xi. The
maximum number of vertices in Ici is 5 kC (Le. [ ( x i ) 2 kC) .
We also know that,
Hence.
I
In this section we have estabiished t hat for instances of k-K.4 ESPi which are c-bounded
the number of clauses is n 5 kC+'. Next we describe an 0 ( n 2 C + 2 ) algorithm for c-bounded
X-AESPI.
3.3 c-bounded NAESPI
Definition 3.4 (c-bounded NAESPI) An instance of :VA ESPI is called c-bounded if er-
ery pair of clauses intersect in ut most c variables for some constant c .
CHd4PTER 3. T H E 130 CTiVDED CASE
In this section we will show that c-bounded NAESPI can be solved in 0 ( n Z C C 2 ) time.
For ease of exposition we wilI describe the 1-bounded and the 2-bounded XAESPI cases in
subsections 1 and 2. The general result is presented in Subsection 3. For a set of variables
V a n assignment of bookan d u e s to the variables is c d e d a 1'0 assignment if all the
variables in V except one are set to 1 and the remaining variable set t o O. If ali but one
variable are set t o O then the assignrnent is cailed a 10' assignment.
We will be using the foliowing definitions in the subsequent subsections. A solution S t o
a given XAESPI is a subset of variables such that V intersects each clause in the input but
does not contain any clause in the input. A solution S is calIed minimal if no proper subset
of S is a solution. If V is the set of variables in the input instance then a t times we refer t o
S as the set of variables which can be set t o 1 and V \ S is the set of variables which can
be set t o O. In the same vein as the presentation in the previous section, we describe the
results for 1- bounded NXESPI and 2-bounded NXESPI firs t . The last subsection contains
the result in the general form.
3.3.1 1-bounded NAESPI
In this section we will show t hat 1-bounded NAESPI, is solvable in 0(n4) time. Vie observe
t ha t if a given NAESPI is solvable then there exists a clause such that it contains esactly
one variable from the solution (this foliows from the definition of the minimal solution). As
the complement of a solution is also a solution, we can infer tha t there exists a clause such
t h a t it contains all but one variable from the solution.
For every clause in the given NAESPI we are going to try out every possible assignment
of 1%. There are a t most 0 ( n 2 ) such possibilities. For a particular trial, let P be the
set of clauses which contain a variable assigned t o 1 and iV the set of clauses which have
a variable assigned to O. ,411 clauses which contain a t least one variable set tu 1 and a t
least one variable set t o O are removed from further consideration because they are already
satisfied.
It should be noted that each clause in PUN contains esactly one variable assigned to O or
1, else there would be two clauses which intersect in more than one variable. Furthermore
for any pair of clauses p E P and q E X . p and 9 intersect only in the uninstantiated
variables.
CHAPTER 3. THE BOCrNDED CASE
-4s dl the clauses in LV intersect in the variable which has been set t o O. no two uninstan-
tiated variables in 1V are the same, o r we would have two clauses which intersect in more
than one variable. Next we wiU try t o put a lower bound on the number of uninstantiated
variables in a clause in the set P.
Lemma 3.3 For any clause p E P , the number 01 uninstantiated uariables is at least IL\-1.
Proof: p has t o intersect with every clause in N . The intersection cannot happen in the
instantiated variables. Let n i , n2 E 1V be the two clauses which have a common intersection
wit h p. Then nl and n2 intersect in more than one variable, violating the fact t ha t the given
instance was 1-bounded. I
Let S be the solution which contains the variables set to 1 (denoted by V ) in ou r trial.
Let O' be the remaining set of variables in S. Let U" C C; be a minimal set such t ha t lit
intersects wit h every clause in N . We claim t hat V U Ut is a candidate solution. As ut is
minimal, U' intersects with every clause in 1V in exactly one variable.
One naive algorithm now tries ou t every minimal set of variables in N t o determine
if they define a solution. Let us assume that IN1 2 3, else we can t ry out ail the 0(n2)
minimal sets of variables which could be defining the solution. The next claim tells us how
to compute a solution to 1-bounded NAESPI.
Lernma 3.4 Let IlVI > 3. Let Ul be a minimal set of uariables in N which intersects with
every clause in N. Let & be another minimal set of variables such that Ui and Uz differ in
ezactly one variable. Then either CIl u V or U2 u V is a solution to the given NAESPI.
ProUf= First, it should be noted that IUiI = fCr21 = I N / . XIso? any proper subset of C l
or U2 does not contain a clause in P, this follows from the fact that every clause in P has
a t least 1 N 1 uninstantiated variables (Lemrna 3.3). Wit hout loss of generality, assume t hat
Cil is not a solution. This implies that there exists a clause pl P of type (1 U Ur ). If Ci is
also not a solution then there exists a clause pz E P of type (1 LI 1/21. -4s Ur and Ci2 differ
in only one variable, Ipl n pz[ > 2, which violates the I-bounded condition.
If there is only one minimal set Lii which intersects every clause in A' then al1 the
variabIes in are forced t o have the same values as the variables in V determining the
solvability of the instance.
CHAPTER 3. T H E BOCr.I'DED C.WE
If liVl 2 2 then we can exhaustively try out ail the possible minimal sets which intersect
clauses in X .
Lemma 3.5 1-bounded N A ESPI is solvable in 0 ( n 4 ) time.
Proof: Correctness follows from Lemma 3.3 and Lemma 3.4. If fNl 2 2, we have to
try out 0 ( n 2 ) minimal sets as there a re at most 2 clauses with at mos t n variables each.
For each of the 0 ( n 2 ) hitting sets it takes O(nZ) time to determine if t he hitting set is a
solution, hence the bound.
3.3.2 2-bounded NAESPI
Without loss of generality, assume that the minimal solution contains a t least two bxriables,
else the input instance is 1-solvable. Let a, b be the variables set to 1 in t he minimai solution.
This implies there are two cIauses Cl = (a v A) , C2 = (b v B ) , such t h a t al1 the variables in
the set A U B are set to O given the fact tha t a, b have been set t o 1. Once again we can
partition the set of clauses in the input into two sets: P denotes the set of clauses each of
which has a t least one variable set t o 1 and N denotes the set of clauses each of which has
a t least one variable set t o O in our trial. Clauses which contain variables set t o both 1 and
O will always be satisfied and are not considered further. ,411 the clauses in P contain both
a and b as they have to intersect with Cl and Cz. Clauses in N contain no variable set to 1.
Assume 1 Pl 2 4, else we can t ry ou t ail the O (n3) possibilities and determine the solv-
ability of the instance in 0 ( n 5 ) time, as there are 0 ( n 3 ) possible solutions and determining
if some subset of inriables is a solution takes 0 ( n 2 ) time.
Lemma 3.6 Cîven iy and P as defined above, the solvability of the input instance can be
determined in polynomial time.
Proof: It should be noted t ha t all the uninstantiated variables in t he set of clauses P
are distinct. This follows from the fact tha t alI the clauses in the set P already intersect in
the two variables a and 6. i\;é are interested in finding a hitting set S of uninstantiated
'The hitting set of a set of subsets is defined to be a set which contains at least one variable from every subset and does not contain any subset.
CHAPTER 3. THE BOUNDED CASE 5 1
variables from P such that S does not contain any clause in X . If we have such a set S
then, setting S t o O and all the other variables t o 1 leads to a solution.
Let I be the minimum number of uninstantiated variables in a clause in 1:'. This implies
tha t 1 PI 5 1, else there are two clauses in P which have an intersection in more than 2
variables. Furthermore every set of (1-1) uninstantiated variables from the set of variables
in P does not contain any clause in N . This foilows from the fact tha t 1 is the cardinaiity
of the minimum-sized clause.
Let So, SI be two hitting sets of clauses in P , such tha t So and Si differ in exactly one
variable. If two such hitting sets d o not exist, then & the variables are forced t o have an
assignrnent different frorn the variables a and 6 and the solvability of the instance can be
determined easily. As So and SI differ in only one variable and 1 PI 2 4, 1 So n Sl J 2 3.
This implies that either So or Sr does not contain a clause in N. If both So and S1
contained a clause in N (note that each clause in N has a t least 3 variables), then there
would be two clauses in N which intersect in more than 2 variabIes. If So is the hitting
set which does not contain a clause in 1V, then setting ail the variables in So t o O and the
remaining variables t o 1 leads t o a solution t o t he input instance.
As there a re n clauses of size a t most n, determining the right set of clauses Cl and Cz
can take at most (2) and it takes 0 ( n 2 ) time t o t ry out d the 10' possibilities. Hence the
number of subproblems is 0(n4). 4 s it takes 0(n2) time to verify whether some subset of
variables is a solution, the total running time of the algorithm is 0(n6).
T h e case when IPI 5 3 is treated in a similar way aç the 1-bounded case. We try
out ail the 0 ( n 3 ) minimal sets of variables in the set LV which could be defining t he solu-
tion. Since the verification takes 0(n2) time, the total running time for the algorithm is
mas {O(n6)? 0 ( n 5 ) ) . which is 0 ( n 6 ) .
3.3.3 c-bounded NAESPI
In this section we w i l present a generalization of the results presented in the two previous
sections. In particular we will show tha t c-bounded NAESPI can be solved in 0(n2'+*)
time.
Given a n instance of c-bounded N-\ESPI, without loss of generality. assume that the
minimal solulion contains c+l variables a t least, else the input instance is c-solvable and we
CHAPTER .3. T H E BOUNDED C'.-SE
can determine the solution in 0 ( n c + 2 ) time. This foUowç because there are a t most O(nC) hitting sets which could be defining the solution and i t takes 0(n2 j time to verify if some
subset is extendible to a solution.
Let {a1 . . . . , a,) be the variables in the minimal solution. This implies the existence of c
dauses Cl = ( a l v Ai) , C2 = (a2 v A 2 ) , . . . ,Cc = (a, V A,), such tha t all the variables in the
set U;,1 ...,.A a r e set t o O given the fact t hat the variabIes a l . a2. . . . . a, have been set t o 1.
Once again Hie can partition the set of clauses in the input into two sets: P denotes the set
of clauses which have a t least one variable set t o 1 and LV denotes the set of clauses which
have a t least one variable set t o O in our trial. Clauses which contain variables set t o both
L and O will be satisfied and are removed frorn further consideration. AU the clauses in P
contain every ai as they have t o intersect with every Ci. Clauses in N contain no variable
set to 1.
Assume, 1 PI 2 c + 2, else we can t ry out atl the O(nC+' ) possibilities and determine the
solvabiiity of the instance in 0 ( n 2 C + 2 ) time. Once again, there are a t most O(nC+' ) hitting
sets and for each hitting set we spend 0(n2) time t o verify if the hitting set is indeed a
solution.
Theorem 3.2 Given N and P as defined above, the soluability of the input instance can be
deterrnined in polynornial t ime.
P m f : It should be noted that ail the uninstantiated variables in the set of clauses P
are distinct. L i e a re interested in finding a hitting set S of uninstantiated variables frorn P
such that S does not contain any clause in N. If we have such a set S then, setting S to O
and aU the o t her variables t o 1 leads t o a solution.
Let 1 be the minimum number of uninstantiated variables in a clause in rV. This impties
that 1 Pl 5 1 , else there a re two clauses in P which have an intersection in more than c
variables. Furt hermore every set of (1- 1) uninst ant iated variables from the set of variables
in P does not contain any clause in AT. This follows from the fact that f is the cardinality
of the minimum-sized clause.
Let So7 SI be two hitting sets of clauses in P, such that So and Si differ in esactly
one variable. If two such hitting sets do not exist. then all the variables are forced to
have an assignment of values different from the variables a and b and the solvabil i t~ of the
CK4PTER 3. T H E BO CrNDED C A S E 53
instance can be determined easily. As So and S1 difTer in only one variable and ]PI 2 c i 2.
jSonS,I 2 C + 1.
This implies that either So or Si does not contain a clause in N. If bo th So and Si
contained a clause in N then there would be two clauses in N which intersect in more than
c kariables (note that each clause in N has a t least c + I variables). If So is the hitting
set which does not contain a clause in N , t hen setting aU the variables in So t o O and the
remaining variables to 1 leads t o a solution t o the input instance.
As there a r e n clauses of size at most n, determinhg the right set of ciauses Cl-. . .-Cc
and the 10' assignments can talie a t rnost ($) = O(nZC) tirne. As, it takes 0 ( n 2 ) tirne to
verify a solution, the total running time for this case is 0(n2C+2). rn The case where IPI _< c + 1 is treated in the same way as for the 2-bounded case. We
try out aii the O(ncf' ) minimal sets of variables in the set N which coulci be defining the
solution. As i t takes 0 ( n 2 ) t ime t o verify if some subset of variables is a solution and given
the fact that there are a t most O(nC+') hitting sets, the total running time of the algorithm
is 0 ( n Z C i 2 ) . Hence, the running time of the algorithm is dominated by 0 ( n 2 c + 2 ) .
3.4 Bounded number of pairs of clauses
In this section we parameterize the problem once again based on the number of clauses
which have intersection of size exactly one. .4n instance of NAESPI is (p-1)-bounded if the
number of pairs of clauses which intersect in exactly one variable as at rnost p. We show
that (p-1)-bounded NAESPI can be solved in n2p+* tirne.
The following Iemma foUows for a given instance of NAESPI which is solvable.
Lemma 3.7 Let cl and c2 be two clauses which intersect in only one variable a . Then there
ezists a pair of van'ables vl E ci and vz E C* such that # v;! # a and V I , 29 get the same
value in the solution.
Proof: To derive a contradiction, suppose that ail the variables in cl except a a re assigned
different values from all the variables in c2 except from a in any solution t o the instance.
Then, a is forced t o be a O as well as a 1, leading to the desired contradiction.
In light of the above lemma for an instance which is p-1-bounded, we can t ry out ail the
possible contractions for al1 the pairs of dauses. As t here are a t rnost n2 contractions to be
CHAPTER 3. T H E BOLWDED CASE
performed for any given pair of clauses which intersect in one variable, the total number of
tries is (n2)' = n 2 p . After each such contraction all the pairs of clauses in the input instance
intersect in a t least two variables and the satisfiability can be deterrnined in polynomial
time by Lemma 2.4. As Lemma 2.4 takes 0 ( n 2 ) time the running time of the algorithm is
0 ( n 2 p + 2 ) .
3.5 Conclusion
In this chapter we studied c-bounded &-NAESPI and c-bounded NAESPI. For c-bounded
k-SAESPI we showed that the number of clauses n 5 kC+' . We also showed that c-bounded
k-NAESPI can be solved in O(nC+Lk) time. For c-bounded NAESPI we gave an O(nzcf ')
algorithm for determining the satisfiability of the problem. We also showed that if there are
a t most p pairs of clauses which intersect in a t most one variable then the the NAESPI can
be solved in 0 ( n 2 p C 2 ) time.
Chapter 4
A Quasi-polynomial time algorit hm
4.1 Introduction
In this chapter we describe a quasi-polynornial time algorithm for solvîng the NAESPI prob-
lem. Deterrnining self-duality of monotone boolean functions can be used to solve the !t'il E-
SPI problem. Fredman and Khachiyan [19] describe a quasi-polynomial time algorithm for
deterrnining self-duaiity of monotone boolean functions. However, the algorit hm we pro-
pose here is different from the algorit hm of Fredman and Khachiyan and the analysis is also
different .
4.2 Fredman and Khachiyan's approach
First we briefly describe the approach of Fredman and Khachiyan [19] which tests if a pair
of monotone boolean functions (in DNF) f = f(z1,. . .,x,) and g = g(z1,. . ..z,) are
mutiially dual. f and g are defined t o be m u t u d y dual if:'
f ( z l , . . . ,z,) = i j ( f l , . . . , z;) for all x E (O, lIm.
Duality of f (x ) and g ( x ) is equivalent to the self-duality of the function h = yf(x) V
--
'Defering to the custom of denoting the input size by n. i v e use n to denote the number o f clatises, hence for the lack o f a better symbol, the nurnber o f variables are denoted by m.
CHrZPTER 4. .4 QCr.4SI-POLY!V0:!/III4L TIME ALGORITHM
zg(x) \/ yz for two new variables y and 2. Hence their algorithm can also be used to test for
self-duality of a monotone boolean function. Let F and G denote the set of prime implicants
o f f and g respectively. If f and g are mutualiy dual then for aii 1 E F and J E G' and with
a slight abuse of notation (as the meaning is clear from the context )
else. we can find a vector z such that f(z) = g ( f ) = O. This is equivaient to saying that
function h is not dual-minor.
First they establish that if all the implicants of f and g are of size greater than logn
(where n = 1 FI + lGl) then f is not mutudy-dual t o g and the vector satisfying f(z) =
g ( 5 ) = O can be obtained in polynomial time, where n is the number of clauses in f and
g. This implies that there exists a Iogarithmically short implicant in F (without loss of
generality). Equation 4.1 now irnplies that there exists a variable which belongs to a t least
A log n clauses. Next they look a t Shannon's decomposition of f and g. given by:
where, y = (z1,z2,. . .,zi-1,zi+ri - . .,x,), f0 is the monotone irredundant D N F with im-
piicant sets Fo = { I \ ili E I , I E F), fi is the monotone irredundant DNF with implicant
sets Fi = { I 1 i # 1, I E F ) and go and g, defined similarly. It can be shown that / and g
are mutually d u d if and only if
and
The idea now is to recurse on the variable which belongs t o 6 clauses t o obtain the
decomposition described in Equation 4.2 and solve the subproblems in Equation 4.3 and
Equation 4.4 recursively. They show t hat this simple scheme terminates in 0(n1°g2 ") tirne.
S e s t they improve on the complesity of this algorithm using the following observation.
Suppose that the subproblern described by Equation 4.3 has already been solved. IVithout
CH.4PTER 4 . .4 Q L~d4SI-POLWOR.fïAL T I M E ALGORITHM 57
loss of generaiity we can assume that fl is dual t o go v gl else f is not dual t o g. Stated
ot herwise,
Equation 4.5 can now be used to sirnpiify t he subproblem associated with Equation 4.4.
By substituting Equation 4.5 in Equation 4.4, we get
It can be argued that Equation 4.6 has no solution when go(y) = O. Hence, Equation
4.6 is equivalent t o
Let Go be the set of prime implicants of go and for J E Go, let y [ J ] be the vector
obtained by substituting 1 for ail the variables in J. I t can be argued tha t Equation 4.7 is
e q u i d e n t t o solvability of IGol equations
T h e algorithm now uses Equation 4.8 t o so1ve the subproblem defined by Equation 1.4.
Fredman and Khachiyan show t hat this modified algorithm terminates in n"(lOg '1
w here *(log n) = *. In this thesis we reformulate the self-duality of monotone boolean functions a s a special
type of satisfiability problem. It was hoped t hat the dichotomy t heorem of Schaefer [44] for
the satisfiability problem would be applicable. In the next section we argue why Schaefer's
result is not applicable t o our problem.
4.3 Dichotomy theorem for sat isfiability
-4s seen in Chapter 2. S-4ESPI can be modeled as a satisfiability problem in the foilowing
way: for every clause (xl V . . . V zk) in KAESPI we have two clauses in the satisfiability
CHAPTER 4. .4 QU.4SI-POLYNOMIAL T M E ALGORITHM
problem, (zl v . . . V z k ) and (21 v . . . v Fk). I t is easy t o see that XAESPI is solvable if and
only if t he satisfiabiiity problem has a satisfying assignment .
For an KP-Complete problem it is of interest t o determine all t he special cases that are
polynomially solvable and prove that everything else is NP-Complete. Schaefer [34] had the
first such deiineation result for the satisfiability problem. I t identifies ali the polynomidy
solvable subclasses of satisfiability (under some assumptions) and shows tha t the problem
is N P-Complete o t herwise. Similar results for the graph homomorphism problem have been
obtained by Heu and Nesetri1 p271.
Mre are given a finite set of logical relations S = (Ro, Ri , . . - , R I ) . For example Ro = ( x v l z j V 2). Relation RQ defines d l the clauses which have exactly one negated literal in
a clause containing three variables. An S-formula is any conjunction of t he clauses each of
type R; E S. S14T(S) is the set of all satisfiable S-formulas.
Theorem 4.1 (Schaefer 78:) SAT(S) is polynomially solvalle (assurning P # XP) if and only if at least one of the following condition holds:
Every relation is S is satisfied tuhen al1 the va'ables in it are set to 1.
Every relation is S is satisfied uhen ail the ~ariables in it are set to O .
Every relation in S can be represented as a CATF fonnula uAich contains at most one
negative literal.
Every d a t i o n in S can be represented as a C!VF formula which contains at most one
positive liteml.
Every relalion in S can be repmsented as a 2-CNF fonnula.
Every relation in S is the set of solutions to a systern of linear equations o w r Jîeld
GF*.
If the dichotomy theorem for satisfiability werc applicable t o the S-4ESPI then it would
be a strong indication tha t t he NAESPI is polynomially solvable. as it is widely believed
tha.t KP-Complete and Co-NP-Complete problems cannot be solved in quasi-polynomial
time. The reason why the dichotomy theorem is not applicable t o KAESPI is because it
assumes t h a t t h e class of input instances Z of satisfiability is closed under taking unions.
CHAPTER 4. A Q LJ.4SI-POLYNOMIAL TIME A LGORITHM
i-e.. if Il and 12 are tivo input instances from Z then Il G I2 is aiso in Z. But. SXESPI is
not closed under the union operation.
4.4 Algorithm
Let C be a n WAESPI problem. We denote the set of variables in C by I' and the i th clause
by C;.
Definition 4.1 (Partial assignment) A partial assignment is a subset V' C 1; such that
al1 the elements in V' are assigned a boolean value.
Given a partial assignment V', we divide t he set of clauses C into three sets.
1. P denotes the set of clauses which have at l e s t one lariable set t o 1 and no variable
set to O. P stands for the clauses with a positive p r e h .
2. AT denotes the set of clauses which have at least one va,riable set t o O and no variable
set to 1. N stands for the dauses with a negative prefix.
3. PIV is the set of clauses which have at least one lariable set to 1 and at least one
variable set to O.
I t should be noted that P, IV, PIV are disjoint sets and the clauses in PAr a r e satisfied
as they contain a t least one variable set to 1 and a t least one variable set t o O.
Definition 4.2 (Consistent partial assignment) A partial assignmenî i s said to be con-
sistent if it is contained inside some solution to the N.4ESPI.
The next lemma shows that for a consistent partial assignment there is a clause either
in P or in N which has a 'particular' type of assignment.
Yext, we define the 'particular' type of assignment.
Definition 4.3 (lO'(01') assignment) A partial assignmenî is said to be of type 10œ(O1')
if ~ x a c t f y one ~:ariab!e is set to 1 and al1 the oîher variables arc set to O (if ccractly oric
varialle is sel io O and al1 îfre oiher variables are set to 1).
CHAPTER 4- A QU.\SI-POLYNOMIAL T I M E ALGORITHM
Lemma 4.1 Given sets of clauses P with ~ s p c t to a consistent partial assignnicn! 1;'.
there ezists a clause in P which is satisfied a s 01' in the solution containing P*'.
Proof: Let S be the solution and all the clauses in P have at least two variables set t o O.
By changing one of the variables to 1 we decrease the number of 0's in this clause and no
clause is unsatisfied. as clauses in N already have a O assigned t o them. We iterate until
there is one clause with exactly one tariable set to O.
Similarfy,
Lemma 4.2 Giuen sets of clauses N with respect to a consistent partial assignment Y'.
there ezists a clause in -V which is satisfied as 10' in the solution containing V'.
Definition 4.4 (Unsafe variable in N) A variable v E ni is said to be unsafe in Pc' if
there ezists a clause C, E N containing v such that setting u to I and all the other variables
to O satisfies at most half the clauses i n P.
Symrnetricaliy ive can define unsafe variables in P.
Definition 4.5 (Unsafe variable in P) A variable v E P is said to 6e unsafe in P if
there ezists a clause CI, E P containing v such that setting t. to O and al1 the other variabZes
to 1 satisfies ut most half the clauses in X .
N a t we describe an ~ ( n ~ ' " g " + ~ ) algorithm for NAESPI. Our algorithm is a minor mod-
ification to the one presented in Chapter 2. We begin by trying out aIl the 10' possibilities
at the top level. For every choice made we compute the sets Pl !V: P X and denote the
resulting subproblem by Ci. Kext we compute all the unsafe variables in A' (denoted C r ) .
Yoiv we generate another subproblem Cz obtained by collapsing all the variables in C. ?17e
solve C2 recursivelj. by trying out all the 10' possibilities for clauses in 11'. W e solve Cl
recursively but we only try those 10' possibilities for \vhich some variable in is set to O.
Formally,
Step 1 Let P = :Y be the set of dl the clauses and N P = 4.
CHAPTER 4. A QIJ.4SI-POLYNOMIAL TIME ALGORITHM
Step 2 If P = d return satisfiable.
Step 3 Cornpute Li, the set of unsafe variables in N .
Step 4 For every u E U, solve the subprobiem (obtained by setting u = 0) recursively.
Step 5 If ail the subproblems in Step 4 fail then set all the variables in U t o 1 and solve
al1 the subproblems (obtained by 10' assignments) recursively after removing all the
satisfied clauses from P and -W.
Step 6 If all the subproblems fail at the top most levd then return unsatisfiable.
Correctness of the algorithm foUows from Lemma 4.1. To prove a bound on the running
time we need the following lemmas. The next lemma states the obvious.
Lemma 4.3 If there are no unsafe variables in N(P) then for euery lO'(01') trial at least
half the clause in P(N) are satisfied.
Pmuf: FoUows from the definition of unsafe variables. I
If N ( P ) contains unsafe variables then we cannot guarantee tha t every trial of lO'(Olg)
in N ( P ) reduces the number of unsatisfied clauses in P(hT) by half. Let Ci denote the set
of a.ll the unsafe variables in AT(P). If ail the variables in Ci get assigned a value l (0) for
U E N ( P ) then we have satisfied at least one clause in N ( P ) . If one of the variables in U-
gets assigned O(1) then at Ieast half the clauses in P(,hT) are satisfied due t o the fact tha t
the variable is an unsafe variable. Let C' be the problem obtained by contracting all the
variables in U + u. It should be noted tha t C' h a . a solution if and only if all the variables
in U get assigned the same value in a solution t o C. The next lemma puts a bound on the
number of problems and the size of each subproblem generated for Cr. -4ssume that C' was
obtained by contracting the variables in N. Let S ( n ) denote the number of subproblems
generated t o solve a subproblem comprising n clauses obtained after contracting d the
unsafe variables U.
Lernma 4.4
CHAPTER 4. -4 Q U.4SI-POLYIVOMIAL TIME ALGORITHM
Proof: The totai number of clauses is n and each clause is of size a t most n. Hence the total
number of 10' choices after collapshg ail the variables in C: is at most n2.
Xote t h a t the subproblems obtained d o not have any unsafe variables in JV. This is true
because O- is the maximum set of unsafe variables in N - By Lemma 3.3, the size of P is
reduced by half for every subproblem. Hence,
Symmetr icdy , if U was the set of unsafe variables in P and the subproblems were
obtained by contracting all the variables in U then the next lemma holds.
Lemma 4.5
Proof: Siniilar t o the proof for Lemma 4.4.
Theorem 4.2 The algorithm terminales in 0 ( n ) ~ ' ~ g ( I ~ 1 + ~ ) tirne.
Proof: Let -v and P be the negative and positive sets of clauses in some stage i. Assume
without Ioss of generality that 1 P ( 5 ! N I . Let U be t he set of unsafe variables in -4'.
Assuming the instance is satisfiable, we have the following two cases:
O -411 t he variables in U are assigned a d u e of 1 in the solution. The collapsed problem
O' - u also has a solution. By Lemma 4.4 this requites no more than
subproblerns to be solved.
Some variable in U is set to \ d u e O in the solution. In this case we try out a t most
n2 possible 10' assignments and for each such trial a t least half the clauses in P are
satisfied. This is due t o the fact the variable we set t o O belongs t o a t least y clauses
(this is implied by the definition of unsafe variables). This requires no more than
subproblerns t o be solved.
C H A P T E R 4 . A Q l'..\SI-POLYArOA41A L TIME A LGORITHM 63
Hence the total nuniber of subprobiems generated is a t most 0 ( n Z 1 ~ ~ l P I ) . As it takes
0 ( n 2 ) time to verify the solution. the total running time is 0(n210g1P1+2 1 -
4.4.1 Read-k boolean formulas
Read-k boolean functions are boolean formulas (in CNF) in which every variable belongs to
a t most k cIauses. Read-k boolean formulas aise in the context of da t a mining and a host
of other applications (for details sec [9]). Read-k boolean formulas correspond to SXESPI
instances in which every variable belongs t o at most k cIauses. Domingo, Mishra, and Pi t t
[93 show that given C a read-k formula in CNF and D, a formula in DNF, equivalence of C
and D can be determined in O(nk) time. -4 corollary t o Theorem 4.2 states that self-duality
of read-k formulas in D N F can be determined in O(kO('~gk)) tirne.
Corollary 4.1 Selj-duality of Read-k h l e a n formulas can be determined in 0 ( k 0 ( ' ~ g k ) )
tirne.
Proof: Without loss of generality, we assume that there is a clause of logarithmic length,
else the input is not self-dual. As each variable be1ongs t o a t most k clauses, the total
number of clauses n 2 k * log n. Therefore the time taken by the algorithm stat.ed in the
previous section is O(k1og n)lOgn), which equals O(kIOgn log nl0gn) = O((klognnloglOgn 1- BY
repeated substitution for n in the mantissa. we get 0(k0(l0gn)). Using the same trick and
substituting for n in the exponent, we get O(k"(lOgk)).
The previous coroliary also irnplies that the equivdence of C and D (which are both
read-k formulas in DKF) can be determined in O(ko(lOgk)) time, thereby solving a special
case of [9] efficiently.
4.5 Variations of the algorithm
One obvious way t o improve the complexity of the algorithm stated above is by showing
t hat in any stage a t most some constant number c of different 10' trials are sufficient. Such
an assertion: if true wiU yield a complexity of ~ ( c ' ~ g " n ~ ) for solring the KAESPI. Hence.
the following question needs to be addressed.
Q: li'hat is the mazimum number of clauses which can be salisfied a s 10' for i\ilESPI?
CHAPTER 4. A Q li.4SI-POLYNOMIAL T I M E A LGORITHM 64
We give an infinite family of instances of NAESPI for wliich t h e number of clauses
satisfied as 10' at the top level is o(1og n), where n is the number of clauses in the input
instance.
The example comprises three different sets of clauses A, B, .4B over the set of variables
( a l . . . a k ) u (b l . . . b k ) . Clauses in set A contain exactly one variable a;, for some i and aU
variables b l ? . . . , bk. Clauses in set B contain exactly one variable 6; and all the variables
ai.. . . . ak. Let A'(Bt) be the set of all the subsets of size 5 + 1 of t h e set A ( B ) . Clauses in
the set A B are then the elements of the cross products of the sets A' and BI. -4 concrete
example for the case when the number of variabIes is eight is shown below.
The following lemma states tha t any pair of clauses in the example has a non-empty
intersection.
Lemma 4.6 Any pair of clauses has a non-ernpty intersection.
Proof: Let Cl and C2 be two clauses in the input. Consider the following cases.
1. Cr, C2 E A. The intersection happens in the variables b l , bz, . . - , b k .
2. Ci, Cz E B. The intersection happens in the variables ai ? a2, . . . ak.
3. C l , C2 E AB. T h e intersection happens in the variables a l , az , . . . . ak as every clause
in AB contains a ( 4 + 1)-sized subset of the variables a l , az, . . . , a k .
4. Ci E -4 and C2 E B. T h e intersection happens in the variables b l , b2?. . ., b k and the
variable al, a2, . . . : ak.
5. C2 E A and Ci E B. This case is symrnetric t o the previous case.
6 . C l E .4 and C 2 E AB. T h e intersection happens in the variables b l , b 2 , . . . I k .
7. Ci E B and C 2 E AB. T h e intersection happens in the variables al. az , . . . . a&.
An example for eight variables generated using the scheme outlined above follows:
Example 4.5
CHAPTER 4. A QUASI-POLWOMIAL T M E ALGORITHM
( a 2 V b1 v b2 v b3v 6 4 ) ~
(a3 V b1 V b2 V b3 V b4)A
(a4 V b1 v b2 v b3 v b q ) ~
(bl V al V a2 V a3 V a4)r\
(b2 V al V a2 V a3 V a 4 ) A
(b3 v al V a2 V a3 V a 4 ) A
(b4 v a l V a 2 V a3 v a 4 ) ~
( a l V a2 v as V bl V b2 v b 3 ) ~
(a l V a2 V a s V 61 V 63 V b 4 ) ~
( a l v a2 v a3 V b1 V b2 V b 4 ) ~
( a i V a2 V a3 V b2 v b3 V b 4 ) ~
( a l V a 2 V a 4 V b1 V b2 V b3)A
( a l V a2 V a4 V 61 V b3 V b4)A
( a l v a2 v a4 v bl v b2 V b 4 ) ~
( a l V a2 V a4 v b2 v b3 v b 4 ) ~
( a l V a 3 V a 4 V b1 V b2 V b3)A
(a1 V a3 V a4 V bI V bs V b4)A
( a l V a3 V a4 v bl if b2 V b 4 ) ~
( a l V a 3 V a 4 V b2 V bs V b 4 ) A
( a 2 V a3 V a4 V bl v b2 V b J ) ~
(a2 V a3 V a4 v bl V b3 v b4)/\
( a 2 v a3 V a4 V b1 V b2 V 6 . 4 ) ~
( a 2 V a 3 V a4 V b2 V b3 V b 4 )
CHAPTER 4. .4 Q L;..ISI-POLYNOMIAL TlME ALGORITHM
Lemma 4.7 Gicen a solution the number of clauses sotisfied as 10' is o(1og n ) .
Proof= Setting the variables al,. . . . ak to 1 and the variables b l . . . . , bk t o O is a solution to
the input instance. Such a solution satisfies only the clauses in sets A and B as 10'. -4ll the
clauses in the set AB have a t least two variables in the solution. The number of clauses in
the set A B is
which is O ( k k ) . Choosing k -. log n, we get that the number of clauses satisfied as 10' is
o(1og n j . I
Consider the following variation of the algorithm proposed above. In each stage the
clause which has t o be tried is picked with probability 5. The previous example also settles
the non-existence of such a randomized probabilistic algorithm with a better running time.
It might still be possible to select the right clauses which have t o be tried as 10' deter-
ministically. One approach would be to try clauses which intersect in a t most 1 variable.
This sounds like a reasonable strategy because if al the dauses intersect in at least 2 vari-
ables then the input is trivially satisfiable due t o Lemma 2.4. The next lemma states that
even this modified strategy for selecting the clauses can be fooled by a minor modification
to the example presented above. We define set A B to the set of clauses which contains the
elements of cross product of A' and { b l , b l ) .
Lemma 4.8 The number of disjoint pairs of clauses which intersect in at most 1 variable
is O ( k k ) .
Proof: For every al : a2 E A' there are two clauses in A B such tha t the two clauses intersect
in exactly one variable. The number of such pairs is (I;'l) which is O ( k k ) . rn
4.6 Conclusion
In this chapter we presented a simple algorithm for determining the satisfiability of t h e
N?\ESPI problem. We showed that the algorithm has a running time of ~ ( n ~ ' ~ g " + ~ ) . We
gave an infinite class of instances for which the number of clauses wllich are satisfied as 10'
is at most o(1og n): thereby ruling out a n obvious modification t o t he algorithm in hope of
decreasing the running time.
CHAPTER 4. A QUASI-POLYNOMIAL TIME ALGORITHM
4.7 Note
-4s pointed out by K a z blakino the algorithm is extensible to the non-rnonotonic case. where
the literals are not constrained to be positive.
Chapter 5
Average Case Analysis
5.1 Introduction
In this chapter we examine the average case behaviour of a variant of the algorithm presented
in Chapter 4 on a class of r a n d o d y generated NAESPI instances. Considerable research
has been conducted in analyzing the average case behaviour of various algorithms for the
satisfiability problem. Two models which have been used extensively for generating instances
for the satisfiability problem are the constant density model and the constant component
model.
.4ccording t o the constant density mde l ( M i ( n , r , p ) ) , each of the n clauses is generated
independently from the r boolean variables, where each literal belongs t o a clause with
probability p. In the constant component male1 (M2(n , r , k ) ) , each of the n clauses is selected
independently and uniformly frorn the set L of all k-literal clauses over r variables.
Goldberg, Purdom and Brown [25, 421 show that for instances generated using the
constant density model, the Davis- Putnam procedure runs in polynomial time. But the
constant density model has been criticized 1181 because it allows O-literd clauses1 with almost
the same probability that it d o w s k Literal clauses. Hence, the random instances generated
according to Mi(n. r , p ) are either unsatisfiable with a high probability o r satisfiable by a
random assignment with a high probability. Franco [18] argues that the constant density
'O-literal clauses are the empty clauses.
CHAPTER 5- .4VER4GE CASE ANALYSE
mode1 is therefore inferior t o the constant component model.
For the purpose of analyzing the average case behaviour we can use the constant density
mode1 for generating the problem. However, for Our purposes this generation mechanism
does not suffice, as the intersection amongst the clauses is not guaranteed.
Another way of generating instances of NAESPI would be t o use Bioch and Ibaraki's
scheme [4] for generating all the self-dual functions, which in CNF representation would cor-
respond t o the NAESPI instances which a re unsatisfiable. Satisfiable instances of NAESPI could then be obtained by removing a clause from the unsatisfiable instances.
An NAESPI instance is symnzetn'c if all the kxiables belong to the sarne fraction of
the total number of clauses and this property holds for every subset of clauses in the given
instance. Symmetric instances a re satisfiable in polynomiai time Sy Khachiyan's algorithm
and a variant of Our basic algorithm ( to be described in Section 5.3). A cursory look reveals
that all t he self-dual functions of seven variables are symmetric. Due t o the lack of a rigorous
study, a t this juncture we cannot ruie out t he possibility that this is a not a good method
of generating a test-bed of instances.
Ln the next section we propose a method of r a n d o d y generating KAESPI instances.
5.2 Random NAESPI
The Auziliary gmph defined in Chapter 3 can dso be used t o generate random instances of
the NAESPI problem. To generate a n instance of NAESPI with n clauses and m variables.
we consider a clique of size n (with (2) edges). Every variable belongs t o an edge with
probability p and does not belong t o an edge with probability 1 - p. If L, is the set of
variables on the edges incident on node v , t hen clause v is defined t o be L,.
This generation scheme guarantees that the intersection property is obeyed, but it can
generate instances in which t here are clauses containing some ot her clause. As Our aigorit hm
is insensitive t o the containment of clauses this seems like a viable method for generation.
For any two clauses, the corresponding vertices in the graph share the variables t hat belong
to the edge between the two vertices. thus guaranteeing intersection.
Our generation scheme can be visualized as a union of m edge labeiled random graphs
oïer the same set of vertices, such that each random graph has a label associated with al1 its
CHAPTER 5. AVER4GE CASE A N A L E I S 70
edges (a label corresponds t o a variable). The two most studied rnodels of randon1 çraplis
are G( n, p) and G( n, e) . defined below .
Definition 5.1 (G(n,p)) Civen a positive integer n , G(n, p ) is the probability space on the
gmphs over n vertices with edge probability p where the events are mutually independent.
In other words, if G, is a graph over n vertices with exactly E edges then
Another widely studied model of random graphs is the class G(n, e ) .
Definition 5.2 (G(n,e)) G ( n , e ) comprises all the gmphs ouer n vertices containing ex-
actly E edges where each graph is equally likely.
From a theorem of .4ngluin and Valiant [6] it follows tha t the- two models are p rac t icdy
interchangable when e is close t o pn. Hence, we wilï consider only t he G(n, p) model.
Let be t he indicator variable whose d u e determines if the ith vertex has been covered
by some edge in a randomly generated graph G. E; is t he indicator variable which determines
if the j th edge has been chosen.
and
Prao/: T h e claim follows from the fact t ha t if 5 edges are present tlien a t most Ji vcrtices
are covered. I
Let G = ( n , e ) be a random graph over n vertices with exactly c edges where e 5 n.
If al1 t he edges in G are equaily likely then the average number of vertices covered i n G is
O ( e ) .
Lernrna 5 .2 if the nurnber of uertices corered in G is al rnost n w then the ezpeeted
nurnber of vertices corered sat is f i s £[VI 2 * e .
Proof= If t is the fraction of vertices covered by some e' < e edges then the probability
that we increase the number of vertices covered for each edge chosen is at least i - z2.
ILrI 5 n q irnplies that z < 2 , and therefore the probability of success is a t Least
1 - (*)*. This irnplies that the expected number of vertices covered is at least *e. . Next we use the Chebyshev inequality to bound the tail probability of Lemma 5.2.
Without loss of generality we assume that the probability with which we increase the number
of vertices covered is e. Our experiment can also be visualized as flipping a coin e tirnes
where the probabüity of head occurring (denoted p ) in each individual trial is *. This
is the binomial distribution with mean p, = ep and standard deviation a, = m. For the
next lernrna we assume that p = and q = 1 - p.
Lemma 5.3 If e edges are couemd then with pmbabiiity 1 - 2 at ieast 2 vertices are
covered.
Proo f: The C hebyshev inequality asserts t hat ,
1 Pr[IX - p,l > ta,] 5 -
t 2
I choosing to, = 2, we get 7 = 2- Hence, with probability 1 - $ we cover at least
ep - = vertices. Observe that this probability goes to 1 as e - oc. rn The probabiiity that k edges are choosen (for a given label) is given by the binomial
distribution.
where rn = (i). 'iext, we use the Demoivre-Laplace theorem [16] to compute t h e probabil-
ities we are interested in.
Theorem 5.1 (DeMoivre-Laplace) Suppose O < p < 1 depends on n in such a way that
npq - cc os n - oo. I f 0 < h = z\/pqii= o(pqn)f and i f t - m . then Pr[lS-npJ > hl - - r2
c- 'a?
CHAPTER 5. AVERAGE CASE ANALYSE 72
The DeMoivre-Laplace t heorem is obtained by approximating the binomial distri but ion
with the normal distribution. For a random variable X it gives the probability that - n p 2 2, where x is measured in steps of m, where np is mean and is the standard
deviation of the binomial distribution.
Lemma 5.4 Let rn = (:). Forp 5 *, Pr[E < I logn] 2 1 - 1
J G e ( 'V) -
Proof: Let p = then pt = rnp = log n and oz = m p g = log n(1- y) - log n for large
nz. Choosing h = log n, we get z = *=./1""". Then by the DeMoivre-Laplace theorern,
and for p' < p
Pr[E 5 log n ] , ~ 2 Pr[E 5 log n],
Hence, the result.
Similarly,
n-1 Proof= k t p = $ then p, = mp = 2- and o$ = mpq = n(1 - i) - n for large n.
Choosing h = a, we get a = = 9. Then by the DeMoivre-Laplace theorern,
and for p' > p
Hence, the result.
In the n e t section we describe a simple modification to the algorithm presented in
Chapter 4. The modification is based on the observations of Fredman and Khachiyan 1191.
CHAPTER 5. AVERAGE CASE AIVALYSIS
5.3 A Variant
We describe a variant of the algorithm we described in Chapter 4. To recap, we begin
by trying out all the 10' possibilities a t the top level. For every choice made we compute
the sets P, N , P N . We denote the resulting subproblem by CI. Next we compute all the
unsafe variables in N (denoted U). Now we generate another subproblem C2 obtained by
collapsing all the variables in U. We solve C2 recursively by trying out all the 10' possibilities
for clauses in N . We solve Ci recursively but we only try those 10' possibilities for which
some variable in U is set t o O.
The first key observation is that we do not need t o t ry 10' possibilities for al1 the variables
in a given stage. Let v be a variable which is unassigned in Stage i. In what follows we wiil
change the definition of an unsafe variable stightly.
Definition 5.3 (Unsafe in P(N)) A variable is called unsafe in P(N) if it belongs to more
than clauses in P(N) Jor sorne c mspectively, where n is the total number of clauses in P
and N.
T h e following three cases are of iaterest to us and form the basis for the variant which
we develop in this section.
i ) Lf v is unsaje in both P and N then we jurt try setting v t o O and 1. For each trial we
get a subproblem of size n(1 - t ). Previously we were generating O ( n ) subproblerns
when trying a value of 1 for the variable v . As the variable is eit her a I and O in the
solution we move t o Stage i+ l after solving these two subproblems.
ii) If v is unsafe in P and safe in N then we first t ry setting v t o 1, which results in a
subproblem of size at most n - 1. If we fail then u occurs as a 01' in the solution.
Here, we generate at most n subproblems each of size a t most :. This follows from the
fact that for each 01' trial we have t o consider only those clauses in N which contain
the ~ a r i a b l e v . ,411 the other clauses in IV will already have a 1 assigned, because of
the intersection property.
The case when t. is unsafe in Ar and safe in P is symrnetric.
iii) When v is safe in both P and N is treated in the same way as the previous case.
CHAPTER 5. AVERAGE: CASE ANALYSIS 74
The modification to Our algorithm comprises of tadrling these thtee cases separately
as advocated by Fredman and Khachiyan. The correctness of the modified algorithm stiU
follows from Theorern 4.2 and the bound on the running time foilows from the next t heorem.
Theorem 5.2 (Redman & Khachiyan:QB) The algodhm teminates in n40('0gn)+o(1)
time.
Proof: Here we will give only an outline of their proof. Fredman and Khachiyan choose
c = log n thereby obtaining a bound of n 4 0 ( 1 0 g n ) f o ( 1 ) . They also argue that the third case
never happens as there is always a variable which is unsafe either in P or in ,IV. Otherwise
all the clauses in P and N are of size greater than log n. Hence, the running time for the
algorithm is given by the foilowing two recurrences:
The first case is described by the foilowing recurrence,
0 This corresponds to the second case shown above. Complexity of this recurrence is
dominated by the second terrn.
4 log n
They show that both these recutrences are bounded by n i o r l o r n + O ( l ) .
We conclude that by using the insight of Fredman and Khachiyan it is possible to
improve the performance of the algorithm presented in Chapter 4 to achieve a running time
of n40('0~n)+0(1) by making the modifications described a t the start of this section.
In the next section we show that Fredman and Khachiyan's algorithm plus the variant
of our algorithm based on their approach terminates in
time for the class of random WAESPI.
CHAPTER 5. AVERAGE CASE ANALYSE
5.4 Analysis
In this section we analyze the average case behaviour of the algorithm presented in the
previous section. The key idea is to use Lemmas 5.3,5.4 and 5.5.
Theorem 5 . 3 The algorithm presented in the previous section terminates in
1 1 2+0(10,5'- l m a . ~ { O ( n ~ . ~ ~ , 0 ( n 3 log2 n), O(- - -) P 3))
p JP time on auemge, whene p is the pmbability with which the initial input instance is genemted.
P w f : Let Pk(Nk) denote the number of clauses in sets P(Ar) a t Stage k. The following
cases are of interest:
i) Before some stage i, p 3 max{k, k}. By Lemma 5.5 and Lemma 5.3 there exists a
variable which belongs to a t l e s t P;.* and IVi* dauses. Here, the first coje of
the algorithm is invoked, which generates two subproblems each of size a t most O ( P )
or O(N). The number of subproblems is described by the foiiowing recurrence:
which is 0(n1-87). As it takes 0 ( n 2 ) time to verify the solution for each subproblem,
the total running time is 0(n3-87).
log P log N ii) At some stage j 2 i either p 5 ~+ or p 5 ,-j. By Lemma 5.4 and Lemma 5.3
PJ IV, there exists a variable which belongs to at most Iogn clauses in Pj. Therefore the
number of subproblerns of size generated in the second step of the algorithm is
at most log n and the number of subproblems is given by the following recurrence:
which is O(n log2 n). As it takes 0(n2) time to verify the solution for each subproblem,
the total running time is 0 ( n 3 log2 n) .
log P iii) Without loss of generality assume that -# 5 p 5 k. The time taken in this case pJ
by Theorem 5.2, is at most O(Pi - P~)~('~'~-~J). Given that 7 < go we ohtain pJ
Pj 2 n. Substituting the lower bound on P, in the previous equation, the time
CHAPTER 5. AVERAGE CASE ANALMIS 76
taken is a t most O(Pi - f l ) ~ ( ' ~ g ~ - f i ) . .%ho, we have p < +, equidently Pi 5 b. Hence, the nurnber of subproblems in this case is at rnost O(: - %)o("~ :-%'. As it
takes 0(n2) time to verify the solution for each subproblem, the total running time 1 2+o(log l- '
is O(; - z) P 3).
The foliowing is a coroilary to Theorern 5.3.
Corouary 5.1 If p $ n)l
1 ., ,., , ihen the algorithm terminotes in 0 ( n 2 10g"@Jn+2) time.
Proof: Suppose that 5 p in some stage i then there are at most ( 1 0 g n ) ~ ~ g ~ ~ g " clauses
remaining. At this point the dgorithm (the one presented in Chapter 4) takes a t most
~ ( n ~ ~ ~ g ~ ~ g ~ + ~ ) time. Hence, the result.
5.5 Conclusion
In this chapter we proposed a method for randomly generating KAESPI instances. We
presented a variation of Our basic algorithm for solving NAESPI (the one presented in the
previous chapter) based on the ideas of Fredman and Khachiyan [19]. We showed that the
variant of our basic algorithm has the same compIexity as the algorithm of Fredman and
Khachiyan [19), i.e., ~ ( n ~ ~ ( ' ~ g " ) + ~ ( ' ) ) . Furt hermore, we analyzed the performance of Our
algorithms on the randomly generated instances of NAESPI and showed that the algorithm
terminates in r n a ~ { O ( n ~ - ~ ' ) ; 0(n310g2 n), O(; - $)2+0(10gL- P 3)) ' tirne.
Chapter 6
Approximation Algorit hm for
NAESP
6.1 Introduction
In this chapter we study a general version of the NAESPI problem and describe an approx-
imation algorithm for soiving the same. WTe remove the restriction that each pair of clauses
has a non-empty intersection. A polynomial time approximation algorithm is a good way of
coping with an NP-Complete problem because it takes polynornial tirne and the solution is
guaranteed to be 'not too far from the optimum'. The notion of 'not too far' is formalized
next.
Let II be an optimization problern. For each instance p E II we have a set of feasibie
solutions F(p) . Let c(s) be the value associated with a solution s E F ( p ) . Then, the
optimum value for
for a maxirnization
instance p is defined as
O P T ( p ) = max c(s) s E F ( p )
problem. For a minirnization problem the optimum value is
OPT(p) = min c ( s ) sEF(p)
Let A be an algorithm for ll such that for input p it returns a feasible solution A ( p ) E
CHA PTER 6. APPROXIMATION A LGORITHM FOR N.4 ESP
F ( p ) . A is an €-approximation algorithm if for all p, we have
MAX-CUT is the problem of partitioning the nodes of an undirected graph G = (Cr: E )
into two sets S and V - S such that there are as many edges as possible between S and
V - S. MAX-CUT is XP-Complete [41]. However the problem of determining a cut of
minimum size can be solved in polynomial time by using the algorithm of Edmonds and
Karp 1131, which builds on the max-flow min-cut theorem established in [ l T o 151.
NAESPis the not-d-equal satisfiability problem with only positive literals in the dauses
where intersection is not required between pairs of clauses. MAXNAESP is defined to be
the problem of determining the maximum number of clauses which can be satisfied. MAX-
NAESP is a generalization of the MAX-CUT problem which is evident from the following
reduction. Given a graph G = (V, E), for every edge e = (u, v ) E E we have a clause (u, II)
in the corresponding MAXPU'AESP problem. It is easy to see that if -there exists a cut of
size s then there exists a solution to the NAESP problem which satisfies a t l e s t s clauses.
Hence, we can regard MAXNAESP as a generalization of MAX-CUT.
The technique of local improvement has been widely used as a heuristic for solving
combinatorial optimization problems. A novel approximation algorithm for MAX-CUT is
based on the idea of local improvement [41]. The idea is to start with some putition S and
V - S and as long as we can improve the quality of the solution (the number of cross edges)
by adding a single node to S or by deleting a single node from S, we do so. It has been
shown that this approximation algorithm for MAX-CUT has a worst case performance ratio
of $ 1221.
In this chapter we describe another approximation algorithm based on local improvement
for solving MAXNAESP which yields a performance ratio of -& where each clause contains
a t least s variables. The algorithm described gives a bound of $ for MAX-CUT in contrast
t o the bound of achieved by the local search algorithm described in [22].
We give a polynomial reduction from 3NAES, in which each clause has exactly three
Literals, and the literals are not restricted to be positive [21]. t o Y4ESPI thereby estahüshing
the KP-Completeness of NAESP. In Section 2 we look a t hMXNAESP and provide two
approximation algorithms for it.
CHAPTER 6. .4PPROXIMATIOIV ALGORITHM FOR NAESP
We begin wit h some definitions:
Definition 6.1 (NAES) Given a set of clauses, find a satisfying truth assignment such
that each clause contains ut least one true literal and one false literal.
Definition 6.2 (NAESP) Given a set of clauses unth only positive litemls, find a satis-
fying truth assignment such that each clause contains ut least one true literal and one jalse
literal.
Given an instance of 3NAES (which is known to be NP-Complete [21]) we will generate
an instance of 3NAESP. NP-Completeness of MAX-2- NAESP (where each clause contains
exactly two variables) foilows from the fact that it is equivalent to MAX-CUT. The next
lemma is similar to Lemma 2.8.
Lemma 6.1 3yA ES is polynomially equivaelnt to 3NAESP.
Proof: Let n be the number of clauses and m be the number of variables in 3NAES. Let us - denote the literals in 3NAES by X I , q, xz, 22, . . . x,, 2,. We replace each 1; with a new
literal x,+; in all the clauses. In addition, for each pair of literals z;, c, we add the four
clauses (z;, xm+;, a), (z;, z,+;, b ) , (z;, x,+;, c ) , (a , b,c). We have a total of (n + 4m) clauses
in the instance of 3NAESP so generated.
* If 3NAES is satisfiable then the set of clauses generated in the instance of 3NAESP
generated is also satisfiable. The solution is obtained by assigning z,+; the same value as
in 3NAESP. In addition, the literal a is set to O and the literals b,c are set to 1.
* If the clauses in the instance of 3NAESP generated is satisfiable then the solution
to 3NAES is obtained by setting to the same value that x,+; is set to. This assignrnent
clearly satisfies all the clauses. For literals z;, z, the four clauses (z;, zm+;, a), (z;, z,+;, b ) ,
(xi, z,+;, c), and (a , 6 , c) guarantee that both xi and are not set to 1 (or O).
CHAPTER 6. APPROXIMATION ALGORITHM FOR NAESP
6.2 Approximation Algorit hms
6.2.1 $ Appromixation Algorit hm
We first present a simple approximation dgorithm for MAXNAESP which has a worst-case
performance bound of 5. We then examine a locdy optimal approximation algorithm for
the problem whose worst-case performance bound is a for the problem, and in general has
a bound of *, where s is the minimum number of literds in a clause.
$ Approximation Algorithm: Let the problem comprise rn literals and n dauses. A
literal u is arbitrarily picked and set to 1 if it occurs in a t least f clauses. The remaining
Literals are set to O and the aigorithm terminates. If however the literal u occurs in only
s < 5 clauses, then the literai u is set to O and the subproblem comprising the n - s clauses not containing the iiteral u is recursively solved (with the iiteral u removed from the
subproblem). Li the solution S to the subproblem satisfies more than $ clauses containing
u then the algorithm returns the solution S for the remaining iiterals. Else the algorithm
returns 3, the complement of the solution S for the remaining literals (in the complement
solution y, all the literai settings are complemented).
Theorem 6.1 The aboue algorithm has a performance mtio of $.
Proof: We prove by induction on the number of literals m that the algorithm satisfies a t
least $ clauses.
Base Case: For m = 2 (the minimum number of literals required for NAESP), each clause
contains both literals (else the clauses cannot be satisfied and can therefore be removed)
and so the result foliows trivially.
Induction Hypothesis: Assume the algorithm satisfies a t least f the total number of clauses
for m 5 p literals.
Induction Step: Let the number of clauses be n. Let the set of clauses satisfied by literal
u be denoted U. The aigorithm either sets u to 1 (if u satisfies s 2 clauses), or sets u
to O and solves the subproblem with p - 1 literals (and n - s clauses) recursively. By the
induction hypothesis, the algorithm derives a solution S that satisfies a t least clauses
in the subproblem. If in addition S also satisfies at least f clauses among lI? then the
algorithm satisfies at least in total. If on the other hand S satisfies less than clauses
CHAPTER 6. APPROXIMATION ALGORITHM FOR N.4ESP 81
among U , then satisfies a t l e s t f clauses among Li. This follows from the fact that
the clauses that are unsatisfied in U due to assignment S have a l l their variables set to O,
implying that the assignment 3 satisfies all t hese clauses (because the variable u in ail these
clauses is set to O). In addition, both the assignment S and its complement 3 continue to
satisfy the same number of clauses in the subproblem. Thus the algorithm satisfies at least
; clauses in to ta l rn
A trivial example where a üteral satisfies exactly $ the total number of clauses suffices
to show that the bound is tight.
In the next section we describe an approximation algorithm for MAXNAESP and show
that the algorithm has a performance ratio of &, where s is the minimum clause length.
6.2.2 & Approximation Algorit hm
This approximation algorithm relies on the notion of a local optimum.
Definition 6.3 (Locdy optimal solution) A solution S to MAXNAESP, is locally op-
timal if the number of clauses satisjkd cannot be increased by complementing the value to
which a liteml is set in the solution S .
The algorithm starts with a random assignment of values to literals (say all literals
are set to O). It then complements the setting of a literal if this improves the solution.
The algorithm continues in this manner until no further improvement resdts when a literal
setting is complernented.
Let S be the locally-optimal solution. With respect to this solution S, we divide the set
of literals into two disjoint subsets, X = {xl, 2 2 , . . . ,z,) comprising a.li literals which are
set to 1, and Y = {yl, y2,. . . , yp), comprising ail literds which are set to O. Mie divide the
clauses of MAXKAESP into three sets, A, B, and C . A is the set of aU satisfied clauses,
B (C) is the set of all unsatisfied clauses for which each literal in a clause belongs to X
(Y). We note that each clause in A contains a t least one literal that belongs to ,Y, and
one literal that belongs to Y (else the clause will not be satisfied). Let B(z ; ) , 1 5 i 5 p
(C(yj)? 1 5 j 5 q) denote the number of clauses in B (C) which contain the literal ti (yj)-
Let A(x) (A(y)) denote the number of clauses in A that contain only one ljteral from the
set X (Y).
CHAPTER 6. APPROXIMATION ALGORITHM FOR NAESP
Pro+ For the B(z i ) clauses in B contajning the iiteral x;, there should be A(x i ) > B(z;)
clauses in A which contain only literal z; from the set X (and al1 other literals from the
set Y). If this is not the case t hen by setting zi to O we can increase the number of clauses
satisfied, violating the fact that S is localiy-optimal. Noting that a clause in A which
contains only iiteral z; is distinct from a clause in A that contains only literal z j 7 i # j ,
1 5 i. j 5 p, it foliows that the .4(x;) dauses in A containing only literd are distinct from
the A ( z j ) clauses in A containing only literal zj. Thus, A(=) = Er==, A(=;) 2 Cy=, B(zi).W
The coroUary below may be shown using similar reasoning as above.
. Lemma 6.3 below derives an upper bound on IBI.
Proof: Each dause b; E B has si 2 s literals in it. Counting the number of 1's occurring 14 in the clauses in set B, we can write X e l B ( z i ) = xi=, si. The left hand side counts the
occurrence of 1's in each literal, and the right hand side counts the occurrence of 17s in each Pl 1w clause. But Ci=, si > Ci=, s = lBI x s, from which the result foilows. I
By a similar reasoning, the coroliary below follows.
Theorem 6.2 Let A be an algorithm which returns a locally-optimal soiution to the M.4X-
NAESP pmblem. The performance mtio of A is given by r, > &.
Proof: It follows from the definition that IAl 2 A(x) + A(y) , since A is the set of ad clauses
that are satisfied, and A ( z ) ( A ( y ) ) is the set of clauses that are satisfied with exactly one
literal from the set X (Y). From Lemmas 6.2 and 6.3, and Corollaries 6.1 and 6.2, it foliows
that IAI 2 A ( z ) + A(Y) 2 B ( l i ) + CFl - C ( y j ) t s x (IBl+ ICI)- IAl 1 A ( x ) + A ( y )
CHAPTER 6. APPROXIMATION ALGORITHM FOR NAESP 83
because A is the set of clauses which are satisfied and A(z) is the set of clauses which are
satisfied as 10' and A(y) the set of clauses which are satisfied as 01' (refer to Chapter 2 for
definition of clauses satisfied as 10' and 01'). Hence the performance ratio r , is given by,
The foilowing example illustrates that the above bound is tight. The instance contains
three clauses: ul v UJ, UI v u*, and uz v uq. A IocaUy optimal solution assigns ui = uz = 1,
and us = ud = O, satisfying two clauses, when the optimal assigns ul = u4 = 1, and
uz = u g = O, satisfying three clauses. This example can be extended for general s, where
each dause has at least s Literals.
6.3 Conclusion
As the main result in the chapter, we propose a simple locally optimal approximation
algorithm for the MAXNAESP problem whose pedormance ratio is &, where s is the
minimum number of literals in a dause. Such an algorithm appears to be usefd for a
large class of problems in the general domain of satisfiability. Specificdy, we note that this
algorithm has a bound of -& for MAXSAT, and follows directly from Lemmas 6.2 and 6.3.
This bound is identical to the bound derived by Johnson for a simple greedy algorithm [41].
It should be noted that the NAESP problem where each clause has exactly 2 literds is
equivalent to the MAX-CUT problem. However, a simple adaptation of the semi-definite
approximation algorithm for solving the max-cut problem [24] for MAXNAESP (where each
clause has at least two literals) does not appear to work. In addition, a straight-forward
extension of the randomized rounding aigorithm (using the iinear-programming solution as
the probabilities) [23] yields a bound of f . Also, the simple randomized algorithm, where
each literal is selected with probability ) has an expected bound of 1 - *, where s is the
minimum clause length. In con t ra t to this. the algorithm proposed in this chapter obtains
a bound of & for the MAXNAESP problem. Though the randomized dgorithm has a
better expected bound for s 2 4, the algorithm proposed in this chapter obtains a bound
of f (as compared to f for the randomized algorithm), for the most general version of the
MAXKAESP problem, obtained when s = 2.
Chapter 7
Conclusion and Open problems
In this thesis we estabfished the equivalence between NAESPI and Self-Duality. We de-
scribe an 0(n210gn+2) algorithm for solving the NAESPI problem and showed that the
bound is tight for the given algorithm. We showed that an adaptation of our algorithm
based on the observations of Fredman and Khachiyan [19] bas the same complexity as
their aigorithm. We provided an average-case andysis of the adapted algorithm for ran-
dornly generated instances of NAESPI. The average-case running time uras shown to be
m a x { ~ ( n ~ . ~ ~ ) , ~ ( n ~ l o ~ ~ n) ,O(k - &)2+0('0gL- P 3'1, ' where p is the probability with which
the instance is generated. We showed that k-NAESPI and c-bounded NAESPI can be solved
in polynomial time. We described a linear time algorithm for k-NAESPI. We also showed
that finding strong solutions to the NAESPI problem is NP-Complete. We addressed the
relationship between easily solvable instances of NAESPI and almost self-dud functions [5].
We also described approximation algorithms for the NAESP problem (where the intersec-
tion property is relaxed). NAESP is a generalization of the MAX-CUT problem and is
equivalent to 2-coloring of hypergraphs.
The foliowing problems are open to the best of Our knowledge. The linear time algorithm
(Chapter 2) for solving k-.V.4ESPI can be used to solve flOgnOgn-NAESPI in n 2 J c time,
which leads to the following:
Open Problem 2 1s (log n)-NAESPI solvable in polynomial time?
The example (presented in Chapter 4 ) shows an instance with a t most log n clauses
CHAPTER 7. CONCLUSION AND OPEN PROBLEMS 85
satisfied as 10' admits an easy solution. The following question begs some serious consid-
eration.
Open Problem 3 Does there exist a dass of non-easily satisfiable NAESPI instances such
that at most log n clauses are satisfied as IO'?
-4 related question is:
Open Problem 4 Can the satisfiability of non-easily satisfiable KAESPI instances be
determined in polynomid tirne?
Appendix A
List of Symbols
C denotes a Coterie.
c-bounded NAESPI is NAESPI such that every pair of clauses intersect in at most c
variables.
c-bounded k-NAESPI is k-XAESPI which is c-bounded.
E[V ] denotes the expectation of the random variable V.
f denotes a Monotone Boolean Functions in DNF.
k-NAESPI is NAESPI with a t most k variables in every clause.
Ki denotes a clique of size i.
rn is the number of variables in the function f.
n usually refers to the size of the input, for example the number of clauses in NAESPI.
N is the set of clauses such that all the instantiated wiables in every clause are set to O.
P is the set of clauses such that ail the instantiated variables in every clause are set to 1.
P(f) is the Not All Equal Satisfiability problem with intersection (NA ESPI) obtained from
the mononte boolean function f.
APPE.hrDIX A. LIST OF SYMBOLS 87
PAT is the set of clauses such that each clause contains at least one variable set to 1 and at
least one variable set to O.
Q i denotes the i th quorum in a Coterie.
s is the cardinality of the minimum-sized clause for a given NAESP.
S refers to a solution to the problem under consideration.
is the complement of a solution.
S(n) denotes the number of subproblems generated to solve an instance of NAESPI with n
clauses.
T denotes a term in f.
T(n) denotes the time taken by some algorithm on an input of size n.
uniform NAESPI is ~ ~ A E S P I such that every clause contains the same number of variables
k, for some L
zi usuaily refers to the ith variable (monotone) in the given instance of NAESPI.
Bibliography
[ l] A. A. Albert and R. Sander. An Introduction to Finite Projective Planes. Holt,
Rinehart and Winston, 1968.
[2] D. Barbara and H. Garcia-Molina. The vulnerability of vote assignments. A CM Tmns-
actions on Cornputer Systems, 4(3):187-213, Aug. 1986.
[3] J. Bioch and T. Ibaraki. Complexity of identification and dualkation of positive boolean
functions. Information and Computation, 123(1):50-63,1995.
[4] J. Bioch and T. Ibaraki. Decomposition of positive self-dual functions. D i s c ~ t e Math-
ematics, 140:23-46, 1995.
[5] J. C. Bioch and T. Ibaraki. Generating and approximating nondominated coteries.
IEEE Tmnsactions on Parallel and Distributed Systems, 6(9):905-913, 1995.
[6] B. Bollobas. Random Gmphs. Academic Press, 1985.
[7] E. Boros, P.L. Hammer, T. Ibaraki, and K. Kawakami. Identifying 2-monotonie pos-
itive boolean functions in polynomial time. In W.L. Hsu and R.C.T. Lee, editors,
Springer Lecture !Votes in Computer Science 557, International Symposium on Algo-
rithms, Taipei, 104-115, 1991.
[BI D. Carlos. Polynomial time algorithms for some self-duality problems. In Pmeedings
of the Italian Conference on Algorithms, March 1997.
[9] D. Carlos. N. Mishra, and L. Pitt. Efficient read-restricted monotone cnf/dnf duaiiza-
tion by learning with memebership queries. Submitted to a journal, also available from
www.lsi.upc.es/~carios/papers. html, 1998.
[IO] S. A. Cook. The cornplexity of theorem proving procedures. In Pmce~dings T h i d
Annual A CM Symposium on Theory of Computing, pages 151-158, 1971.
[ I l ] J. deKleer and B. C . Williams. Diagnosing multiple faults. Artificial Intelligence,
32:97-130, 1987.
[12] J. Edmonds. Pat hs, trees, and flowers. Canadian Journal of Math' 17(3):449-467,1965.
[13] J. Edmonds and R. M. Iiarp. Theoretical improvements in the algorithmic efficiency
for network flow problems. Journal of the ACM, 19(2):248-264,1972.
[14] T. Eiter and G. Gottlob. Identifying the minimum transversals of a hypergraph and
related problems. Siam Journal of Computing, 24(6):1278-1304, 1995.
[l5] P. Efias, A. Feinstein, and C. E. Shannon. Note on maximum flow through a network.
IRE Tmnsactions on Information Theory, IT-2:117-119, 1956.
[16] W. Feller. Intmduction to Probability Theoy and its Applications. John Wiley and
Sons, 3rd edition, 1967.
(171 L. R. Ford and D. R. F a e r s o n . Flows in Networh. Princeton University Press, 1962.
1181 J. Franco. On the probabilistic performance of the algorithms for the satisfiabifity
problem. Information Processing Letters, pages 103-106, 1986.
[19] Michael L. Fredman and Lwnid Khachiyan. On the complexity of dualization of mon*
tone disjunctive normal forms. Journal of Algorithms, 2 1 (3):618-628, Nov. 1996.
[20] H. Garcia-Molina and D. Barbara. How t o assign votes in a distributed system. Journal
of the ACM, 32:841-860,1985.
[21] M. Garey and D. Johnson. Cornputers and Intmctability: a guide to the Theory of
NP-Completeness. W. H . Freeman, 1979.
[22] M. R. Garey, D. S. Johnson, and L. J. Stockmeyer. Some simplified np-complete graph
problems. Theoret ical Computer Science, 1:237-267, 1976.
[23] M. Goemans and D. Williamson. New 3/4-approximation algorithms for MAX SAT. In
3rd kiPS Conference on Integer Progmrnming and Combinatorid Optirnitution, pages
313-321. MPS, 1993.
[23] M . Goemans and D. \\:illiamson. hproved approximation algorithms for maximum
cut and satisfiability problems using semidefinite prograrnming. Journal of the ACM,
42:1115-1145,1995.
[25] A. Goldberg, P. Purdom, and C. Brown. Average time analysis for sirnpüfied davis-
putnam procedures. information Processing Let ters, l5(2):72-75, 1982.
[26] V. Gurvich and L. Khachiyan. Generating the irredundant conjunctive and disjunctive
normal forms of monotone boolean functions. Technical Report LCSR-TR-251, Dept.
of Cornputer Science, Rutgers Univ., Aug. 1995.
[27] P. Hell and J. Nesetril. On the complexity of h-coloring. Joumal of Combinatorid
Theory Series B, 4892-110, 1990.
1283 T. Ibaralii and T. Kameda. A boolean theory of coteries. IEEE Tmnsoctions on Pamllel
and Distributed Systems, pages 779-794, 1993.
[29] D. Johnson. Approximation algorithms for combinatorid problems. Journal of Com- puter and System Science, 9:256-278, 1974.
[30] D . S . Johnson, M. Yannahkis, and C. H. Papadimitriou. On generating ail maximal
independent sets. Infornation Processing Letters, 27:119-123, 1988.
[3 11 R. M. Karp. Reducibility among combinatorial problems. Complezity of Cornputer
Computations, Edited by J. W. Thatcher and R. E. Miller:85-103, 1972.
[32] D. Kavvadias, C. Papadimitriou, and M. Sideri. On horn envelopes and hypergraph
transversals. International Symposium on Symbolic and Algebmic Cornputution Pm- ceedings, LNCS 762, 1993.
[33] Khardon. Translating between horn representations and t heir characterisitic model.
Joumal of Artificial Intelligence Research, 1995.
[34] L. Lamport . The implement ation of a reliable distributed muitiprocessor system. Com-
puter .h7etworks, 239.5-1 14, 1978.
[35] E. Lawler, J . K. Lenstra, and A. H. G. Fünnooy Kan. Generating al1 maximal indepen-
dent sets: Xp-hardness and polynomial- time dgorit hms. SI.4.31 Journal on Computing,
pages 558-565, 1980.
BlBL10GR.4 P H Y
[J6] hl. Maekawa. A fi algorithm for mutual exclusion in decentraiized systems. ACiLI
Transactions on Computer Systems, 3(2): 135-1-59, 198.5.
[3F] K. hl akino. Studies on Positive and Horn Bmlean Functions with .4pplications to Data
A nalgsis. P hD t hesis, Kyoto University, Sfarch 1997.
[38] K. Makino and T. Ibaraki. The maximum latency and identification of positive boolean
functions. in D. 2. Du and X. S. Zhang, editors, ISA,4C 1994, .Ugorithms and Com-
putution, volume 834 of Springer Lecture Notes in Computer Science, pages 324-332.
[39] H. Mannila and K. J. Raiha. An application of armstrong relations. Journal of C'om-
puter and System Science, 22:126-141, 1986.
[40] R. Motwani and P. Raghavan. Randomized Algon'thms. Cambridge University Press,
1995.
[4 11 C. Papadimit riou. Computational Cornplexity. Addison Wesley, 2994.
[42] P. IV. Purdom and C. A. Brown. The pure literal rule and polynomial average time.
SIAM Journal on Computing, 14:943-983, 1985.
[43] R. Reiter. A theory of' diagnosis from first principles. Artificial Intelligence, 3257-95:
1987.
[44] T. J. Schaefer. The complexity of satisfiability problem. ACM symposium on theory of
computing, pages 216-226, 1978.
[Ci] D. P. Sieweorek and R. S. Swartz. The Theory and Pmctice of Reliable Systern Design.
Digital Press, 1982.
[46] P. D. Wendt, E. J. Coyle, and N. C. Gallagher Jr. Stack filters. IEEE Transactions on
Acoustics, Speech and Signal Pmcessing, 34(4):898--9ll, 1986.