不等式

正如方程 所声明的 等于,因此不等式 声明 大于. 在 Mathematica 中,Reduce 不仅适用于方程,也适用于不等式.

Reduce[{ineq1,ineq2,...},x]化简关于 x 的不等式集合

多变量不等式的操作.

这里把一对不等式化简为一个不等式.
In[1]:=
Click for copyable input
Out[1]=
这些不等式不可能同时得到满足.
In[2]:=
Click for copyable input
Out[2]=

当应用于方程时,Reduce[eqn, x] 试图获得由x 的形式 , ... 的简单方程组组成的结果. 而当应用于不等式时,Reduce[ineq, x] 做完全类似的事情,并试图获得由 x 的形式为 , ... 的简单不等式组成的结果.

这里把二次方程化简为 的两个简单方程.     
In[3]:=
Click for copyable input
Out[3]=
这里把二次不等式化简为 的两个简单不等式.
In[4]:=
Click for copyable input
Out[4]=

Reduce[ineq, x] 产生的结果可以用来代表由不等式描述的一系列区间. 由于 次多项式的图示可以上下起伏多达 次, 次多项不等式可以产生多达 个不同区间.

这里不等式产生三个不同区间.
In[5]:=
Click for copyable input
Out[5]=
区间的两端为根和极点.
In[6]:=
Click for copyable input
Out[6]=
求解该不等式需要引入 ProductLog.
In[7]:=
Click for copyable input
Out[7]=

超越函数如 的图示上下起伏无穷多次,所以可以生成无穷多区间.

第二个不等式只允许有限多的区间.
In[8]:=
Click for copyable input
Out[8]=
这个例子表明 Reduce 如何代表无穷多的区间.
In[9]:=
Click for copyable input
Out[9]=
相当简单的输入可能产生较为复杂的结果.
In[10]:=
Click for copyable input
Out[10]=

如果有包含 的不等式,就可能有满足不等式的孤立点. Reduce 通过给出方程代表这样的点.

该不等式只能在两个孤立点满足.
In[11]:=
Click for copyable input
Out[11]=
这里产生区间和孤立点.
In[12]:=
Click for copyable input
Out[12]=
Reduce[{ineq1,ineq2,...},{x1, x2, ... }] 化简由一些变量组成的不等式集合

多变量不等式.

对于包含多个变量的不等式,Reduce 产生具体区间的嵌套集合,这里后来的变量具有依赖于前面变量的边界.

这里使用 的嵌套不等式代表单位园板.
In[13]:=
Click for copyable input
Out[13]=

从几何上看,任何线性不等式把空间分为两半. 因此,线性不等式的列表定义了多面体,有时候是有界的,有时候不是. Reduce 用嵌套不等式表示这样的多面体. 多面体的角总是出现在这些不等式的终端.     

这里在平面上定义一个三角区域.
In[14]:=
Click for copyable input
Out[14]=
即使是一个单一的三角形也可能需要使用两部分描述.
In[15]:=
Click for copyable input
Out[15]=

一般来说,不等式列表表示几何对象互相重叠的区域. 通常这些描述可以相当复杂.

这里代表单位园板在线一侧的部分.
In[16]:=
Click for copyable input
Out[16]=
这是两个园板的交集.
In[17]:=
Click for copyable input
Out[17]=
如果园板距离太远,则没有交集.
In[18]:=
Click for copyable input
Out[18]=
下面是涉及超越不等式的例子.
In[19]:=
Click for copyable input
Out[19]=

如果有包含参数的不等式,Reduce 自动处理可能出现的不同情况,正如它对方程的处理一样.

区间的形式取决于 的值.
In[20]:=
Click for copyable input
Out[20]=
取决于 的值,可以得到双曲线或椭圆区域.
In[21]:=
Click for copyable input
Out[21]=

Reduce 试图提供由不等式集合定义的区域的完整描述. 然而,有时候,用户可能只想找到满足不等式的变量值的个别例子. 可以使用 FindInstance 做到这一点.

FindInstance[ineqs,{x1,x2,...}]试图寻找满足 ineqs 的例子
FindInstance[ineqs,vars,n]试图寻找 n 个例子

寻找满足不等式的个别点.

这里寻找满足不等式的具体实例.
In[22]:=
Click for copyable input
Out[22]=
这里表明,没有任何办法可以满足不等式.     
In[23]:=
Click for copyable input
Out[23]=

FindInstance 在一定程度上类似于用于方程的 Solve 的不等式. 类似于 Solve,返回一个给出变量具体值的规则列表. 但是,尽管对于方程,这些值可以笼统地给出所有解的准确表示,然而,对于不等式,它们只能对应于由不等式所描述的区域内的孤立样本点.

每次使用具体输入调用 FindInstance,将给出同样的输出. 并且当我们有对应于有些特殊或局限性的点的实例,将优先返回这些输出. 但一般而言,由 FindInstance 返回的实例的分布通常看起来有点随机. 然而,每个实例实际上建设性地证明了用户所提供的不等式是可以被满足的.

如果要求单位园板中的一点,FindInstance 给出原点.
In[24]:=
Click for copyable input
Out[24]=
这里在单位园板中找到500个点.
In[25]:=
Click for copyable input
这些点的分布看起来比较随机.
In[26]:=
Click for copyable input
Out[26]=
New to Mathematica? Find your learning path »
Have a question? Ask support »