Module 14: Approaches to Control Flow Analysis
  Lecture 27: Algorithm and Interval
 


Interval Partition

Construct I(n0);
while there is a node m not yet selected
but with a selected predecessor do
construct I(m);

 

Construct I(n);
I(n) := {n};
while there exists a node m 6= n0
all of whose predecessors are in I(n) do
I(n) := I(n) ∪ {m}

 

I(1) = 1, 2
I(3) = 3
I(4) = 4, 5, 6
I(7) = 7, 8, 9, 10

Interval Graphs

From the interval graph construct a new graph I(G)

  • Nodes of the new graph correspond to interval partitions.
  • Initial node is the node containing initial node of G.
  • There is an edge from node I to node J if there is some edge from element of I to the header of J.

Interval partition can be repeatedly applied to the new Interval graph.