# Best MathML 1.01 content code for multi-step solutions/derivations/proofs?

• To: www-math@w3.org
• Subject: Best MathML 1.01 content code for multi-step solutions/derivations/proofs?
• From: Kofi Weusi-Puryear <puryear@ils.nwu.edu>
• Date: Mon, 18 Sep 2000 11:23:14 -0500
• From www-math-request@tux.w3.org Mon Sep 18 12: 24:24 2000

```What is the best way to write MathML 1.01 content code for multi-step
solutions/derivations/proofs? I need to be able to programmatically
distinguish between the steps. I also want MathML code that displays
well using IBM's TechExplorer.

For example let say you want to code the simple multi-step solution:
4*x = x + 6
3*x = 6
x = 2

I could just just have a list of <reln> nodes like this:
[itex]
<reln>
<eq/>
<apply>
<times/>
<cn>4</cn>
<ci>x</ci>
</apply>
<apply>
<plus/>
<ci>x</ci>
<cn>6</cn>
</apply>
</reln>
<reln>
<eq/>
<apply>
<times/>
<cn>3</cn>
<ci>x</ci>
</apply>
<cn>6</cn>
</reln>
<reln>
<eq/>
<ci>x</ci>
<cn>2</cn>
</reln>
[/itex]

But TechExplorer will just scrunch each step together on one line so
it ends up looking like:
4*x = x + 63*x = 6x = 2

That way is also problematic in determining which step is what,
especially in more complicated examples.

I could use <semantics> nodes like this:
...
<semantics>
<reln>
...
</reln>
<annotation-xml encoding="MySpecialCode">
<step ID="1"/>
</annotation-xml>
</semantics>
...
Now while I process the MathML code I will definitely know which step
is which, but TechExplorer will still scrunch each step together on
one line. To solve that problem I could use the <tendsto> operator so
TechExplorer's presentation is like this:
4*x = x + 6 -> 3*x = 6 -> x = 2

Still on one line, but less misleading. However since <tendsto> is a
binary relational operator, I would have to nest allot of <reln>
nodes (each associated with a <tendto> node) inside each other.

I could avoid using <tendsto> by using my second option internally,
and displaying to users HTML code with MathML embedded in it, each
step is displayed on one line.

I hoping the MathML community can suggest a simpler solution that
only requires the use of MathML 1.01 that TechExplorer would be happy
with.

Kofi Weusi-Puryear
Learning Sciences Ph.D. Student
Northwestern University
mailto:puryear@ils.northwestern.edu
http://www.ils.northwestern.edu/~puryear

```