<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 plus MathML 2.0 plus SVG 1.1//EN" "http://www.w3.org/2002/04/xhtml-math-svg/xhtml-math-svg.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8"/>
    <title>Project-Team:MARELLE</title>
    <link rel="stylesheet" href="../static/css/raweb.css" type="text/css"/>
    <meta name="description" content="New Software and Platforms - Coq"/>
    <meta name="dc.title" content="New Software and Platforms - Coq"/>
    <meta name="dc.subject" content=""/>
    <meta name="dc.publisher" content="INRIA"/>
    <meta name="dc.date" content="(SCHEME=ISO8601) 2017-01"/>
    <meta name="dc.type" content="Report"/>
    <meta name="dc.language" content="(SCHEME=ISO639-1) en"/>
    <meta name="projet" content="MARELLE"/>
    <script type="text/javascript" src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-MML-AM_CHTML">
      <!--MathJax-->
    </script>
  </head>
  <body>
    <div class="tdmdiv">
      <div class="logo">
        <a href="http://www.inria.fr">
          <img style="align:bottom; border:none" src="../static/img/icons/logo_INRIA-coul.jpg" alt="Inria"/>
        </a>
      </div>
      <div class="TdmEntry">
        <div class="tdmentete">
          <a href="uid0.html">Project-Team Marelle</a>
        </div>
        <span>
          <a href="uid1.html">Personnel</a>
        </span>
      </div>
      <div class="TdmEntry">
        <a href="./uid3.html">Overall Objectives</a>
      </div>
      <div class="TdmEntry">Research Program<ul><li><a href="uid5.html&#10;&#9;&#9;  ">Type theory and formalization
of mathematics</a></li><li><a href="uid6.html&#10;&#9;&#9;  ">Verification of scientific
algorithms</a></li><li><a href="uid7.html&#10;&#9;&#9;  ">Programming language semantics</a></li></ul></div>
      <div class="TdmEntry">
        <a href="./uid9.html">Highlights of the Year</a>
      </div>
      <div class="TdmEntry">New Software and Platforms<ul><li class="tdmActPage"><a href="uid11.html&#10;&#9;&#9;  ">Coq</a></li><li><a href="uid17.html&#10;&#9;&#9;  ">Easycrypt</a></li><li><a href="uid21.html&#10;&#9;&#9;  ">ELPI</a></li><li><a href="uid23.html&#10;&#9;&#9;  ">Math-Components</a></li><li><a href="uid27.html&#10;&#9;&#9;  ">Semantics</a></li><li><a href="uid31.html&#10;&#9;&#9;  ">Ssreflect</a></li><li><a href="uid35.html&#10;&#9;&#9;  ">AutoGnP</a></li></ul></div>
      <div class="TdmEntry">New Results<ul><li><a href="uid40.html&#10;&#9;&#9;  ">Implementing Theorem Proving in Higher Order Logic Programming</a></li><li><a href="uid41.html&#10;&#9;&#9;  ">Coqoon: An IDE for interactive proof development in Coq</a></li><li><a href="uid42.html&#10;&#9;&#9;  ">Proofs of transcendence</a></li><li><a href="uid43.html&#10;&#9;&#9;  ">Cubical type theory and univalent foundations</a></li><li><a href="uid44.html&#10;&#9;&#9;  ">Formal study of double-word arithmetic algorithms</a></li><li><a href="uid45.html&#10;&#9;&#9;  ">Formal study of comparisons between numbers in different formats</a></li><li><a href="uid46.html&#10;&#9;&#9;  ">A formal study of the towers of Hanoi</a></li><li><a href="uid47.html&#10;&#9;&#9;  ">Formaly study of algorithms to compute <m:math xmlns:m="http://www.w3.org/1998/Math/MathML" overflow="scroll"><mi xmlns="http://www.w3.org/1998/Math/MathML">π</mi></m:math></a></li><li><a href="uid48.html&#10;&#9;&#9;  ">Formal foundations of 3D geometry for robot manipulators</a></li><li><a href="uid49.html&#10;&#9;&#9;  ">Formalization of Analysis concepts</a></li><li><a href="uid50.html&#10;&#9;&#9;  ">Formalization of proofs in control theory</a></li><li><a href="uid51.html&#10;&#9;&#9;  ">Formalization of graph algorithms</a></li><li><a href="uid52.html&#10;&#9;&#9;  ">Extension of the CoqEAL library</a></li><li><a href="uid53.html&#10;&#9;&#9;  ">Formalizing Exterior Algebras</a></li><li><a href="uid54.html&#10;&#9;&#9;  ">Formalizing Cylindrical Algebraic Decomposition</a></li><li><a href="uid55.html&#10;&#9;&#9;  ">Formal study of probabilistic programs</a></li><li><a href="uid56.html&#10;&#9;&#9;  ">Generating Efficient Resistant Code</a></li><li><a href="uid57.html&#10;&#9;&#9;  ">Formal Security Proof in EasyCrypt: case studies and extensions</a></li><li><a href="uid58.html&#10;&#9;&#9;  ">Formalizing Bourbaki-style mathematics</a></li></ul></div>
      <div class="TdmEntry">Partnerships and Cooperations<ul><li><a href="uid60.html&#10;&#9;&#9;  ">National Initiatives</a></li><li><a href="uid66.html&#10;&#9;&#9;  ">European Initiatives</a></li><li><a href="uid68.html&#10;&#9;&#9;  ">International Initiatives</a></li></ul></div>
      <div class="TdmEntry">Dissemination<ul><li><a href="uid71.html&#10;&#9;&#9;  ">Promoting Scientific Activities</a></li><li><a href="uid98.html&#10;&#9;&#9;  ">Teaching - Supervision - Juries</a></li><li><a href="uid120.html&#10;&#9;&#9;  ">Popularization</a></li></ul></div>
      <div class="TdmEntry">
        <div>Bibliography</div>
      </div>
      <div class="TdmEntry">
        <ul>
          <li>
            <a id="tdmbibentmajor" href="bibliography.html">Major publications</a>
          </li>
          <li>
            <a id="tdmbibentyear" href="bibliography.html#year">Publications of the year</a>
          </li>
          <li>
            <a id="tdmbibentfoot" href="bibliography.html#References">References in notes</a>
          </li>
        </ul>
      </div>
    </div>
    <div id="main">
      <div class="mainentete">
        <div id="head_agauche">
          <small><a href="http://www.inria.fr">
	    
	    Inria
	  </a> | <a href="../index.html">
	    
	    Raweb 
	    2017</a> | <a href="http://www.inria.fr/en/teams/marelle">Presentation of the Project-Team MARELLE</a> | <a href="http://team.inria.fr/marelle/en/">MARELLE Web Site
	  </a></small>
        </div>
        <div id="head_adroite">
          <table class="qrcode">
            <tr>
              <td>
                <a href="marelle.xml">
                  <img style="align:bottom; border:none" alt="XML" src="../static/img/icons/xml_motif.png"/>
                </a>
              </td>
              <td>
                <a href="marelle.pdf">
                  <img style="align:bottom; border:none" alt="PDF" src="IMG/qrcode-marelle-pdf.png"/>
                </a>
              </td>
              <td>
                <a href="../marelle/marelle.epub">
                  <img style="align:bottom; border:none" alt="e-pub" src="IMG/qrcode-marelle-epub.png"/>
                </a>
              </td>
            </tr>
            <tr>
              <td/>
              <td>PDF
