Introduction to Temporal Logic Troy Reilly Justin Miller

Post on 31-Dec-2015

13 views 0 download

description

Introduction to Temporal Logic Troy Reilly Justin Miller. Agenda. Historical background The four basic rules Temporal Frames Advanced Interpretation Advanced Rules Proofs Extensions. Historical Background. Temporal Information Tense Logic Uses. The Core Rules. - PowerPoint PPT Presentation

Transcript of Introduction to Temporal Logic Troy Reilly Justin Miller

Introduction to Temporal LogicTroy ReillyJustin Miller

Agenda

Historical background The four basic rules Temporal Frames Advanced Interpretation Advanced Rules Proofs Extensions

Historical Background

Temporal Information Tense Logic Uses

The Core Rules

P(x)“It has at some time been the case that x” F(x)“It will at some time be the case that x” H(x) “It has always been the case that x” G(x) “It will always be the case that x”

The Core Rules In Image

Temporal Frames

Set T of time entities t, coupled with an ordering relation < on T

At each t, each atomic formula is assigned a truth value

Translation Examples

G(p) → F(p) G(p → q) → (G(p) → G(q)) F(p) → F(F(p))

Extensions to Core Temporal Logic

S(q, p) U(q, p) O(p)

Proof Example

From ∃x(P(Killed(x, tuna))) → Dead(tuna) P(Killed(Curiosity, Tuna))

Prove

F(F(Dead(Tuna))

Advanced Translation Example

A philosopher will be a king ∃x(Philosopher(x)&F(King(x))) ∃xF(Philosopher(x) & King(x)) F( x(Philosopher(x) & F(King(x))))∃ F( x(Philosopher(x) & King(x)))∃

Temporal Logic in Software Verification

Normal Logic pre-conditions post-conditions invariant assertions

Temporal Logic Safety Assertion Liveness Assertion

References

Temporal Logic

http://plato.stanford.edu/entries/logic-temporal/

Temporal Logic

Yde Venema

Temporal Representation and Inference

Barry Richards, Inge Bethke, Jaap van der Does, Jon Oberlander

Temporal Logic Mathematical Foundations and Computational Aspects

Dov Gabbay, Ian Hodkinson, Mark Reynolds

Diagnosing Java code: Assertions and Temporal Logic in Java programming

Eric Allen