The ability to reason correctly is critical to most aspects of computer science and to software development in particular. This book teaches readers how to better reason about software development, to communicate reasoning, to distinguish between good and bad reasoning, and to read professional lite
Elementary Logic: For Software Development
โ Scribed by Robert Lover (auth.)
- Publisher
- Springer-Verlag London
- Year
- 2008
- Tongue
- English
- Leaves
- 311
- Edition
- 1
- Category
- Library
No coin nor oath required. For personal study only.
โฆ Synopsis
The ability to reason correctly is critical to most aspects of computer science and to software development in particular. This book teaches readers how to better reason about software development, to communicate reasoning, to distinguish between good and bad reasoning, and to read professional literature that presumes knowledge of elementary logic. It explains fundamental concepts and provides reader-friendly instructions for applying logic to software development
Part I explains how to find and represent the logical forms of statements expressed in English. Part II describes how to use truth tables to determine the truth or falsity of a complex statement. The final part discusses logical truth and explains how to test statements for logical equivalence, implication and redundancy, as well as how to test arguments for validity and soundness. It also explains how to use rules of inference to make proofs of program correctness. This useful text/reference emphasizes applications of logic to software development throughout.
Features:
โข Covers elementary logic and its application to most stages of software development
โข Expresses examples in pseudocode, so that no particular programming language is used
โข Provides numerous examples and exercises facilitating reader self-assessment and independent self-study
โข Emphasizes truth-functional and quantificational logic, and introduces Floyd-Hoare logic
โข Supplies web resources such as solutions for all exercises and supplementary information
โข Emphasizes the difference between helpful and excessive use of formal notation
โข Written from class tested teaching material proven to be clearly understandable
Key topics:
โข Expressing Problem Specifications
โข Expressing Program Designs
โข Using Truth Functions
โข Interpretations for Quantified Statements
โข Tests for Logical Properties of Statements
โข Simplifying Statements and Instructions
โข Rules of Inference for Control Structures
โข Program Correctness Proofs
Since logic is the discipline concerned with general rules and criteria of correct reasoning, those involved in computer science and software development will benefit greatly from using this book. It provides a reader-friendly foundation to logic and offers valuable insight into the topic, thereby serving as a helpful reference for practitioners, as well as students studying software development.
Robert Lover has been a software developer, has created and taught professional development courses for Harvard University, and has taught courses on logic and software development at several other colleges and universities. He is currently chair of the Belmont Abbey College Computer Studies Department.
โฆ Table of Contents
Front Matter....Pages i-xiv
Front Matter....Pages 1-1
Atomic Statements....Pages 3-12
Compound Statements....Pages 13-21
Quantified Statements....Pages 23-31
Expressing Arguments....Pages 33-40
Defining Data Structures....Pages 41-52
Expressing Problem Specifications....Pages 53-66
Expressing Program Designs....Pages 67-75
Front Matter....Pages 78-78
Truth for Statements with at Most One Connective....Pages 79-93
Truth for Statements with Multiple Connectives....Pages 95-104
Tracing Program Execution....Pages 105-112
Front Matter....Pages 114-114
Truth Functional Forms....Pages 115-127
Truth Functional Properties of Program Designs....Pages 129-138
Quantified Forms....Pages 139-151
Logical Equivalence....Pages 153-164
Logical Implication and Validity....Pages 165-179
Rules of Inference....Pages 181-188
Proof....Pages 189-201
Algorithmic Unsolvability Proofs....Pages 203-209
Program Correctness Proofs....Pages 211-231
Above and Beyond this Book....Pages 233-239
Back Matter....Pages 241-313
โฆ Subjects
Logics and Meanings of Programs
๐ SIMILAR VOLUMES