<p><span lang="EN-US" style="mso-ansi-language: EN-US;">This book describes some basic principles that allow developers of computer programs (computer scientists, software engineers, programmers) to clearly <em>think</em> 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 <em>logic</em>. 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 <em>software</em>. 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.</span></p>

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Thinking Programs

  • Wolfgang Schreiner

摘要

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.