集合を要素とする集合

VDM++ の set 型には、「集合を要素とする」集合を定義できます。これに準拠した事例を紹介します。

    s1 = VDM_Set([1,2,3])
s2 = VDM_Set([4])
s3 = VDM_Set([])
s4 = VDM_Set([5,6])
print "s1:",s1
print "s2:",s2
print "s3:",s3
print "s4:",s4

ss = VDM_Set([s1,s2,s3,s4])
print ">>> VDM_Set([s1,s2,s3,s4])"
print ss

まず、4つの集合 s1/s2/s3/s4 を作成します。次に、これらを要素とする集合 ss を作成します。このコードを実行すると、

s1: {1, 2, 3}
s2: {4}
s3: {}
s4: {5, 6}
>>> VDM_Set([s1,s2,s3,s4])
{{4}, {1, 2, 3}, {}, {5, 6}}

4つの集合を要素とする集合が得られます。このとき、要素の順序には、意味がありません。