Description

Book Synopsis
* Novel approach to the mathematics of problem solving, in particular how to do logical calculations. * Many of the problems are well-known from (mathematical) puzzle books. * The solution method in the book is new and more relevant to the true nature of problem solving in the modern IT-dominated world.

Table of Contents

Preface xi

PART I Algorithmic Problem Solving 1

CHAPTER 1 – Introduction 3

1.1 Algorithms 3

1.2 Algorithmic Problem Solving 4

1.3 Overview 5

1.4 Bibliographic Remarks 6

CHAPTER 2 – Invariants 7

2.1 Chocolate Bars 10

2.1.1 The Solution 10

2.1.2 The Mathematical Solution 11

2.2 Empty Boxes 16

2.2.1 Review 19

2.3 The Tumbler Problem 22

2.3.1 Non-deterministic Choice 23

2.4 Tetrominoes 24

2.5 Summary 30

2.6 Bibliographic Remarks 34

CHAPTER 3 – Crossing a River 35

3.1 Problems 36

3.2 Brute Force 37

3.2.1 Goat, Cabbage and Wolf 37

3.2.2 State-Space Explosion 39

3.2.3 Abstraction 41

3.3 Nervous Couples 42

3.3.1 What Is the Problem? 42

3.3.2 Problem Structure 43

3.3.3 Denoting States and Transitions 44

3.3.4 Problem Decomposition 45

3.3.5 A Review 48

3.4 Rule of Sequential Composition 50

3.5 The Bridge Problem 54

3.6 Conditional Statements 63

3.7 Summary 65

3.8 Bibliographic Remarks 65

CHAPTER 4 – Games 67

4.1 Matchstick Games 67

4.2 Winning Strategies 69

4.2.1 Assumptions 69

4.2.2 Labelling Positions 70

4.2.3 Formulating Requirements 72

4.3 Subtraction-Set Games 74

4.4 Sums of Games 78

4.4.1 A Simple Sum Game 79

4.4.2 Maintain Symmetry! 81

4.4.3 More Simple Sums 82

4.4.4 Evaluating Positions 83

4.4.5 Using the Mex Function 87

4.5 Summary 91

4.6 Bibliographic Remarks 92

CHAPTER 5 – Knights and Knaves 95

5.1 Logic Puzzles 95

5.2 Calculational Logic 96

5.2.1 Propositions 96

5.2.2 Knights and Knaves 97

5.2.3 Boolean Equality 98

5.2.4 Hidden Treasures 100

5.2.5 Equals for Equals 101

5.3 Equivalence and Continued Equalities 102

5.3.1 Examples of the Associativity of Equivalence 104

5.3.2 On Natural Language 105

5.4 Negation 106

5.4.1 Contraposition 109

5.4.2 Handshake Problems 112

5.4.3 Inequivalence 113

5.5 Summary 117

5.6 Bibliographic Remarks 117

CHAPTER 6 – Induction 119

6.1 Example Problems 120

6.2 Cutting the Plane 123

6.3 Triominoes 126

6.4 Looking for Patterns 128

6.5 The Need for Proof 129

6.6 From Verification to Construction 130

6.7 Summary 134

6.8 Bibliographic Remarks 134

CHAPTER 7 – Fake-Coin Detection 137

7.1 Problem Formulation 137

7.2 Problem Solution 139

7.2.1 The Basis 139

7.2.2 Induction Step 139

7.2.3 The Marked-Coin Problem 140

7.2.4 The Complete Solution 141

7.3 Summary 146

7.4 Bibliographic Remarks 146

CHAPTER 8 – The Tower of Hanoi 147

8.1 Specification and Solution 147

8.1.1 The End of the World! 147

8.1.2 Iterative Solution 148

8.1.3 Why? 149

8.2 Inductive Solution 149

8.3 The Iterative Solution 153

8.4 Summary 156

8.5 Bibliographic Remarks 156

CHAPTER 9 – Principles of Algorithm Design 157

9.1 Iteration, Invariants and Making Progress 158

9.2 A Simple Sorting Problem 160

9.3 Binary Search 163

9.4 Sam Loyd’s Chicken-Chasing Problem 166

9.4.1 Cornering the Prey 170

9.4.2 Catching the Prey 174

9.4.3 Optimality 176

9.5 Projects 177

9.6 Summary 178

9.7 Bibliographic Remarks 180

CHAPTER 10 – The Bridge Problem 183

10.1 Lower and Upper Bounds 183

10.2 Outline Strategy 185

10.3 Regular Sequences 187

10.4 Sequencing Forward Trips 189

10.5 Choosing Settlers and Nomads 193

10.6 The Algorithm 196

10.7 Summary 199

10.8 Bibliographic Remarks 200

CHAPTER 11 – Knight’s Circuit 201

