.hashout
の内容をrubyのHashオブジェクト
に変換し、そのオブジェクトを返す。 ハッシュキーはアイテム集合、対応する値は重み。 ただし、出力できるアイテム集合数には上限があり、 4,096,000アイテム集合を超えると、そこで強制的に出力を停止する。 途中で停止したかどうかは、partlyメソッドを使うことで確認できる。
> require 'zdd'
> a=ZDD::itemset("a")
> b=ZDD::itemset("b")
> c=ZDD::itemset("c")
> d=ZDD::itemset("d")
> f=a*b + 2*b*c + 3*d + 4
> h=f.hashout
> p h
{"a b"=>1, "b c"=>2, "d"=>3, ""=>4}
partly : 部分Hash出力フラグ
to_a : アイテム集合配列への変換
csvout : CSVファイル出力
export : ZDDのシリアライズ出力