]> MathML 3 Elementary Math Sample Page

MathML 3 Elementary Math Sample Page

To properly see the MathML examples on this page, you need a browser capable of displaying the elementary math notations specified by MathML 3.

Addition, Subtraction, and Multiplication Problems

Here's a simple addition problem that spaces the "+" away from the operand by using the element none:

496 + 28 <mstack>
  <mn>496</mn>
  <msrow> <mo>+</mo> <none/> <mn>28</mn> </msrow>
  <msline/>
</mstack>

 

Here a more complicated subtraction problem that shows carries and borrows and crossouts:

2 1 2,327 - 1,156 1,171 <mstack>
  <mscarries location="nw">
    <none/>
    <mscarry crossout="updiagonalstrike" location="n">
      <mn>2</mn>
    </mscarry>
    <mn>1</mn>
    <none/>
  </mscarries>
  <mn>2,327</mn>
  <msrow> <mo>-</mo> <mn> 1,156</mn> </msrow>
  <msline/>
  <mn>1,171</mn>
</mstack>

Notice that the carry/borrow default of "n" (north/above) is changed to the "nw" (northwest) position by mscarries, but that is overridden for the borrow and changed back to "n". The carry/borrow can be in any compass position. Several different styles for crossouts are possible.

Here's a multiplication problem that shows multiple rows of carries:

1 1 3 435 × 25 1 2185 874 10925 <mstack charspacing="loose">
  <mscarries position="1"> <mn>1</mn> </mscarries>
  <mscarries position="1"> <mn>1</mn> <mn>3</mn> </mscarries>
  <mn>435</mn>
  <msrow> <mo>&#xD7;</mo> <none/> <mn>25</mn> </msrow>
  <msline/>

  <mscarries position="2"> <mn>1</mn> </mscarries>
  <mn>2185</mn>
  <msrow position="1"><mn>874</mn></msrow>
  <msline/>

  <mn>10925</mn>
</mstack>

There are a few things to note about this example:

Long Division

There are many different styles of long division used around the world. MathML has ten named styles, but the list is open ended. All styles share how the intermediate steps are displayed, but differ in the placement of the divisor, result, and where lines are drawn. The default style is the style used in the U.S., Great Britain, and elsewhere.

Below are two examples that differ only in the style and what character is used for the decimal separator. Because the separator is typically set on the math element, it is included in these examples.

12 16.5 198 12 78 72 6.0 6.0 0 <math xmlns="http://www.w3.org/1998/Math/MathML">
<mlongdiv>
  <mn> 12 </mn>
  <mn> 16.5 </mn>
  <mn> 198 </mn>
  <msgroup position='1' shift='-1'>
    <msgroup>
      <mn> 12</mn>
      <msline length='2'/>
    </msgroup>
    <msgroup>
      <mn> 78</mn>
      <mn> 72</mn>
      <msline length='2'/>
      <mn> 6.0</mn>
      <mn> 6.0</mn>
    </msgroup>
    <msgroup position='-1'> <!-- extra shift to move to the right of the "." -->
      <msline length='3'/>
      <mn> 0</mn>
    </msgroup>
  </msgroup>
</mlongdiv>
</math>
12 16,5 198 12 78 72 6,0 6,0 0
<math xmlns="http://www.w3.org/1998/Math/MathML"
      decimalpoint=",">
<mlongdiv longdivstyle='stackedrightright'>
  <mn> 12 </mn>
  <mn> 16,5 </mn>
  <mn> 198 </mn>
  <msgroup position='1' shift='-1'>
    <msgroup>
      <mn> 12</mn>
      <msline length='2'/>
    </msgroup>
    <msgroup>
      <mn> 78</mn>
      <mn> 72</mn>
      <msline length='2'/>
      <mn> 6,0</mn>
      <mn> 6,0</mn>
    </msgroup>
    <msgroup position='-1'> <!-- extra shift to move to the right of the "," -->
      <msline length='3'/>
      <mn> 0</mn>
    </msgroup>
  </msgroup>
</mlongdiv>
</math>

Repeating Decimal

There are two common styles for indicating a repeating decimal in a decimal expansion of fractions like ⅓. The most common style puts a line above the part that repeats and the other style puts dots on the first and last digits of the part that repeats. Both are easy to write as shown below:

0.4047619 <mstack stackalign="right">
  <msline length="6"/>
  <mn> 0.4047619 </mn>
</mstack>
. . 0.4047619 <mstack stackalign="right">
  <msrow> <mo>.</mo> <none/><none/><none/><none/> <mo>.</mo> </msrow>
  <mn> 0.4047619 </mn>
</mstack>