11.1 Straight-Move Circuits 202

11.2 Supersquares 206

11.3 Partitioning the Board 209

11.4 Summary 216

11.5 Bibliographic Remarks 218

PART II Mathematical Techniques 219

CHAPTER 12 – The Language of Mathematics 221

12.1 Variables, Expressions and Laws 222

12.2 Sets 224

12.2.1 The Membership Relation 224

12.2.2 The Empty Set 224

12.2.3 Types/Universes 224

12.2.4 Union and Intersection 225

12.2.5 Set Comprehension 225

12.2.6 Bags 227

12.3 Functions 227

12.3.1 Function Application 228

12.3.2 Binary Operators 230

12.3.3 Operator Precedence 230

12.4 Types and Type Checking 232

12.4.1 Cartesian Product and Disjoint Sum 233

12.4.2 Function Types 235

12.5 Algebraic Properties 236

12.5.1 Symmetry 237

12.5.2 Zero and Unit 238

12.5.3 Idempotence 239

12.5.4 Associativity 240

12.5.5 Distributivity/Factorisation 241

12.5.6 Algebras 243

12.6 Boolean Operators 244

12.7 Binary Relations 246

12.7.1 Reflexivity 247

12.7.2 Symmetry 248

12.7.3 Converse 249

12.7.4 Transitivity 249

12.7.5 Anti-symmetry 251

12.7.6 Orderings 252

12.7.7 Equality 255

12.7.8 Equivalence Relations 256

12.8 Calculations 257

12.8.1 Steps in a Calculation 259

12.8.2 Relations between Steps 260

12.8.3 ‘‘If’’ and ‘‘Only If’’ 262

12.9 Exercises 264

CHAPTER 13 – Boolean Algebra 267

13.1 Boolean Equality 267

13.2 Negation 269

13.3 Disjunction 270

13.4 Conjunction 271

13.5 Implication 274

13.5.1 Definitions and Basic Properties 275

13.5.2 Replacement Rules 276

13.6 Set Calculus 279

13.7 Exercises 281

CHAPTER 14 – Quantifiers 285

14.1 DotDotDot and Sigmas 285

14.2 Introducing Quantifier Notation 286

14.2.1 Summation 287

14.2.2 Free and Bound Variables 289

14.2.3 Properties of Summation 291

14.2.4 Warning 297

14.3 Universal and Existential Quantification 297

14.3.1 Universal Quantification 298

14.3.2 Existential Quantification 300

14.4 Quantifier Rules 301

14.4.1 The Notation 302

14.4.2 Free and Bound Variables 303

14.4.3 Dummies 303

14.4.4 Range Part 303

14.4.5 Trading 304

14.4.6 Term Part 304

14.4.7 Distributivity Properties 304

14.5 Exercises 306

CHAPTER 15 – Elements of Number Theory 309

15.1 Inequalities 309

15.2 Minimum and Maximum 312

15.3 The Divides Relation 315

15.4 Modular Arithmetic 316

15.4.1 Integer Division 316

15.4.2 Remainders and Modulo Arithmetic 320

15.5 Exercises 322

CHAPTER 16 – Relations, Graphs and Path Algebras 325

16.1 Paths in a Directed Graph 325

16.2 Graphs and Relations 328

16.2.1 Relation Composition 330

16.2.2 Union of Relations 332

16.2.3 Transitive Closure 334

16.2.4 Reflexive Transitive Closure 338

16.3 Functional and Total Relations 339

16.4 Path-Finding Problems 341

16.4.1 Counting Paths 341

16.4.2 Frequencies 343

16.4.3 Shortest Distances 344

16.4.4 All Paths 345

16.4.5 Semirings and Operations on Graphs 347

16.5 Matrices 351

16.6 Closure Operators 353

16.7 Acyclic Graphs 354

16.7.1 Topological Ordering 355

16.8 Combinatorics 357

16.8.1 Basic Laws 358

16.8.2 Counting Choices 359

16.8.3 Counting Paths 361

16.9 Exercises 366

Solutions to Exercises 369

References 405

Index 407

