MathWebSearch is a search engine for mathematical formulae that crawls various repositories of Content MathML and OpenMath formulae. It is being developed by Ioan Şucan and Michael Kohlhase at Jacobs University Bremen.
As mathematical expressions are more complex than a simple text, a tree is used to code their recursive structures. A same notation can represent different objects and, at the opposite, a mathematical object can be presented in several notations: that's why the search tree should encode the semantics (i.e. the mathematical meaning) of the formula. Consequently, the search is more relevant for formula coded in semantic languages such as Content MathML or OpenMath. Nevertheless, the search engine can deal with Presentation MathML and a LaTeX support is planned. The search engine is able to interpreted general terms in the tree and make substitutions when it compares it with the results. For instance in a formula contaning and integral, the term "domain" can be interpreted as the interval [0 ; 1], the term I... This is particulary useful for alpha-equivalence. For example in a formula a bound variable can be represented by any letter not already used but the mathematical significance keeps the same.
Several modes are proposed in order to generate the search tree. In the string mode, you enter a text of the prefix notation of the formula. This is quick for short formulae but can be less convenient when they become longer. There are two XML Query modes: MathML XML, OpenMath XML. They can be used for an advanced search or to paste an expression already made before.