1 option
Software abstractions : logic, language, and analysis / Daniel Jackson.
- Format:
- Book
- Author/Creator:
- Jackson, Daniel, 1963-
- Language:
- English
- Subjects (All):
- Computer software--Development.
- Computer software.
- Physical Description:
- 1 online resource (376 p.) : illustrations
- Edition:
- Rev. ed.
- Place of Publication:
- Cambridge, Mass. : MIT Press, 2012.
- Language Note:
- English
- Summary:
- An approach to software design that introduces a fully automated analysis giving designers immediate feedback, now featuring the latest version of the Alloy language.
- Contents:
- Contents; Preface; Acknowledgments; Acknowledgments (revised edition); Chapter 1: Introduction; Chapter 2: A Whirlwind Tour; 2.1 Statics: Exploring States; 2.2 Dynamics: Adding Operations; 2.3 Classification Hierarchy; 2.4 Execution Traces; 2.5 Summary; Chapter 3: Logic; 3.1 Three Logics in One; 3.2 Atoms and Relations; 3.3 Snapshots; 3.4 Operators; 3.5 Constraints; 3.6 Declarations and Multiplicity Constraints; 3.7 Cardinality and Integers; Chapter 4: Language; 4.1 An Example: Self-Grandpas; 4.2 Signatures and Fields; 4.3 Model Diagrams; 4.4 Types and Type Checking
- 4.5 Facts, Predicates, Functions, and Assertions4.6 Commands and Scope; 4.7 Modules and Polymorphism; Chapter 5: Analysis; 5.1 Scope-Complete Analysis; 5.2 Instances, Examples, and Counterexamples; 5.3 Unbounded Universal Quantifiers; 5.4 Scope Selection and Monotonicity; Chapter 6: Examples; 6.1 Leader Election in a Ring; 6.2 Hotel Room Locking; 6.3 Media Asset Management; 6.4 Memory Abstractions; Appendix A: Exercises; A.1 Logic Exercises; A.2 Extending Simple Models; A.3 Classic Puzzles; A.4 Metamodels; A.5 Small Case Studies; A.6 Open-Ended Case Studies
- Appendix B: Alloy Language ReferenceB.1 Lexical Issues; B.2 Namespaces; B.3 Grammar; B.4 Precedence and Associativity; B.5 Semantic Basis; B.6 Types and Overloading; B.7 Language Features; B.8 Relational Expressions; B.9 Integer Expressions; Appendix C: Kernel Semantics; C.1 Semantics of the Alloy Kernel; Appendix D: Diagrammatic Notation; Appendix E: Alternative Approaches; E.1 An Example; E.2 B; E.3 OCL; E.4 VDM; E.5 Z; References; Index; Symbols; A; B; C; D; E; F; G; H; I; J; K; L; M; N; O; P; Q; R; S; T; U; V; W; Z
- Notes:
- Description based upon print version of record
- Includes bibliographical references and index.
- ISBN:
- 1-283-32179-3
- 9786613321794
- 0-262-30024-9
The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.