Fr. 96.00

Thinking Programs - Logical Modeling and Reasoning About Languages, Data, Computations, and Executions

English · Hardback

New edition in preparation, currently unavailable

Description

Read more

This book describes some basic principles that allow developers of computer programs (computer scientists, software engineers, programmers) to clearly think about the artifacts they deal with in their daily work: data types, programming languages, programs written in these languages that compute wanted outputs from given inputs, and programs that describe continuously executing systems. The core message is that clear thinking about programs can be expressed in a single, universal language, the formal language of logic. Apart from its universal elegance and expressiveness, this “logical” approach to the formal modeling of, and reasoning about, computer programs has another advantage: due to advances in computational logic (automated theorem proving, satisfiability solving, model checking), nowadays much of this process can be supported by software. This book therefore accompanies its theoretical elaborations by practical demonstrations of various systems and tools that are based on or make use of the presented logical underpinnings.

List of contents

Part I The Foundations.- Syntax and Semantics.- The Language of Logic.- The Art of Reasoning.- Building Models.- Recursion.- Part II The Higher Planes.- Abstract Data Types.- Programming Languages.- Computer Programs.- Concurrent Systems.- References.- Index.

About the author

Wolfgang Schreiner is an associate professor at the Research Institute for Symbolic Computation (RISC) of the Johannes Kepler University Linz, Austria. He is working in formal methods of computer science (with previous research in parallel computing and functional programming), and has produced various software packages related to formal semantics, specification, and verification, in particular the RISC ProofNavigator, the RISC ProgramExplorer, and the RISC Algorithm Language (RISCAL). Formerly he directed a degree programme on Computer-based Learning at the Upper Austria University of Applied Sciences in Hagenberg.

Summary

This book describes some basic principles that allow developers of computer programs (computer scientists, software engineers, programmers) to clearly think about the artifacts they deal with in their daily work: data types, programming languages, programs written in these languages that compute wanted outputs from given inputs, and programs that describe continuously executing systems. The core message is that clear thinking about programs can be expressed in a single, universal language, the formal language of logic. Apart from its universal elegance and expressiveness, this “logical” approach to the formal modeling of, and reasoning about, computer programs has another advantage: due to advances in computational logic (automated theorem proving, satisfiability solving, model checking), nowadays much of this process can be supported by software. This book therefore accompanies its theoretical elaborations by practical demonstrations of various systems and tools that are based on or make use of the presented logical underpinnings.

Customer reviews

No reviews have been written for this item yet. Write the first review and be helpful to other users when they decide on a purchase.

Write a review

Thumbs up or thumbs down? Write your own review.

For messages to CeDe.ch please use the contact form.

The input fields marked * are obligatory

By submitting this form you agree to our data privacy statement.