Version: [release notes]

Module 5.8: Module conclusion

In Module 5, you learned that:

  • Adding timing behavior to discrete event models turns them into hybrid models.
  • Hybrid models can be used to more accurately model a system, provide more realistic simulation behavior, and validate a controlled system with greater fidelity.
  • Hybrid models are supported for simulation, but not for synthesis.
  • The CIF language does not define the unit of time, but CIF tools by default interpret time in seconds.
  • Compared to the state space of a discrete event model, the state space of a hybrid model has states that additionally contain the current time, and has two types of transitions: event transitions and time transitions.
  • Variable time represents the absolute time that has passed, since the start of a simulation or execution of a model.
  • Variable time starts at zero and increases linearly as time passes.
  • Variable time is read-only, so it cannot be assigned a new value.
  • Continuous variables offer more flexibility than the time variable, as they measure relative time, can be initialized to any real-typed value, can change at different rates by specifying their derivative, and can be reset by means of assignments.
  • A timer is a continuous variable that has a derivative of one, either positive or negative.
  • The derivative of a continuous variable can be specified with the declaration of the continuous variable, using a single equation in the same component, or using equations per location of the automaton in which it is declared.
  • Comparing time-related values requires taking numeric imprecision into account, for instance by using >= or <= instead of =.
  • The CIF simulator features a plot visualizer that can show a graph with the values of the variables of the model over time.
  • In CIF, events are urgent, meaning that if any event is enabled, time may not progress.
  • CIF features urgent locations. If any automaton is currently in an urgent location, time may not progress.
  • In a hybrid model, there is a deadlock if no events are enabled and time may not progress.
  • In a hybrid model, a timed livelock occurs if event transitions are always possible and thus time may never progress.
  • A timed livelock often occurs in open models, that can be closed by adding the environment.
  • A model can for instance be closed by simulating it or by using an SVG image and SVG input mappings.
  • The tau event can be used on edges when it is not relevant what event is on the edge.
  • The tau event is neither controllable nor uncontrollable, and doesn't synchronize.
  • The tau event is not supported by synthesis.
  • Edges without an explicitly specified event are implicitly labeled with the tau event.
  • The CIF merger can be used to merge multiple partial CIF models together into a single CIF model.
  • The fmt function can be used to perform text formatting, which can be useful for instance to construct values for SVG output mappings.