BOOLEAN FUNCTIONS Theory, Algorithms, and Applications
Total Page:16
File Type:pdf, Size:1020Kb
www.getmyuni.com BOOLEAN FUNCTIONS Theory, Algorithms, and Applications www.getmyuni.com www.getmyuni.com Contents I FOUNDATIONS 13 1 Fundamental concepts and applications 15 1.1 Boolean functions: definitions and examples . 16 1.2 Boolean expressions . 21 1.3 Duality . 27 1.4 Normal forms . 29 1.5 Transforming an arbitrary expression into a DNF . 34 1.6 Orthogonal DNFs and number of true points . 38 1.7 Implicants and prime implicants . 41 1.8 Restrictions of functions, essential variables . 45 1.9 Geometric interpretation . 49 1.10 Monotone Boolean functions . 51 1.10.1 Definitions and examples . 52 1.10.2 DNFs and prime implicants of positive functions . 54 1.10.3 Minimal true points and maximal false points . 57 1.11 Recognition of functional and DNF properties . 59 1.12 Other representations of Boolean functions . 63 1.12.1 Representations over GF(2) . 63 1.12.2 Representations over the reals . 65 1.12.3 Binary decision diagrams . 66 1.13 Applications . 68 1.13.1 Propositional logic and artificial intelligence . 69 1.13.2 Electrical and computer engineering . 72 1.13.3 Game theory . 75 1.13.4 Reliability theory . 78 1.13.5 Combinatorics . 80 1.13.6 Integer programming . 82 1 www.getmyuni.com 2 CONTENTS 1.14 Exercises . 86 2 Boolean equations 89 2.1 Definitions and applications . 89 2.2 The complexity of Boolean equations: Cook's theorem . 95 2.3 On the role of DNF equations . 97 2.4 What does it mean to \solve a Boolean equation"? . 102 2.5 Branching procedures . 104 2.5.1 Branching rules . 106 2.5.2 Preprocessing . 108 2.6 Variable elimination procedures . 112 2.7 The consensus procedure . 117 2.8 Mathematical programming approaches . 121 2.8.1 Integer linear programming . 122 2.8.2 Nonlinear programming . 127 2.8.3 Local search heuristics . 128 2.9 Recent trends and algorithmic performance . 129 2.10 More on the complexity of Boolean equations . 131 2.10.1 Complexity of equation solving procedures . 131 2.10.2 Random equations . 133 2.10.3 Constraint satisfaction problems and Schaefer's theorem . 135 2.11 Generalizations of consistency testing . 139 2.11.1 Counting the number of solutions . 139 2.11.2 Generating all solutions . 139 2.11.3 Parametric solutions . 141 2.11.4 Maximum satisfiability . 144 2.12 Exercises . 150 3 Prime implicants and minimal DNFs 153 Peter L. Hammer and Alexander Kogan 3.1 Prime implicants . 154 3.1.1 Applications to propositional logic and artificial intelligence . 154 3.1.2 Short prime implicants . 155 3.2 Generation of all prime implicants . 158 3.2.1 Generation from the set of true points . 159 3.2.2 Generation from a DNF representation: The consensus method . 161 3.2.3 Generation from a CNF representation . 172 www.getmyuni.com CONTENTS 3 3.3 Logic minimization . 173 3.3.1 Quine-McCluskey approach: Logic minimization as set covering . 175 3.3.2 Local simplifications of DNFs . 178 3.3.3 Computational complexity of logic minimization . 183 3.3.4 Efficient approximation algorithms for logic minimization . 190 3.4 Extremal and typical parameter values . 194 3.4.1 Number of prime implicants . 194 3.4.2 Extremal parameters of minimal DNFs . 196 3.4.3 Typical parameters of Boolean functions and their DNFs . 197 3.5 Exercises . 200 4 Duality theory 203 Yves Crama and Kazuhisa Makino 4.1 Basic properties and applications . 203 4.1.1 Dual functions and expressions . 203 4.1.2 Normal forms and implicants of dual functions . 205 4.1.3 Dual-comparable functions . 207 4.1.4 Applications . 211 4.2 Duality properties of positive functions . 214 4.2.1 Normal forms and implicants of dual functions . 214 4.2.2 Dual-comparable functions . 215 4.2.3 Applications . 217 4.3 Algorithmic aspects: The general case . 221 4.3.1 Definitions and complexity results . 221 4.3.2 A simple dualization algorithm . 224 4.4 Algorithmic aspects: Positive functions . 228 4.4.1 Some complexity results . 228 4.4.2 A quasi-polynomial dualization algorithm . 231 4.4.3 Additional results . 236 4.5 Exercises . 237 II SPECIAL CLASSES 241 5 Quadratic functions 243 Bruno Simeone 5.1 Basic definitions and properties . 243 5.2 Why are quadratic Boolean functions important? . 245 www.getmyuni.com 4 CONTENTS 5.3 Special classes of quadratic functions . 248 5.3.1 Classes . 248 5.3.2 Functional characterizations . 249 5.4 Quadratic Boolean functions and graphs . 250 5.4.1 Quadratic functions, graphs, digraphs, and bidirected graphs . 250 5.4.2 The matched graph . 251 5.4.3 The implication graph . 253 5.4.4 Conflict codes and quadratic graphs . 258 5.5 Reducibility of combinatorial problems to quadratic equations . 260 5.5.1 Introduction . 260 5.5.2 Bipartiteness . 262 5.5.3 Balance in signed graphs . 262 5.5.4 The K}onig-Egerv´aryproperty for graphs . 263 5.5.5 Recognition of split graphs . 265 5.5.6 Forbidden-color graph bipartition . 265 5.5.7 Recognition of totally unimodular matrices with two nonzero entries per column . 266 5.5.8 Single bend wiring . 268 5.5.9 Max-quadratic functions and VLSI design . 269 5.5.10 A level graph drawing problem . 271 5.5.11 A final look into complexity . 275 5.6 Efficient graph-theoretic algorithms for quadratic equations . 276 5.6.1 Introduction . 276 5.6.2 Labeling algorithm (L) . 277 5.6.3 Alternative Labeling algorithm (AL) . 281 5.6.4 Switching algorithm (S) . 282 5.6.5 Strong components algorithm (SC) . 284 5.6.6 An experimental comparison of algorithms for quadratic equations . 286 5.7 Quadratic equations: Special topics . 288 5.7.1 Parametric solutions . 288 5.7.2 On-line quadratic equations . 295 5.8 Prime implicants, transitive closures, and irredundant forms . 295 5.8.1 Introduction . 295 5.8.2 A transitive closure algorithm for finding all prime implicants . 297 5.8.3 A restricted consensus method and its application to computing the transitive closure of a digraph . 301 5.8.4 Irredundant normal forms and transitive reductions . 310 www.getmyuni.com CONTENTS 5 5.9 Dualization of quadratic functions . 311 5.9.1 Introduction . 311 5.9.2 The dualization algorithm . 312 5.10 Exercises . 315 6 Horn functions 319 Endre Boros 6.1 Basic definitions and properties . 319 6.2 Applications of Horn functions . 323 6.2.1 Propositional rule bases . 323 6.2.2 Functional dependencies in data bases ..