Temporal logic is gaining recognition as an attractive and versatile formalism for rigorously specifying and reasoning about computer programs, digital circuits and message-passing systems. This book introduces Tempura, a programming language based on temporal logic. Tempura provides a way of directly executing suitable temporal logic specifications of digital circuits, parallel programs and other dynamic systems. Since every Tempura statement is also a temporal formula, the entire temporal logic formalism can be used as the assertion language and semantics. One result is that Tempura has the two seemingly contradictory properties of being a logic programming language and having imperative constructs such as assignment statements. The presentation investigates Interval Temporal Logic, a formalism with conventional temporal operators such as ○ (next) and ✷ (always) as well as lesser known ones such as chop. This provides the basis for Tempura. The design of an interpreter for Tempura is also included as are a variety of sample Tempura
|
2771
|
Introduction to Automata Theory, Languages and Computation
– Hopcroft, Ullman
- 1979
|
|
910
|
Temporal and modal logic
– Emerson
- 1990
|
|
809
|
The temporal logic of programs
– Pnueli
- 1977
|
|
600
|
First-Order Dynamic Logic
– Harel
- 1979
|
|
478
|
A Mathematical Introduction to Logic
– Enderton
- 1972
|
|
285
|
Propositional dynamic logic of regular programs
– Fischer, Ladner
- 1979
|
|
257
|
A calculus of duration
– Chaochen, Hoare, et al.
- 1991
|
|
210
|
On the temporal analysis of fairness
– Gabbay, Pnueli, et al.
- 1980
|
|
168
|
Temporal Logic Can Be More Expressive
– Wolper
- 1983
|
|
146
|
Weak second–order arithmetic and finite automata. Zeitschrift für Mathematische Logik und Grundlagen der
– Büchi
- 1960
|
|
136
|
A temporal logic for multi-level reasoning about hardware.” Computer Hardware Description Languages and their
– Moszkowski
- 1983
|
|
123
|
Executing Temporal Logic Programs
– Moszkowski
- 1986
|
|
116
|
The glory of the past
– Lichtenstein, Pnueli, et al.
- 1985
|
|
112
|
Specification and Design of (Parallel) Programs
– Jones
- 1983
|
|
110
|
A completeness theorem for Kleene algebras and the algebra of regular events
– Kozen
- 1994
|
|
108
|
PARLOG: Parallel Programming in Logic
– Clark, Gregory
- 1986
|
|
103
|
On a decision method in restricted second-order arithmetic
– Büchi
- 1962
|
|
96
|
The complementation problem for Büchi automata with applications to temporal logic
– Sistla, Vardi, et al.
- 1985
|
|
74
|
The esterel synchronous programming language and its mathematical semantics
– Berry, Cosserat
- 1985
|
|
66
|
Un systeme de communication homme-machine en francais
– Colmerauer, Kanoui, et al.
- 1973
|
|
65
|
Now you may compose temporal logic specifications
– Barringer, Kuiper, et al.
- 1984
|
|
52
|
Two complete axiom systems for the algebra of regular events
– Salomaa
- 1966
|
|
38
|
Lucid, a nonprocedural language with iteration
– Ashcroft, Wadge
- 1977
|
|
32
|
A choppy logic
– Rosner, Pnueli
- 1986
|
|
31
|
A Hardware Semantics Based on Temporal Intervals
– Halpern, Manna, et al.
- 1983
|
|
29
|
Reasoning about Digital Circuits
– Moszkowski
- 1983
|
|
29
|
Program proving as hand simulation with a little induction
– Burstall
- 1974
|
|
27
|
Process logic
– Pratt
- 1979
|
|
22
|
Elgot. Decision problems of finite automata design and related arithmetics
– C
- 1961
|
|
22
|
Some very compositional temporal properties
– Moszkowski
- 1994
|
|
21
|
Complete proof systems for first order interval temporal logic
– Dutertre
- 1995
|
|
20
|
IC-Prolog Language Features
– Clark, McCabe, et al.
- 1982
|
|
15
|
Compositional reasoning about projected and infinite time
– Moszkowski
- 1995
|
|
14
|
Refining Interval Temporal Logic specifications
– Cau, Zedan
- 1997
|
|
10
|
A complete proof systems for QPTL
– Kesten, Pnueli
- 1995
|
|
10
|
Specification and Synthesis of Communicating Processes Using an Extended Temporal Logic
– Wolper
- 1982
|
|
9
|
Gentzen-systems for propositional temporal logics
– Paech
- 1988
|
|
9
|
Star-Free Regular Sets of !-Sequences
– Thomas
- 1979
|
|
6
|
A tableaux method for Interval Temporal Logic with projection
– Bowman, Thompson
- 1998
|
|
6
|
LCF LSM, A system for specifying and verifying hardware
– Gordon
- 1983
|
|
5
|
Lucid -- a formal system for writing and proving programs
– Ashcroft, Wadge
- 1976
|
|
5
|
Equations between regular terms and an application to process logic
– Chandra, Halpern, et al.
- 1981
|
|
4
|
A decision procedure and complete axiomatization of finite interval temporal logic with projection
– Bowman, Thompson
- 2003
|
|
4
|
Compositional reasoning using Interval Temporal Logic and Tempura
– Moszkowski
- 1998
|
|
4
|
A complete axiomatization of interval temporal logic with infinite time
– Moszkowski
- 2000
|
|
4
|
Completeness of Temporal Logics over Infinite Intervals
– Hanpin, Qiwen
- 1999
|
|
3
|
A complete axiomatization of QPTL
– Kesten, Pnueli
- 2002
|
|
3
|
An automata-theoretic completeness proof for Interval Temporal Logic (extended abstract
– Moszkowski
- 2000
|
|
3
|
Eine Axiomatisierung der Theorie der regularen Folgenmengen. Elektronische Informationsverarbeitung und Kybernetik EIK
– Wagner
- 1976
|
|
2
|
Decidable Theories I: Buchi's Monadic Second Order Successor Arithmetic
– Siefkes
- 1970
|