This short course will explore that continuous thread which connects the discussion about time in philosophy with the modern use of temporal logic in computer science. It will go through the history of temporal logic to show how ideas developed by ancient and medieval philosophy have been rediscovered in modern times and applied to solve relevant problems in computer science.
Part 1: An historical perspective on temporal logic
• Synthesis: the nature of time is a central issue of classical and medieval phylosophy • Downfall: in the Renaissance the subject loses interest and is removed from the philo-
sophical discussion • Rediscovery: in the 19th and 20th centory temporal logic become a central issue again
Part 2: Time in Computer Science
• Algorithms, states and computations • Imperative programs and Reactive programs • Temporal Logic for Computer Science: CTL and LTL • The satisfiability problem • The model checking problem