from sympy import FiniteSet set_one = FiniteSet(1, 2, 3) set_two = FiniteSet(1, 2, 3) subset = set_one.is_proper_subset(set_two) print("Set one proper subset set two:") print(subset) print() subset = set_two.is_proper_subset(set_one) print("Set two proper subset set one:") print(subset) print() set_three = FiniteSet(1, 2, 3, 4) subset = set_one.is_proper_subset(set_three) print("Set one proper subset set three:") print(subset) print() subset = set_three.is_proper_subset(set_one) print("Set three proper subset set one:") print(subset)
from sympy import FiniteSet from fractions import Fraction s = FiniteSet(1) t = FiniteSet(1, 2) print("Is s is subset of t ", s.is_subset(t)) print("Is t is subset of s ", t.is_subset(s)) s = FiniteSet(1, 2, 3) ps = s.powerset() print("Power set ", ps) s = FiniteSet(1, 2, 3) t = FiniteSet(1, 2, 3) print("Is s is proper subset ", s.is_proper_subset(t)) print("Is t is proper subset ", t.is_proper_subset(s)) s = FiniteSet(1, 2, 3) t = FiniteSet(1, 2, 3, 4) print("Is s is proper subset ", s.is_proper_subset(t)) print("Is t is proper subset ", t.is_proper_subset(s))
print(A == B) A = FiniteSet(1, 2, 3) B = FiniteSet(1, 3, 4) print(A == B) # Subconjunto y subconjunto propio print('-' * 30) A = FiniteSet(1, 2, 3) B = FiniteSet(1, 2, 3, 4, 5) print(A.is_subset(B)) # A == B. El test de subconjunto propio da falso print('-' * 30) B = FiniteSet(2, 1, 3) print(A.is_proper_subset(B)) # Union de dos conjuntos print('-' * 30) A = FiniteSet(1, 2, 3) B = FiniteSet(2, 4, 6) print(A.union(B)) # Interseccion de dos conjuntos print('-' * 30) A = FiniteSet(1, 2) B = FiniteSet(2, 3) print(A.intersect(B)) # Diferencia entre conjuntos print('-' * 30)
ninthset = FiniteSet(999, 69) print(seventhset.is_subset(eigthset)) #print False print(eigthset.is_subset(seventhset)) #print False print(ninthset.is_subset(eigthset)) #print True #A set is a superset if the set contains all of the members. Remember, contains. print(ninthset.is_superset(eigthset)) #print False print(eigthset.is_superset(ninthset)) #print True #The power set is the set of all possible subsets tenthset = FiniteSet(20, 55, 41, 98) print(tenthset.powerset()) #print {EmptySet(), {20}, {41}, ..., {20, 55, 98}, {41, 55, 98}, {20, 41, 55, 98}} seventhset = FiniteSet(999, 439, 20984) eigthset = FiniteSet(999, 69, 48) ninthset = FiniteSet(999, 69) print(seventhset.is_proper_subset(eigthset)) #print False print(eigthset.is_proper_subset(seventhset)) #print False print(ninthset.is_proper_subset(eigthset)) #print True print(ninthset.is_proper_superset(eigthset)) #print False print(eigthset.is_proper_superset(ninthset)) #print True tenthset = FiniteSet(1, 2, 3) eleventhset = FiniteSet(2, 4, 6) print(tenthset.union(eleventhset)) #print {1, 2, 3, 4, 6} print(tenthset.intersect(eleventhset)) #print {2} #we can apply union and intersect to more than two sets. tenthset = FiniteSet(1, 2, 3) eleventhset = FiniteSet(2, 4, 6) twelthset = FiniteSet(3, 5, 7) print(tenthset.union(eleventhset).union(twelthset)) #print {1, 2, 3, 4, 5, 6, 7} print(tenthset.intersect(eleventhset).intersect(twelthset)) #print EmptySet()
s2 = FiniteSet(5, 1, 3) print(s1 == s2) # 以下、集合に対する概念(若干マイナーな概念も含むかも...)。 sub = FiniteSet(1, 2) super = FiniteSet(1, 2, 3) # AはBの部分集合か? print(sub.is_subset(super)) # AはBの上位集合か? print(super.is_superset(sub)) # AはBの真部分集合か? # ※真部分集合:Bが、Aにない要素を一つ以上含んでいる場合、BをAの真部分集合と呼ぶ。 print(sub.is_proper_subset(super)) # AはBの真上位集合か? print(super.is_proper_superset(sub)) # 通常の上位集合と、真上位集合の違い。 print(FiniteSet(3, 1, 2).is_superset(super)) print(FiniteSet(3, 1, 2).is_proper_superset(super)) # 冪集合を求める例。 # ※冪集合:ある集合の、全ての部分集合を列挙した集合。 # ある集合の濃度をsとすれば、部分集合の個数は、2^sとなることが知られている。 print(FiniteSet(3, 1, 2).powerset()) # 集合の和集合や積集合を求める。 s = FiniteSet(1, 2, 3)
t = FiniteSet(1, 2) s.is_subset(t) t.is_subset(t) s = FiniteSet(1, 2, 3) ps = s.powerset() ps len(ps) s = FiniteSet(1, 2, 3) t = FiniteSet(1, 2, 3) s.is_proper_subset(t) t = FiniteSet(1, 2, 3, 4) t.is_proper_subset(s) s.is_proper_subset(t) s = FiniteSet(1, 2, 3) t = FiniteSet(2, 4, 6) s.union(t) s = FiniteSet(1, 2, 3) t = FiniteSet(2, 4, 6) s.intersect(t) s = FiniteSet(1, 2, 3)
>>> s=FiniteSet(1,2,3) >>> ps=s.powerset() >>> ps {EmptySet(), {1}, {2}, {3}, {1, 2}, {1, 3}, {2, 3}, {1, 2, 3}} >>> len(ps) 8 #A set s is a proper subset of t iff t contains all the members of s and at least one more member. #A set t is a proper superset of s iff t contains all the members of s and at least one more member. >>> s=FiniteSet(1,2,3) >>> t=FiniteSet(1,2,3) >>> s.is_proper_subset(t) False >>> t.is_proper_superset(s) False >>> t=FiniteSet(1,2,3,4) >>> s.is_proper_subset(t) True >>> t.is_proper_superset(s) True #Set Operations #Union and intersection >>> s=FiniteSet(1,2,3)
for member in s: print(member) # 1, 2, 3 # Subsets -> if all the members of s are also a member of t s = FiniteSet(1) t = FiniteSet(1,2) s.is_subset(t) # True t.is_subset(s) # False # Supersets -> if t contains all of the members contained in s s.is_superset(t) # True t.is_superset(s) # True # Powerset -> is the set of all possible subsets of s s = FiniteSet(1, 2, 3) ps = s.powerset() ps # {{1}, {1, 2}, {1, 3}, {1, 2, 3}, {2}, {2, 3}, {3}, EmptySet()} len(ps) # 8 # Proper subset -> if all the members of s are also in t and t has at least one member that is not in s s = FiniteSet(1, 2, 3) t = FiniteSet(1, 2, 3) s.is_proper_subset(t) # False t.is_proper_subset(s) # False t = FiniteSet(1, 2, 3, 4) s.is_proper_subset(t) # True t.is_proper_subset(s) # True