TY - BOOK AU - Alzalg,Baha TI - Combinatorial and algorithmic mathematics: from foundation to optimization SN - 9781394235940 AV - QA164 .A4693 2024 U1 - 511/.6 23/eng/20240412 PY - 2024/// CY - Hoboken, NJ PB - Wiley KW - Algorithms KW - Combinatorial analysis KW - Combinatorial optimization KW - Electronic books N1 - Includes bibliographical references and index; Table of Contents About the Author xiii Preface xv Acknowledgments xvii About the Companion Website xxi Part I Foundations 1 1 Mathematical Logic 3 1.1 Propositions 3 1.2 Logical Operators 6 1.3 Propositional Formulas 15 1.4 Logical Normal Forms 24 1.5 The Boolean Satisfiability Problem 29 1.6 Predicates and Quantifiers 30 1.7 Symbolizing Statements of the Form "All P Are Q" 37 2 Set-Theoretic Structures 51 2.1 Induction 51 2.2 Sets 54 2.3 Relations 59 2.4 Partitions 64 2.5 Functions 65 3 Analytic and Algebraic Structures 77 3.1 Sequences 77 3.2 Summations and Series 81 3.3 Matrices, Subspaces, and Bases 87 3.4 Convexity, Polyhedra, and Cones 91 3.5 Farkas' Lemma and Its Variants 95 Part II Combinatorics 103 4 Graphs105 4.1 Basic Graph Definitions 106 4.2 Isomorphism and Properties of Graphs 113 4.3 Eulerian and Hamiltonian Graphs 118 4.4 Graph Coloring 122 4.5 Directed Graphs 125 5 Recurrences 133 5.1 Guess-and-Confirm 133 5.2 Recursion-Iteration 136 5.3 Generating Functions 138 5.4 Recursion-Tree 140 6 Counting149 6.1 Binomial Coefficients and Identities 149 6.2 Fundamental Principles of Counting 154 6.3 The Pigeonhole Principle 161 6.4 Permutations 163 6.5 Combinations 166 Part III Algorithms 179 7 Analysis of Algorithms 181 7.1 Constructing and Comparing Algorithms 182 7.2 Running Time of Algorithms 189 7.3 Asymptotic Notation 199 7.4 Analyzing Decision-Making Statements 211 7.5 Analyzing ProgramsWithout Function Calls 213 7.6 Analyzing Programs with Function Calls 219 7.7 The Complexity Class NP-Complete 224 8 Array and Numeric Algorithms 241 8.1 Array Multiplication Algorithms 241 8.2 Array Searching Algorithms 244 8.3 Array Sorting Algorithms 248 8.4 Euclid's Algorithm 253 8.5 Newton's Method Algorithm 255 9 Elementary Combinatorial Algorithms 267 9.1 Graph Representations 267 9.2 Breadth-First Search Algorithm 270 9.3 Applications of Breadth-First Search 273 9.4 Depth-First Search Algorithm 277 9.5 Applications of Depth-First Search 279 9.6 Topological Sort 283 Part IV Optimization 293 10 Linear Programming 295 10.1 Linear Programming Formulation and Examples 296 10.2 The Graphical Method 302 10.3 Standard Form Linear Programs 309 10.4 Geometry of Linear Programming 311 10.5 The Simplex Method 320 10.6 Duality in Linear Programming 339 10.7 A Homogeneous Interior-Point Method 347 11 Second-Order Cone Programming 363 11.1 The Second-Order Cone and Its Algebraic Structure 363 11.2 Second-Order Cone Programming Formulation 368 11.3 Applications in Engineering and Finance 370 11.4 Duality in Second-Order Cone Programming 375 11.5 A Primal-Dual Path-Following Algorithm 379 11.6 A Homogeneous Self-Dual Algorithm 386 12 Semidefinite Programming and Combinatorial Optimization 395 12.1 The Cone of Positive Semidefinite Matrices 395 12.2 Semidefinite Programming Formulation 399 12.3 Applications in Combinatorial Optimization 401 12.4 Duality in Semidefinite Programming 405 12.5 A Primal–Dual Path-Following Algorithm 408 Exercises 417 Notes and Sources 418 References 418 Appendix A Solutions to Chapter Exercises 421 References 487 Bibliography 489 Index 501 N2 - "Throughout operations research, computer science and pure and applied mathematics, combinatorics problems arise frequently, where the solution is to find the "optimal" object from a finite set of mathematical objects. Typically, it is impractical to search exhaustively for all possible solutions. The development of efficient algorithms for exploring the solution space is known as combinatorial optimisation. Many problems, such as network optimisation, supply chain management, data compression, resource allocation and game theory - indeed most of machine learning, AI, and current high profile computer science topics rely on optimisation. Together, combinatorial and algorithmic mathematics provide powerful tools for solving these real-world problems, and for in-demand subjects such as data science, machine learning, and artificial intelligence, a unified knowledge of discrete structures, algorithms and combinatorial optimization is considered essential"-- UR - https://onlinelibrary.wiley.com/doi/book/10.1002/9781394235971 ER -