</td>
              <td>e-Pub
</td>
            </tr>
          </table>
        </div>
      </div>
      <!--FIN du corps du module-->
      <br/>
      <div class="bottomNavigation">
        <div class="tail_aucentre">
          <a href="./uid9.html" accesskey="P"><img style="align:bottom; border:none" alt="previous" src="../static/img/icons/previous_motif.jpg"/> Previous | </a>
          <a href="./uid0.html" accesskey="U"><img style="align:bottom; border:none" alt="up" src="../static/img/icons/up_motif.jpg"/>  Home</a>
          <a href="./uid17.html" accesskey="N"> | Next <img style="align:bottom; border:none" alt="next" src="../static/img/icons/next_motif.jpg"/></a>
        </div>
        <br/>
      </div>
      <div id="textepage">
        <!--DEBUT2 du corps du module-->
        <h2>Section: 
      New Software and Platforms</h2>
        <h3 class="titre3">Coq</h3>
        <p>
          <i>The Coq Proof Assistant</i>
        </p>
        <p class="notaparagraph"><span class="smallcap">Keywords: </span> Proof - Certification - Formalisation</p>
        <p class="notaparagraph"><span class="smallcap">Scientific Description: </span> Coq is an interactive proof assistant based on the Calculus of (Co-)Inductive Constructions, extended with universe polymorphism. This type theory features inductive and co-inductive families, an impredicative sort and a hierarchy of predicative universes, making it a very expressive logic. The calculus allows to formalize both general mathematics and computer programs, ranging from theories of finite structures to abstract algebra and categories to programming language metatheory and compiler verification. Coq is organised as a (relatively small) kernel including efficient conversion tests on which are built a set of higher-level layers: a powerful proof engine and unification algorithm, various tactics/decision procedures, a transactional document model and, at the very top an IDE.</p>
        <p class="notaparagraph"><span class="smallcap">Functional Description: </span> Coq provides both a dependently-typed functional programming language and a logical formalism, which, altogether, support the formalisation of mathematical theories and the specification and certification of properties of programs. Coq also provides a large and extensible set of automatic or semi-automatic proof methods. Coq's programs are extractible to OCaml, Haskell, Scheme, ...</p>
        <p><span class="smallcap">Release Functional Description: </span> Version 8.7 features a large amount of work on cleaning and speeding up the code base, notably the work of Pierre-Marie Pédrot on making the tactic-level system insensitive to existential variable expansion, providing a safer API to plugin writers and making the code more robust.</p>
        <p>New tactics: Variants of tactics supporting existential variables "eassert", "eenough", etc. by Hugo Herbelin. Tactics "extensionality in H" and "inversion_sigma" by Jason Gross,
