Open Access
Logics of Programs.
Dexter Kozen,Jerzy Tiuryn +1 more
- pp 789-840
Reads0
Chats0
TLDR
In this paper, the authors present an introduction to some of the basic issues in the study of program logics and discuss their syntax, semantics, proof theory, and expressiveness.Abstract:
Publisher Summary This chapter presents an introduction to some of the basic issues in the study of program logics. The chapter describes various forms of first-order Dynamic Logic and discusses their syntax, semantics, proof theory, and expressiveness. The chapter discusses the power of auxiliary data structures such as arrays and stacks, and a powerful assignment statement called the nondeterministic assignment. Program logics differ from classical logics in that truth is dynamic rather than static. In classical predicate logic, the truth value of a formula is determined by a valuation of its free variables over some structure. The valuation and the truth value of the formula it induces are regarded as immutable. In program logics, there are explicit syntactic constructs called programs to change the values of variables, thereby changing the truth values of formulas. There are two main approaches to modal logics of programs: (1) the exogenous approach, exemplified by Dynamic Logic and its precursor, the Partial Correctness Assertions Method; and (2) the endogenous approach, exemplified by Temporal Logic and its precursor, the Inductive Assertions Method.read more
Citations
More filters
Book ChapterDOI
Comparison of model checking tools for information systems
TL;DR: This paper compares six model checkers (ALLOY, CADP, FDR2, NUSMV, PROB, SPIN) for the validation of information system specifications and identifies the most suitable features required to validate information systems using a model checker.
Book ChapterDOI
SAT Based Predicate Abstraction for Hardware Verification
TL;DR: This work considers predicate abstraction for hardware in the framework of Counterexample-Guided Abstraction Refinement where in the course of verification, the abstract model has to be repeatedly refined, and gives rise to false negatives (spurious counterexamples).
Journal ArticleDOI
Dynamic algebras: Examples, constructions, applications
TL;DR: The main result is that free dynamic algebras are residually finite (i.e. factor as a subdirect product of finite dynamic alagbras), important because finite separable dynamic algeses are isomorphic to Kripke structures.
Book ChapterDOI
Floating-Point verification using theorem proving
TL;DR: This chapter describes the work on formal verification of floating-point algorithms using the HOL Light theorem prover, and the results obtained imply that theorems derived from this work can be applied to other types of algorithms.
Book ChapterDOI
A Logic of Capabilities
TL;DR: A language in which not only knowledge and actions of agents can be expressed, but also the abilities are defined, in which the possibility to express the abilities of an agent provides for a flexible and intuitively appealing framework.
References
More filters
Proceedings ArticleDOI
The temporal logic of programs
TL;DR: A unified approach to program verification is suggested, which applies to both sequential and parallel programs, and the main proof method is that of temporal reasoning in which the time dependence of events is the basic concept.
Book ChapterDOI
Temporal and modal logic
TL;DR: In this article, a multiaxis classification of temporal and modal logic is presented, and the formal syntax and semantics for two representative systems of propositional branching-time temporal logics are described.
Journal ArticleDOI
An axiomatic basis for computer programming
TL;DR: An attempt is made to explore the logical foundations of computer programming by use of techniques which were first applied in the study of geometry and have later been extended to other branches of mathematics.
Journal ArticleDOI
Propositional dynamic logic of regular programs
TL;DR: A formal syntax and semantics for the propositional dynamic logic of regular programs is defined and principal conclusions are that deciding satisfiability of length n formulas requires time d n /log n for some d > 1, and that satisfiability can be decided in nondeterministic time cn for some c.