|
" The evolution of programs "
Nachum Dershowitz.
Document Type
|
:
|
BL
|
Record Number
|
:
|
737204
|
Doc. No
|
:
|
b557072
|
Main Entry
|
:
|
Nachum Dershowitz.
|
Title & Author
|
:
|
The evolution of programs\ Nachum Dershowitz.
|
Publication Statement
|
:
|
Boston ; Basel ; Stuttgart: Birkhäuser, 1983
|
Series Statement
|
:
|
Progress in computer science, 5
|
Page. NO
|
:
|
(357 p.).
|
ISBN
|
:
|
0817631712
|
|
:
|
: 1461256216
|
|
:
|
: 9780817631710
|
|
:
|
: 9781461256212
|
Contents
|
:
|
1. Introduction.- 2. General Overview.- 2.1. Introduction.- 2.2. The Problem.- 2.3. Annotation.- 2.4. Debugging.- 2.5. Modification.- 2.6. Abstraction.- 2.7. Instantiation.- 2.8. Synthesis.- 2.9. Discussion.- 3. Program Modification and Debugging.- 3.1. Introduction.- 3.2. Overview.- 3.2.1. Basic Method: Analogy.- 3.2.2. Special Case: Debugging.- 3.2.3. Correctness Considerations.- 3.2.4. Completing an Analogy.- 3.3. Examples.- 3.3.1. Real Division.- 3.3.1.1. First Correction.- 3.3.1.2. Second Correction.- 3.3.2. Integer Division.- 3.3.2.1. Modification.- 3.3.2.2. Extension.- 3.3.3. Array Search.- 3.3.3.1. Modification.- 3.3.3.2. Transformation.- 3.4. Discussion.- 3.4.1. Pre-modification Phase.- 3.4.2. Modification Phase.- 3.4.3. Post-modification Phase.- 4. Program Abstraction and Instantiation.- 4.1. Introduction.- 4.2. Overview.- 4.2.1. Basic Method: Analogy.- 4.2.2. Correctness Considerations.- 4.2.3. Instantiation.- 4.2.4. Special Case: Program Transformations.- 4.3. Examples.- 4.3.1. Extremum.- 4.3.2. Binary Search.- 4.3.3. Associative Recursion.- 4.4. Discussion.- 5. Program Synthesis and Extension.- 5.1. Introduction.- 5.2. Overview.- 5.2.1. Strengthening.- 5.2.2. Splitting.- 5.2.2.1. Disjoint Goals.- 5.2.2.2. Protection.- 5.2.2.3. Preservation.- 5.2.3. Assignments.- 5.2.4. Conditionals.- 5.2.5. Loops.- 5.2.5.1. Forward Iterative Loops.- 5.2.5.2. Backward Iterative Loops.- 5.2.5.3. Termination.- 5.2.5.4. Recursive Loops.- 5.2.6. Extension.- 5.3. Examples.- 5.3.1. Array Minimum.- 5.3.1.1. Goal Splitting.- 5.3.1.2. Loop Formation.- 5.3.1.3. Conditional Formation.- 5.3.1.4. Extension.- 5.3.2. Integer Square-Root.- 5.3.2.1. Goal Splitting.- 5.3.2.2. Loop Formation.- 5.3.2.3. Alternatives.- 5.3.2.4. Extension.- 5.3.2.5. Binary Integer Square-Root.- 5.3.3. Associative Recursion.- 5.3.3.1. Recursive Solution.- 5.3.3.2. Iterative Solution.- 5.3.4. Partition.- 5.3.4.1. First Solution.- 5.3.4.2. Second Solution.- 5.4. Discussion.- 6. Program Annotation and Analysis.- 6.1. Introduction.- 6.2. Overview.- 6.2.1. Notation and Terminology.- 6.2.2. Assignment Rules.- 6.2.3. Control Rules.- 6.2.4. Schematic Rules.- 6.2.5. Heuristic Rules.- 6.2.6. Counters.- 6.3. Examples.- 6.3.1. Real Division.- 6.3.1.1. Assignment Rules.- 6.3.1.2. Control Rules.- 6.3.1.3. Heuristic Rules.- 6.3.1.4. Analysis.- 6.3.2. Array Minimum.- 6.3.2.1. Assignment Rules.- 6.3.2.2. Control Rules.- 6.3.2.3. Generalization Heuristic.- 6.3.2.4. Analysis.- 6.3.3. Selection Sort.- 6.3.3.1. Algorithmic Rules.- 6.3.3.2. Heuristics.- 6.3.3.3. Analysis.- 6.4. Discussion.- 7. General Discussion.- Appendix 1: Global Transformations.- Appendix 2: Program Schemata.- Appendix 3: Synthesis Rules.- Appendix 4: Annotation Rules.- 4.1. Assignment Rules.- 4.1.1. Range Rules.- 4.1.2. Set Assignment Rules.- 4.1.3. Counter Relation Rules.- 4.1.4. Basic Relation Rules.- 4.1.5. Assorted Relation Rules.- 4.2. Control Rules.- 4.2.1. Control Axioms.- 4.2.2. Assignment Control Rules.- 4.2.3. Conditional Control Rules.- 4.2.4. Loop Control Rules.- 4.2.5. Value Rules.- 4.3. Heuristic Rules.- 4.3.1. Control Heuristics.- 4.3.2. Dangerous Heuristics.- Appendix 5: Implementation.- 5.1. Introduction.- 5.2. Modification.- 5.3. Synthesis.- 5.4. Annotation.- References.- Name Index.
|
Subject
|
:
|
Computer programming.
|
Subject
|
:
|
Programmeren (computers)
|
Subject
|
:
|
Programmierung EDV.
|
LC Classification
|
:
|
QA76.6N334 1983
|
Added Entry
|
:
|
N Dershowitz
|
| |