9781461264446: A Practical Theory of Programming

Sinossi

This book explores aspects of programming that are amenable to mathematical proof. The author describes a programming theory which is simpler and more comprehensive than the current theories to date. The text will be useful to students in courses on programming methodology or verification at the advanced undergraduate or beginning graduate level, as well as for software engineers in the field.

Le informazioni nella sezione "Riassunto" possono far riferimento a edizioni diverse di questo titolo.

Contenuti

1 Basic Theories.- Boolean Theory.- Axioms and Proof Rules.- Expression and Proof Format.- Formalization.- Number Theory.- Character Theory.- 2 Basic Data Structures.- Bunch Theory.- Set Theory.- String Theory.- List Theory.- Multidimensional Structures.- 3 Function Theory.- Functions.- Abbreviated Function Notations.- Scope and Substitution.- Quantifiers.- Function Fine Points.- Substitution versus Distribution.- Function Inclusion and Equality.- Function Composition.- List as function.- 4 Program Theory.- Specifications.- Specification Notations.- Specification Laws.- Refinement.- Conditions.- Programs.- Program Development.- Refinement Laws.- List Summation.- Binary Exponentiation.- Time.- Real Time.- Recursive Time.- Termination.- Linear Search.- Binary Search.- Fast Exponentiation.- Fibonacci Numbers.- Robustness.- Refinement in Place.- 5 Programming Language.- Scope.- Variable Declaration.- Variable Suspension.- Data Structures.- Arrays.- Records.- Control Structures.- While Loop.- Repeat Loop.- Exit Loop.- Two-Dimensional Search.- For Loop.- Minimum Sum Segment.- Go To.- Time Dependence.- Assertions.- Checking.- Backtracking.- Subprogram.- Result Expression.- Function.- Procedure.- Alias.- Functional Programming.- Function Refinement.- 6 Recursive Definition.- Recursive Data Definition.- Construction and Induction.- Least Fixed-Points.- Recursive Data Construction.- Recursive Program Definition.- Recursive Program Construction.- Loop Definition.- Limits.- 7 Theory Design and Implementation.- Data Theories.- Data-Stack Theory.- Data-Stack Implementation.- Simple Data-Stack Theory.- Data-Queue Theory.- Data-Tree Theory.- Data-Tree Implementation.- Program Theories.- Program-Stack Theory.- Program-Stack Implementation.- Fancy Program-Stack Theory.- Weak Program-Stack Theory.- Program-Queue Theory.- Program-Tree Theory.- Specification by Implementation.- Data Transformation.- 8 Concurrency.- Independent Composition.- Laws of Independent Composition.- List Concurrency.- Circuit Design.- Security Switch.- Found Concurrency.- Buffer.- Insertion Sort.- 9 Communication.- Implementability.- Input and Output.- Communication Timing.- Recursively Defined Communication.- Input Composition.- Merge.- Monitor.- Reaction Controller.- Communicating Processes.- Channel Declaration.- Deadlock.- Power Series Multiplication.- 10 Exercises.- Basic Theories.- Basic Data Structures.- Function Theory.- Program Theory.- Programming Language.- Recursive Definition.- Theory Design and Implementation.- Concurrency.- Communication.- 11 Reference.- Justifications.- Sources.- Axioms and Laws.- Symbols and Names.- Precedence.

Le informazioni nella sezione "Su questo libro" possono far riferimento a edizioni diverse di questo titolo.

Altre edizioni note dello stesso titolo