Formal Model for Program Analysis
This chapter presents the main intermediate representations that serve for the analysis of clocks and data dependencies in programs. A Signal program is a formal specification that is basically composed of equations describing relations for both values and clocks of the signals involved. This essence of the language allows one to mathematically reason on the properties of such a specification. The reasoning framework allowed by Signal is the algebraic domain ℤ ∕ 3ℤ, the set of integers modulo 3. The intrinsic properties of this domain typically enable one to deal efficiently with clock properties in Signal programs. Section 8.1 presents the encoding of Signal constructs in ℤ ∕ 3ℤ (Le Guernic and Gautier in Advanced Topics in Data-Flow Computing, Prentice Hall, pp. 413–438, 1991). Then, Sect. 8.2 deals with the representation of the data dependencies expressed by Signal programs using a specific directed dependency graph.
KeywordsDependency Graph Data Dependency Signal Program Dependency Cycle Boolean Type
Unable to display preview. Download preview PDF.
- 2.Le Guernic P, Gautier T (1991) Data-flow to von Neumann: the Signal approach. In: Gaudiot J-L, Bic L (eds) Advanced Topics in Data-Flow Computing. Prentice-Hall, Englewood Cliffs, NJ, pp 413–438Google Scholar