]> matita.cs.unibo.it Git - helm.git/commitdiff
added support for displaying the list of papers related to matita in the documentatio...
authorStefano Zacchiroli <zack@upsilon.cc>
Sat, 10 Jun 2006 17:06:57 +0000 (17:06 +0000)
committerStefano Zacchiroli <zack@upsilon.cc>
Sat, 10 Jun 2006 17:06:57 +0000 (17:06 +0000)
helm/www/matita/Makefile
helm/www/matita/style.css
helm/www/matita/xml/papers.xml [new file with mode: 0644]
helm/www/matita/xsl/papers2xhtml.xsl [new file with mode: 0644]

index b0a56d902c5fbba40cb0c1e3d4e76ae1cefa51ee..0c73ec7f3c2c63b35209ad9a3c1c1bd13b1e7502 100644 (file)
@@ -16,6 +16,7 @@ all:
        @echo
        @echo "  manual    # import the (xhtml version of the) user manual"
        @echo "  images    # build images for the splash screen"
+       @echo "  papers    # build the papers page from xml/papers.xml"
        @echo
 
 clean:
@@ -28,6 +29,10 @@ manual-stamp: $(DOCS_SRC_DIR)/*.xml $(DOCS_SRC_DIR)/*.xsl
        cp $(DOCS_SRC_DIR)/*.html $(DOCS_SRC_DIR)/*.css $(DOCS_DEST_DIR)/
        touch $@
 
+papers: papers.shtml
+papers.shtml: xsl/papers2xhtml.xsl xml/papers.xml
+       xsltproc $^ > $@
+
 .PHONY: images
 images: images/matita.xcf
        for Y in `seq 0 $(SEQ)`; do \
index ef9fd1cb122d91a7544cc2df074b0626e8efb728..38ad69c8b8909d57abb677f84fb1f35229bdb3a3 100644 (file)
@@ -152,3 +152,21 @@ span.screenshots {
   float: right;
 }
 
+/* papers */
+
+li.paper {
+  padding-bottom: 5px;
+}
+
+span.paper_abstract {
+  display: none;
+}
+
+span.paper_author {
+  font-style: italic;
+}
+
+span.paper_title {
+  font-weight: bold;
+}
+
diff --git a/helm/www/matita/xml/papers.xml b/helm/www/matita/xml/papers.xml
new file mode 100644 (file)
index 0000000..b859997
--- /dev/null
@@ -0,0 +1,156 @@
+<papers>
+  <!-- matita {{{ -->
+  <paper name="matita">
+    <authors>
+      <author>Andrea Asperti</author>
+      <author>Claudio Sacerdoti Coen</author>
+      <author>Enrico Tassi</author>
+      <author>Stefano Zacchiroli</author>
+    </authors>
+    <title>
+      The Matita Proof Assistant
+    </title>
+    <abstract>
+      Matita is a new document-centric proof assistant that integrates several
+      Mathematical Knowledge Management tools and techniques. In this paper we
+      describe the architecture of Matita and the peculiarities of its user
+      interface.
+    </abstract>
+    <info>
+      Submitted to <a href="http://www-unix.mcs.anl.gov/JAR/">Journal of
+       Automated Reasoning</a>, Special Issue on User Interfaces for Theorem
+      Proving
+    </info>
+  </paper>
+  <!-- }}} -->
+  <!-- tinycals {{{ -->
+  <paper name="tinycals">
+    <authors>
+      <author>Claudio Sacerdoti Coen</author>
+      <author>Enrico Tassi</author>
+      <author>Stefano Zacchiroli</author>
+    </authors>
+    <title>
+      Tinycals: step by step tacticals
+    </title>
+    <abstract>
+      Most of the state-of-the-art proof assistants are based on procedural
+      proof languages, scripts, and rely on LCF tacticals as the primary tool
+      for tactics composition. In this paper we discuss how these ingredients
+      do not interact well with user interfaces based on the same interaction
+      paradigm of Proof General (the de facto standard in this field),
+      identifying in the coarse-grainedness of tactical evaluation the key
+      problem.
+
+      We propose tinycals as an alternative to a subset of LCF tacticals,
+      showing that the user does not experience the same problem if tacticals
+      are evaluated in a more fine-grained manner. We present the formal
+      operational semantics of tinycals as well as their implementation in the
+      Matita proof assistant.
+    </abstract>
+    <info>
+      Submitted to
+      <a href="http://www.ags.uni-sb.de/~omega/workshops/UITP06/">UITP 2006</a>
+      User Interfaces for Theorem Provers. Seattle, WA -- August 21, 2006.
+    </info>
+  </paper>
+  <!-- }}} -->
+  <!-- notation {{{ -->
+  <paper name="notation">
+    <authors>
+      <author>Luca Padovani</author>
+      <author>Stefano Zacchiroli</author>
+    </authors>
+    <title>
+      From notation to semantics: there and back again
+    </title>
+    <abstract>
+      Mathematical notation is a structured, open, and ambiguous language.  In
+      order to support mathematical notation in MKM applications one must
+      necessarily take into account presentational as well as semantic aspects.
+      The former are required to create a familiar, comfortable, and usable
+      interface to interact with.  The latter are necessary in order to process
+      the information meaningfully.  In this paper we investigate a framework
+      for dealing with mathematical notation in a meaningful, extensible way,
+      and we show an effective instantiation of its architecture to the field
+      of interactive theorem proving. The framework builds upon well-known
+      concepts and widely-used technologies and it can be easily adopted by
+      other MKM applications.
+    </abstract>
+    <info>
+      Accepted for publication in the proceedings of
+      <a href="http://www.reading.ac.uk/MKM06/">MKM 2006</a>: The
+      5th International Conference on Mathematical Knowledge Management.
+      Wokingham, UK -- August 11-12, 2006.
+    </info>
+  </paper>
+  <!-- }}} -->
+  <!-- whelp {{{ -->
+  <paper name="whelp">
+    <authors>
+      <author>Andrea Asperti</author>
+      <author>Ferruccio Guidi</author>
+      <author>Claudio Sacerdoti Coen</author>
+      <author>Enrico Tassi</author>
+      <author>Stefano Zacchiroli</author>
+    </authors>
+    <title>
+      A content based mathematical search engine: Whelp
+    </title>
+    <abstract>
+      The prototype of a content based search engine for mathematical knowledge
+      supporting a small set of queries requiring matching and/or typing
+      operations is described. The prototype, called Whelp, exploits a metadata
+      approach for indexing the information that looks far more flexible than
+      traditional indexing techniques for structured expressions like
+      substitution, discrimination, or context trees. The prototype has been
+      instantiated to the standard library of the Coq proof assistant extended
+      with many user contributions.
+    </abstract>
+    <info>
+      In Proceedings of
+      <a href="http://types2004.lri.fr/">TYPES 2004 conference</a> Types for
+      Proofs and Programs. Paris, France -- December 15-18, 2004.
+      LNCS 3839/2004, Springer-Verlag Heidelberg, ISBN 3-540-31428-8, pp. 17-32
+    </info>
+  </paper>
+  <!-- }}} -->
+  <!-- disambiguation {{{ -->
+  <paper name="disambiguation">
+    <authors>
+      <author>Claudio Sacerdoti Coen</author>
+      <author>Stefano Zacchiroli</author>
+    </authors>
+    <title>
+      Efficient Ambiguous Parsing of Mathematical Formulae
+    </title>
+    <abstract>
+      Mathematical notation has the characteristic of being ambiguous:
+      operators can be overloaded and information that can be deduced is often
+      omitted.  Mathematicians are used to this ambiguity and can easily
+      disambiguate a formula making use of the context and of their ability to
+      find the right interpretation.
+
+      Software applications that have to deal with formulae usually avoid these
+      issues by fixing an unambiguous input notation. This solution is annoying
+      for mathematicians because of the resulting tricky syntaxes and becomes a
+      show stopper to the simultaneous adoption of tools characterized by
+      different input languages.
+
+      In this paper we present an efficient algorithm suitable for ambiguous
+      parsing of mathematical formulae. The only requirement of the algorithm
+      is the existence of a validity predicate over abstract syntax trees of
+      incomplete formulae with placeholders. This requirement can be easily
+      fulfilled in the applicative area of interactive proof assistants, and in
+      several other areas of Mathematical Knowledge Management.
+    </abstract>
+    <info>
+      In Proceedings of <a href="http://mizar.uwb.edu.pl/MKM2004/">MKM 2004</a>
+      Third International Conference on Mathematical Knowledge Management.
+      September 19th - 21st, 2004 Bialowieza - Poland. LNCS 3119/2004,
+      Springer-Verlag Heidelberg, ISBN 3-540-23029-7, pp. 347-362
+    </info>
+  </paper>
+  <!-- }}} -->
+</papers>
+<!-- vim:set foldmethod=marker: -->
diff --git a/helm/www/matita/xsl/papers2xhtml.xsl b/helm/www/matita/xsl/papers2xhtml.xsl
new file mode 100644 (file)
index 0000000..f0f278c
--- /dev/null
@@ -0,0 +1,70 @@
+<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+
+  <xsl:output omit-xml-declaration="yes" />
+
+  <xsl:template match="papers">
+    <ul>
+      <xsl:apply-templates />
+    </ul>
+  </xsl:template>
+
+  <xsl:template match="paper">
+    <li class="paper">
+      <xsl:apply-templates select="authors" />
+      <br />
+      <xsl:apply-templates select="title" />
+      <xsl:element name="a">
+       <xsl:attribute name="class">paper_download</xsl:attribute>
+       <xsl:attribute name="href">
+         <xsl:text>papers/</xsl:text>
+         <xsl:value-of select="@name" />
+         <xsl:text>.pdf</xsl:text>
+       </xsl:attribute>
+       <span class="pdf_logo">.pdf</span>
+      </xsl:element>
+      <xsl:element name="a">
+       <xsl:attribute name="class">paper_download</xsl:attribute>
+       <xsl:attribute name="href">
+         <xsl:text>papers/</xsl:text>
+         <xsl:value-of select="@name" />
+         <xsl:text>.ps</xsl:text>
+       </xsl:attribute>
+       <span class="ps_logo">.ps</span>
+      </xsl:element>
+      <br />
+      <xsl:apply-templates select="info" />
+      <br />
+      <xsl:apply-templates select="abstract" />
+    </li>
+  </xsl:template>
+
+  <xsl:template match="authors">
+    <span class="paper_author">
+      <xsl:for-each select="author">
+       <xsl:apply-templates />
+       <xsl:if test="position()!=last()">
+         <xsl:text>, </xsl:text>
+       </xsl:if>
+      </xsl:for-each>
+    </span>
+  </xsl:template>
+
+  <xsl:template match="title">
+    <span class="paper_title">
+      <xsl:apply-templates />
+    </span>
+  </xsl:template>
+
+  <xsl:template match="info">
+    <span class="paper_info">
+      <xsl:apply-templates />
+    </span>
+  </xsl:template>
+
+  <xsl:template match="abstract">
+    <span class="paper_abstract">
+      <xsl:apply-templates />
+    </span>
+  </xsl:template>
+
+</xsl:stylesheet>