SymPy:符号间隔联盟

时间:2017-03-30 16:40:48

标签: union intervals sympy symbolic-math

我有两个Sympy间隔(Interval(1, m), Interval(1, m+1)),其中m>=1。 我想制作这两个间隔的联盟。结果应为[1,m+1]

不幸的是,我无法将m上的约束传递给Sympy。

我的实际代码在哪里有“太常见”的答案:

m = symbols('m', integer=True)
Union(Interval(1, m), Interval(1, m+1))
>> [1, m] U [1, m + 1]

我尝试使用reduce功能但没有成功......

非常感谢任何帮助。

谢谢!

1 个答案:

答案 0 :(得分:0)

我们可以通过创建一个新的interval12来获得所需的输出:

m=Symbol('m',positive=True)
interval1 = Interval(0,m)
interval2 = Interval(0,m+4)
union12 = interval1.union(interval2)
interval12 = Interval(union12.inf,union12.sup)
print interval1, interval2, interval12

输出:

[0, m] [0, m + 4] [0, m + 4]