"specialize with" accepting partial bindings by Pierre Courtieu.</p>
        <p>Cumulative Polymorphic Inductive Types, allowing cumulativity of universes to go through applied inductive types, by Amin Timany and Matthieu Sozeau.</p>
        <p>The SSReflect plugin by Georges Gonthier, Assia Mahboubi and Enrico Tassi was integrated (with its documentation in the reference manual) by Maxime Dénès, Assia Mahboubi and Enrico Tassi.</p>
        <p>The "coq_makefile" tool was completely redesigned to improve its maintainability and the extensibility of generated Makefiles, and to make "_CoqProject" files more palatable to IDEs by Enrico Tassi.</p>
        <p>A lot of other changes are described in the CHANGES file.</p>
        <p class="notaparagraph"><span class="smallcap">News Of The Year: </span> Version 8.7 was released in October 2017 and version 8.7.1 in December 2017, development started in January 2017. This is the second release of Coq developed on a time-based development cycle. Its development spanned 9 months from the release of Coq 8.6 and was based on a public road-map. It attracted many external contributions. Code reviews and continuous integration testing were systematically used before integration of new features, with an important focus given to compatibility and performance issues.</p>
        <p>The main scientific advance in this version is the integration of cumulative inductive types in the system. More practical advances in stability, performance, usability and expressivity of tactics were also implemented, resulting in a mostly backwards-compatible but appreciably faster and more robust release. Much work on plugin extensions to Coq by the same development team has also been going on in parallel, including work on JSCoq by Emilio JG Arias, Ltac 2 by P.M-Pédrot, which required synchronised changes of the main codebase. In 2017, the construction of the Coq Consortium by Yves Bertot and Maxime Dénès has greatly advanced and is now nearing its completion.</p>
        <ul>
          <li>
            <p class="notaparagraph"><a name="uid12"> </a>Participants: Abhishek Anand, C. J. Bell, Yves Bertot, Frédéric Besson, Tej Chajed, Pierre Courtieu, Maxime Denes, Julien Forest, Emilio Jesús Gallego Arias, Gaëtan Gilbert, Benjamin Grégoire, Jason Gross, Hugo Herbelin, Ralf Jung, Matej Kosik, Sam Pablo Kuper, Xavier Leroy, Pierre Letouzey, Assia Mahboubi, Cyprien Mangin, Érik Martin-Dorel, Olivier Marty, Guillaume Melquiond, Pierre-Marie Pédrot, Benjamin C. Pierce, Lars Rasmusson, Yann Régis-Gianas, Lionel Rieg, Valentin Robert, Thomas Sibut-Pinote, Michael Soegtrop, Matthieu Sozeau, Arnaud Spiwack, Paul Steckler, George Stelle, Pierre-Yves Strub, Enrico Tassi, Hendrik Tews, Laurent Théry, Amin Timany, Vadim Zaliva and Théo Zimmermann</p>
          </li>
          <li>
            <p class="notaparagraph"><a name="uid13"> </a>Partners: CNRS - Université Paris-Sud - ENS Lyon - Université Paris-Diderot</p>
          </li>
          <li>
            <p class="notaparagraph"><a name="uid14"> </a>Contact: Matthieu Sozeau</p>
          </li>
          <li>
            <p class="notaparagraph"><a name="uid15"> </a>Publication: <a href="https://hal.inria.fr/hal-01673716">The Coq Proof Assistant, version 8.7.1</a></p>
          </li>
          <li>
            <p class="notaparagraph"><a name="uid16"> </a>URL: <a href="http://coq.inria.fr/">http://coq.inria.fr/</a></p>
          </li>
        </ul>
      </div>
      <!--FIN du corps du module-->
      <br/>
      <div class="bottomNavigation">
        <div class="tail_aucentre">
          <a href="./uid9.html" accesskey="P"><img style="align:bottom; border:none" alt="previous" src="../static/img/icons/previous_motif.jpg"/> Previous | </a>
          <a href="./uid0.html" accesskey="U"><img style="align:bottom; border:none" alt="up" src="../static/img/icons/up_motif.jpg"/>  Home</a>
          <a href="./uid17.html" accesskey="N"> | Next <img style="align:bottom; border:none" alt="next" src="../static/img/icons/next_motif.jpg"/></a>
        </div>
        <br/>
      </div>
    </div>
  </body>
</html>