Algorithmic Problem Solving

    Product form

    £41.75

    Includes FREE delivery

    RRP £43.95 – you save £2.20 (5%)

    Order before 4pm tomorrow for delivery by Tue 7 Jul 2026.

    A Paperback / softback by Roland Backhouse

    1 in stock

      Trusted by thousands of customers. See 2,385+ Customer Reviews

      View other formats and editions of Algorithmic Problem Solving by Roland Backhouse

      Publisher: John Wiley & Sons Inc
      Publication Date: 07/10/2011
      ISBN13: 9780470684535, 978-0470684535
      ISBN10: 0470684534

      Description

      Book Synopsis
      * Novel approach to the mathematics of problem solving, in particular how to do logical calculations. * Many of the problems are well-known from (mathematical) puzzle books. * The solution method in the book is new and more relevant to the true nature of problem solving in the modern IT-dominated world.

      Table of Contents

      Preface xi

      PART I Algorithmic Problem Solving 1

      CHAPTER 1 – Introduction 3

      1.1 Algorithms 3

      1.2 Algorithmic Problem Solving 4

      1.3 Overview 5

      1.4 Bibliographic Remarks 6

      CHAPTER 2 – Invariants 7

      2.1 Chocolate Bars 10

      2.1.1 The Solution 10

      2.1.2 The Mathematical Solution 11

      2.2 Empty Boxes 16

      2.2.1 Review 19

      2.3 The Tumbler Problem 22

      2.3.1 Non-deterministic Choice 23

      2.4 Tetrominoes 24

      2.5 Summary 30

      2.6 Bibliographic Remarks 34

      CHAPTER 3 – Crossing a River 35

      3.1 Problems 36

      3.2 Brute Force 37

      3.2.1 Goat, Cabbage and Wolf 37

      3.2.2 State-Space Explosion 39

      3.2.3 Abstraction 41

      3.3 Nervous Couples 42

      3.3.1 What Is the Problem? 42

      3.3.2 Problem Structure 43

      3.3.3 Denoting States and Transitions 44

      3.3.4 Problem Decomposition 45

      3.3.5 A Review 48

      3.4 Rule of Sequential Composition 50

      3.5 The Bridge Problem 54

      3.6 Conditional Statements 63

      3.7 Summary 65

      3.8 Bibliographic Remarks 65

      CHAPTER 4 – Games 67

      4.1 Matchstick Games 67

      4.2 Winning Strategies 69

      4.2.1 Assumptions 69

      4.2.2 Labelling Positions 70

      4.2.3 Formulating Requirements 72

      4.3 Subtraction-Set Games 74

      4.4 Sums of Games 78

      4.4.1 A Simple Sum Game 79

      4.4.2 Maintain Symmetry! 81

      4.4.3 More Simple Sums 82

      4.4.4 Evaluating Positions 83

      4.4.5 Using the Mex Function 87

      4.5 Summary 91

      4.6 Bibliographic Remarks 92

      CHAPTER 5 – Knights and Knaves 95

      5.1 Logic Puzzles 95

      5.2 Calculational Logic 96

      5.2.1 Propositions 96

      5.2.2 Knights and Knaves 97

      5.2.3 Boolean Equality 98

      5.2.4 Hidden Treasures 100

      5.2.5 Equals for Equals 101

      5.3 Equivalence and Continued Equalities 102

      5.3.1 Examples of the Associativity of Equivalence 104

      5.3.2 On Natural Language 105

      5.4 Negation 106

      5.4.1 Contraposition 109

      5.4.2 Handshake Problems 112

      5.4.3 Inequivalence 113

      5.5 Summary 117

      5.6 Bibliographic Remarks 117

      CHAPTER 6 – Induction 119

      6.1 Example Problems 120

      6.2 Cutting the Plane 123

      6.3 Triominoes 126

      6.4 Looking for Patterns 128

      6.5 The Need for Proof 129

      6.6 From Verification to Construction 130

      6.7 Summary 134

      6.8 Bibliographic Remarks 134

      CHAPTER 7 – Fake-Coin Detection 137

      7.1 Problem Formulation 137

      7.2 Problem Solution 139

      7.2.1 The Basis 139

      7.2.2 Induction Step 139

      7.2.3 The Marked-Coin Problem 140

      7.2.4 The Complete Solution 141

      7.3 Summary 146

      7.4 Bibliographic Remarks 146

      CHAPTER 8 – The Tower of Hanoi 147

      8.1 Specification and Solution 147

      8.1.1 The End of the World! 147

      8.1.2 Iterative Solution 148

      8.1.3 Why? 149

      8.2 Inductive Solution 149

      8.3 The Iterative Solution 153

      8.4 Summary 156

      8.5 Bibliographic Remarks 156

      CHAPTER 9 – Principles of Algorithm Design 157

      9.1 Iteration, Invariants and Making Progress 158

      9.2 A Simple Sorting Problem 160

      9.3 Binary Search 163

      9.4 Sam Loyd’s Chicken-Chasing Problem 166

      9.4.1 Cornering the Prey 170

      9.4.2 Catching the Prey 174

      9.4.3 Optimality 176

      9.5 Projects 177

      9.6 Summary 178

      9.7 Bibliographic Remarks 180

      CHAPTER 10 – The Bridge Problem 183

      10.1 Lower and Upper Bounds 183

      10.2 Outline Strategy 185

      10.3 Regular Sequences 187

      10.4 Sequencing Forward Trips 189

      10.5 Choosing Settlers and Nomads 193

      10.6 The Algorithm 196

      10.7 Summary 199

      10.8 Bibliographic Remarks 200

      CHAPTER 11 – Knight’s Circuit 201

      11.1 Straight-Move Circuits 202

      11.2 Supersquares 206

      11.3 Partitioning the Board 209

      11.4 Summary 216

      11.5 Bibliographic Remarks 218

      PART II Mathematical Techniques 219

      CHAPTER 12 – The Language of Mathematics 221

      12.1 Variables, Expressions and Laws 222

      12.2 Sets 224

      12.2.1 The Membership Relation 224

      12.2.2 The Empty Set 224

      12.2.3 Types/Universes 224

      12.2.4 Union and Intersection 225

      12.2.5 Set Comprehension 225

      12.2.6 Bags 227

      12.3 Functions 227

      12.3.1 Function Application 228

      12.3.2 Binary Operators 230

      12.3.3 Operator Precedence 230

      12.4 Types and Type Checking 232

      12.4.1 Cartesian Product and Disjoint Sum 233

      12.4.2 Function Types 235

      12.5 Algebraic Properties 236

      12.5.1 Symmetry 237

      12.5.2 Zero and Unit 238

      12.5.3 Idempotence 239

      12.5.4 Associativity 240

      12.5.5 Distributivity/Factorisation 241

      12.5.6 Algebras 243

      12.6 Boolean Operators 244

      12.7 Binary Relations 246

      12.7.1 Reflexivity 247

      12.7.2 Symmetry 248

      12.7.3 Converse 249

      12.7.4 Transitivity 249

      12.7.5 Anti-symmetry 251

      12.7.6 Orderings 252

      12.7.7 Equality 255

      12.7.8 Equivalence Relations 256

      12.8 Calculations 257

      12.8.1 Steps in a Calculation 259

      12.8.2 Relations between Steps 260

      12.8.3 ‘‘If’’ and ‘‘Only If’’ 262

      12.9 Exercises 264

      CHAPTER 13 – Boolean Algebra 267

      13.1 Boolean Equality 267

      13.2 Negation 269

      13.3 Disjunction 270

      13.4 Conjunction 271

      13.5 Implication 274

      13.5.1 Definitions and Basic Properties 275

      13.5.2 Replacement Rules 276

      13.6 Set Calculus 279

      13.7 Exercises 281

      CHAPTER 14 – Quantifiers 285

      14.1 DotDotDot and Sigmas 285

      14.2 Introducing Quantifier Notation 286

      14.2.1 Summation 287

      14.2.2 Free and Bound Variables 289

      14.2.3 Properties of Summation 291

      14.2.4 Warning 297

      14.3 Universal and Existential Quantification 297

      14.3.1 Universal Quantification 298

      14.3.2 Existential Quantification 300

      14.4 Quantifier Rules 301

      14.4.1 The Notation 302

      14.4.2 Free and Bound Variables 303

      14.4.3 Dummies 303

      14.4.4 Range Part 303

      14.4.5 Trading 304

      14.4.6 Term Part 304

      14.4.7 Distributivity Properties 304

      14.5 Exercises 306

      CHAPTER 15 – Elements of Number Theory 309

      15.1 Inequalities 309

      15.2 Minimum and Maximum 312

      15.3 The Divides Relation 315

      15.4 Modular Arithmetic 316

      15.4.1 Integer Division 316

      15.4.2 Remainders and Modulo Arithmetic 320

      15.5 Exercises 322

      CHAPTER 16 – Relations, Graphs and Path Algebras 325

      16.1 Paths in a Directed Graph 325

      16.2 Graphs and Relations 328

      16.2.1 Relation Composition 330

      16.2.2 Union of Relations 332

      16.2.3 Transitive Closure 334

      16.2.4 Reflexive Transitive Closure 338

      16.3 Functional and Total Relations 339

      16.4 Path-Finding Problems 341

      16.4.1 Counting Paths 341

      16.4.2 Frequencies 343

      16.4.3 Shortest Distances 344

      16.4.4 All Paths 345

      16.4.5 Semirings and Operations on Graphs 347

      16.5 Matrices 351

      16.6 Closure Operators 353

      16.7 Acyclic Graphs 354

      16.7.1 Topological Ordering 355

      16.8 Combinatorics 357

      16.8.1 Basic Laws 358

      16.8.2 Counting Choices 359

      16.8.3 Counting Paths 361

      16.9 Exercises 366

      Solutions to Exercises 369

      References 405

      Index 407

      Recently viewed products

      © 2026 Book Curl

        • American Express
        • Apple Pay
        • Diners Club
        • Discover
        • Google Pay
        • Maestro
        • Mastercard
        • PayPal
        • Shop Pay
        • Union Pay
        • Visa

        Login

        Forgot your password?

        Don't have an account yet?
        Create account