数学公式:解析和规范*编程*形式

Nic*_*tia 5 math haskell tex

是否有任何传统格式来表示可以由计算机读取的数学公式?

我正在研究一些数学问题,并采用某种TDD方法.每当我陷入一个证明(或者只是我还没有证据,但对结果应该是什么的直觉)时,我倾向于编写一个小程序来检查到目前为止所做的一切都表现得像我认为的那样.我通常在我的证明中为一些中间结果写一个Haskell函数,一直玩,GHCi直到我确信我仍然朝着正确的方向前进.

我的绝对理想是拥有一些数学公式的规范形式,我可以使用一些工具输出到LaTeX和Haskell.我可以在上面运行QuickTest,如果步骤错误,它会告诉我.LaTeX的数学符号实际上非常接近规范形式,尽管读者推断了很多(你不想明确写出每个括号).

这个理想的工具看起来好得令人难以置信; 相反,为计算机拼出数学公式的正确方法是什么,也可能解析它?而环顾四周,我看到了很多简单的公式中使用完全*,+,-,/等.没有任何东西包括总和(例如过度集合),衍生品,所有"酷"的东西.而且,这种解析器的输出主要用于计算结果,给出变量的一些值; 不是为了将其翻译成其他语言(语言不可知,我猜).似乎这样的事情应该已经存在,或者应该有一个很好的理由.我错过了哪一个?

Ale*_*nov 4

数学符号的标准计算机表示是MathML。请注意,它包括Presentation MathML(表示数学表达式的编写方式并可以转换为LaTeX)和Content MathML(旨在表示表达式的含义,并且是翻译为Haskell或其他编程语言所需的内容) (但我不知道有任何工具可以进行此类翻译)。

当然,您不想手动编写 MathML(任何一种形式);有一些编辑器可以制作它,但我不能推荐之一。

否则,OpenMath可能是一个选择。它似乎完全面向“在计算机上从事数学工作”的人。