Ebook: Constructive Methods in Computing Science: International Summer School directed by F.L. Bauer, M. Broy, E.W. Dijkstra, C.A.R. Hoare
- Tags: Programming Techniques, Logics and Meanings of Programs, Mathematical Logic and Formal Languages, Artificial Intelligence (incl. Robotics), Software Engineering
- Series: NATO ASI Series 55
- Year: 1989
- Publisher: Springer-Verlag Berlin Heidelberg
- Edition: 1
- Language: English
- pdf
Computing Science is a science of constructive methods. The solution of a problem has to be described formally by constructive techniques, if it is to be evaluated on a computer. The Marktoberdorf Advanced Study Institute 1988 presented a comprehensive survey of the recent research in constructive methods in Computing Science. Some approaches to a methodological framework and to supporting tools for specification, development and verification of software systems were discussed in detail. Other lectures dealt with the relevance of the foundations of logic for questions of program construction and with new programming paradigms and formalisms which have proven to be useful for a constructive approach to software development. The construction, specification, design and verification especially of distributed and communicating systems was discussed in a number of complementary lectures. Examples for those approaches were given on several levels such as semaphores, nondeterministic state transition systems with fairness assumptions, decomposition of specifications for concurrent systems in liveness and safety properties and functional specifications of distributed systems. Construction methods in programming that were presented range from type theory, the theory of evidence, theorem provers for proving properties of functional programs to category theory as an abstract and general concept for the description of programming paradigms.
Computing Science is a science of constructive methods. The solution of a problem has to be described formally by constructive techniques, if it is to be evaluated on a computer. The Marktoberdorf Advanced Study Institute 1988 presented a comprehensive survey of the recent research in constructive methods in Computing Science. Some approaches to a methodological framework and to supporting tools for specification, development and verification of software systems were discussed in detail. Other lectures dealt with the relevance of the foundations of logic for questions of program construction and with new programming paradigms and formalisms which have proven to be useful for a constructive approach to software development. The construction, specification, design and verification especially of distributed and communicating systems was discussed in a number of complementary lectures. Examples for those approaches were given on several levels such as semaphores, nondeterministic state transition systems with fairness assumptions, decomposition of specifications for concurrent systems in liveness and safety properties and functional specifications of distributed systems. Construction methods in programming that were presented range from type theory, the theory of evidence, theorem provers for proving properties of functional programs to category theory as an abstract and general concept for the description of programming paradigms.
Computing Science is a science of constructive methods. The solution of a problem has to be described formally by constructive techniques, if it is to be evaluated on a computer. The Marktoberdorf Advanced Study Institute 1988 presented a comprehensive survey of the recent research in constructive methods in Computing Science. Some approaches to a methodological framework and to supporting tools for specification, development and verification of software systems were discussed in detail. Other lectures dealt with the relevance of the foundations of logic for questions of program construction and with new programming paradigms and formalisms which have proven to be useful for a constructive approach to software development. The construction, specification, design and verification especially of distributed and communicating systems was discussed in a number of complementary lectures. Examples for those approaches were given on several levels such as semaphores, nondeterministic state transition systems with fairness assumptions, decomposition of specifications for concurrent systems in liveness and safety properties and functional specifications of distributed systems. Construction methods in programming that were presented range from type theory, the theory of evidence, theorem provers for proving properties of functional programs to category theory as an abstract and general concept for the description of programming paradigms.
Content:
Front Matter....Pages I-VIII
A Visionary Decision....Pages 1-3
Front Matter....Pages 5-8
Constructive Type Theory—An Introduction....Pages 9-61
Assigning Meaning to Proofs: a semantic basis for problem solving environments....Pages 63-93
The Addition of Bounded Quantification and Partial Functions to A Computational Logic and Its Theorem Prover....Pages 95-145
Front Matter....Pages 147-150
Lectures on Constructive Functional Programming....Pages 151-217
On a Problem Transmitted by Doug McIlroy....Pages 219-222
A computing scientist’s approach to a once-deep theorem of Sylvester’s....Pages 223-232
The derivation of a proof by J.C.S.P. van der Woude....Pages 233-243
Notes on an Approach to Category Theory for Computer Scientists....Pages 245-305
Front Matter....Pages 307-310
Towards a Design Methodology for Distributed Systems....Pages 311-365
Specifying Distributed Systems....Pages 367-395
A Foundation of Parallel Programming....Pages 397-445
Design of Synchronization Algorithms....Pages 447-478
Back Matter....Pages 479-481
Computing Science is a science of constructive methods. The solution of a problem has to be described formally by constructive techniques, if it is to be evaluated on a computer. The Marktoberdorf Advanced Study Institute 1988 presented a comprehensive survey of the recent research in constructive methods in Computing Science. Some approaches to a methodological framework and to supporting tools for specification, development and verification of software systems were discussed in detail. Other lectures dealt with the relevance of the foundations of logic for questions of program construction and with new programming paradigms and formalisms which have proven to be useful for a constructive approach to software development. The construction, specification, design and verification especially of distributed and communicating systems was discussed in a number of complementary lectures. Examples for those approaches were given on several levels such as semaphores, nondeterministic state transition systems with fairness assumptions, decomposition of specifications for concurrent systems in liveness and safety properties and functional specifications of distributed systems. Construction methods in programming that were presented range from type theory, the theory of evidence, theorem provers for proving properties of functional programs to category theory as an abstract and general concept for the description of programming paradigms.
Content:
Front Matter....Pages I-VIII
A Visionary Decision....Pages 1-3
Front Matter....Pages 5-8
Constructive Type Theory—An Introduction....Pages 9-61
Assigning Meaning to Proofs: a semantic basis for problem solving environments....Pages 63-93
The Addition of Bounded Quantification and Partial Functions to A Computational Logic and Its Theorem Prover....Pages 95-145
Front Matter....Pages 147-150
Lectures on Constructive Functional Programming....Pages 151-217
On a Problem Transmitted by Doug McIlroy....Pages 219-222
A computing scientist’s approach to a once-deep theorem of Sylvester’s....Pages 223-232
The derivation of a proof by J.C.S.P. van der Woude....Pages 233-243
Notes on an Approach to Category Theory for Computer Scientists....Pages 245-305
Front Matter....Pages 307-310
Towards a Design Methodology for Distributed Systems....Pages 311-365
Specifying Distributed Systems....Pages 367-395
A Foundation of Parallel Programming....Pages 397-445
Design of Synchronization Algorithms....Pages 447-478
Back Matter....Pages 479-481
....