© 2009

Logic and Integer Programming


Part of the International Series in Operations Research & Management Science book series (ISOR, volume 130)

Table of contents

  1. Front Matter
    Pages 1-10
  2. H. Paul Williams
    Pages 1-24
  3. H. Paul Williams
    Pages 25-70
  4. H. Paul Williams
    Pages 71-103
  5. H. Paul Williams
    Pages 105-144
  6. Back Matter
    Pages 1-13

About this book


Integer programming (discrete optimization) is best used for solving problems involving discrete, whole elements. Using integer variables, one can model logical requirements, fixed costs, sequencing and scheduling requirements, and many other problem aspects. Whether it’s taught in OR graduate programs or in math or computer science programs; in courses called "Integer Programming," "Combinatorial Optimization," "Combinatorial Optimization and Integer Programming" or simply "Advanced Operations Management," it’s a part of every OR curriculum, and one of its greatest teachers has developed a text that shows how to use logic in integer programming to develop models with much greater precision.

Paul Williams, a leading authority on modeling in integer programming, has written a concise, readable introduction to the science and art of using modeling in logic for integer programming. Written for graduate and postgraduate students, as well as academics and practitioners, the book is divided into four chapters that all avoid the typical format of definitions, theorems and proofs and instead introduce concepts and results within the text through examples. References are given at the end of each chapter to the more mathematical papers and texts on the subject, and exercises are included to reinforce and expand on the material in the chapter.

Chapter 1 gives a basic introduction to logic and its aims, and goes on to explain the Propositional and Predicate Calculus. Chapter 2 explains Linear Programming (LP) and Integer Programming (IP) using the machinery of logic; explains the fundamental structural and mathematical properties of these types of models, along with the main methods of solving IP models; covers main areas of practical application; and attempts to distinguish between computationally ‘difficult’ and ‘easy’ classes of problem. Chapter 3 applies logic to the formulation of IP models using the methods explained in chapter 1 and looks at the deeper mathematical concepts involved. Chapter 4 then covers the fundamental problem of computational logic: the satisfiability problem, which lies at the heart of the entire book. Methods of solving with both logic and IP are given and their connections are described. Applications in diverse fields are discussed, and Williams shows how IP models can be expressed as satisfiability problems and solved as such.


discrete optimization integer programming logic mathematical logic mathematical programming modeling operations research optimization optimization models programming

Authors and affiliations

There are no affiliations available

About the authors

H.P.(Paul) Williams is Professor of Operational Research at the London School of Economics. He has a degree in Mathematics from Cambridge University and a PhD in Mathematical Logic from Leicester University (having studied under the late Professor R.L.Goodstein). His research work has been primarily in Linear and Integer Programming. This proposed book combines his knowledge in all these areas.

He worked for IBM on developing software for and helping clients model and solve problems in Linear and Integer Programming. This work was continued in a number of academic posts. He has held chairs at Edinburgh and Southampton Universities and published many papers in these areas (listed on his web site). He is particularly well known for his book Model Building in Mathematical Programming (Wiley) first published in 1978 and now in a fourth edition. It has been translated into a number of other languages.


Bibliographic information


From the reviews:

“The present book comes in the trend of the extended and long known work of H. Paul Williams on integer programming. … This is an important book for both graduate and post-graduate students, providing more concise descriptions and a clearer understanding of linear integer programming concepts and applications. It may be particularly valuable in courses with strong computational skills.” (Pedro Martins, Zentralblatt MATH, Vol. 1175, 2010)