Fr. 69.00

The Design of Well-Structured and Correct Programs

Anglais · Livre de poche

Expédition généralement dans un délai de 1 à 2 semaines (titre imprimé sur commande)

Description

En savoir plus

The major goal of this book is to present the techniques of top-down program design and verification of program correctness hand-in-hand. It thus aims to give readers a new way of looking at algorithms and their design, synthesizing ten years of research in the process. It provides many examples of program and proof development with the aid of a formal and informal treatment of Hoare's method of invariants. Modem widely accepted control structures and data structures are explained in detail, together with their formal definitions, as a basis for their use in the design of correct algorithms. We provide and apply proof rules for a wide range of program structures, including conditionals, loops, procedures and recur sion. We analyze situations in which the restricted use of gotos can be justified, providing a new approach to proof rules for such situations. We study several important techniques of data structuring, including arrays, files, records and linked structures. The secondary goal of this book is to teach the reader how to use the programming language Pascal. This is the first text to teach Pascal pro gramming in a fashion which not only includes advanced algorithms which operate on advanced data structures, but also provides the full axiomatic definition of Pascal due to Wirth and Hoare. Our approach to the language is very different from that of a conventional programming text.

Table des matières

1 Introducing Top-down Design.- 1.1 The Idea of Top-down Design.- 1.2 An Example: The Greatest Common divisor.- 1.3 Programming Language and Machine Language.- 2 Basic Compositions of Actions and Their Proof Rules.- 2.1 Relations for Program Correctness.- 2.2 Logical Formulas and Pascal Expressions.- 2.3 Proof Rules for Simple Statements.- 2.4 Compound and Conditional Statements.- 2.5 Repetitive Statements.- 2.6 Summary of Basic Proof Rules.- 2.7 Using the Basic Proof Rules.- 2.8 Correct Termination of Algorithms.- Exercises.- 3 Data Types.- 3.1 Introduction.- 3.2 A Primer on Set Theory.- 3.3 Scalar Types and Simple Types.- 3.4 Arrays, Records, and Files.- 3.5 Processing Arrays.- 3.6 Processing Files and Records.- 3.7 Set Manipulation in Pascal.- Exercises.- 4 Developing Programs with Proofs of Correctness.- 4.1 Introduction.- 4.2 Squares and Palindromes.- 4.3 Sorting Arrays and Files.- 4.4 Manipulating Sets.- Exercises.- 5 Procedures and Functions.- 5.1 Procedures and Functions.- 5.3 Functions and Their Proof of Correctness.- 5.4 Proofs of Correctness of Procedures.- Exercises.- 6 Recursion.- 6.1 Introduction.- 6.2 Design and Correctness of Recursive Procedures.- 6.3 Recursive Data Types.- 6.4 Recursive Algorithms and Recursive Data Structures.- Exercises.- 7 Programming with and without Gotos.- 7.1 Goto Statements.- 7.2 Proof Rules for Gotos.- 7.3 Return Exits and the Algorithm Find.- 7.4 Failure Exits and the Algorithm Lookup.- 7.5 Loops with Exits in the Middle.- Exercises.- References.- Appendixes.- Index of Algorithms.- Author Index.

Détails du produit

Auteurs Sua Alagic, Suad Alagic, Michael A Arbib, Michael A. Arbib
Edition Springer, Berlin
 
Langues Anglais
Format d'édition Livre de poche
Sortie 22.04.2014
 
EAN 9781461262749
ISBN 978-1-4612-6274-9
Pages 292
Dimensions 150 mm x 234 mm x 18 mm
Poids 474 g
Illustrations X, 292 p.
Thèmes Monographs in Computer Science
Monographs in Computer Science
Catégorie Sciences naturelles, médecine, informatique, technique > Informatique, ordinateurs > Informatique

Commentaires des clients

Aucune analyse n'a été rédigée sur cet article pour le moment. Sois le premier à donner ton avis et aide les autres utilisateurs à prendre leur décision d'achat.

Écris un commentaire

Super ou nul ? Donne ton propre avis.

Pour les messages à CeDe.ch, veuillez utiliser le formulaire de contact.

Il faut impérativement remplir les champs de saisie marqués d'une *.

En soumettant ce formulaire, tu acceptes notre déclaration de protection des données.