Cantitate/Preț
Produs

Program Proofs

Autor K. Rustan M. Leino, Kaleb Leino
en Limba Engleză Paperback – 7 mar 2023

Actualizarea majoră pe care o aduce Program Proofs în peisajul literaturii tehnice este trecerea de la demonstrațiile pur teoretice la aplicarea practică într-un limbaj de programare real, verificabil. Reținem că, spre deosebire de abordările care folosesc pseudo-cod, K. Rustan M. Leino și Kaleb Leino utilizează Dafny pentru a transforma conceptele abstracte de verificare în instrumente de lucru concrete. Ca și Boro Sitnikovski în Introducing Software Verification with Dafny Language, autorul distilează experiență reală în principii acționabile, însă extinde contextul către structuri de date complexe și obiecte.

Structura volumului este riguros organizată pentru a asigura o progresie logică. Prima parte, „Learning the Ropes”, stabilește fundamentele formale și mecanismele de recursivitate. Partea a doua se concentrează pe programe funcționale, explorând liste și sortări, în timp ce partea a treia abordează programele imperative, introducând concepte critice precum buclele, tablourile și gestiunea memoriei prin heap-uri dinamice. Credem că această segmentare permite cititorului să asimileze gradual rigoarea matematică necesară pentru a scrie specificații care să garanteze corectitudinea codului.

Tonul este unul tehnic și precis, susținut vizual de cele 30 de figuri și numeroasele exemple de cod. Autorii nu se limitează la teorie, ci oferă un ghid sintactic Dafny și soluții pentru exerciții, transformând manualul într-un instrument de laborator esențial pentru ingineria software modernă.

Citește tot Restrânge

Preț: 44972 lei

Preț vechi: 58059 lei
-23%

Puncte Express: 675

Carte disponibilă

Livrare economică 21-28 mai
Livrare express 07-13 mai pentru 6015 lei


Specificații

ISBN-13: 9780262546232
ISBN-10: 026254623X
Pagini: 496
Ilustrații: 20 line drawings, 30 figures
Dimensiuni: 176 x 225 x 25 mm
Greutate: 0.77 kg
Editura: MIT Press Ltd

De ce să citești această carte

Recomandăm această carte programatorilor și studenților care doresc să depășească etapa testării empirice și să înțeleagă verificarea formală a codului. Cititorul câștigă abilitatea de a scrie programe a căror corectitudine este demonstrată matematic, utilizând limbajul Dafny. Este un ghid practic care transformă specificațiile riguroase dintr-o corvoadă teoretică într-un avantaj competitiv în dezvoltarea software-ului critic.


Despre autor

K. Rustan M. Leino este o figură proeminentă în domeniul verificării software, fiind recunoscut la nivel mondial pentru dezvoltarea limbajului Dafny și a instrumentelor de analiză statică. Cu o carieră marcată de contribuții semnificative în cercetare la instituții de prestigiu și în industria tehnologică, Leino se concentrează pe metode prin care demonstrațiile de corectitudine pot deveni parte integrantă a fluxului de programare. Expertiza sa în logica programării și sistemele de tipuri este reflectată în claritatea cu care explică conceptele complexe în acest volum publicat de MIT Press Ltd.


Cuprins

Preface ix
Notes for Teachers xv
0. Introduction 1
Part 0. Learning the Ropes
1. Basics 9
2. Making It Formal 25
3. Recursion and Termination 63
4. Inductive Datatypes 83
5. Lemmas and Proofs 95
Part 1. Functional Programs
6. Lists 137
7. Unary Numbers 161
8. Sorting 175
9. Abstraction 189
10. Data-Structure Invariants 207
Part 2. Imperative Programs
11. Loops 235
12. Recursive Specifications, Iterative Programs 257
13. Arrays and Searching 275
14. Modifying Arrays 321
15. In-situ Sorting 337
16. Objects 351
17. Dynamic Heap Data Structures 387
A. Dafny Syntax Cheat Sheet 427
B. Boolean Algebra 433
C. Answers to Select Exercises 445
References 459
Index 467

Descriere

This comprehensive and highly readable textbook teaches how to formally reason about computer programs using an incremental approach and the verification-aware programming language Dafny. Program Proofs shows students what it means to write specifications for programs, what it means for programs to satisfy those specifications, and how to write proofs that connect specifications and programs. Writing with clarity and humor, K. Rustan M. Leino first provides an overview of the basic theory behind reasoning about programs. He then gradually builds up to complex concepts and applications, until students are facing real programs using objects, data structures, and non-trivial recursion. To emphasize the practical nature of program proofs, all material and examples use the verification-aware programming language Dafny, but no previous knowledge of Dafny is assumed. Written in a highly readable and student-friendly styleBuilds up to complex concepts in an incremental manner Comprehensively covers how to write proofs and how to specify and verify both functional programs and imperative programsUses real program text from a real programming language, not psuedo codeFeatures engaging illustrations and hands-on learning exercises