## Logic in Computer Science: Modelling and Reasoning about SystemsRecent years have seen the development of powerful tools for verifying hardware and software systems, as companies worldwide realise the need for improved means of validating their products. There is increasing demand for training in basic methods in formal reasoning so that students can gain proficiency in logic-based verification methods. The second edition of this successful textbook addresses both those requirements, by continuing to provide a clear introduction to formal reasoning which is both relevant to the needs of modern computer science and rigorous enough for practical application. Improvements to the first edition have been made throughout, with extra and expanded sections on SAT solvers, existential/universal second-order logic, micro-models, programming by contract and total correctness. The coverage of model-checking has been substantially updated. Further exercises have been added. Internet support for the book includes worked solutions for all exercises for teachers, and model solutions to some exercises for students. |

### What people are saying - Write a review

#### Review: Logic in Computer Science: Modelling and Reasoning about Systems

User Review - Ilya - GoodreadsA very brief overview of the applications of logic in computer science. It begins with the discussion of propositional logic, giving two constraint-based algorithms for solving the satisfiability ... Read full review

### Contents

LXVIII | 220 |

LXIX | 221 |

LXXI | 222 |

LXXII | 230 |

LXXIII | 232 |

LXXIV | 238 |

LXXV | 240 |

LXXVI | 242 |

XIII | 36 |

XIV | 40 |

XV | 45 |

XVI | 49 |

XVII | 53 |

XVIII | 54 |

XIX | 58 |

XX | 65 |

XXI | 68 |

XXII | 69 |

XXIII | 72 |

XXIV | 78 |

XXV | 91 |

XXVI | 93 |

XXVII | 98 |

XXVIII | 99 |

XXIX | 100 |

XXX | 102 |

XXXI | 104 |

XXXII | 107 |

XXXIII | 117 |

XXXIV | 122 |

XXXV | 123 |

XXXVI | 129 |

XXXVII | 130 |

XXXVIII | 131 |

XXXIX | 136 |

XL | 139 |

XLI | 140 |

XLII | 141 |

XLIII | 142 |

XLIV | 146 |

XLV | 148 |

XLVI | 157 |

XLVII | 170 |

XLVIII | 172 |

XLIX | 175 |

LI | 178 |

LII | 183 |

LIII | 184 |

LIV | 186 |

LV | 187 |

LVI | 191 |

LVII | 194 |

LVIII | 195 |

LIX | 199 |

LX | 203 |

LXI | 207 |

LXII | 208 |

LXIII | 211 |

LXIV | 215 |

LXVI | 216 |

LXVII | 217 |

LXXVII | 243 |

LXXVIII | 245 |

LXXIX | 254 |

LXXX | 256 |

LXXXI | 257 |

LXXXII | 258 |

LXXXIII | 259 |

LXXXIV | 262 |

LXXXV | 265 |

LXXXVI | 268 |

LXXXVII | 269 |

LXXXIX | 273 |

XC | 287 |

XCI | 292 |

XCII | 296 |

XCIII | 299 |

XCIV | 304 |

XCV | 306 |

XCVI | 307 |

XCVII | 308 |

XCVIII | 316 |

XCIX | 317 |

C | 320 |

CI | 322 |

CII | 326 |

CIII | 328 |

CIV | 331 |

CV | 332 |

CVI | 335 |

CVII | 339 |

CVIII | 342 |

CIX | 350 |

CX | 356 |

CXI | 358 |

CXII | 359 |

CXIII | 361 |

CXIV | 366 |

CXV | 372 |

CXVI | 373 |

CXVII | 377 |

CXIX | 380 |

CXX | 382 |

CXXI | 383 |

CXXII | 385 |

CXXIII | 387 |

CXXV | 390 |

CXXVII | 393 |

CXXVIII | 398 |

CXXIX | 413 |

414 | |

418 | |

### Common terms and phrases

algorithm Alloy apply arguments assignment assumption basic modal logic boolean formula boolean function chapter clause components computation path conjunction Consider CTL formula define Definition denote equals equivalent evaluates example execution Exercises express fairness constraints false ferryman Figure finite fixed point formula scheme function symbols given greatest fixed point holds iff if-statement IMPL_FREE implies infinitely input integer labelled logic formula mathematical induction means modal logic model checking module natural deduction natural numbers negation node NuSMV occur parse tree postcondition precondition predicate logic predicate symbols premise proof calculus proof rule propositional atoms propositional logic prove quantifiers reduced OBDD represented result satisfies semantic entailment sentence sequent specification structure subformulas subset temporal logic terminates Theorem transition relation true truth table truth value valid valuation verify Vx P(x well-formed formula while-statement write