modeling time in computing
DESCRIPTION
Benjamin Gamble. Modeling time in computing. What is Time?. Can mean many different things to a computer Dynamic Equation Variable System State. Outline. History Languages & Interpretations Dimensions of the Time Modeling Problem Discrete vs. Dense Finite or Bounded Time Models - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/1.jpg)
MODELING TIME IN COMPUTING
Benjamin Gamble
![Page 2: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/2.jpg)
2
What is Time? Can mean many different things
to a computer
DynamicEquationVariableSystem State
![Page 3: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/3.jpg)
3
Outline History Languages & Interpretations Dimensions of the Time Modeling Problem
Discrete vs. DenseFinite or Bounded Time ModelsLinear vs. BranchingDeterminism vs. NondeterminismTime Advancement ProblemConcurrency & Composition
Analysis & Verification Issues
![Page 4: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/4.jpg)
4
History of Time in Computing First implemented in computer
hardware Then adapted for software and
computational complexity Parallel processing mandated a
further investigation in timing issues Modern day real time systems
![Page 5: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/5.jpg)
5
Outline History Languages & Interpretations Dimensions of the Time Modeling Problem
Discrete vs. DenseFinite or Bounded Time ModelsLinear vs. BranchingDeterminism vs. NondeterminismTime Advancement ProblemConcurrency & Composition
Analysis & Verification Issues
![Page 6: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/6.jpg)
6
Choosing the Right Language
![Page 7: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/7.jpg)
7
Two Main Classes of Languages Operational
Well suited to describe the evolution of a system starting at some initial state
Based on the key concept of state and transition
Modeled as evolving from a state to the next one when a certain event occurs
![Page 8: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/8.jpg)
8
Operational Example A safe
When the correct security code is entered, the safe opens
If the safe remains open for 3 minutes, it automatically closes
![Page 9: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/9.jpg)
9
Two Main Classes of Languages Descriptive
Better suited for describing the properties that the system must satisfy
Logic based formalismsAlgebra based formalisms
![Page 10: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/10.jpg)
10
Descriptive Example A safe
The safe is open if and only if the correct security code has been entered no more than 3 minutes ago
![Page 11: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/11.jpg)
11
Outline History Languages & Interpretations Dimensions of the Time Modeling Problem
Discrete vs. DenseFinite or Bounded Time ModelsLinear vs. BranchingDeterminism vs. NondeterminismTime Advancement ProblemConcurrency & Composition
Analysis & Verification Issues
![Page 12: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/12.jpg)
12
Discrete vs. Dense Time Domains Discrete time means that there is a set
of isolated points Dense time means that for every 2
points there is always a third point in between
![Page 13: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/13.jpg)
13
Continuous vs. Non-Continuous Time Models
![Page 14: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/14.jpg)
14
Continuous vs. Non-Continuous Time Models
![Page 15: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/15.jpg)
15
Finite or Bounded Time Models Many system models assume that the
behaviors may proceed indefinitely into the future and maybe even the past
This models time as an unbounded set Some system behaviors happen within a
time window This will require a bounded time model
![Page 16: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/16.jpg)
16
Bounded Time Model Example Braking a car
We know that it requires, at most, a few seconds
Testing an anti-lock braking system may include a time window of 0-60 seconds as a temporal domain
![Page 17: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/17.jpg)
17
Hybrid Systems What is a hybrid system?
Uses both discrete and dense time modeling
When this may be used:Square wave formContinuous sampled at certain pointsDiscrete steps with continuous
variables
![Page 18: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/18.jpg)
18
Linear vs. Branching Time Models Linear – interpreted over linear
sequences of states
![Page 19: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/19.jpg)
19
Linear vs. Branching Time Models Branching – interpreted over trees of
states
![Page 20: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/20.jpg)
20
Determinism vs. Nondeterminism Deterministic
Whenever the future state of the system is uniquely determined by its current state and input values
Ex. A light switch○ Pressing the switch (input) while the light is in
state ‘off’ yields the unique possible state of light ‘on’
![Page 21: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/21.jpg)
21
Determinism vs. Nondeterminism Nondeterministic
Systems that can evolve to different future states from the same present state and the same input by making arbitrary ‘choices’
Ex. A resource arbiter○ Responds to 2 requests happening at the
same time by ‘choosing’ arbitrarily to whom to grant the resource first
![Page 22: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/22.jpg)
22
Implicit vs. Explicit Time Reference Explicit Time Reference
Using math such as calculus to specify system behavior and its properties
Implicit Time ReferenceRefers to a ‘current time’ and orders events
with respect to it
![Page 23: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/23.jpg)
23
Time Advancement Problem This problem arises when the model of a
timed system exhibits behaviors that do not progress past some instantEx. Pushing a button
○ Actual duration to push a button can be ignored and can be represented abstractly as a zero time event
○ If these types of events are allowed then there could possibly be an infinite number of such transitions in a zero time interval
![Page 24: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/24.jpg)
24
Solutions to the Time Advancement Problem Priori
The syntax or the semantics of the formal notation is restricted beforehand, in order to guarantee that the model of any system described with it will be exempt from time advancement problems
![Page 25: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/25.jpg)
25
Solutions to the Time Advancement Problem Posteriori
Deals with time advancement issues after the system specification has been built
It is then analyzed against a formal definition of time advancement in order to check that all of its actual behaviors do not incur into the time advancement problem
![Page 26: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/26.jpg)
26
Concurrency & Composition Composition also known as
modularization Problems arise when analyzing
synchronous subsystems A classification of dealing with the
composition of concurrent units can be spilt in two waysSynchronous vs. Asynchronous
![Page 27: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/27.jpg)
27
Synchronous vs. Asynchronous Synchronous
Occur at the same time or at instants of time that are related
Naturally paired with a discrete time domain Asynchronous
Each activity can progress at a speed unrelated to others
There is no need to know in which state each unit is at every instant
![Page 28: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/28.jpg)
28
Outline History Languages & Interpretations Dimensions of the Time Modeling Problem
Discrete vs. DenseFinite or Bounded Time ModelsLinear vs. BranchingDeterminism vs. NondeterminismTime Advancement ProblemConcurrency & Composition
Analysis & Verification Issues
![Page 29: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/29.jpg)
29
Expressiveness The possibility of characterizing
extensive classes of properties A language is more expressive if it can
be finely tuned into a set of behaviors that satisfy certain properties
For each language there exists properties that can only be expressed by them
![Page 30: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/30.jpg)
30
Decidability & Complexity Decidability
There is a trade-off between expressiveness and decidability
Complexity is used for decidable models Used to determine the effort required by an
algorithm to decide whether a property holdsMeasured in the amount of memory or time
required as a function of the input
![Page 31: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/31.jpg)
31
Analysis & Verification Techniques Exhaustive Enumeration
AutomatedExploration of graphs
Syntactic TransformationsAddress the verification problem by logical
deductionsSpecification and requirements are in
descriptive form
![Page 32: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/32.jpg)
32
Outline History Languages & Interpretations Dimensions of the Time Modeling Problem
Discrete vs. DenseFinite or Bounded Time ModelsLinear vs. BranchingDeterminism vs. NondeterminismTime Advancement ProblemConcurrency & Composition
Analysis & Verification Issues
![Page 33: Modeling time in computing](https://reader036.vdocument.in/reader036/viewer/2022070421/56815ff3550346895dcef2e1/html5/thumbnails/33.jpg)
33
Questions?