<!--***********************************************************************-->
<xsl:param name="CICURI" select="''"/>
+<xsl:param name="type" select="'standalone'"/>
<xsl:include href="html_init.xsl"/>
<xsl:include href="html_set.xsl"/>
<xsl:variable name="framewidth" select="45"/>
<xsl:template match="/">
- <xsl:param name="current_indent" select="0"/>
+ <xsl:param name="current_indent" select="0"/>
+ <xsl:choose>
+ <xsl:when test="$type = 'standalone'">
<html>
<head>
<title> <xsl:value-of select="$CICURI"/> </title> <!-- FG -->
</xsl:apply-templates>
</body>
</html>
+ </xsl:when>
+ <xsl:otherwise>
+ <to_be_embedded>
+ <xsl:apply-templates>
+ <xsl:with-param name="current_indent" select="0"/>
+ </xsl:apply-templates>
+ </to_be_embedded>
+ </xsl:otherwise>
+ </xsl:choose>
</xsl:template>
<!--***********************************************************************-->
<xsl:when test="$name='arrow'">
<xsl:text>(</xsl:text>
<xsl:apply-templates mode="inline" select="*[position()=2]"/>
- <FONT color="blue" SIZE="+2" FACE="symbol">
+ <FONT color="blue" SIZE="+0" FACE="symbol">
<xsl:text>®</xsl:text>
</FONT>
<xsl:apply-templates mode="inline" select="*[position()=3]"/>
</xsl:when>
</xsl:choose>
<xsl:apply-templates mode="inline" select="."/>
- <FONT FACE="Symbol" SIZE="+2" mathcolor="green">Þ</FONT>
+ <FONT FACE="Symbol" SIZE="+0" mathcolor="green">Þ</FONT>
<xsl:apply-templates mode="inline"
select="following-sibling::*[position()= 1]"/>
</xsl:for-each>
<FONT color="red"> hence </FONT>
<xsl:apply-templates mode="inline" select="*[7]"/>
</xsl:when>
-
+
+ <xsl:when test="$name='subst'">
+ <xsl:apply-templates select="*[3]" mode="inline"/>
+ <xsl:text>[</xsl:text>
+ <xsl:apply-templates select="*[4]" mode="inline"/>
+ <a href="{*[1]/@definitionURL}">
+ <FONT color="green" FACE="symbol">
+ <xsl:text>¬</xsl:text>
+ </FONT>
+ </a>
+ <xsl:apply-templates select="*[2]" mode="inline"/>
+ <xsl:text>]</xsl:text>
+ </xsl:when>
+
+ <xsl:when test="$name='lift_with_base'">
+ <SUB>
+ <xsl:apply-templates select="*[3]" mode="inline"/>
+ </SUB>
+ <a href="{*[1]/@definitionURL}">
+ <FONT color="green" FACE="symbol">
+ <xsl:text>­</xsl:text>
+ </FONT>
+ </a>
+ <SUP>
+ <xsl:apply-templates select="*[4]" mode="inline"/>
+ </SUP>
+ <xsl:text>(</xsl:text>
+ <xsl:apply-templates select="*[2]" mode="inline"/>
+ <xsl:text>)</xsl:text>
+ </xsl:when>
+
+ <xsl:when test="$name='lift'">
+ <a href="{*[1]/@definitionURL}">
+ <FONT color="green" FACE="symbol">
+ <xsl:text>­</xsl:text>
+ </FONT>
+ </a>
+ <SUP>
+ <xsl:apply-templates select="*[2]" mode="inline"/>
+ </SUP>
+ <xsl:text>(</xsl:text>
+ <xsl:apply-templates select="*[3]" mode="inline"/>
+ <xsl:text>)</xsl:text>
+ </xsl:when>
+
+ <!-- reduction -->
+ <xsl:when test="$name='beta_red1'">
+ <xsl:apply-templates select="*[2]" mode="inline"/>
+ <a href="{*[1]/@definitionURL}">
+ <FONT color="green" FACE="symbol">
+ <xsl:text>®</xsl:text>
+ </FONT>
+ <SUB>
+ <FONT color="green" FACE="symbol">
+ <xsl:text>b</xsl:text>
+ </FONT>
+ </SUB>
+ </a>
+ <xsl:apply-templates select="*[3]" mode="inline"/>
+ </xsl:when>
+
+ <xsl:when test="$name='beta_red'">
+ <xsl:apply-templates select="*[2]" mode="inline"/>
+ <a href="{*[1]/@definitionURL}">
+ <FONT color="green" FACE="symbol">
+ <xsl:text>®</xsl:text>
+ </FONT>
+ <SUB>
+ <FONT color="green" FACE="symbol">
+ <xsl:text>b*</xsl:text>
+ </FONT>
+ </SUB>
+ </a>
+ <xsl:apply-templates select="*[3]" mode="inline"/>
+ </xsl:when>
+
+ <xsl:when test="$name='par_beta_red1'">
+ <xsl:apply-templates select="*[2]" mode="inline"/>
+ <a href="{*[1]/@definitionURL}">
+ <FONT color="green" FACE="symbol">
+ <xsl:text>Þ</xsl:text>
+ </FONT>
+ <SUB>
+ <FONT color="green" FACE="symbol">
+ <xsl:text>b</xsl:text>
+ </FONT>
+ </SUB>
+ </a>
+ <xsl:apply-templates select="*[3]" mode="inline"/>
+ </xsl:when>
+
+ <xsl:when test="$name='par_beta_red'">
+ <xsl:apply-templates select="*[2]" mode="inline"/>
+ <a href="{*[1]/@definitionURL}">
+ <FONT color="green" FACE="symbol">
+ <xsl:text>Þ</xsl:text>
+ </FONT>
+ <SUB>
+ <FONT color="green" FACE="symbol">
+ <xsl:text>b*</xsl:text>
+ </FONT>
+ </SUB>
+ </a>
+ <xsl:apply-templates select="*[3]" mode="inline"/>
+ </xsl:when>
+
+ <!-- forgetful -->
+ <xsl:when test="$name='forgetful'">
+ <a href="{*[1]/@definitionURL}">|</a>
+ <xsl:apply-templates select="*[2]" mode="inline"/>
+ <a href="{*[1]/@definitionURL}">|</a>
+ </xsl:when>
+
+ <!-- boolean algebra of redexes -->
+
+ <!-- isomorphic -->
+ <xsl:when test="$name='isomorphic'">
+ <xsl:apply-templates select="*[2]" mode="inline"/>
+ <a href="{*[1]/@definitionURL}">
+ <FONT color="green" FACE="symbol">
+ <xsl:text>@</xsl:text>
+ </FONT>
+ </a>
+ <xsl:apply-templates select="*[3]" mode="inline"/>
+ </xsl:when>
+
<!-- INTERP -->
<xsl:when test="$name='interp'">
<font color="green">[</font>
<xsl:with-param name="current_indent" select="$current_indent + 2"/>
</xsl:call-template>
<!-- -> -->
- <FONT color="blue" SIZE="+2" FACE="symbol">
+ <FONT color="blue" SIZE="+0" FACE="symbol">
<xsl:text>®</xsl:text>
</FONT>
<xsl:apply-templates select="*[position()=3]">
<xsl:with-param name="current_indent" select="$current_indent + 2"/>
</xsl:apply-templates>
<xsl:text>> </xsl:text>
+ <br/>
+ <xsl:call-template name="make_indent">
+ <xsl:with-param name="current_indent" select="$current_indent + 2"/> </xsl:call-template>
<xsl:text>CASE </xsl:text>
<xsl:apply-templates select="*[position()=3]">
<xsl:with-param name="current_indent" select="$current_indent + 8"/>
<xsl:for-each select="*[position() mod 2 = 0 and position()>3]">
<br/>
<xsl:call-template name="make_indent">
- <xsl:with-param name="current_indent" select="$current_indent + 2"/>
+ <xsl:with-param name="current_indent" select="$current_indent + 2"/>
</xsl:call-template>
<xsl:choose>
<xsl:when test="position() = 1">
</xsl:otherwise>
</xsl:choose>
<xsl:apply-templates select="."/>
- <FONT FACE="Symbol" SIZE="+2" mathcolor="green">Þ</FONT>
- <xsl:apply-templates select="following-sibling::*[position()= 1]">
- <xsl:with-param name="current_indent" select="$current_indent + 4 + string-length()"/>
- </xsl:apply-templates>
+ <FONT FACE="Symbol" SIZE="+0" mathcolor="green">Þ</FONT>
+ <xsl:variable name="body_size">
+ <xsl:apply-templates
+ select="following-sibling::*[1]/*[1]" mode="charcount"/>
+ </xsl:variable>
+ <xsl:choose>
+ <xsl:when test="$body_size > $framewidth">
+ <br/>
+ <xsl:call-template name="make_indent">
+ <xsl:with-param name="current_indent"
+ select="$current_indent + 8"/>
+ </xsl:call-template>
+ <xsl:apply-templates
+ select="following-sibling::*[position()= 1]">
+ <xsl:with-param name="current_indent"
+ select="$current_indent + 8"/>
+ </xsl:apply-templates>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:apply-templates select="following-sibling::*[position()= 1]"
+ mode="inline" />
+ </xsl:otherwise>
+ </xsl:choose>
</xsl:for-each>
</xsl:when>
<xsl:otherwise>
</xsl:otherwise>
</xsl:choose>
</xsl:when>
+ <xsl:when test="$name='let_in'">
+ <xsl:text>let </xsl:text>
+ <xsl:apply-templates select="m:bvar/m:ci"/>
+ <xsl:text> := </xsl:text>
+ <xsl:apply-templates select="*[3]">
+ <xsl:with-param name="current_indent" select="$current_indent+14"/>
+ </xsl:apply-templates>
+ <br/>
+ <xsl:call-template name="make_indent">
+ <xsl:with-param name="current_indent" select="$current_indent"/>
+ </xsl:call-template>
+ <xsl:text>in </xsl:text>
+ <xsl:apply-templates select="*[4]">
+ <xsl:with-param name="current_indent" select="$current_indent+5"/>
+ </xsl:apply-templates>
+ </xsl:when>
+
<!-- ***************************************** -->
<!-- *********** PROOF ELEMENTS ************** -->
<!-- ***************************************** -->
</xsl:otherwise>
</xsl:choose>
<xsl:variable name="charlength_first">
- <xsl:apply-templates select="*[3]" mode="charcount"/>
+ <xsl:apply-templates select="*[3]/*[1]" mode="charcount"/>
</xsl:variable>
<xsl:variable name="charlength_second">
- <xsl:apply-templates select="*[4]" mode="charcount"/>
+ <xsl:apply-templates select="*[4]/*[1]" mode="charcount"/>
</xsl:variable>
<xsl:variable name="charlength_side_proof">
- <xsl:apply-templates select="*[5]" mode="charcount"/>
+ <xsl:apply-templates select="*[5]/*[1]" mode="charcount"/>
</xsl:variable>
<xsl:variable name="split1"
select="$charlength_first + $charlength_second > $framewidth"/>
<xsl:if test="$split1">
<br/>
<xsl:call-template name="make_indent">
- <xsl:with-param name="current_indent" select="$current_indent"/>
+ <xsl:with-param name="current_indent" select="$current_indent + 2"/>
</xsl:call-template>
</xsl:if>
<FONT color="red">with </FONT>
<xsl:if test="$split2">
<br/>
<xsl:call-template name="make_indent">
- <xsl:with-param name="current_indent" select="$current_indent"/>
+ <xsl:with-param name="current_indent" select="$current_indent + 2"/>
</xsl:call-template>
</xsl:if>
<FONT color="red">by </FONT>
<xsl:apply-templates select="*[5]">
- <xsl:with-param name="current_indent" select="$current_indent+5"/>
+ <xsl:with-param name="current_indent" select="$current_indent+7"/>
</xsl:apply-templates>
</xsl:when>
<!-- rewrite and apply -->
<xsl:with-param name="current_indent" select="$current_indent"/>
</xsl:apply-templates>
</xsl:when>
+ <!-- ***************************************** -->
+ <!-- *********** LAMBDA ELEMENTS ************** -->
+ <!-- ***************************************** -->
+ <xsl:when test="$name='subst'">
+ <xsl:apply-templates select="*[3]"/>
+ <xsl:text>[</xsl:text>
+ <xsl:apply-templates select="*[4]"/>
+ <a href="{*[1]/@definitionURL}">
+ <FONT color="blue" SIZE="+0" FACE="symbol">
+ <xsl:text>¬</xsl:text>
+ </FONT>
+ </a>
+ <xsl:apply-templates select="*[2]"/>
+ <xsl:text>]</xsl:text>
+ </xsl:when>
+
+ <xsl:when test="$name='lift_with_base'">
+ <SUB>
+ <xsl:apply-templates select="*[3]" mode="inline"/>
+ </SUB>
+ <a href="{*[1]/@definitionURL}">
+ <FONT color="green" FACE="symbol">
+ <xsl:text>­</xsl:text>
+ </FONT>
+ </a>
+ <SUP>
+ <xsl:apply-templates select="*[4]" mode="inline"/>
+ </SUP>
+ <xsl:text>(</xsl:text>
+ <xsl:apply-templates select="*[2]" mode="inline"/>
+ <xsl:text>)</xsl:text>
+ </xsl:when>
+
+ <xsl:when test="$name='lift'">
+ <a href="{*[1]/@definitionURL}">
+ <FONT color="green" FACE="symbol">
+ <xsl:text>­</xsl:text>
+ </FONT>
+ </a>
+ <SUP>
+ <xsl:apply-templates select="*[2]" mode="inline"/>
+ </SUP>
+ <xsl:text>(</xsl:text>
+ <xsl:apply-templates select="*[3]" mode="inline"/>
+ <xsl:text>)</xsl:text>
+ </xsl:when>
+
+ <!-- reduction -->
+ <xsl:when test="$name='beta_red1'">
+ <xsl:apply-templates select="*[2]" mode="inline"/>
+ <a href="{*[1]/@definitionURL}">
+ <FONT color="green" FACE="symbol">
+ <xsl:text>®</xsl:text>
+ </FONT>
+ <SUB>
+ <FONT color="green" FACE="symbol">
+ <xsl:text>b</xsl:text>
+ </FONT>
+ </SUB>
+ </a>
+ <xsl:apply-templates select="*[3]" mode="inline"/>
+ </xsl:when>
+
+ <xsl:when test="$name='beta_red'">
+ <xsl:apply-templates select="*[2]" mode="inline"/>
+ <a href="{*[1]/@definitionURL}">
+ <FONT color="green" FACE="symbol">
+ <xsl:text>®</xsl:text>
+ </FONT>
+ <SUB>
+ <FONT color="green" FACE="symbol">
+ <xsl:text>b*</xsl:text>
+ </FONT>
+ </SUB>
+ </a>
+ <xsl:apply-templates select="*[3]" mode="inline"/>
+ </xsl:when>
+
+ <xsl:when test="$name='par_beta_red1'">
+ <xsl:apply-templates select="*[2]" mode="inline"/>
+ <a href="{*[1]/@definitionURL}">
+ <FONT color="green" FACE="symbol">
+ <xsl:text>Þ</xsl:text>
+ </FONT>
+ <SUB>
+ <FONT color="green" FACE="symbol">
+ <xsl:text>b</xsl:text>
+ </FONT>
+ </SUB>
+ </a>
+ <xsl:apply-templates select="*[3]" mode="inline"/>
+ </xsl:when>
+
+ <xsl:when test="$name='par_beta_red'">
+ <xsl:apply-templates select="*[2]" mode="inline"/>
+ <a href="{*[1]/@definitionURL}">
+ <FONT color="green" FACE="symbol">
+ <xsl:text>Þ</xsl:text>
+ </FONT>
+ <SUB>
+ <FONT color="green" FACE="symbol">
+ <xsl:text>b*</xsl:text>
+ </FONT>
+ </SUB>
+ </a>
+ <xsl:apply-templates select="*[3]" mode="inline"/>
+ </xsl:when>
+
+ <!-- forgetful -->
+ <xsl:when test="$name='forgetful'">
+ <a href="{*[1]/@definitionURL}">|</a>
+ <xsl:apply-templates select="*[2]" mode="inline"/>
+ <a href="{*[1]/@definitionURL}">|</a>
+ </xsl:when>
+
+ <!-- boolean algebra of redexes -->
+
+ <!-- isomorphic -->
+ <xsl:when test="$name='isomorphic'">
+ <xsl:apply-templates select="*[2]" mode="inline"/>
+ <a href="{*[1]/@definitionURL}">
+ <FONT color="green" FACE="symbol">
+ <xsl:text>@</xsl:text>
+ </FONT>
+ </a>
+ <xsl:apply-templates select="*[3]" mode="inline"/>
+ </xsl:when>
<!-- INTERP -->
<xsl:when test="$name='interp'">