<m:mtable align="baseline 1" equalrows="false" columnalign="left">
<m:mtr>
<m:mtd>
- <xsl:apply-templates select="m:ci"/>
- <m:mo>:</m:mo>
+ <m:mrow>
+ <xsl:apply-templates select="m:ci"/>
+ <m:mo>:</m:mo>
+ </m:mrow>
</m:mtd>
</m:mtr>
<m:mtr>
<m:mtd>
+ <m:mrow>
<xsl:apply-templates select="m:type"/>
+ </m:mrow>
</m:mtd>
</m:mtr>
</m:mtable>
</xsl:when>
<xsl:otherwise>
- <xsl:apply-templates select="m:ci"/>
- <m:mo>:</m:mo>
- <xsl:apply-templates select="m:type"/>
+ <m:mrow>
+ <xsl:apply-templates select="m:ci"/>
+ <m:mo>:</m:mo>
+ <xsl:apply-templates select="m:type"/>
+ </m:mrow>
</xsl:otherwise>
</xsl:choose>
</xsl:when>
<m:mtr>
<m:mtd>
<m:mrow>
- <m:mo mathcolor="Blue"><m:mchar name="ForAll"/></m:mo>
+ <m:mo mathcolor="Blue">∀</m:mo>
<xsl:apply-templates select="m:bvar"/>
</m:mrow>
</m:mtd>
</m:mtable>
</xsl:when>
<xsl:otherwise>
- <m:mo mathcolor="Blue"><m:mchar name="ForAll"/></m:mo>
+ <m:mo mathcolor="Blue">∀</m:mo>
<xsl:apply-templates select="m:bvar/m:ci"/>
<m:mo>:</m:mo>
<xsl:apply-templates select="m:bvar/m:type"/>
<!-- CSC: next if until the annotationHelper can handle mactions -->
<xsl:if test="not($explodeall)">
<!-- Details hided (default) -->
- <m:mrow>
- <m:mtext mathcolor="Maroon">We can prove</m:mtext>
- <m:mphantom><m:mtext>_</m:mtext></m:mphantom>
- <xsl:apply-templates select="*[position()=3]"/>
- <m:mrow>
- <m:mphantom>
- <m:mtext>_</m:mtext>
- </m:mphantom>
- <m:mtext mathcolor="Green">(explain)</m:mtext>
- </m:mrow>
- </m:mrow>
+ <m:mtable align="baseline 1" equalrows="false" columnalign="left">
+ <m:mtr>
+ <m:mtd>
+ <m:mrow>
+ <m:mtext mathcolor="Maroon">We can prove</m:mtext>
+ <m:mphantom><m:mtext>_</m:mtext></m:mphantom>
+ <xsl:apply-templates select="*[position()=3]"/>
+ <m:mrow>
+ <m:mphantom><m:mtext>_</m:mtext></m:mphantom>
+ <m:mtext mathcolor="Green">(explain)</m:mtext>
+ </m:mrow>
+ </m:mrow>
+ </m:mtd>
+ </m:mtr>
+ </m:mtable>
</xsl:if>
<!-- Show details -->
<m:mtable align="baseline 1" equalrows="false" columnalign="left">
<m:mtr>
<m:mtd>
<m:mrow>
- <m:mtext mathcolor="Maroon">we proved </m:mtext>
+ <m:mtext mathcolor="Maroon">we proved</m:mtext>
<m:mphantom><m:mtext>_</m:mtext></m:mphantom>
<xsl:apply-templates select="*[position()=3]"/>
<m:mrow>
</m:mtr>
</m:mtable>
</xsl:when>
-
- <!-- CSC: Il caso che segue e' stato buttato li' giusto per vedere -->
- <!-- qualche cosa. Irene, appena puoi, risistemalo. -->
<xsl:when test="$name='by_induction'">
<m:mtable align="baseline 1" equalrows="false" columnalign="left">
<m:mtr>
<m:mtd>
<m:mrow>
- <m:mtext mathcolor="red">We prove </m:mtext>
+ <m:mtext mathcolor="red">We prove</m:mtext>
<m:mphantom><m:mtext>_</m:mtext></m:mphantom>
<xsl:apply-templates select="../*[3]"/>
</m:mrow>
<m:mtr>
<m:mtd>
<m:mrow>
- <m:mtext mathcolor="red">by induction on </m:mtext>
+ <m:mtext mathcolor="red">by induction on</m:mtext>
<m:mphantom><m:mtext>_</m:mtext></m:mphantom>
- <xsl:apply-templates
+ <xsl:apply-templates
select="*[position()=last()]/*[position()=last()]"/>
</m:mrow>
</m:mtd>
<m:mtr>
<m:mtd>
<m:mrow>
- <m:mphantom><m:mtext>_</m:mtext></m:mphantom>
<m:mtable align="baseline 1" equalrows="false" columnalign="left">
<xsl:for-each select="*[position()>3 and not(position()=last())]">
<m:mtr>
<m:mtd>
- <xsl:apply-templates select="."/>
+ <m:mrow>
+ <xsl:apply-templates select="."/>
+ </m:mrow>
</m:mtd>
</m:mtr>
</xsl:for-each>
<m:mtr>
<m:mtd>
<m:mrow>
- <m:mtext mathcolor="red">Case </m:mtext>
+ <m:mtext mathcolor="red">Case</m:mtext>
<m:mphantom><m:mtext>_</m:mtext></m:mphantom>
<xsl:apply-templates select="*[2]"/>
</m:mrow>
<xsl:if test="*[3]/*[position()>1]">
<m:mtr>
<m:mtd>
- <m:mtext mathcolor="red">By induction hypothesis, we have:</m:mtext>
+ <m:mrow>
+ <m:mtext mathcolor="red">By induction hypothesis, we have:</m:mtext>
+ </m:mrow>
</m:mtd>
</m:mtr>
<m:mtr>
</xsl:if>
<m:mtr>
<m:mtd>
- <xsl:apply-templates select="*[4]"/>
+ <m:mrow>
+ <xsl:apply-templates select="*[4]"/>
+ </m:mrow>
</m:mtd>
</m:mtr>
</m:mtable>
</xsl:choose>
</m:mrow>
</xsl:when>
+ <!-- false_ind -->
<xsl:when test="$name='false_ind'">
<m:mtable align="baseline 1" equalrows="false" columnalign="left">
<m:mtr>
</m:mtr>
</m:mtable>
</xsl:when>
- <!--CSC fine della parte da risistemare -->
-
<!-- LET-IN -->
<xsl:when test="$name='letin'">
<m:mtable align="baseline 1" equalrows="false" columnalign="left">
<m:mtr>
<m:mtd>
<m:mrow>
- <m:mtext>Then apply it to</m:mtext>
+ <m:mtext>Then apply it to</m:mtext>
<m:mphantom><m:mtext>_</m:mtext></m:mphantom>
<xsl:apply-templates select="*[position()>2]"/>
</m:mrow>
<m:mtr>
<m:mtd>
<m:mrow>
- <m:mtext>In particular, we have</m:mtext>
+ <m:mtext>In particular, we have</m:mtext>
</m:mrow>
</m:mtd>
</m:mtr>
</m:mtr>
</m:mtable>
</xsl:when>
- <!-- CSC: Il caso che segue e' stato buttato li' giusto per vedere -->
- <!-- qualche cosa. Irene, appena puoi, risistemalo. -->
<!-- full_or_ind -->
<xsl:when test="$name='full_or_ind'">
<m:mtable align="baseline 1" equalrows="false" columnalign="left">
<m:mtr>
<m:mtd>
<m:mrow>
- <m:mtext>We proceed by cases to prove</m:mtext>
+ <m:mtext>We proceed by cases to prove</m:mtext>
<m:mphantom><m:mtext>_</m:mtext></m:mphantom>
<xsl:apply-templates select="*[3]"/>
</m:mrow>
<m:mtr>
<m:mtd>
<m:mrow>
- <m:mtext>Left: suppose</m:mtext>
+ <m:mtext>Left: suppose</m:mtext>
<m:mphantom><m:mtext>_</m:mtext></m:mphantom>
<m:mo stretchy="false">(</m:mo>
<xsl:apply-templates select="*[4]/m:bvar/m:ci"/>
</m:mtr>
<m:mtr>
<m:mtd>
- <m:mphantom><m:mtext>_</m:mtext></m:mphantom>
<m:mrow>
+ <m:mphantom><m:mtext>_</m:mtext></m:mphantom>
<xsl:apply-templates select="*[4]/*[3]"/>
</m:mrow>
</m:mtd>
<m:mtr>
<m:mtd>
<m:mrow>
- <m:mtext>Right: suppose</m:mtext>
+ <m:mtext>Right: suppose</m:mtext>
<m:mphantom><m:mtext>_</m:mtext></m:mphantom>
<m:mo stretchy="false">(</m:mo>
<xsl:apply-templates select="*[5]/m:bvar/m:ci"/>
</m:mtr>
</m:mtable>
</xsl:when>
- <!--CSC fine della parte da risistemare -->
<!-- OR_IND -->
<xsl:when test="$name='or_ind'">
<m:mtable align="baseline 1" equalrows="false" columnalign="left">
<m:mtr>
<m:mtd>
<m:mrow>
- <m:mtext>We prove</m:mtext>
+ <m:mtext>We prove</m:mtext>
<m:mphantom><m:mtext>_</m:mtext></m:mphantom>
<xsl:apply-templates select="*[3]"/>
<m:mphantom><m:mtext>_</m:mtext></m:mphantom>
- <m:mtext>by cases:</m:mtext>
+ <m:mtext>by cases:</m:mtext>
</m:mrow>
</m:mtd>
</m:mtr>
<m:mtext>:</m:mtext>
<xsl:apply-templates select="*[4]"/>
<m:mphantom><m:mtext>_</m:mtext></m:mphantom>
- <m:mtext>such that</m:mtext>
+ <m:mtext>such that</m:mtext>
<m:mphantom><m:mtext>_</m:mtext></m:mphantom>
<m:mtext>(</m:mtext>
<xsl:apply-templates select="*[5]"/>
<m:mtr>
<m:mtd>
<m:mrow>
- <m:mtext mathcolor="Maroon">we get</m:mtext>
+ <m:mtext mathcolor="Maroon">we get</m:mtext>
<m:mphantom><m:mtext>_</m:mtext></m:mphantom>
<xsl:apply-templates select="."/>
</m:mrow>
<m:mtr>
<m:mtd>
<m:mrow>
- <m:mtext mathcolor="Maroon">we get</m:mtext>
+ <m:mtext mathcolor="Maroon">we get</m:mtext>
<m:mphantom><m:mtext>_</m:mtext></m:mphantom>
<xsl:apply-templates select="."/>
</m:mrow>
<xsl:variable name="symbol">
<xsl:choose>
<xsl:when test="m:and[1]">
- <xsl:value-of select="'wedge'"/>
+ <xsl:value-of select="'∧'"/>
</xsl:when>
<xsl:when test="m:or[1]">
- <xsl:value-of select="'vee'"/>
+ <xsl:value-of select="'∨'"/>
</xsl:when>
<xsl:when test="m:geq[1]">
- <xsl:value-of select="'geq'"/>
+ <xsl:value-of select="'≥'"/>
</xsl:when>
<xsl:when test="m:leq[1]">
- <xsl:value-of select="'leq'"/>
+ <xsl:value-of select="'≤'"/>
</xsl:when>
<xsl:when test="m:gt[1]">
- <xsl:value-of select="'gt'"/>
+ <xsl:value-of select="'>'"/>
</xsl:when>
<xsl:when test="m:lt[1]">
- <xsl:value-of select="'lt'"/>
+ <xsl:value-of select="'< '"/>
</xsl:when>
<xsl:when test="m:eq[1]">
- <xsl:value-of select="'Equal'"/>
+ <xsl:value-of select="'='"/>
</xsl:when>
<xsl:when test="m:in[1]">
- <xsl:value-of select="'Element'"/>
+ <xsl:value-of select="'∈'"/>
</xsl:when>
<xsl:when test="m:subset[1]">
- <xsl:value-of select="'SubsetEqual'"/>
+ <xsl:value-of select="'⊆'"/>
</xsl:when>
<xsl:when test="m:prsubset[1]">
- <xsl:value-of select="'subset'"/>
+ <xsl:value-of select="'⊂'"/>
</xsl:when>
<xsl:when test="m:intersect[1]">
- <xsl:value-of select="'Intersection'"/>
+ <xsl:value-of select="'⋂'"/>
</xsl:when>
<xsl:when test="m:union[1]">
- <xsl:value-of select="'Union'"/>
+ <xsl:value-of select="'⋃'"/>
</xsl:when>
<xsl:when test="m:setdiff[1]">
- <xsl:value-of select="'Backslash'"/>
+ <xsl:value-of select="'∖'"/>
</xsl:when>
</xsl:choose>
</xsl:variable>
<m:mtd>
<m:mrow>
<m:mphantom><m:mtext>__</m:mtext></m:mphantom>
- <m:mo m:xref="{*[1]/@id}">
- <m:mchar name="{$symbol}"/>
- </m:mo>
+ <m:mo m:xref="{*[1]/@id}"><xsl:value-of select="$symbol"/></m:mo>
<xsl:apply-templates select="."/>
</m:mrow>
</m:mtd>
<xsl:template match = "m:set">
<xsl:choose>
<xsl:when test="count(child::*) = 0">
- <m:mi>
- <m:mchar name="emptyset"/>
- </m:mi>
+ <m:mi>∅</m:mi>
</xsl:when>
<xsl:otherwise>
<xsl:variable name="charlength">
</xsl:template>
</xsl:stylesheet>
-
-
-