在程序流图中,对任意两个结点m和n,如果从流图的首结点出发,到达n的任一通路都要经过m,则称m是n的必经结点,记为m DOM n。流图中结点n的所有必经结点的集合,称为结点n的必经结点集,记为D(n)。
  显然,循环的入口结点是循环中所有结点的必经结点。
  把DOM可以看作流图结点集上定义的一个关系,则由定义容易看出,它具有以下性质:
  1. 自反性:
  对流图中任意结点a,有a DOM a。
  2. 传递性:
  对流图中任意结点a、b和c。若a DOM b,b DOM c,则有a DOM c。
  3. 反对称性:
  若a DOM b且b DOM a,则必有a=b。
  因此,关系DOM是一个偏序关系。任何结点n的必经结点集是一个有序集。
例题
    求图11.12中各结点的D(n)。
  直接由定义和DOM的性质,可以求得:
  D(1)={1}
  D(2)={1,2}
  D(3)={1,2,3}
  D(4)={1,2,4}
  D(5)={1,2,4,5}
  D(6)={1,2,4,6}
  D(7)={1,2,4,7}