2.2と2.3節に示した部分アイテム集合を全列挙する一連の流れは、 制御文と組み合わせることでも実現できる。 その例を以下に示す。 以下の例ではsymbol関数によるアイテムの宣言はせず、直接itemset関数によりアイテム集合を定義している。 そして乗算代入演算子*=によりruby変数tに、次々と演算結果を累積していっている。
> t=ZDD::constant(1) > ["a","b","c","d"].each{|item| > t*=(ZDD::itemset(item)+1) > } a b c d + a b c + a b d + a b + a c d + a c + a d + a + b c d + b c + b d + b + c d + c + d + 1