对选民们说:这不是数学问题,而是编程语言Mathematica的问题。
Mathematica的主要特征之一是它能够象征性地处理许多事情。但如果你想一想,很多符号功能实际上只是半个符号。
以向量为例。我们可以有一个像{x,y,z}这样的符号向量,用一个充满符号的矩阵做一个矩阵乘法,最后得到一个符号结果,所以我们可以考虑符号向量代数。但我们都知道,从盒子里看出来,数学不允许你说符号x是向量,给定矩阵A,A。x也是向量。这是一个更高层次的抽象,数学(目前)没有很好地处理。
类似地,Mathematica知道如何找到一个函数的5阶导数,它是用符号来定义的,但是它不能很好地找到r导数(参见"当r是符号时,如何求函数的r导数?“问题)。
此外,Mathematica有着广泛的布尔代数能力,一些石器时代的历史,但最近在第7版中获得了许多。在第8版中,我们得到了概率和朋友(如条件性),它允许我们用给定分布的随机变量的概率进行推理。这是一个非常出色的补充,它帮助我很好地熟悉这个领域,我非常喜欢使用它。不过,..。
我和一位同事讨论了一些概率逻辑的规则,就像我们所熟悉的
即,事件/状态/结果的条件概率C给定的事件/状态/结果A为真。
具体来说,我们是在看这个:
虽然在我意识到我不知道如何马上用数学解决这个问题之前,我就对Mathematica的Probability
给予了很高的评价。同样,与抽象向量和矩阵以及符号导数一样,这似乎是一个太高的抽象级别。还是真的是这样?我的问题是:
你能找到一种方法,在上述和类似的方程式中找出真理或谬误,用数学程序吗?
发布于 2011-12-12 11:54:06
>> Mathematica不允许你说符号x是向量
当然有..。总之够近了..。这是一个真实的集合。这被称为假设或条件,取决于你想要做什么。
Refine[Sqrt[x]*Sqrt[y]]
上面没有细化,因为它假设X和Y可以是任何符号,但是如果缩小它们的范围,就会得到结果:
Assuming[ x > 0 && y > 0, Refine[Sqrt[x]*Sqrt[y]]]
很高兴能说:Element[x,Reals^2]
(二维实向量),也许在Mathematica 9. :-)
至于这个问题:
,>>,你能找到一种方法,在上面的和类似的方程式中找出真理或谬误吗?。
请参阅我对这个问题的答案(第一个),看看关于Bayes定理的象征性方法:https://stackoverflow.com/questions/8378336/how-do-you-work-out-conditional-probabilities-in-mathematica-is-it-possible
发布于 2011-11-27 19:23:04
只是浏览了一下,并从Condition
文档中找到了一个例子。
In[1]:= c = x^2 < 30; a = x > 1;
(很抱歉这里的格式.)
In[2]:= Probability[c \[Conditioned] a, x \[Distributed] PoissonDistribution[2]] ==
Probability[c && a, x \[Distributed] PoissonDistribution[2]] / Probability[a, x \[Distributed] PoissonDistribution[2]]
它的计算结果为True
,对应于您给出的第一个示例的不太一般的版本。
如果我有时间的话,我会在今晚晚些时候再讨论这件事。
https://stackoverflow.com/questions/8282225
复制