
At a Glance
316 Pages
24.13 x 16.51 x 1.91
Paperback
$84.99
or 4 interest-free payments of $21.25 with
 orÂShips in 5 to 7 business days
| Introduction | p. 1 |
| Specification and Correctness | p. 1 |
| Specification as a Contract | p. 2 |
| Specification as a Design Aid | p. 3 |
| Specification as a Human Endeavour | p. 3 |
| Specification as Abstraction | p. 4 |
| Modularity in Specifications | p. 6 |
| Benefits Beyond Precision | p. 6 |
| Formal Specification as an Emerging Technology | p. 8 |
| Specification Techniques | p. 9 |
| Schema Language | p. 11 |
| Introduction | p. 11 |
| Type Definitions in Z | p. 12 |
| Generic Types | p. 13 |
| Free (Enumerated) Types | p. 13 |
| Types Defined by Schemas | p. 14 |
| Mathematical Definitions in Z | p. 14 |
| Schema | p. 15 |
| Axiomatic Definitions | p. 15 |
| Generic Definitions | p. 16 |
| Presentation of Schemas | p. 17 |
| Schema Manipulation | p. 18 |
| Schema Extension | p. 19 |
| Merging Schemas | p. 20 |
| Schema Negation | p. 24 |
| Significance of Schemas | p. 24 |
| Schemas Instead of Declarations | p. 25 |
| Schemas and Mathematical Relations | p. 25 |
| Bindings | p. 26 |
| Schemas as Sets | p. 26 |
| Schemas as Types | p. 27 |
| In Lambda Notation | p. 28 |
| Schemas in Predicate Logic Formulae | p. 28 |
| Some Naming Conventions | p. 29 |
| Schema Decoration | p. 30 |
| Explicit Renaming of Components | p. 30 |
| Dot Notation | p. 31 |
| Hiding and Projection of Components | p. 32 |
| Notation for Specification of Systems | p. 34 |
| General | p. 34 |
| Types of Operations | p. 34 |
| Naming Conventions | p. 35 |
| Some Common Abbreviations | p. 36 |
| Schema Composition | p. 39 |
| Pre and Post Conditions | p. 41 |
| Promotion | p. 43 |
| Exercises | p. 47 |
| An Approach to Specification | p. 49 |
| Introduction | p. 49 |
| An Initial Understanding | p. 50 |
| Identification of the Objects of Discourse and Operations | p. 50 |
| Abstraction and Modularisation | p. 51 |
| Abstraction | p. 51 |
| Modularisation | p. 52 |
| Flight Journey | p. 53 |
| Flight Accommodation | p. 57 |
| Definition of Flight | p. 58 |
| Definition of Flight State | p. 58 |
| Initialisation of Flight State | p. 59 |
| Operations on Flight | p. 59 |
| Passenger Details | p. 59 |
| An Auxiliary Definition | p. 60 |
| Messages | p. 61 |
| Operation of Booking a Seat | p. 61 |
| Operation of Cancelling a Booking | p. 63 |
| Query Operation on Seat Availability | p. 64 |
| An Airline | p. 64 |
| Abstract Representation | p. 64 |
| Initialisation | p. 65 |
| Shared Auxiliary Specifications | p. 65 |
| Airline Operations | p. 66 |
| Concluding Remarks | p. 66 |
| Exercises | p. 67 |
| Specification for Fun | p. 69 |
| Games as Systems | p. 69 |
| Musical Chairs | p. 69 |
| The Problem Description | p. 69 |
| A Mathematical Description | p. 70 |
| Snakes and Ladders | p. 72 |
| The Problem Description | p. 72 |
| The Preliminaries | p. 73 |
| Some Notes on Decomposition | p. 73 |
| A Simple Game | p. 74 |
| The Full Game | p. 76 |
| An Illustration | p. 78 |
| Exercises | p. 80 |
| A Specification for Clocks | p. 81 |
| Representation of Time | p. 81 |
| Notions of Time | p. 81 |
| Real Time | p. 82 |
| Points and Intervals of Time | p. 82 |
| Clock Time | p. 83 |
| A Mathematical Definition of Clocks | p. 84 |
| Clock Mechanism | p. 84 |
| Clock Utilities | p. 87 |
| Idealised Clock with Utilities | p. 88 |
| Operations and Transitions | p. 88 |
| Initialisation and Resetting | p. 88 |
| Clock Advancement | p. 89 |
| The Functioning of the Alarm | p. 90 |
| Intervals in Real Time | p. 91 |
| Concluding Remarks | p. 93 |
| Exercises | p. 93 |
| Reasoning About Specifications | p. 95 |
| Introduction | p. 95 |
| Kinds of Internal Consistency | p. 96 |
| Consistency of the General State | p. 98 |
| Initialisation Consistency | p. 100 |
| Consistency of Operations | p. 101 |
| Forms of Operation Inconsistency | p. 101 |
| Proof of Operational Aspects | p. 102 |
| Proofs Obligatory on Specification Grounds | p. 103 |
| An Illustration | p. 106 |
| Exercises | p. 110 |
| Specification of a Network Protocol | p. 111 |
| Introduction | p. 111 |
| OSI Reference Model | p. 112 |
| Some Preliminaries | p. 114 |
| Application Layer | p. 115 |
| Presentation Layer | p. 122 |
| Refinement of the Data Type Message | p. 122 |
| Proofs on Verification | p. 126 |
| Session Layer | p. 126 |
| Transport Layer | p. 130 |
| Selected Proofs | p. 136 |
| Proof of Reflexivity | p. 137 |
| Proof of Symmetry | p. 138 |
| Proof of Transitivity | p. 138 |
| Bibliographical Notes | p. 139 |
| Exercises | p. 140 |
| Object Oriented Specification | p. 141 |
| Object Orientation in the Narrow Sense | p. 141 |
| Object Orientation in the Wider Sense | p. 145 |
| What are Objects? | p. 146 |
| Some Object Oriented Concepts | p. 147 |
| Software Reuse | p. 147 |
| Inheritance | p. 147 |
| Overloading, Genericity and Polymorphism | p. 148 |
| Abstract Data Types and Classes | p. 148 |
| Representation of Classes | p. 149 |
| Object Oriented Specification Languages | p. 150 |
| An Object Oriented Syntax in Z Style | p. 150 |
| Object Oriented Version of Sequences | p. 152 |
| Text Processing | p. 156 |
| A Character Set | p. 156 |
| Textual Objects | p. 156 |
| Text as Scripts | p. 157 |
| Text as Documents | p. 159 |
| Text as Dialogue | p. 160 |
| Text Windows | p. 161 |
| Exercises | p. 162 |
| Specification of Safety | p. 163 |
| Introduction | p. 163 |
| Specification Framework | p. 165 |
| Changes in States as Time Histories | p. 165 |
| Representation of Equipments | p. 167 |
| A Classification of Safety Requirements | p. 168 |
| Specification of Safety Requirements | p. 169 |
| Description of System State and Behaviour | p. 170 |
| Tracks | p. 170 |
| Signals | p. 172 |
| Points | p. 173 |
| Subroutes | p. 173 |
| Routes | p. 174 |
| System Behaviour in the Presence of Failures | p. 176 |
| Behavioural Specification of Sensors | p. 177 |
| Behavioural Specification of the Controller | p. 178 |
| Behavioural Specification of Signals | p. 178 |
| Behavioural Specification of Points | p. 180 |
| Behavioural Specification of Tracks | p. 182 |
| Preventing and Averting Failures | p. 183 |
| Low to High Risk State Transitions | p. 183 |
| High to Low Risk State Transitions | p. 185 |
| Concluding Remarks | p. 186 |
| Exercises | p. 186 |
| An Overview of VDM | p. 189 |
| Standard Mathematical Notation | p. 189 |
| A General Comment | p. 189 |
| Logic | p. 190 |
| Types | p. 190 |
| Sets and Relations | p. 191 |
| Mathematical Functions | p. 191 |
| Specification of State Based Systems | p. 194 |
| Specification Structure | p. 194 |
| A Comparison with Z | p. 195 |
| Composite Objects | p. 195 |
| Musical Chairs - An Example | p. 199 |
| State Model | p. 199 |
| Initialization | p. 200 |
| Other Operations | p. 200 |
| Execution Order of Operations | p. 201 |
| VDM Specification of Musical Chairs | p. 202 |
| An Indexed Filing System - A Case Study | p. 204 |
| An Informal Description of Requirements | p. 204 |
| System Organization | p. 205 |
| Model of Individual Files | p. 205 |
| VDM Specification of Indexed Files | p. 206 |
| Model of the Module Interface | p. 208 |
| Model of the Filing System | p. 209 |
| VDM Specification of the Indexed Filing System | p. 210 |
| Exercises | p. 212 |
| Algebraic Approach to Specification | p. 213 |
| Introduction | p. 213 |
| A Preliminary Comparison | p. 214 |
| Model Oriented Approach | p. 215 |
| Algebraic Approach | p. 215 |
| Algebraic Notions | p. 216 |
| Some Basic Algebras | p. 216 |
| Homogeneous Algebras | p. 217 |
| Heterogeneous Algebras | p. 218 |
| Type Algebras | p. 219 |
| Many-sorted Algebra | p. 220 |
| Signatures | p. 221 |
| Signature Associated Algebra | p. 222 |
| Subalgebras | p. 223 |
| Homomorphisms | p. 223 |
| Characterisation of Homomorphism | p. 226 |
| Term Algebras | p. 227 |
| Well Formed Terms | p. 228 |
| Natural Numbers as a Homogeneous Data Type | p. 228 |
| Heterogeneous (Many-Sorted) Abstract Data Types | p. 229 |
| Equations | p. 230 |
| Variables | p. 231 |
| Algebras and Equations | p. 232 |
| Other Related Terminology | p. 233 |
| Equational Deduction | p. 233 |
| Initial Algebras | p. 235 |
| The Motivation for Initial Algebras | p. 235 |
| The Definition of Initiality | p. 236 |
| Terminal Algebras | p. 237 |
| The Motivation for Terminal Algebras | p. 237 |
| Reasoning About Inequalities | p. 238 |
| Bibliographical Notes | p. 239 |
| Algebraic Specification in CLEAR | p. 241 |
| Data Types and Systems | p. 241 |
| Views of Specifications | p. 242 |
| An Introduction to CLEAR | p. 242 |
| Sorts, Operators, Terms and Equations | p. 243 |
| Simple Theories | p. 245 |
| Complex Theories | p. 247 |
| Parameterised Theories | p. 247 |
| Meta Theories | p. 248 |
| Base Theories | p. 249 |
| Specifications | p. 252 |
| A Case Study: A Filing System | p. 252 |
| Some Basic Specifications | p. 252 |
| A General Specification for Various Kinds of Object | p. 253 |
| Maps | p. 254 |
| Sequences | p. 256 |
| Indexed Files | p. 257 |
| Sequential Files | p. 258 |
| File System | p. 260 |
| Bibliographical Notes | p. 263 |
| Exercises | p. 263 |
| Exercises on Reading Formal Specifications | p. 265 |
| Exercise - A Simple Text Editor | p. 265 |
| Let's Play A Game of Cards | p. 269 |
| Unix Filing System | p. 278 |
| Exercises on Writing Formal Specifications | p. 279 |
| A Catalogue Shop | p. 279 |
| Know Your Place if You Succeed in Politics! | p. 280 |
| Traffic Lights | p. 282 |
| A Vending Machine | p. 282 |
| A Bank | p. 282 |
| A Flight Reservation Service for an Airline | p. 283 |
| A Hospital Register | p. 284 |
| The Mathematical Notation | p. 285 |
| References | p. 289 |
| Index | p. 293 |
| Table of Contents provided by Syndetics. All Rights Reserved. |
ISBN: 9781852330026
ISBN-10: 1852330023
Format: Paperback
Language: English
Number of Pages: 316
Audience: General Adult
Publisher: Springer Nature B.V.
Country of Publication: GB
Dimensions (cm): 24.13 x 16.51 x 1.91
Weight (kg): 0.49
Shipping
| Standard Shipping | Express Shipping | |
|---|---|---|
| Metro postcodes: | $9.99 | $14.95 |
| Regional postcodes: | $9.99 | $14.95 |
| Rural postcodes: | $9.99 | $14.95 |
Orders over $0.00 qualify for free shipping.
How to return your order
At Booktopia, we offer hassle-free returns in accordance with our returns policy. If you wish to return an item, please get in touch with Booktopia Customer Care.
Additional postage charges may be applicable.
Defective items
If there is a problem with any of the items received for your order then the Booktopia Customer Care team is ready to assist you.
For more info please visit our Help Centre.
You Can Find This Book In

Don't Burn Anyone at the Stake Today
(and other lessons from history about living through an information crisis)
Hardcover
RRP $39.99
$34.99
OFF























