<?xml version="1.0" encoding="utf-8"?>
<raweb xmlns:xlink="http://www.w3.org/1999/xlink" xml:lang="en" year="2017">
  <identification id="celtique" isproject="true">
    <shortname>CELTIQUE</shortname>
    <projectName>Software certification with semantic analysis</projectName>
    <theme-de-recherche>Proofs and Verification</theme-de-recherche>
    <domaine-de-recherche>Algorithmics, Programming, Software and Architecture</domaine-de-recherche>
    <urlTeam>http://www.irisa.fr/celtique</urlTeam>
    <structure_exterieure type="Labs">
      <libelle>Institut de recherche en informatique et systèmes aléatoires (IRISA)</libelle>
    </structure_exterieure>
    <structure_exterieure type="Organism">
      <libelle>Université Rennes 1</libelle>
    </structure_exterieure>
    <structure_exterieure type="Organism">
      <libelle>École normale supérieure de Rennes</libelle>
    </structure_exterieure>
    <header_dates_team>Creation of the Project-Team: 2009 July 01</header_dates_team>
    <LeTypeProjet>Project-Team</LeTypeProjet>
    <keywordsSdN>
      <term>A2.1. - Programming Languages</term>
      <term>A2.1.1. - Semantics of programming languages</term>
      <term>A2.1.2. - Object-oriented programming</term>
      <term>A2.1.3. - Functional programming</term>
      <term>A2.1.9. - Dynamic languages</term>
      <term>A2.2. - Compilation</term>
      <term>A2.2.1. - Static analysis</term>
      <term>A2.2.2. - Memory models</term>
      <term>A2.4. - Verification, reliability, certification</term>
      <term>A2.4.1. - Analysis</term>
      <term>A2.4.2. - Model-checking</term>
      <term>A2.4.3. - Proofs</term>
      <term>A4. - Security and privacy</term>
      <term>A4.5. - Formal methods for security</term>
    </keywordsSdN>
    <keywordsSecteurs>
      <term>B6.1. - Software industry</term>
      <term>B6.1.1. - Software engineering</term>
      <term>B6.6. - Embedded systems</term>
    </keywordsSecteurs>
    <UR name="Rennes"/>
  </identification>
  <team id="uid1">
    <person key="celtique-2014-idm27832">
      <firstname>Thomas</firstname>
      <lastname>Jensen</lastname>
      <categoryPro>Chercheur</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Team leader, Inria, Senior Researcher</moreinfo>
      <hdr>oui</hdr>
    </person>
    <person key="celtique-2014-idm26384">
      <firstname>Frédéric</firstname>
      <lastname>Besson</lastname>
      <categoryPro>Chercheur</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Inria, Researcher</moreinfo>
    </person>
    <person key="celtique-2014-idm25128">
      <firstname>Alan</firstname>
      <lastname>Schmitt</lastname>
      <categoryPro>Chercheur</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Inria, Senior Researcher</moreinfo>
      <hdr>oui</hdr>
    </person>
    <person key="celtique-2014-idp67080">
      <firstname>Sandrine</firstname>
      <lastname>Blazy</lastname>
      <categoryPro>Enseignant</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Univ de Rennes I, Professor</moreinfo>
      <hdr>oui</hdr>
    </person>
    <person key="celtique-2014-idp68520">
      <firstname>David</firstname>
      <lastname>Cachera</lastname>
      <categoryPro>Enseignant</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Ecole normale supérieure de Rennes, Associate Professor</moreinfo>
      <hdr>oui</hdr>
    </person>
    <person key="celtique-2014-idp69976">
      <firstname>Delphine</firstname>
      <lastname>Demange</lastname>
      <categoryPro>Enseignant</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Univ de Rennes I, Associate Professor</moreinfo>
    </person>
    <person key="celtique-2014-idp71232">
      <firstname>Thomas</firstname>
      <lastname>Genet</lastname>
      <categoryPro>Enseignant</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Univ de Rennes I, Associate Professor</moreinfo>
      <hdr>oui</hdr>
    </person>
    <person key="pareo-2014-idp71504">
      <firstname>Serguei</firstname>
      <lastname>Lenglet</lastname>
      <categoryPro>Enseignant</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Univ de Lorraine, Associate Professor</moreinfo>
    </person>
    <person key="celtique-2014-idp73952">
      <firstname>David</firstname>
      <lastname>Pichardie</lastname>
      <categoryPro>Enseignant</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Ecole normale supérieure de Rennes, Professor</moreinfo>
      <hdr>oui</hdr>
    </person>
    <person key="celtique-2014-idp82872">
      <firstname>Pauline</firstname>
      <lastname>Bolignano</lastname>
      <categoryPro>PhD</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Prove &amp; Run, until Feb 2017</moreinfo>
    </person>
    <person key="celtique-2015-idp123232">
      <firstname>Gurvan</firstname>
      <lastname>Cabon</lastname>
      <categoryPro>PhD</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Inria</moreinfo>
    </person>
    <person key="celtique-2016-idp153280">
      <firstname>Alexandre</firstname>
      <lastname>Dang</lastname>
      <categoryPro>PhD</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Inria</moreinfo>
    </person>
    <person key="celtique-2015-idp124448">
      <firstname>Yon</firstname>
      <lastname>Fernandez de Retana</lastname>
      <categoryPro>PhD</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Univ de Rennes I</moreinfo>
    </person>
    <person key="myriads-2015-idp116760">
      <firstname>Timothée</firstname>
      <lastname>Haudebourg</lastname>
      <categoryPro>PhD</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Univ de Rennes I, from Oct 2017</moreinfo>
    </person>
    <person key="celtique-2016-idp158192">
      <firstname>Julien</firstname>
      <lastname>Lepiller</lastname>
      <categoryPro>PhD</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Inria</moreinfo>
    </person>
    <person key="celtique-2015-idp129416">
      <firstname>Florent</firstname>
      <lastname>Saudel</lastname>
      <categoryPro>PhD</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Amossys</moreinfo>
    </person>
    <person key="celtique-2016-idp163088">
      <firstname>Alix</firstname>
      <lastname>Trieu</lastname>
      <categoryPro>PhD</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Univ de Rennes I</moreinfo>
    </person>
    <person key="celtique-2014-idp92856">
      <firstname>Yannick</firstname>
      <lastname>Zakowski</lastname>
      <categoryPro>PhD</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Ecole normale supérieure de Rennes, until Nov 2017</moreinfo>
    </person>
    <person key="celtique-2014-idp92856">
      <firstname>Yannick</firstname>
      <lastname>Zakowski</lastname>
      <categoryPro>Technique</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Univ de Rennes I, from Dec 2017</moreinfo>
    </person>
    <person key="pacap-2017-idp189024">
      <firstname>Kevin</firstname>
      <lastname>Le Bon</lastname>
      <categoryPro>Stagiaire</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Inria, from May 2017 until Aug 2017</moreinfo>
    </person>
    <person key="celtique-2017-idp167648">
      <firstname>David</firstname>
      <lastname>Reboullet</lastname>
      <categoryPro>Stagiaire</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Ecole Normale Supérieure Paris, from Jun 2017 until Aug 2017</moreinfo>
    </person>
    <person key="celtique-2017-idp170224">
      <firstname>Lionel</firstname>
      <lastname>Zoubritzky</lastname>
      <categoryPro>Stagiaire</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Ecole Normale Supérieure Paris, from Jun 2017 until Jul 2017</moreinfo>
    </person>
    <person key="cidre-2014-idp80368">
      <firstname>Lydie</firstname>
      <lastname>Mabil</lastname>
      <categoryPro>Assistant</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Inria</moreinfo>
    </person>
    <person key="celtique-2016-idp170448">
      <firstname>Ahmad Salim</firstname>
      <lastname>Al-Sibahi</lastname>
      <categoryPro>Visiteur</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>IT University of Copenhagen, until Jan 2017</moreinfo>
    </person>
  </team>
  <presentation id="uid2">
    <bodyTitle>Overall Objectives</bodyTitle>
    <subsection id="uid3" level="1">
      <bodyTitle>Project overview</bodyTitle>
      <p>The overall goal of the <span class="smallcap" align="left">Celtique</span> project is to improve the
security and reliability of software with semantics-based modeling,
analysis and certification techniques. To achieve this goal, the
project conducts work on improving semantic description and analysis
techniques, as well as work on using proof assistants (most notably
Coq) to develop and prove properties of these techniques. We are
applying such techniques to a variety of source languages, including
Java, C, and JavaScript. We also study how these techniques apply to
low-level languages, and how they can be combined with certified
compilation. The CompCert certified compiler and its intermediate
representations are used for much of our work on semantic modeling and
analysis of C and lower-level representations.</p>
      <p>The semantic analyses extract approximate but sound
descriptions of software behaviour from which a proof of safety or
security can be constructed. The analyses of interest include
numerical data flow analysis, control flow analysis for higher-order
languages, alias and points-to analysis for heap structure
manipulation. In particular, we have designed several analyses for information
flow control, aimed at computing attacker knowledge and detecting
side channels.</p>
      <p>We work with three application domains: Java software for small
devices (in particular smart cards and mobile telephones), embedded C
programs, and web applications.</p>
      <p><span class="smallcap" align="left">Celtique</span> is a joint project with the CNRS, the University of
Rennes 1 and ENS Rennes.</p>
    </subsection>
  </presentation>
  <logiciels id="uid4">
    <bodyTitle>New Software and Platforms</bodyTitle>
    <subsection id="uid5" level="1">
      <bodyTitle>Jacal</bodyTitle>
      <p>
        <i>JAvaCard AnaLyseur</i>
      </p>
      <p noindent="true"><span class="smallcap" align="left">Keywords:</span> JavaCard - Certification - Static program analysis - AFSCM</p>
      <p noindent="true"><span class="smallcap" align="left">Functional Description:</span> Jacal is a JAvaCard AnaLyseur developed on top of the SAWJA platform. This proprietary software verifies automatically that Javacard programs conform with the security guidelines issued by the AFSCM (Association Française du Sans Contact Mobile). Jacal is based on the theory of abstract interpretation and combines several object-oriented and numeric analyses to automatically infer sophisticated invariants about the program behaviour. The result of the analysis is thereafter harvest to check that it is sufficient to ensure the desired security properties.</p>
      <simplelist>
        <li id="uid6">
          <p noindent="true">Participants: David Pichardie, Delphine Demange, Frédéric Besson and Thomas Jensen</p>
        </li>
        <li id="uid7">
          <p noindent="true">Contact: Thomas Jensen</p>
        </li>
      </simplelist>
    </subsection>
    <subsection id="uid8" level="1">
      <bodyTitle>Javalib</bodyTitle>
      <p><span class="smallcap" align="left">Functional Description:</span> Javalib is an efficient library to parse Java .class files into OCaml data structures, thus enabling the OCaml programmer to extract information from class files, to manipulate and to generate valid .class files.</p>
      <simplelist>
        <li id="uid9">
          <p noindent="true">Participants: David Pichardie, Frédéric Besson, Laurent Guillo, Laurent Hubert, Nicolas Barré, Pierre Vittet and Tiphaine Turpin</p>
        </li>
        <li id="uid10">
          <p noindent="true">Contact: Frédéric Besson</p>
        </li>
        <li id="uid11">
          <p noindent="true">URL: <ref xlink:href="http://sawja.inria.fr/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>sawja.<allowbreak/>inria.<allowbreak/>fr/</ref></p>
        </li>
      </simplelist>
    </subsection>
    <subsection id="uid12" level="1">
      <bodyTitle>JSCert</bodyTitle>
      <p>
        <i>Certified JavaScript</i>
      </p>
      <p noindent="true"><span class="smallcap" align="left">Functional Description:</span> The JSCert project aims to really understand JavaScript. JSCert itself is a mechanised specification of JavaScript, written in the Coq proof assistant, which closely follows the ECMAScript 5 English standard. JSRef is a reference interpreter for JavaScript in OCaml , which has been proved correct with respect to JSCert and tested with the Test 262 test suite.</p>
      <simplelist>
        <li id="uid13">
          <p noindent="true">Participants: Alan Schmitt and Martin Bodin</p>
        </li>
        <li id="uid14">
          <p noindent="true">Partner: Imperial College London</p>
        </li>
        <li id="uid15">
          <p noindent="true">Contact: Alan Schmitt</p>
        </li>
        <li id="uid16">
          <p noindent="true">URL: <ref xlink:href="http://jscert.org/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>jscert.<allowbreak/>org/</ref></p>
        </li>
      </simplelist>
    </subsection>
    <subsection id="uid17" level="1">
      <bodyTitle>SAWJA</bodyTitle>
      <p>
        <i>Static Analysis Workshop for Java</i>
      </p>
      <p noindent="true"><span class="smallcap" align="left">Keywords:</span> Security - Software - Code review - Smart card</p>
      <p noindent="true"><span class="smallcap" align="left">Scientific Description:</span> Sawja is a library written in OCaml, relying on Javalib to provide a high level representation of Java bytecode programs. It name comes from Static Analysis Workshop for JAva. Whereas Javalib is dedicated to isolated classes, Sawja handles bytecode programs with their class hierarchy and with control flow algorithms.</p>
      <p>Moreover, Sawja provides some stackless intermediate representations of code, called JBir and A3Bir. The transformation algorithm, common to these representations, has been formalized and proved to be semantics-preserving.</p>
      <p>See also the web page <ref xlink:href="http://sawja.inria.fr/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>sawja.<allowbreak/>inria.<allowbreak/>fr/</ref> .</p>
      <p>Version: 1.5</p>
      <p>Programming language: Ocaml</p>
      <p noindent="true"><span class="smallcap" align="left">Functional Description:</span> Sawja is a toolbox for developing static analysis of Java code in bytecode format. Sawja provides advanced algorithms for reconstructing high-level programme representations. The SawjaCard tool dedicated to JavaCard is based on the Sawja infrastructure and automatically validates the security guidelines issued by AFSCM (<ref xlink:href="http://www.afscm.org/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>www.<allowbreak/>afscm.<allowbreak/>org/</ref>).
SawjaCard can automate the code audit process and automatic verification of functional properties.</p>
      <simplelist>
        <li id="uid18">
          <p noindent="true">Participants: David Pichardie, Frédéric Besson and Laurent Guillo</p>
        </li>
        <li id="uid19">
          <p noindent="true">Partners: CNRS - ENS Cachan</p>
        </li>
        <li id="uid20">
          <p noindent="true">Contact: Frédéric Besson</p>
        </li>
        <li id="uid21">
          <p noindent="true">URL: <ref xlink:href="http://sawja.inria.fr/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>sawja.<allowbreak/>inria.<allowbreak/>fr/</ref></p>
        </li>
      </simplelist>
    </subsection>
    <subsection id="uid22" level="1">
      <bodyTitle>Timbuk</bodyTitle>
      <p><span class="smallcap" align="left">Keywords:</span> Demonstration - Ocaml - Vérification de programmes - Tree Automata</p>
      <p noindent="true"><span class="smallcap" align="left">Functional Description:</span> Timbuk is a collection of tools for achieving proofs of reachability over Term Rewriting Systems and for manipulating Tree Automata (bottom-up non-deterministic finite tree automata)</p>
      <p><span class="smallcap" align="left">Release Functional Description:</span> This version does no longer include the tree automata library but focuses on reachability analysis and equational approximations.</p>
      <simplelist>
        <li id="uid23">
          <p noindent="true">Participant: Thomas Genet</p>
        </li>
        <li id="uid24">
          <p noindent="true">Contact: Thomas Genet</p>
        </li>
        <li id="uid25">
          <p noindent="true">URL: <ref xlink:href="http://www.irisa.fr/celtique/genet/timbuk/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>www.<allowbreak/>irisa.<allowbreak/>fr/<allowbreak/>celtique/<allowbreak/>genet/<allowbreak/>timbuk/</ref></p>
        </li>
      </simplelist>
    </subsection>
  </logiciels>
  <resultats id="uid26">
    <bodyTitle>New Results</bodyTitle>
    <subsection id="uid27" level="1">
      <bodyTitle>Higher-Order Process Calculi</bodyTitle>
      <participants>
        <person key="pareo-2014-idp71504">
          <firstname>Sergueï</firstname>
          <lastname>Lenglet</lastname>
        </person>
        <person key="celtique-2014-idm25128">
          <firstname>Alan</firstname>
          <lastname>Schmitt</lastname>
        </person>
      </participants>
      <p>Sergueï Lenglet and Alan Schmitt, in collaboration with researchers at Wrocław
university, designed a fully abstract encoding of the <formula type="inline"><math xmlns="http://www.w3.org/1998/Math/MathML" overflow="scroll"><mi>λ</mi></math></formula>-calculus into
HOcore, a minimal higher-order process calculus. This work has been published
at LICS <ref xlink:href="#celtique-2017-bid0" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>. In parallel, Lenglet and Schmitt have
formalized HO<formula type="inline"><math xmlns="http://www.w3.org/1998/Math/MathML" overflow="scroll"><mi>π</mi></math></formula> in Coq and showed that its bisimilarity is compatible using
Howe's method. This work has been accepted for publication at CPP
2018 <ref xlink:href="#celtique-2017-bid1" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>.
</p>
    </subsection>
    <subsection id="uid28" level="1">
      <bodyTitle>Certified Semantics and Analyses for JavaScript</bodyTitle>
      <participants>
        <person key="celtique-2015-idp123232">
          <firstname>Gurvan</firstname>
          <lastname>Cabon</lastname>
        </person>
        <person key="celtique-2014-idm25128">
          <firstname>Alan</firstname>
          <lastname>Schmitt</lastname>
        </person>
      </participants>
      <p>Alan Schmitt has continued his collaboration with Arthur Charguéraud (Inria
Nancy) and Thomas Wood (Imperial College London) to develop JSExplain, an
interpreter for JavaScript that is as close as possible to the specification.
The tool is publicly available at
<ref xlink:href="https://github.com/jscert/jsexplain" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>github.<allowbreak/>com/<allowbreak/>jscert/<allowbreak/>jsexplain</ref> and
is being extended to cover the current version of the standard.</p>
      <p>In parallel, Gurvan Cabon and Alan Schmitt have developed a framework to
automatically derive an information-flow tracking semantics from a
pretty-big-step semantics. This work has been published
<ref xlink:href="#celtique-2017-bid2" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/> and is being formalized in Coq.
</p>
    </subsection>
    <subsection id="uid29" level="1">
      <bodyTitle>Certified Concurrent Garbage Collector</bodyTitle>
      <participants>
        <person key="celtique-2014-idp92856">
          <firstname>Yannick</firstname>
          <lastname>Zakowski</lastname>
        </person>
        <person key="celtique-2014-idp68520">
          <firstname>David</firstname>
          <lastname>Cachera</lastname>
        </person>
        <person key="celtique-2014-idp69976">
          <firstname>Delphine</firstname>
          <lastname>Demange</lastname>
        </person>
        <person key="celtique-2014-idp73952">
          <firstname>David</firstname>
          <lastname>Pichardie</lastname>
        </person>
      </participants>
      <p>Concurrent garbage collection algorithms are an emblematic challenge
in the area of concurrent program verification. We addressed this
problem by proposing a mechanized proof methodology based on the
popular Rely-Guarantee (RG) proof technique. We designed a specific
compiler intermediate representation (IR) with strong type guarantees,
dedicated support for abstract concurrent data structures, and
high-level iterators on runtime internals (objects, roots, fields,
thread identifiers...). In addition, we defined an RG program logic
supporting an incremental proof methodology where annotations and
invariants can be progressively enriched. We have formalized the IR,
the proof system, and proved the soundness of the methodology in the
Coq proof assistant. Equipped with this IR, we have proved the
correctness of a fully concurrent garbage collector where mutators
never have to wait for the collector. This work has been published
in <ref xlink:href="#celtique-2017-bid3" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>.</p>
      <p>In this work, reasoning simultaneously about the garbage collection
algorithm and the concrete implementation of the concurrent
data-structures it uses would have entailed an undesired and
unnecessary complexity. The above proof is therefore conducted with
respect to abstract operations which execute atomically. In practice,
however, concurrent data-structures uses fine-grained concurrency, for
performance reasons. One must therefore prove an observational
refinement between the abstract concurrent data-structures and their
fined-grained, “linearisable” implementation. To adress this issue,
we introduce a methodology inspired by the work of Vafeiadis, and
provide the approach with solid semantic foundations. Assuming that
fine-grained implementations are proved correct with respect to an RG
specification encompassing linearization conditions, we prove, once
and for all, that this entails a semantic refinement of their
abstraction. This methodology is instantiated to prove correct the
main data-structure used in our garbage collector. This work has been
published in <ref xlink:href="#celtique-2017-bid4" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>.
</p>
    </subsection>
    <subsection id="uid30" level="1">
      <bodyTitle>Static analysis of functional programs
using tree automata and term rewriting</bodyTitle>
      <participants>
        <person key="celtique-2014-idp71232">
          <firstname>Thomas</firstname>
          <lastname>Genet</lastname>
        </person>
        <person key="celtique-2014-idm27832">
          <firstname>Thomas</firstname>
          <lastname>Jensen</lastname>
        </person>
        <person key="myriads-2015-idp116760">
          <firstname>Timothée</firstname>
          <lastname>Haudebourg</lastname>
        </person>
      </participants>
      <p>We develop a specific theory and the related tools for analyzing
programs whose semantics is defined using term rewriting systems. The
analysis principle is based on regular approximations of infinite
sets of terms reachable by rewriting. Regular tree languages are
(possibly) infinite languages which can be finitely represented using
tree automata. To over-approximate sets of reachable terms, the tools
we develop use the Tree Automata Completion (TAC) algorithm to
compute a tree automaton recognizing a superset of all reachable
terms. This over-approximation is then used to prove properties on
the program by showing that some “bad” terms, encoding dangerous or
problematic configurations, are not in the superset and thus not
reachable. This is a specific form of, so-called, Regular Tree Model
Checking. We have already shown that tree automata completion can
safely over-approximate the image of any first-order complete and terminating
functional program. We have extended this result to the case of higher-order
functional programs <ref xlink:href="#celtique-2017-bid5" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/> and obtained very encouraging
experimental results
<ref xlink:href="http://people.irisa.fr/Thomas.Genet/timbuk/funExperiments/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>people.<allowbreak/>irisa.<allowbreak/>fr/<allowbreak/>Thomas.<allowbreak/>Genet/<allowbreak/>timbuk/<allowbreak/>funExperiments/</ref>. Besides, we
have shown that completion was abble to take the evaluation strategy of the program into
account <ref xlink:href="#celtique-2017-bid6" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>. The next step is to show the completeness of
the approach, i.e., that any regular approximation of the image of a function
can be found using completion. We already made progress in this
direction <ref xlink:href="#celtique-2017-bid7" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>.
</p>
    </subsection>
    <subsection id="uid31" level="1">
      <bodyTitle>C Semantics and Certified Compilation</bodyTitle>
      <participants>
        <person key="celtique-2014-idm26384">
          <firstname>Frédéric</firstname>
          <lastname>Besson</lastname>
        </person>
        <person key="celtique-2014-idp67080">
          <firstname>Sandrine</firstname>
          <lastname>Blazy</lastname>
        </person>
      </participants>
      <p>The <span class="smallcap" align="left">CompCert</span> C compiler provides the formal guarantee that the observable
behaviour of the compiled code improves on the observable behaviour of the
source code. A first limitation of this guarantee is that if the source code
goes wrong, i.e.  does not have a well-defined behaviour, any compiled
code is compliant. Another limitation is that <span class="smallcap" align="left">CompCert</span> 's notion of
observable behaviour is restricted to IO events.</p>
      <p>Over the past years, we have refined the semantics underlying
<span class="smallcap" align="left">CompCert</span> so that (unlike
<span class="smallcap" align="left">CompCert</span> but like <span class="smallcap" align="left">Gcc</span>) the binary representation of pointers can be
manipulated much like integers and such that memory is a finite resource.
We have now a formally verified C compiler, <span class="smallcap" align="left">CompCertS</span>, which is essentially the <span class="smallcap" align="left">CompCert</span> compiler, albeit
with a stronger formal guarantee.
The semantics preservation theorem applies to a wider class of existing C
programs and, therefore, their compiled version benefits from the formal
guarantee of <span class="smallcap" align="left">CompCertS</span>.
<span class="smallcap" align="left">CompCertS</span> preserves not only the observable behaviour of programs but also
ensures that the memory consumption is preserved by the compiler. As a result,
we have the formal guarantee that the compiled code requires no more memory
than the source code. This ensures that the absence of stack-overflows is
preserved by compilation.</p>
      <p>The whole proof of <span class="smallcap" align="left">CompCertS</span> represents a significant proof-effort.
Details about the formal definition of the semantics and the proof
of compiler passes can be found in the following
publications <ref xlink:href="#celtique-2017-bid8" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, <ref xlink:href="#celtique-2017-bid9" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/></p>
    </subsection>
    <subsection id="uid32" level="1">
      <bodyTitle>Constant-time verification by compilation and static analysis</bodyTitle>
      <participants>
        <person key="celtique-2014-idp67080">
          <firstname>Sandrine</firstname>
          <lastname>Blazy</lastname>
        </person>
        <person key="celtique-2014-idp73952">
          <firstname>David</firstname>
          <lastname>Pichardie</lastname>
        </person>
        <person key="celtique-2016-idp163088">
          <firstname>Alix</firstname>
          <lastname>Trieu</lastname>
        </person>
      </participants>
      <p>To protect their implementations, cryptographers follow a very
strict programming discipline called constant-time programming. They
avoid branchings controlled by secret data as an attacker could use
timing attacks, which are a broad class of side-channel attacks that
measure different execution times of a program in order to infer
some of its secret values. Several real-world secure C libraries
such as NaCl, mbedTLS, or Open Quantum Safe, follow this discipline.
We propose an advanced static analysis, based on state-of-the-art
techniques from abstract interpretation, to report time leakage
during programming. To that purpose, we analyze source C programs
and use full context-sensitive and arithmetic-aware alias analyses
to track the tainted flows. We give semantic evidences of the
correctness of our approach on a core language. We also present a
prototype implementation for C programs that is based on the
CompCert compiler toolchain and its companion Verasco static
analyzer. We present verification results on various real-world
constant-time programs and report on a successful verification of a
challenging SHA-256 implementation that was out of scope of previous
tool-assisted approaches. This work has been published at
ESORICS'17 <ref xlink:href="#celtique-2017-bid10" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>.</p>
      <p>The previous technique is well-adapted to verify the constant-time
discipline at source level and give feedback to programmers, but the
final security property must be established on the executable form
of the program. In a joint work with IMDEA Software (Gilles Barthe
and Vincent Laporte), we propose an automated methodology for
validating on low-level intermediate representations the results of
a source-level static analysis. Our methodology relies on two main
ingredients: a relative-safety checker, an instance of a relational
verifier which proves that a program is <i>safer</i> than another,
and a transformation of programs into defensive form which verifies
the analysis results at runtime. We prove the soundness of the
methodology, and provide a formally verified instantiation based on
the Verasco verified C static analyzer and the CompCert verified C
compiler. This work has been published at
CSF'17 <ref xlink:href="#celtique-2017-bid11" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>.</p>
    </subsection>
  </resultats>
  <partenariat id="uid33">
    <bodyTitle>Partnerships and Cooperations</bodyTitle>
    <subsection id="uid34" level="1">
      <bodyTitle>National Initiatives</bodyTitle>
      <subsection id="uid35" level="2">
        <bodyTitle>The ANR AnaStaSec project</bodyTitle>
        <participants>
          <person key="celtique-2014-idm26384">
            <firstname>Frédéric</firstname>
            <lastname>Besson</lastname>
          </person>
          <person key="celtique-2014-idp67080">
            <firstname>Sandrine</firstname>
            <lastname>Blazy</lastname>
          </person>
          <person key="celtique-2014-idm27832">
            <firstname>Thomas</firstname>
            <lastname>Jensen</lastname>
          </person>
          <person key="celtique-2016-idp153280">
            <firstname>Alexandre</firstname>
            <lastname>Dang</lastname>
          </person>
          <person key="celtique-2016-idp158192">
            <firstname>Julien</firstname>
            <lastname>Lepiller</lastname>
          </person>
        </participants>
        <p>Static program analysis, Security, Secure compilation
</p>
        <p>The <ref xlink:href="http://www.di.ens.fr/~feret/anastasec/summary.shtml" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">AnaStaSec project</ref> (2015–2018) aims at ensuring security properties of
embedded critical systems using static analysis and security enhancing compiler
techniques. The case studies are airborne embedded software with ground
communication capabilities. The Celtique project focuses on software fault
isolation which is a compiler technology to ensure
by construction a strong segregation of tasks.</p>
        <p>This is a joint project with the Inria teams <span class="smallcap" align="left">Antique</span> and <span class="smallcap" align="left">Prosecco</span>,
CEA-LIST, TrustInSoft, AMOSSYS and Airbus Group.</p>
      </subsection>
      <subsection id="uid36" level="2">
        <bodyTitle>The ANR Binsec project</bodyTitle>
        <participants>
          <person key="celtique-2014-idm26384">
            <firstname>Frédéric</firstname>
            <lastname>Besson</lastname>
          </person>
          <person key="celtique-2014-idp67080">
            <firstname>Sandrine</firstname>
            <lastname>Blazy</lastname>
          </person>
          <person key="PASUSERID">
            <firstname>Pierre</firstname>
            <lastname>Wilke</lastname>
          </person>
          <person key="celtique-2016-idp158192">
            <firstname>Julien</firstname>
            <lastname>Lepiller</lastname>
          </person>
        </participants>
        <p>Binary code, Static program analysis
</p>
        <p>The <ref xlink:href="http://binsec.gforge.inria.fr/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">Binsec</ref> project (2013–2017) is funded by the call ISN 2012, a
program of the Agence Nationale de la Recherche.
The goal of the BINSEC project is to develop static analysis techniques and tools for
performing automatic security analyses of binary code.
We target two main applicative domains: vulnerability analysis and virus detection.</p>
        <p>Binsec is a joint project with the Inria <span class="smallcap" align="left">Carte</span> team, <span class="smallcap" align="left">CEA LIS</span>, <span class="smallcap" align="left">Verimag</span> and
<span class="smallcap" align="left">EADS IW</span>.</p>
      </subsection>
      <subsection id="uid37" level="2">
        <bodyTitle>The ANR MALTHY project</bodyTitle>
        <participants>
          <person key="celtique-2014-idp68520">
            <firstname>David</firstname>
            <lastname>Cachera</lastname>
          </person>
        </participants>
        <p>The <ref xlink:href="https://sites.google.com/site/malthyproject/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">MALTHY</ref> project, funded by ANR in the program INS 2013, aims at
advancing the state-of-the-art in real-time and hybrid model checking
by applying advanced methods and tools from linear algebra and
algebraic geometry.
MALTHY is coordinated by VERIMAG, involving
CEA-LIST, Inria Rennes (Tamis and Celtique),
Inria Saclay (MAXPLUS) and VISEO/Object Direct.</p>
      </subsection>
      <subsection id="uid38" level="2">
        <bodyTitle>The ANR AJACS project</bodyTitle>
        <participants>
          <person key="PASUSERID">
            <firstname>Martin</firstname>
            <lastname>Bodin</lastname>
          </person>
          <person key="celtique-2015-idp123232">
            <firstname>Gurvan</firstname>
            <lastname>Cabon</lastname>
          </person>
          <person key="celtique-2014-idm27832">
            <firstname>Thomas</firstname>
            <lastname>Jensen</lastname>
          </person>
          <person key="celtique-2014-idm25128">
            <firstname>Alan</firstname>
            <lastname>Schmitt</lastname>
          </person>
        </participants>
        <p>The goal of the <ref xlink:href="http://ajacs.inria.fr/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">AJACS project</ref> is to
provide strong security and privacy guarantees on the client side for
web application scripts. To this end, we propose to define a
mechanized semantics of the full JavaScript language, the most widely
used language for the Web. We then propose to develop and prove
correct analyses for JavaScript programs, in particular information
flow analyses that guarantee no secret information is leaked to
malicious parties. The definition of sub-languages of JavaScript, with
certified compilation techniques targeting them, will allow us to
derive more precise analyses. Finally, we propose to design and
certify security and privacy enforcement mechanisms for web
applications, including the APIs used to program real-world
applications.</p>
        <p>The project partners include the following Inria teams: Celtique,
Indes, Prosecco, and Toccata; it also involves researchers from
Imperial College as external collaborators. The project runs from
December 2014 to November 2018.</p>
      </subsection>
      <subsection id="uid39" level="2">
        <bodyTitle>The ANR DISCOVER project</bodyTitle>
        <participants>
          <person key="celtique-2014-idp67080">
            <firstname>Sandrine</firstname>
            <lastname>Blazy</lastname>
          </person>
          <person key="celtique-2014-idp69976">
            <firstname>Delphine</firstname>
            <lastname>Demange</lastname>
          </person>
          <person key="celtique-2014-idm27832">
            <firstname>Thomas</firstname>
            <lastname>Jensen</lastname>
          </person>
          <person key="celtique-2014-idp73952">
            <firstname>David</firstname>
            <lastname>Pichardie</lastname>
          </person>
          <person key="celtique-2015-idp124448">
            <firstname>Yon</firstname>
            <lastname>Fernandez de Retana</lastname>
          </person>
          <person key="PASUSERID">
            <firstname>Yannick</firstname>
            <lastname>Zakovski</lastname>
          </person>
        </participants>
        <p>The <ref xlink:href="http://discover.irisa.fr/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">DISCOVER project</ref> project aims at
leveraging recent foundational work on formal verification and proof
assistants to design, implement and verify compilation techniques used
for high-level concurrent and managed programming languages. The
ultimate goal of DISCOVER is to devise new formalisms and proof
techniques able to scale to the mechanized correctness proof of a
compiler involving a rich class of optimizations, leading to efficient
and scalable applications, written in higher-level languages than
those currently handled by cutting-edge verified compilers.</p>
        <p>In the light of recent work in optimizations techniques used in
production compilers of high-level languages, control-flow-graph based
intermediate representations seems too rigid. Indeed, the analyses and
optimizations in these compilers work on more abstract
representations, where programs are represented with data and control
dependencies. The most representative representation is the
sea-of-nodes form, used in the Java Hotspot Server Compiler, and which
is the rationale behind the highly relaxed definition of the Java
memory model. DISCOVER proposes to tackle the problem of verified
compilation for shared-memory concurrency with a resolute
language-based approach, and to investigate the formalization of
adequate program intermediate representations and associated
correctness proof techniques.</p>
        <p>The project runs from October 2014 to September 2019.</p>
      </subsection>
    </subsection>
    <subsection id="uid40" level="1">
      <bodyTitle>European Initiatives</bodyTitle>
      <subsection id="uid41" level="2">
        <bodyTitle>Collaborations in European Programs, Except FP7 &amp; H2020</bodyTitle>
        <sanspuceslist>
          <li id="uid42">
            <p noindent="true">Program:CA COST Action CA15123</p>
          </li>
          <li id="uid43">
            <p noindent="true">Project acronym: EUTYPES</p>
          </li>
          <li id="uid44">
            <p noindent="true">Project title: European research network on types for programming and verification</p>
          </li>
          <li id="uid45">
            <p noindent="true">Duration: 03/2016 to 03/2020</p>
          </li>
          <li id="uid46">
            <p noindent="true">Coordinator: Herman Geuvers (Radboud University Nijmegen, The Netherlands)</p>
          </li>
          <li id="uid47">
            <p noindent="true">Other partners: Austria, Belgium, Czech Republic, Denmark, Estonia, Finland, France, Macedonia, Germany, Hungary, Israel, Italy, Lithuania, Netherlands, Norway, Poland, Portugal, Romania, Serbia, Slovenia, Spain, Sweden, United Kingdom</p>
          </li>
          <li id="uid48">
            <p noindent="true">Abstract: Types are pervasive in programming and information technology. A type defines a formal interface between software components, allowing the automatic verification of their connections, and greatly enhancing the robustness and reliability of computations and communications. In rich dependent type theories, the full functional specification of a program can be expressed as a type. Type systems have rapidly evolved over the past years, becoming more sophisticated, capturing new aspects of the behaviour of programs and the dynamics of their execution.</p>
            <p>This COST Action will give a strong impetus to research on type theory and its many applications in computer science, by promoting (1) the synergy between theoretical computer scientists, logicians and mathematicians to develop new foundations for type theory, for example as based on the recent development of "homotopy type theory”, (2) the joint development of type theoretic tools as proof assistants and integrated programming environments, (3) the study of dependent types for programming and its deployment in software development, (4) the study of dependent types for verification and its deployment in software analysis and verification. The action will also tie together these different areas and promote cross-fertilisation.</p>
            <p>Sandrine Blazy is Substitute Member of the Managment
Committee for France.</p>
          </li>
        </sanspuceslist>
      </subsection>
    </subsection>
    <subsection id="uid49" level="1">
      <bodyTitle>International Initiatives</bodyTitle>
      <subsection id="uid50" level="2">
        <bodyTitle>Inria International Partners</bodyTitle>
        <subsection id="uid51" level="3">
          <bodyTitle>Declared Inria International Partners</bodyTitle>
          <sanspuceslist>
            <li id="uid52">
              <p noindent="true">
                <b> WEBCERT</b>
              </p>
            </li>
            <li id="uid53">
              <p noindent="true">Title: Verified Trustworthy web Applications</p>
            </li>
            <li id="uid54">
              <p noindent="true">International Partner (Institution - Laboratory - Researcher):</p>
              <sanspuceslist>
                <li id="uid55">
                  <p noindent="true">Imperial College London - Department of Computing - Philippa Gardner</p>
                </li>
              </sanspuceslist>
            </li>
            <li id="uid56">
              <p noindent="true">Duration: 2015 - 2019</p>
            </li>
            <li id="uid57">
              <p noindent="true">Start year: 2015</p>
            </li>
            <li id="uid58">
              <p noindent="true">See also: <ref xlink:href="http://jscert.org/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">JSCert web page</ref></p>
            </li>
            <li id="uid59">
              <p noindent="true">The WebCert partnership focuses on applying formal methods to the
JavaScript language: mechanized specification, development of an executable
formal specification, design of a program logic, development of verification
tools, and study of secure sub-languages.</p>
            </li>
          </sanspuceslist>
        </subsection>
      </subsection>
    </subsection>
  </partenariat>
  <diffusion id="uid60">
    <bodyTitle>Dissemination</bodyTitle>
    <subsection id="uid61" level="1">
      <bodyTitle>Promoting Scientific Activities</bodyTitle>
      <subsection id="uid62" level="2">
        <bodyTitle>Scientific Events Selection</bodyTitle>
        <subsection id="uid63" level="3">
          <bodyTitle>Chair of Conference Program Committees</bodyTitle>
          <simplelist>
            <li id="uid64">
              <p noindent="true">CoqPL 2017 (International Workshop on Coq for PL) was chaired by Sandrine Blazy and Emilio Jesus Gallego Arias</p>
            </li>
          </simplelist>
        </subsection>
        <subsection id="uid65" level="3">
          <bodyTitle>Member of the Conference Program Committees</bodyTitle>
          <simplelist>
            <li id="uid66">
              <p noindent="true">TASE 2017 (Symposium on Theoretical Aspects of Software Engineering):
Alan Schmitt</p>
            </li>
            <li id="uid67">
              <p noindent="true">Web Programming 2018: Alan Schmitt</p>
            </li>
            <li id="uid68">
              <p noindent="true">ProWeb 2018: Alan Schmitt</p>
            </li>
            <li id="uid69">
              <p noindent="true">CC 2017 (Conference on Compiler Construction) : David Pichardie</p>
            </li>
            <li id="uid70">
              <p noindent="true">ESORICS 2017 (European Symposium on Research in Computer Security) : David Pichardie</p>
            </li>
            <li id="uid71">
              <p noindent="true">ESOP 2017 (European Symposium on Programming) : David Pichardie</p>
            </li>
            <li id="uid72">
              <p noindent="true">CC 2018 (Conference on Compiler Construction) : David Pichardie</p>
            </li>
            <li id="uid73">
              <p noindent="true">CoqPL 2017 (International Workshop on Coq for PL) : Sandrine Blazy</p>
            </li>
            <li id="uid74">
              <p noindent="true">AFADL 2017 (Approches Formelles dans l'Assistance au Développement de Logiciels) : Sandrine Blazy</p>
            </li>
            <li id="uid75">
              <p noindent="true">SRC (Student Research Competition) @ PLDI 2017 : Sandrine Blazy</p>
            </li>
            <li id="uid76">
              <p noindent="true">VSTTE 2017 (Verified Software: Theories, Tools, and Experiments) : Sandrine Blazy</p>
            </li>
            <li id="uid77">
              <p noindent="true">GPCE 2017 (Generative Programming: Concepts &amp; Experiences) : Sandrine Blazy</p>
            </li>
            <li id="uid78">
              <p noindent="true">IFL 2017 (International symposium on Implementation and application of Functional Languages) : Sandrine Blazy</p>
            </li>
            <li id="uid79">
              <p noindent="true">TFP 2017 (Trends in Functional Programming) : Sandrine Blazy</p>
            </li>
            <li id="uid80">
              <p noindent="true">CPP 2018 (ACM SIGPLAN Conference on Certified Programs and
Proofs) : Sandrine Blazy</p>
            </li>
            <li id="uid81">
              <p noindent="true">Euro S&amp;P 2018 (IEEE European Symposium on Security and
Privacy) : Sandrine Blazy</p>
            </li>
            <li id="uid82">
              <p noindent="true">TACAS 2017 (Tools and Algorithms for the Construction and
Analysis of Software : Thomas Jensen.</p>
            </li>
            <li id="uid83">
              <p noindent="true">FCS 2017 (Int. workshop on Foundations of Computer Security)
: Thomas Jensen.</p>
            </li>
            <li id="uid84">
              <p noindent="true">SAS 2017 (Static Analysis Symposium) : Thomas Jensen.</p>
            </li>
          </simplelist>
        </subsection>
        <subsection id="uid85" level="3">
          <bodyTitle>Reviewer</bodyTitle>
          <simplelist>
            <li id="uid86">
              <p noindent="true">POPL 2018 (Symposium on Principles of Programming Languages): Alan Schmitt</p>
            </li>
          </simplelist>
        </subsection>
      </subsection>
      <subsection id="uid87" level="2">
        <bodyTitle>Journal</bodyTitle>
        <subsection id="uid88" level="3">
          <bodyTitle>Reviewer - Reviewing Activities</bodyTitle>
          <simplelist>
            <li id="uid89">
              <p noindent="true">Information &amp; Computation: Alan Schmitt</p>
            </li>
            <li id="uid90">
              <p noindent="true">Science of Computer Programming: Alan Schmitt</p>
            </li>
            <li id="uid91">
              <p noindent="true">Discrete Mathematics &amp; Theoretical Computer: Alan Schmitt</p>
            </li>
            <li id="uid92">
              <p noindent="true">Theoretical Computer Science: Alan Schmitt</p>
            </li>
            <li id="uid93">
              <p noindent="true">Journal of Logical and Algebraic Methods in Programming: Alan Schmitt</p>
            </li>
            <li id="uid94">
              <p noindent="true">ACM Transactions on Privacy and Security (TOPS): David Pichardie</p>
            </li>
          </simplelist>
        </subsection>
      </subsection>
      <subsection id="uid95" level="2">
        <bodyTitle>Invited Talks</bodyTitle>
        <simplelist>
          <li id="uid96">
            <p noindent="true">Delphine Demange: "On-the-Fly Garbage Collection: An Exercise in
Compiler Verification". Inria Scientific Days 2017. June 2017.</p>
          </li>
          <li id="uid97">
            <p noindent="true">Thomas Genet: "SPAN+AVISPA for Verifying Cryptographic
Protocols". RESSI (Rendez-vous de la recherche et de l'enseignement de
la sécurité des systèmes d'information), Grenoble, May
2017 <ref xlink:href="#celtique-2017-bid12" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>.</p>
          </li>
          <li id="uid98">
            <p noindent="true">Thomas Genet: "Tree Automata for Reachability in
Rewriting". International School on Rewriting, Eindhoven, July
2017. <ref xlink:href="http://www.win.tue.nl/~hzantema/isr.html" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>www.<allowbreak/>win.<allowbreak/>tue.<allowbreak/>nl/<allowbreak/>~hzantema/<allowbreak/>isr.<allowbreak/>html</ref>.</p>
          </li>
          <li id="uid99">
            <p noindent="true">Thomas Jensen: Formal methods for software security, Forum
Méthodes Formelles, Toulouse, France,
Jan. 2017 <ref xlink:href="#celtique-2017-bid13" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>.</p>
          </li>
          <li id="uid100">
            <p noindent="true">Thomas Jensen: Formal methods for software security,
Journée inaugurale GDR Sécurité Informatique, Paris, June
2017 <ref xlink:href="#celtique-2017-bid14" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>.</p>
          </li>
          <li id="uid101">
            <p noindent="true">Thomas Jensen. Hybrid information flow analysis against web
tracking.. The 12th International Conference on Risks and
Security of Internet and Systems (CRiSIS 2017), Dinard, France,
Sept. 2017 <ref xlink:href="#celtique-2017-bid15" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>.</p>
          </li>
        </simplelist>
      </subsection>
      <subsection id="uid102" level="2">
        <bodyTitle>Scientific Expertise</bodyTitle>
        <simplelist>
          <li id="uid103">
            <p noindent="true">Sandrine Blazy: expertise of an ERC Advanced Grant research
proposal.</p>
          </li>
          <li id="uid104">
            <p noindent="true">Thomas Jensen is Inria representative in the European Cyber
Security Organisation (ECSO) working group in Research and
Innovation.</p>
          </li>
        </simplelist>
      </subsection>
      <subsection id="uid105" level="2">
        <bodyTitle>Research Administration</bodyTitle>
        <simplelist>
          <li id="uid106">
            <p noindent="true">Sandrine Blazy is member of Section 6 of the national
committee for scientific research CoNRS.</p>
          </li>
          <li id="uid107">
            <p noindent="true">Sandrine Blazy is coordinator of the LTP (Languages, Types,
Proofs) group of the French GDR GPL.</p>
          </li>
          <li id="uid108">
            <p noindent="true">Thomas Jensen is head of the NUMERIC department at
Université Bretagne Loire.</p>
          </li>
          <li id="uid109">
            <p noindent="true">Thomas Jensen is director of the IT Security track and
member of the executive board of the
Laboratoire d'excellence “CominLabs”.</p>
          </li>
        </simplelist>
      </subsection>
    </subsection>
    <subsection id="uid110" level="1">
      <bodyTitle>Teaching - Supervision - Juries</bodyTitle>
      <subsection id="uid111" level="2">
        <bodyTitle>Teaching</bodyTitle>
        <sanspuceslist>
          <li id="uid112">
            <p noindent="true">Licence : Alan Schmitt, Programmation Fonctionnelle, 36h, L3, Insa Rennes, France</p>
          </li>
          <li id="uid113">
            <p noindent="true">Licence : Delphine Demange, Spécialité Informatique 1 - Algorithmique et Complexité Expérimentale, 36h, L1, Université Rennes 1, France</p>
          </li>
          <li id="uid114">
            <p noindent="true">Licence : Delphine Demange, Spécialité Informatique 2 - Functional and Immutable Programming, 70h, L1, Université Rennes 1, France</p>
          </li>
          <li id="uid115">
            <p noindent="true">Licence : Delphine Demange, Programmation de Confiance, 36h, L3, Université Rennes 1, France</p>
          </li>
          <li id="uid116">
            <p noindent="true">Licence : David Pichardie, Graph algorithms, 24h, L3, ESIR, France</p>
          </li>
          <li id="uid117">
            <p noindent="true">Licence : Sandrine Blazy, Functional programming, 30h, L3, Université
Rennes 1, France</p>
          </li>
          <li id="uid118">
            <p noindent="true">Licence: Thomas Genet, Software Engineering, 58h, L2, Université
de Rennes 1, France</p>
          </li>
          <li id="uid119">
            <p noindent="true">Licence : Thomas Genet, Spécialité Informatique 1 - Algorithmic and
Experimental Complexity, 42h, L1, Université Rennes 1, France</p>
          </li>
          <li id="uid120">
            <p noindent="true">Master : Sandrine Blazy, Méthodes Formelles pour le développement de logiciels sûrs, 53h, M1, Université Rennes 1, France</p>
          </li>
          <li id="uid121">
            <p noindent="true">Master : Alan Schmitt, Méthodes Formelles pour le développement de logiciels sûrs, 25h, M1, Université Rennes 1, France France</p>
          </li>
          <li id="uid122">
            <p noindent="true">Master : Sandrine Blazy, Mechanized Semantics, 15h, M2, Université Rennes 1, France</p>
          </li>
          <li id="uid123">
            <p noindent="true">Master : Sandrine Blazy, Semantics, 24h, M1, Université Rennes 1, France</p>
          </li>
          <li id="uid124">
            <p noindent="true">Master : Sandrine Blazy, Software vulnerabilities, 20h, M2, Université Rennes 1, France</p>
          </li>
          <li id="uid125">
            <p noindent="true">Master : Delphine Demange, Software Security, 9h, M2, Université Rennes 1, France</p>
          </li>
          <li id="uid126">
            <p noindent="true">Master : David Cachera, Semantics, 24h, M1,
Université Rennes 1, France</p>
          </li>
          <li id="uid127">
            <p noindent="true">Master : David Cachera, Advanced Semantics, 20h, M2,
Université Rennes 1, France</p>
          </li>
          <li id="uid128">
            <p noindent="true">Master : Thomas Genet, Formal Design and Verification, 108h, M1,
Université de Rennes 1, France.</p>
          </li>
          <li id="uid129">
            <p noindent="true">Master : Thomas Jensen, Program Analysis and Software Security, 21h, M2, Université Rennes 1, France</p>
          </li>
        </sanspuceslist>
      </subsection>
      <subsection id="uid130" level="2">
        <bodyTitle>Supervision</bodyTitle>
        <sanspuceslist>
          <li id="uid131">
            <p noindent="true">PhD in progress : Timothée Haudebourg, Lightweight Formal Verification for
Functional Programs, 1st october 2017, Thomas Genet and Thomas Jensen</p>
          </li>
          <li id="uid132">
            <p noindent="true">PhD in progress : Alexandre Dang, Security by compilation, 1st september 2016, Frédéric Besson and Thomas Jensen</p>
          </li>
          <li id="uid133">
            <p noindent="true">PhD in progress : Julien Lepiller, Binary analysis for Isolation, 1st september 2016, Frédéric Besson and Thomas Jensen</p>
          </li>
          <li id="uid134">
            <p noindent="true">PhD in progress : Gurvan Cabon, Analyse non locale certifiée en JavaScript grâce à une sémantique annotée, 1st september 2015, Alan Schmitt</p>
          </li>
          <li id="uid135">
            <p noindent="true">PhD in progress : Florent Saudel, Vulnerability discovery, November 2015, Sandrine Blazy, Frédéric Besson and Cédric Berthion (Amossys)</p>
          </li>
          <li id="uid136">
            <p noindent="true">PhD in progress : Alix Trieu, Formally verified compilation and static analysis, January 2016, Sandrine Blazy and David Pichardie</p>
          </li>
          <li id="uid137">
            <p noindent="true">PhD in progress : Yon Fernandez De Retana, Verified Optimising Compiler for high-level languages, 1st september 2015, Delphine Demange and David Pichardie</p>
          </li>
          <li id="uid138">
            <p noindent="true">David Bühler, Structuring an abstract interpreter through value and state abstractions, defended March 2017, Sandrine Blazy and Boris Yakobowski (CEA)</p>
          </li>
          <li id="uid139">
            <p noindent="true">Yannick Zakowski, Verification of a Concurrent Garbage
Collector, defended December 2017, David Pichardie and David
Cachera.</p>
          </li>
          <li id="uid140">
            <p noindent="true">Pauline Bolignano, Formal models and verification of memory
management in a hypervisor, defended May 2017, Thomas Jensen and
Vincent Siles (Prove &amp; Run).</p>
          </li>
          <li id="uid141">
            <p noindent="true">Oana Andreescu, Static analysis of functional programs with an
application to the frame problem in deductive verification, May
2017, Thomas Jensen and Stéphane Lescuyer (Prove &amp; Run).</p>
          </li>
        </sanspuceslist>
      </subsection>
      <subsection id="uid142" level="2">
        <bodyTitle>Juries</bodyTitle>
        <simplelist>
          <li id="uid143">
            <p noindent="true">Alan Schmitt, jury member for the selection of Inria CR (researcher) candidates, March and April 2017, Inria, Rennes, France.</p>
          </li>
          <li id="uid144">
            <p noindent="true">Thomas Jensen, jury member for the selection of Inria CR (researcher) candidates, March and April 2017, Inria, Rennes, France.</p>
          </li>
          <li id="uid145">
            <p noindent="true">Sandrine Blazy, jury member for the selection of CNRS CR and DR (researchers) candidates, February and March 2017, CNRS, Paris, France.</p>
          </li>
          <li id="uid146">
            <p noindent="true">Sandrine Blazy, jury member for the selection of a professor at University of Copenhagen, May 2017, Copenhagen, Denmark.</p>
          </li>
          <li id="uid147">
            <p noindent="true">Sandrine Blazy, jury member (reviewer) for the PhD defense of Romain Aïssat, January 2017, Paris-Sud University</p>
          </li>
          <li id="uid148">
            <p noindent="true">Sandrine Blazy, jury member for the PhD defense of Oana Andreescu, May 2017, Université Rennes 1</p>
          </li>
          <li id="uid149">
            <p noindent="true">Sandrine Blazy, jury member for the PhD defense of Ninon Eyrolles, June 2017, Université Versailles Saint-Quentin</p>
          </li>
          <li id="uid150">
            <p noindent="true">Sandrine Blazy, jury member (reviewer) for the HDR defense of Alain Giorgetti, December 2017, Université de Franche-Comté</p>
          </li>
          <li id="uid151">
            <p noindent="true">Sandrine Blazy, jury member for the PhD defense of Jordy Ruiz, December 2017, Université de Toulouse</p>
          </li>
          <li id="uid152">
            <p noindent="true">Sandrine Blazy, jury member for the PhD defense of Pierre
Lestringant, December 2017, Université Rennes 1.</p>
          </li>
          <li id="uid153">
            <p noindent="true">Sandrine Blazy, jury member of the GDR GPL PhD award committee.</p>
          </li>
          <li id="uid154">
            <p noindent="true">David Pichardie, external reviewer for the PhD defense of Hendra
Gunadi, July 2017, Australian National University, Canberra,
Australia.</p>
          </li>
          <li id="uid155">
            <p noindent="true">David Pichardie, Licenciate discussion leader for the PhD student Marco Vassena, Chalmers University of Technology, Gothenburg, Sweden.</p>
          </li>
          <li id="uid156">
            <p noindent="true">Delphine Demange, jury member of the Gilles Kahn PhD award committee, December 2017, Inria Paris</p>
          </li>
          <li id="uid157">
            <p noindent="true">Delphine Demange, jury member for the PhD defense of Pauline Bolignano,
May 2017, Université Rennes 1</p>
          </li>
          <li id="uid158">
            <p noindent="true">Thomas Genet, jury member (reviewer) for the PhD defense of Vivien
Pelletier, October 2017, Université d'Orléans, France.</p>
          </li>
          <li id="uid159">
            <p noindent="true">Thomas Jensen, jury member for the HdR defense of Charlotte
Truchet, November 2017, Université de Nantes, France.</p>
          </li>
          <li id="uid160">
            <p noindent="true">Thomas Jensen, jury member (reviewer) for the PhD defense of
Zeineb Zhioua, September 2017, Téleécom ParisTech, France.</p>
          </li>
          <li id="uid161">
            <p noindent="true">Thomas Jensen, jury member for the PhD defense of Deepak
Subramanian, December 2017, CentraleSupélec, France.</p>
          </li>
        </simplelist>
      </subsection>
    </subsection>
    <subsection id="uid162" level="1">
      <bodyTitle>Popularization</bodyTitle>
      <p>Article “JavaScript, un langage à la croissance organique”, Alan Schmitt, blog Binaire Le Monde.
<ref xlink:href="http://binaire.blog.lemonde.fr/2017/05/12/javascript-un-langage-a-la-croissance-organique/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>binaire.<allowbreak/>blog.<allowbreak/>lemonde.<allowbreak/>fr/<allowbreak/>2017/<allowbreak/>05/<allowbreak/>12/<allowbreak/>javascript-un-langage-a-la-croissance-organique/</ref></p>
      <p>Article “L'assistant de preuve Coq”, Sandrine Blazy, Pierre Castéran, Hugo Herbelin, Techniques et Sciences de l'ingénieur, août 2017.
<ref xlink:href="https://www.techniques-ingenieur.fr/base-documentaire/technologies-de-l-information-th9/programmation-42304210/coq-assistant-de-preuve-h3310/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>www.<allowbreak/>techniques-ingenieur.<allowbreak/>fr/<allowbreak/>base-documentaire/<allowbreak/>technologies-de-l-information-th9/<allowbreak/>programmation-42304210/<allowbreak/>coq-assistant-de-preuve-h3310/</ref></p>
      <p>Talk “Bug, Virus, Intrusion, Pirates... So many threats and no defense?
Yes... maths.”, Thomas Genet, given three times in high schools close to
Rennes.
</p>
    </subsection>
  </diffusion>
  <biblio id="bibliography" html="bibliography" numero="10" titre="Bibliography">
    
    <biblStruct id="celtique-2017-bid32" type="article" rend="refer" n="refercite:barthe:hal-01097677">
      <identifiant type="hal" value="hal-01097677"/>
      <analytic>
        <title level="a">Formal Verification of an SSA-based Middle-end for CompCert</title>
        <author>
          <persName key="marelle-2017-idp164176">
            <foreName>Gilles</foreName>
            <surname>Barthe</surname>
            <initial>G.</initial>
          </persName>
          <persName key="celtique-2014-idp69976">
            <foreName>Delphine</foreName>
            <surname>Demange</surname>
            <initial>D.</initial>
          </persName>
          <persName key="celtique-2014-idp73952">
            <foreName>David</foreName>
            <surname>Pichardie</surname>
            <initial>D.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-editorial-board="yes" x-international-audience="yes">
        <title level="j">ACM Transactions on Programming Languages and Systems (TOPLAS)</title>
        <imprint>
          <dateStruct>
            <year>2014</year>
          </dateStruct>
          <biblScope type="pages">35</biblScope>
          <ref xlink:href="https://hal.inria.fr/hal-01097677" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01097677</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid35" type="inproceedings" rend="refer" n="refercite:besson:hal-00924138">
      <identifiant type="doi" value="10.1109/CSF.2013.23"/>
      <identifiant type="hal" value="hal-00924138"/>
      <analytic>
        <title level="a">Hybrid Information Flow Monitoring Against Web Tracking</title>
        <author>
          <persName key="celtique-2014-idm26384">
            <foreName>Frédéric</foreName>
            <surname>Besson</surname>
            <initial>F.</initial>
          </persName>
          <persName key="indes-2014-idm29016">
            <foreName>Nataliia</foreName>
            <surname>Bielova</surname>
            <initial>N.</initial>
          </persName>
          <persName key="celtique-2014-idm27832">
            <foreName>Thomas</foreName>
            <surname>Jensen</surname>
            <initial>T.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-international-audience="yes" x-proceedings="yes">
        <title level="m">CSF - 2013 IEEE 26th Computer Security Foundations Symposium</title>
        <loc>New Orleans, United States</loc>
        <imprint>
          <dateStruct>
            <year>2013</year>
          </dateStruct>
          <ref xlink:href="http://hal.inria.fr/hal-00924138" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-00924138</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid41" type="article" rend="refer" n="refercite:TCSAppSem:BessonJensenPichardie">
      <analytic>
        <title level="a">Proof-Carrying Code from Certified Abstract Interpretation to Fixpoint Compression</title>
        <author>
          <persName key="celtique-2014-idm26384">
            <foreName>Frédéric</foreName>
            <surname>Besson</surname>
            <initial>F.</initial>
          </persName>
          <persName key="celtique-2014-idm27832">
            <foreName>Thomas</foreName>
            <surname>Jensen</surname>
            <initial>T.</initial>
          </persName>
          <persName key="celtique-2014-idp73952">
            <foreName>David</foreName>
            <surname>Pichardie</surname>
            <initial>D.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">Theoretical Computer Science</title>
        <imprint>
          <biblScope type="volume">364</biblScope>
          <biblScope type="number">3</biblScope>
          <dateStruct>
            <year>2006</year>
          </dateStruct>
          <biblScope type="pages">273–291</biblScope>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid34" type="inproceedings" rend="refer" n="refercite:bodin:hal-00910135">
      <identifiant type="hal" value="hal-00910135"/>
      <analytic>
        <title level="a">A Trusted Mechanised JavaScript Specification</title>
        <author>
          <persName key="celtique-2014-idp81624">
            <foreName>Martin</foreName>
            <surname>Bodin</surname>
            <initial>M.</initial>
          </persName>
          <persName key="toccata-2014-idp68328">
            <foreName>Arthur</foreName>
            <surname>Charguéraud</surname>
            <initial>A.</initial>
          </persName>
          <persName>
            <foreName>Daniele</foreName>
            <surname>Filaretti</surname>
            <initial>D.</initial>
          </persName>
          <persName>
            <foreName>Philippa</foreName>
            <surname>Gardner</surname>
            <initial>P.</initial>
          </persName>
          <persName>
            <foreName>Sergio</foreName>
            <surname>Maffeis</surname>
            <initial>S.</initial>
          </persName>
          <persName>
            <foreName>Daiva</foreName>
            <surname>Naudziuniene</surname>
            <initial>D.</initial>
          </persName>
          <persName key="celtique-2014-idm25128">
            <foreName>Alan</foreName>
            <surname>Schmitt</surname>
            <initial>A.</initial>
          </persName>
          <persName>
            <foreName>Gareth</foreName>
            <surname>Smith</surname>
            <initial>G.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-international-audience="yes" x-proceedings="yes">
        <title level="m">POPL 2014 - 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages</title>
        <loc>San Diego, United States</loc>
        <imprint>
          <dateStruct>
            <month>November</month>
            <year>2013</year>
          </dateStruct>
          <ref xlink:href="http://hal.inria.fr/hal-00910135" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-00910135</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid39" type="inproceedings" rend="refer" n="refercite:BoyerGJ-IJCAR08">
      <analytic>
        <title level="a">Certifying a Tree Automata Completion Checker</title>
        <author>
          <persName key="estasys-2014-idp66792">
            <foreName>Benoit</foreName>
            <surname>Boyer</surname>
            <initial>B.</initial>
          </persName>
          <persName key="celtique-2014-idp71232">
            <foreName>Thomas</foreName>
            <surname>Genet</surname>
            <initial>T.</initial>
          </persName>
          <persName key="celtique-2014-idm27832">
            <foreName>Thomas</foreName>
            <surname>Jensen</surname>
            <initial>T.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-international-audience="yes" x-proceedings="yes" x-editorial-board="yes">
        <title level="m">4th International Joint Conference, IJCAR 2008</title>
        <title level="s">Lectures Notes in Computer Science</title>
        <imprint>
          <biblScope type="volume">5195</biblScope>
          <publisher>
            <orgName>Springer-Verlag</orgName>
          </publisher>
          <dateStruct>
            <year>2008</year>
          </dateStruct>
          <biblScope type="pages">347–362</biblScope>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid33" type="article" rend="refer" n="refercite:cachera:hal-00932351">
      <identifiant type="doi" value="10.1016/j.scico.2014.02.028"/>
      <identifiant type="hal" value="hal-00932351"/>
      <analytic>
        <title level="a">Inference of polynomial invariants for imperative programs: a farewell to Gröbner bases</title>
        <author>
          <persName key="celtique-2014-idp68520">
            <foreName>David</foreName>
            <surname>Cachera</surname>
            <initial>D.</initial>
          </persName>
          <persName key="celtique-2014-idm27832">
            <foreName>Thomas</foreName>
            <surname>Jensen</surname>
            <initial>T.</initial>
          </persName>
          <persName>
            <foreName>Arnaud</foreName>
            <surname>Jobin</surname>
            <initial>A.</initial>
          </persName>
          <persName>
            <foreName>Florent</foreName>
            <surname>Kirchner</surname>
            <initial>F.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-editorial-board="yes" x-international-audience="yes">
        <title level="j">Science of Computer Programming</title>
        <imprint>
          <biblScope type="volume">93</biblScope>
          <dateStruct>
            <year>2014</year>
          </dateStruct>
          <biblScope type="pages">21</biblScope>
          <ref xlink:href="https://hal.inria.fr/hal-00932351" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-00932351</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid40" type="article" rend="refer" n="refercite:Cachera:05:Certified">
      <analytic>
        <title level="a">Extracting a Data Flow Analyser in Constructive Logic</title>
        <author>
          <persName key="celtique-2014-idp68520">
            <foreName>David</foreName>
            <surname>Cachera</surname>
            <initial>D.</initial>
          </persName>
          <persName key="celtique-2014-idm27832">
            <foreName>Thomas</foreName>
            <surname>Jensen</surname>
            <initial>T.</initial>
          </persName>
          <persName key="celtique-2014-idp73952">
            <foreName>David</foreName>
            <surname>Pichardie</surname>
            <initial>D.</initial>
          </persName>
          <persName key="dreampal-2014-idm29400">
            <foreName>Vlad</foreName>
            <surname>Rusu</surname>
            <initial>V.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">Theoretical Computer Science</title>
        <imprint>
          <biblScope type="volume">342</biblScope>
          <biblScope type="number">1</biblScope>
          <dateStruct>
            <year>2005</year>
          </dateStruct>
          <biblScope type="pages">56–78</biblScope>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid36" type="inproceedings" rend="refer" n="refercite:demange:hal-00924716">
      <identifiant type="hal" value="hal-00924716"/>
      <analytic>
        <title level="a">Plan B: A Buffered Memory Model for Java</title>
        <author>
          <persName key="celtique-2014-idp69976">
            <foreName>Delphine</foreName>
            <surname>Demange</surname>
            <initial>D.</initial>
          </persName>
          <persName key="celtique-2014-idp85344">
            <foreName>Vincent</foreName>
            <surname>Laporte</surname>
            <initial>V.</initial>
          </persName>
          <persName>
            <foreName>Lei</foreName>
            <surname>Zhao</surname>
            <initial>L.</initial>
          </persName>
          <persName key="celtique-2014-idp73952">
            <foreName>David</foreName>
            <surname>Pichardie</surname>
            <initial>D.</initial>
          </persName>
          <persName>
            <foreName>Suresh</foreName>
            <surname>Jagannathan</surname>
            <initial>S.</initial>
          </persName>
          <persName>
            <foreName>Jan</foreName>
            <surname>Vitek</surname>
            <initial>J.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-international-audience="yes" x-proceedings="yes">
        <title level="m">Proc. of the 40th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2013</title>
        <loc>Rome, Italy</loc>
        <imprint>
          <publisher>
            <orgName>ACM</orgName>
          </publisher>
          <dateStruct>
            <year>2013</year>
          </dateStruct>
          <ref xlink:href="http://hal.inria.fr/hal-00924716" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-00924716</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid38" type="article" rend="refer" n="refercite:genet:2010:inria-00495405:1">
      <analytic>
        <title level="a">Equational Approximations for Tree Automata Completion</title>
        <author>
          <persName key="celtique-2014-idp71232">
            <foreName>Thomas</foreName>
            <surname>Genet</surname>
            <initial>T.</initial>
          </persName>
          <persName key="dreampal-2014-idm29400">
            <foreName>Vlad</foreName>
            <surname>Rusu</surname>
            <initial>V.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-editorial-board="yes" x-international-audience="yes">
        <title level="j">Journal of Symbolic Computation</title>
        <imprint>
          <biblScope type="volume">45(5):574-597, May 2010</biblScope>
          <biblScope type="number">5</biblScope>
          <dateStruct>
            <year>2010</year>
          </dateStruct>
          <biblScope type="pages">574-597</biblScope>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid37" type="inproceedings" rend="refer" n="refercite:hubert:2010:inria-00503953:1">
      <analytic>
        <title level="a">Enforcing Secure Object Initialization in Java</title>
        <author>
          <persName>
            <foreName>Laurent</foreName>
            <surname>Hubert</surname>
            <initial>L.</initial>
          </persName>
          <persName key="celtique-2014-idm27832">
            <foreName>Thomas</foreName>
            <surname>Jensen</surname>
            <initial>T.</initial>
          </persName>
          <persName>
            <foreName>Vincent</foreName>
            <surname>Monfort</surname>
            <initial>V.</initial>
          </persName>
          <persName key="celtique-2014-idp73952">
            <foreName>David</foreName>
            <surname>Pichardie</surname>
            <initial>D.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-international-audience="yes" x-proceedings="yes">
        <title level="m">15th European Symposium on Research in Computer Security (ESORICS)</title>
        <title level="s">Lecture Notes in Computer Science</title>
        <imprint>
          <biblScope type="volume">6345</biblScope>
          <publisher>
            <orgName>Springer</orgName>
          </publisher>
          <dateStruct>
            <year>2010</year>
          </dateStruct>
          <biblScope type="pages">101-115</biblScope>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid31" type="inproceedings" rend="refer" n="refercite:jourdan:hal-01078386">
      <identifiant type="doi" value="10.1145/2676726.2676966"/>
      <identifiant type="hal" value="hal-01078386"/>
      <analytic>
        <title level="a">A formally-verified C static analyzer</title>
        <author>
          <persName key="gallium-2014-idp82000">
            <foreName>Jacques-Henri</foreName>
            <surname>Jourdan</surname>
            <initial>J.-H.</initial>
          </persName>
          <persName key="celtique-2014-idp85344">
            <foreName>Vincent</foreName>
            <surname>Laporte</surname>
            <initial>V.</initial>
          </persName>
          <persName key="celtique-2014-idp67080">
            <foreName>Sandrine</foreName>
            <surname>Blazy</surname>
            <initial>S.</initial>
          </persName>
          <persName key="gallium-2014-idm29528">
            <foreName>Xavier</foreName>
            <surname>Leroy</surname>
            <initial>X.</initial>
          </persName>
          <persName key="celtique-2014-idp73952">
            <foreName>David</foreName>
            <surname>Pichardie</surname>
            <initial>D.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no" x-editorial-board="yes">
        <title level="m">POPL 2015: 42nd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages</title>
        <loc>Mumbai, India</loc>
        <imprint>
          <publisher>
            <orgName>ACM</orgName>
          </publisher>
          <dateStruct>
            <month>January</month>
            <year>2015</year>
          </dateStruct>
          <biblScope type="pages">247-259</biblScope>
          <ref xlink:href="https://hal.inria.fr/hal-01078386" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01078386</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid17" type="phdthesis" rend="year" n="cite:andreescu:tel-01677897">
      <identifiant type="hal" value="tel-01677897"/>
      <monogr>
        <title level="m">Static Analysis of Functional Programs with an Application to the Frame Problem in Deductive Verification</title>
        <author>
          <persName key="celtique-2014-idp80368">
            <foreName>Oana Fabiana</foreName>
            <surname>Andreescu</surname>
            <initial>O. F.</initial>
          </persName>
        </author>
        <imprint>
          <publisher>
            <orgName type="school">Rennes 1</orgName>
          </publisher>
          <dateStruct>
            <month>May</month>
            <year>2017</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/tel-01677897" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>tel-01677897</ref>
        </imprint>
      </monogr>
      <note type="typdoc">Theses</note>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid18" type="phdthesis" rend="year" n="cite:andreescu:tel-01682503">
      <identifiant type="hal" value="tel-01682503"/>
      <monogr>
        <title level="m">Static analysis of functional programs with an application to the frame problem in deductive verification</title>
        <author>
          <persName key="celtique-2014-idp80368">
            <foreName>Oana Fabiana</foreName>
            <surname>Andreescu</surname>
            <initial>O. F.</initial>
          </persName>
        </author>
        <imprint>
          <publisher>
            <orgName type="school">Université Rennes 1</orgName>
          </publisher>
          <dateStruct>
            <month>May</month>
            <year>2017</year>
          </dateStruct>
          <ref xlink:href="https://tel.archives-ouvertes.fr/tel-01682503" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>tel.<allowbreak/>archives-ouvertes.<allowbreak/>fr/<allowbreak/>tel-01682503</ref>
        </imprint>
      </monogr>
      <note type="typdoc">Theses</note>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid27" type="phdthesis" rend="year" n="cite:bolignano:tel-01637937">
      <identifiant type="hal" value="tel-01637937"/>
      <monogr>
        <title level="m">Formal models and verification of memory management in a hypervisor</title>
        <author>
          <persName key="celtique-2014-idp82872">
            <foreName>Pauline</foreName>
            <surname>Bolignano</surname>
            <initial>P.</initial>
          </persName>
        </author>
        <imprint>
          <publisher>
            <orgName type="school">Université Rennes 1</orgName>
          </publisher>
          <dateStruct>
            <month>May</month>
            <year>2017</year>
          </dateStruct>
          <ref xlink:href="https://tel.archives-ouvertes.fr/tel-01637937" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>tel.<allowbreak/>archives-ouvertes.<allowbreak/>fr/<allowbreak/>tel-01637937</ref>
        </imprint>
      </monogr>
      <note type="typdoc">Theses</note>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid26" type="phdthesis" rend="year" n="cite:buhler:tel-01664726">
      <identifiant type="hal" value="tel-01664726"/>
      <monogr>
        <title level="m">Structuring an Abstract Interpreter through Value and State Abstractions:EVA, an Evolved Value Analysis for Frama-C</title>
        <author>
          <persName key="celtique-2014-idp84120">
            <foreName>David</foreName>
            <surname>Bühler</surname>
            <initial>D.</initial>
          </persName>
        </author>
        <imprint>
          <publisher>
            <orgName type="school">Université de Rennes 1</orgName>
          </publisher>
          <dateStruct>
            <month>March</month>
            <year>2017</year>
          </dateStruct>
          <ref xlink:href="https://hal.archives-ouvertes.fr/tel-01664726" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>archives-ouvertes.<allowbreak/>fr/<allowbreak/>tel-01664726</ref>
        </imprint>
      </monogr>
      <note type="typdoc">Theses</note>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid19" type="phdthesis" rend="year" n="cite:zakowski:tel-01680213">
      <identifiant type="hal" value="tel-01680213"/>
      <monogr>
        <title level="m">Verification of a Concurrent Garbage Collector</title>
        <author>
          <persName key="celtique-2014-idp92856">
            <foreName>Yannick</foreName>
            <surname>Zakowski</surname>
            <initial>Y.</initial>
          </persName>
        </author>
        <imprint>
          <publisher>
            <orgName type="school">École Normale Supérieur de Rennes</orgName>
          </publisher>
          <dateStruct>
            <month>December</month>
            <year>2017</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/tel-01680213" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>tel-01680213</ref>
        </imprint>
      </monogr>
      <note type="typdoc">Theses</note>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid8" type="article" rend="year" n="cite:besson:hal-01656895">
      <identifiant type="doi" value="10.1007/s10817-017-9439-z"/>
      <identifiant type="hal" value="hal-01656895"/>
      <analytic>
        <title level="a">A Verified CompCert Front-End for a Memory Model Supporting Pointer Arithmetic and Uninitialised Data</title>
        <author>
          <persName key="celtique-2014-idm26384">
            <foreName>Frédéric</foreName>
            <surname>Besson</surname>
            <initial>F.</initial>
          </persName>
          <persName key="celtique-2014-idp67080">
            <foreName>Sandrine</foreName>
            <surname>Blazy</surname>
            <initial>S.</initial>
          </persName>
          <persName key="celtique-2014-idp91608">
            <foreName>Pierre</foreName>
            <surname>Wilke</surname>
            <initial>P.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-editorial-board="yes" x-international-audience="yes" id="rid01057">
        <idno type="issn">0168-7433</idno>
        <title level="j">Journal of Automated Reasoning</title>
        <imprint>
          <dateStruct>
            <year>2017</year>
          </dateStruct>
          <biblScope type="pages">1-48</biblScope>
          <ref xlink:href="https://hal.inria.fr/hal-01656895" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01656895</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid21" type="article" rend="year" n="cite:cirstea:hal-01479030">
      <identifiant type="doi" value="10.23638/LMCS-13(4:16)2017"/>
      <identifiant type="hal" value="hal-01479030"/>
      <analytic>
        <title level="a">Faithful (Meta-)Encodings Of Programmable Strategies Into Term Rewriting Systems</title>
        <author>
          <persName key="pareo-2014-idp70064">
            <foreName>Horatiu</foreName>
            <surname>Cirstea</surname>
            <initial>H.</initial>
          </persName>
          <persName key="pareo-2014-idp71504">
            <foreName>Sergueï</foreName>
            <surname>Lenglet</surname>
            <initial>S.</initial>
          </persName>
          <persName key="pareo-2014-idm27176">
            <foreName>Pierre-Etienne</foreName>
            <surname>Moreau</surname>
            <initial>P.-E.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-editorial-board="yes" x-international-audience="yes" id="rid01362">
        <idno type="issn">1860-5974</idno>
        <title level="j">Logical Methods in Computer Science</title>
        <imprint>
          <biblScope type="volume">13</biblScope>
          <biblScope type="number">4</biblScope>
          <dateStruct>
            <month>November</month>
            <year>2017</year>
          </dateStruct>
          <biblScope type="pages">1-54</biblScope>
          <ref xlink:href="https://hal.inria.fr/hal-01479030" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01479030</ref>
        </imprint>
      </monogr>
      <note type="bnote">Long version of the corresponding RTA-TLCA 15 paper</note>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid6" type="article" rend="year" n="cite:genet:hal-01532090">
      <identifiant type="hal" value="hal-01532090"/>
      <analytic>
        <title level="a">Reachability Analysis of Innermost Rewriting - extended version</title>
        <author>
          <persName key="celtique-2014-idp71232">
            <foreName>Thomas</foreName>
            <surname>Genet</surname>
            <initial>T.</initial>
          </persName>
          <persName key="celtique-2014-idp90360">
            <foreName>Yann</foreName>
            <surname>Salmon</surname>
            <initial>Y.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-editorial-board="yes" x-international-audience="yes" id="rid01362">
        <idno type="issn">1860-5974</idno>
        <title level="j">Logical Methods in Computer Science</title>
        <imprint>
          <dateStruct>
            <year>2017</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01532090" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01532090</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid20" type="article" rend="year" n="cite:honsell:hal-01146059">
      <identifiant type="hal" value="hal-01146059"/>
      <analytic>
        <title level="a">LLFP : A Logical Framework for modeling External Evidence, Side Conditions, and Proof Irrelevance using Monads</title>
        <author>
          <persName>
            <foreName>Furio</foreName>
            <surname>Honsell</surname>
            <initial>F.</initial>
          </persName>
          <persName>
            <foreName>Luigi</foreName>
            <surname>Liquori</surname>
            <initial>L.</initial>
          </persName>
          <persName key="celtique-2014-idp76632">
            <foreName>Petar</foreName>
            <surname>Maksimovic</surname>
            <initial>P.</initial>
          </persName>
          <persName>
            <foreName>Ivan</foreName>
            <surname>Scagnetto</surname>
            <initial>I.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-editorial-board="yes" x-international-audience="yes" id="rid01362">
        <idno type="issn">1860-5974</idno>
        <title level="j">Logical Methods in Computer Science</title>
        <imprint>
          <dateStruct>
            <month>February</month>
            <year>2017</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01146059" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01146059</ref>
        </imprint>
      </monogr>
      <note type="bnote">
        <ref xlink:href="https://arxiv.org/abs/1702.07214" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>arxiv.<allowbreak/>org/<allowbreak/>abs/<allowbreak/>1702.<allowbreak/>07214</ref>
      </note>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid11" type="inproceedings" rend="year" n="cite:barthe:hal-01588422">
      <identifiant type="hal" value="hal-01588422"/>
      <analytic>
        <title level="a">Verified Translation Validation of Static Analyses</title>
        <author>
          <persName key="marelle-2017-idp164176">
            <foreName>Gilles</foreName>
            <surname>Barthe</surname>
            <initial>G.</initial>
          </persName>
          <persName key="celtique-2014-idp67080">
            <foreName>Sandrine</foreName>
            <surname>Blazy</surname>
            <initial>S.</initial>
          </persName>
          <persName key="celtique-2014-idp85344">
            <foreName>Vincent</foreName>
            <surname>Laporte</surname>
            <initial>V.</initial>
          </persName>
          <persName key="celtique-2014-idp73952">
            <foreName>David</foreName>
            <surname>Pichardie</surname>
            <initial>D.</initial>
          </persName>
          <persName key="celtique-2016-idp163088">
            <foreName>Alix</foreName>
            <surname>Trieu</surname>
            <initial>A.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no" x-editorial-board="yes">
        <title level="m">Computer Security Foundations Symposium</title>
        <loc>Santa-Barbara, United States</loc>
        <title level="s">30th IEEE Computer Security Foundations Symposium</title>
        <imprint>
          <dateStruct>
            <month>August</month>
            <year>2017</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01588422" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01588422</ref>
        </imprint>
        <meeting id="cid77878">
          <title>IEEE Computer Security Foundation Symposium</title>
          <num>30</num>
          <abbr type="sigle">CSF</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid9" type="inproceedings" rend="year" n="cite:besson:hal-01656875">
      <identifiant type="doi" value="10.1007/978-3-319-66107-0_6"/>
      <identifiant type="hal" value="hal-01656875"/>
      <analytic>
        <title level="a">CompCertS: A Memory-Aware Verified C Compiler using Pointer as Integer Semantics</title>
        <author>
          <persName key="celtique-2014-idm26384">
            <foreName>Frédéric</foreName>
            <surname>Besson</surname>
            <initial>F.</initial>
          </persName>
          <persName key="celtique-2014-idp67080">
            <foreName>Sandrine</foreName>
            <surname>Blazy</surname>
            <initial>S.</initial>
          </persName>
          <persName key="celtique-2014-idp91608">
            <foreName>Pierre</foreName>
            <surname>Wilke</surname>
            <initial>P.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no" x-editorial-board="yes">
        <title level="m">ITP 2017 - 8th International Conference on Interactive Theorem Proving</title>
        <loc>Brasilia, Brazil</loc>
        <title level="s">ITP 2017: Interactive Theorem Proving</title>
        <imprint>
          <biblScope type="volume">10499</biblScope>
          <publisher>
            <orgName>Springer</orgName>
          </publisher>
          <dateStruct>
            <month>September</month>
            <year>2017</year>
          </dateStruct>
          <biblScope type="pages">81-97</biblScope>
          <ref xlink:href="https://hal.inria.fr/hal-01656875" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01656875</ref>
        </imprint>
        <meeting id="cid390060">
          <title>International Conference on Interactive Theorem Proving</title>
          <num>8</num>
          <abbr type="sigle">ITP</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct subtype="nonparu-n" id="celtique-2017-bid16" type="inproceedings" rend="year" n="cite:biernacka:hal-01479035">
      <identifiant type="hal" value="hal-01479035"/>
      <analytic>
        <title level="a">Fully Abstract Encodings of λ-Calculus in HOcore through Abstract Machines</title>
        <author>
          <persName>
            <foreName>Małgorzata</foreName>
            <surname>Biernacka</surname>
            <initial>M.</initial>
          </persName>
          <persName>
            <foreName>Dariusz</foreName>
            <surname>Biernacki</surname>
            <initial>D.</initial>
          </persName>
          <persName key="pareo-2014-idp71504">
            <foreName>Sergueï</foreName>
            <surname>Lenglet</surname>
            <initial>S.</initial>
          </persName>
          <persName>
            <foreName>Piotr</foreName>
            <surname>Polesiuk</surname>
            <initial>P.</initial>
          </persName>
          <persName>
            <foreName>Damien</foreName>
            <surname>Pous</surname>
            <initial>D.</initial>
          </persName>
          <persName key="celtique-2014-idm25128">
            <foreName>Alan</foreName>
            <surname>Schmitt</surname>
            <initial>A.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no" x-editorial-board="yes">
        <title level="m">LICS 2017</title>
        <loc>Reykjavik, Iceland</loc>
        <title level="s">Proceedings of LICS 2017</title>
        <imprint>
          <dateStruct>
            <month>June</month>
            <year>2017</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01479035" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01479035</ref>
        </imprint>
        <meeting id="cid31229">
          <title>Annual IEEE Symposium on Logic in Computer Science</title>
          <num>32</num>
          <abbr type="sigle">LICS</abbr>
        </meeting>
      </monogr>
      <note type="bnote">To appear</note>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid10" type="inproceedings" rend="year" n="cite:blazy:hal-01588444">
      <identifiant type="hal" value="hal-01588444"/>
      <analytic>
        <title level="a">Verifying Constant-Time Implementations by Abstract Interpretation</title>
        <author>
          <persName key="celtique-2014-idp67080">
            <foreName>Sandrine</foreName>
            <surname>Blazy</surname>
            <initial>S.</initial>
          </persName>
          <persName key="celtique-2014-idp73952">
            <foreName>David</foreName>
            <surname>Pichardie</surname>
            <initial>D.</initial>
          </persName>
          <persName key="celtique-2016-idp163088">
            <foreName>Alix</foreName>
            <surname>Trieu</surname>
            <initial>A.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no" x-editorial-board="yes">
        <title level="m">European Symposium on Research in Computer Security</title>
        <loc>Oslo, Norway</loc>
        <title level="s">22nd European Symposium on Research in Computer Security</title>
        <imprint>
          <dateStruct>
            <month>September</month>
            <year>2017</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01588444" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01588444</ref>
        </imprint>
        <meeting id="cid71323">
          <title>European Symposium on Research in Computer Security</title>
          <num>12</num>
          <abbr type="sigle">ESORICS</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid25" type="inproceedings" rend="year" n="cite:cabon:hal-01656404">
      <identifiant type="doi" value="10.1145/3139337.3139344"/>
      <identifiant type="hal" value="hal-01656404"/>
      <analytic>
        <title level="a">Annotated multisemantics to prove Non-Interference analyses</title>
        <author>
          <persName key="celtique-2015-idp123232">
            <foreName>Gurvan</foreName>
            <surname>Cabon</surname>
            <initial>G.</initial>
          </persName>
          <persName key="celtique-2014-idm25128">
            <foreName>Alan</foreName>
            <surname>Schmitt</surname>
            <initial>A.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="no" x-invited-conference="no" x-editorial-board="yes">
        <title level="m">PLAS 2017 - ACM SIGSAC Workshop on Programming Languages and Analysis for Security</title>
        <loc>Dallas, United States</loc>
        <title level="s">PLAS '17 Proceedings of the 2017 Workshop on Programming Languages and Analysis for Security</title>
        <imprint>
          <publisher>
            <orgName>ACM</orgName>
          </publisher>
          <dateStruct>
            <month>October</month>
            <year>2017</year>
          </dateStruct>
          <biblScope type="pages">49-62</biblScope>
          <ref xlink:href="https://hal.archives-ouvertes.fr/hal-01656404" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>archives-ouvertes.<allowbreak/>fr/<allowbreak/>hal-01656404</ref>
        </imprint>
        <meeting id="cid623655">
          <title>Workshop on Programming Languages and Analysis for Security</title>
          <num>2017</num>
          <abbr type="sigle">PLAS</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid2" type="inproceedings" rend="year" n="cite:cabon:hal-01503094">
      <identifiant type="hal" value="hal-01503094"/>
      <analytic>
        <title level="a">Non-Interference through Annotated Multisemantics</title>
        <author>
          <persName key="celtique-2015-idp123232">
            <foreName>Gurvan</foreName>
            <surname>Cabon</surname>
            <initial>G.</initial>
          </persName>
          <persName key="celtique-2014-idm25128">
            <foreName>Alan</foreName>
            <surname>Schmitt</surname>
            <initial>A.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="no" x-proceedings="yes" x-invited-conference="no" x-editorial-board="yes">
        <title level="m">28ièmes Journées Francophones des Langages Applicatifs</title>
        <loc>Gourette, France</loc>
        <imprint>
          <dateStruct>
            <month>January</month>
            <year>2017</year>
          </dateStruct>
          <ref xlink:href="https://hal.archives-ouvertes.fr/hal-01503094" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>archives-ouvertes.<allowbreak/>fr/<allowbreak/>hal-01503094</ref>
        </imprint>
        <meeting id="cid344980">
          <title>Journées Francophones des Langages Applicatifs</title>
          <num>28</num>
          <abbr type="sigle">JFLA</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid13" type="inproceedings" rend="year" n="cite:jensen:hal-01658549">
      <identifiant type="hal" value="hal-01658549"/>
      <analytic>
        <title level="a">Formal methods for software security (invited talk)</title>
        <author>
          <persName key="celtique-2014-idm27832">
            <foreName>Thomas</foreName>
            <surname>Jensen</surname>
            <initial>T.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="no" x-proceedings="no" x-invited-conference="yes" x-editorial-board="yes">
        <title level="m">FMF 2017 - Forum "Méthodes Formelles"</title>
        <loc>Toulouse, France</loc>
        <imprint>
          <dateStruct>
            <month>January</month>
            <year>2017</year>
          </dateStruct>
          <biblScope type="pages">1-61</biblScope>
          <ref xlink:href="https://hal.inria.fr/hal-01658549" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01658549</ref>
        </imprint>
        <meeting id="cid625881">
          <title>Forum Méthodes Formelles</title>
          <num>2017</num>
          <abbr type="sigle"/>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid14" type="inproceedings" rend="year" n="cite:jensen:hal-01658835">
      <identifiant type="hal" value="hal-01658835"/>
      <analytic>
        <title level="a">Formal methods for software security (invited talk)</title>
        <author>
          <persName key="celtique-2014-idm27832">
            <foreName>Thomas</foreName>
            <surname>Jensen</surname>
            <initial>T.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="no" x-proceedings="no" x-invited-conference="yes" x-editorial-board="yes">
        <title level="m">Journées Nationales 2017 Pré-GDR Sécurité Informatique</title>
        <loc>Paris, France</loc>
        <imprint>
          <dateStruct>
            <month>June</month>
            <year>2017</year>
          </dateStruct>
          <biblScope type="pages">1-31</biblScope>
          <ref xlink:href="https://hal.inria.fr/hal-01658835" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01658835</ref>
        </imprint>
        <meeting id="cid625800">
          <title>Journées Nationales Pré-GDR Sécurité Informatique</title>
          <num>2017</num>
          <abbr type="sigle"/>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid15" type="inproceedings" rend="year" n="cite:jensen:hal-01658896">
      <identifiant type="hal" value="hal-01658896"/>
      <analytic>
        <title level="a">Hybrid information flow analysis against web tracking (invited talk)</title>
        <author>
          <persName key="celtique-2014-idm27832">
            <foreName>Thomas</foreName>
            <surname>Jensen</surname>
            <initial>T.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="yes" x-invited-conference="yes" x-editorial-board="yes">
        <title level="m">CRiSIS 2017 - 12th International Conference on Risks and Security of Internet and Systems</title>
        <loc>Dinard, France</loc>
        <imprint>
          <dateStruct>
            <month>September</month>
            <year>2017</year>
          </dateStruct>
          <biblScope type="pages">1-33</biblScope>
          <ref xlink:href="https://hal.inria.fr/hal-01658896" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01658896</ref>
        </imprint>
        <meeting id="cid298939">
          <title>International Conference on Risks and Security of Internet and Systems</title>
          <num>12</num>
          <abbr type="sigle">CRISIS</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid24" type="inproceedings" rend="year" n="cite:kastner:hal-01643290">
      <identifiant type="hal" value="hal-01643290"/>
      <analytic>
        <title level="a">CompCert: Practical Experience on Integrating and Qualifying a Formally Verified Optimizing Compiler</title>
        <author>
          <persName>
            <foreName>Daniel</foreName>
            <surname>Kästner</surname>
            <initial>D.</initial>
          </persName>
          <persName>
            <foreName>Jörg</foreName>
            <surname>Barrho</surname>
            <initial>J.</initial>
          </persName>
          <persName>
            <foreName>Ulrich</foreName>
            <surname>Wünsche</surname>
            <initial>U.</initial>
          </persName>
          <persName>
            <foreName>Marc</foreName>
            <surname>Schlickling</surname>
            <initial>M.</initial>
          </persName>
          <persName>
            <foreName>Bernhard</foreName>
            <surname>Schommer</surname>
            <initial>B.</initial>
          </persName>
          <persName>
            <foreName>Michael</foreName>
            <surname>Schmidt</surname>
            <initial>M.</initial>
          </persName>
          <persName>
            <foreName>Christian</foreName>
            <surname>Ferdinand</surname>
            <initial>C.</initial>
          </persName>
          <persName key="gallium-2014-idm29528">
            <foreName>Xavier</foreName>
            <surname>Leroy</surname>
            <initial>X.</initial>
          </persName>
          <persName key="celtique-2014-idp67080">
            <foreName>Sandrine</foreName>
            <surname>Blazy</surname>
            <initial>S.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no" x-editorial-board="yes">
        <title level="m">ERTS2 2018 - Embedded Real Time Software and Systems</title>
        <loc>Toulouse, France</loc>
        <imprint>
          <publisher>
            <orgName type="organisation">3AF, SEE, SIE</orgName>
          </publisher>
          <dateStruct>
            <month>January</month>
            <year>2018</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01643290" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01643290</ref>
        </imprint>
        <meeting id="cid68744">
          <title>European Congress on Embedded Real Time Software</title>
          <num>2018</num>
          <abbr type="sigle">ERTS</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid23" type="inproceedings" rend="year" n="cite:kastner:hal-01399482">
      <identifiant type="hal" value="hal-01399482"/>
      <analytic>
        <title level="a">Closing the Gap – The Formally Verified Optimizing Compiler CompCert</title>
        <author>
          <persName>
            <foreName>Daniel</foreName>
            <surname>Kästner</surname>
            <initial>D.</initial>
          </persName>
          <persName key="gallium-2014-idm29528">
            <foreName>Xavier</foreName>
            <surname>Leroy</surname>
            <initial>X.</initial>
          </persName>
          <persName key="celtique-2014-idp67080">
            <foreName>Sandrine</foreName>
            <surname>Blazy</surname>
            <initial>S.</initial>
          </persName>
          <persName>
            <foreName>Bernhard</foreName>
            <surname>Schommer</surname>
            <initial>B.</initial>
          </persName>
          <persName>
            <foreName>Michael</foreName>
            <surname>Schmidt</surname>
            <initial>M.</initial>
          </persName>
          <persName>
            <foreName>Christian</foreName>
            <surname>Ferdinand</surname>
            <initial>C.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no" x-editorial-board="yes">
        <title level="m">SSS'17: Safety-critical Systems Symposium 2017</title>
        <loc>Bristol, United Kingdom</loc>
        <title level="s">Developments in System Safety Engineering: Proceedings of the Twenty-fifth Safety-critical Systems Symposium</title>
        <imprint>
          <publisher>
            <orgName>CreateSpace</orgName>
          </publisher>
          <dateStruct>
            <month>February</month>
            <year>2017</year>
          </dateStruct>
          <biblScope type="pages">163-180</biblScope>
          <ref xlink:href="https://hal.inria.fr/hal-01399482" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01399482</ref>
        </imprint>
        <meeting id="cid625443">
          <title>Safety-critical Systems Symposium</title>
          <num>2017</num>
          <abbr type="sigle">SSS</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid1" type="inproceedings" rend="year" n="cite:lenglet:hal-01614987">
      <identifiant type="doi" value="10.1145/3167083"/>
      <identifiant type="hal" value="hal-01614987"/>
      <analytic>
        <title level="a">HOπ in Coq</title>
        <author>
          <persName key="pareo-2014-idp71504">
            <foreName>Sergueï</foreName>
            <surname>Lenglet</surname>
            <initial>S.</initial>
          </persName>
          <persName key="celtique-2014-idm25128">
            <foreName>Alan</foreName>
            <surname>Schmitt</surname>
            <initial>A.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no" x-editorial-board="yes">
        <title level="m">CPP 2018 - The 7th ACM SIGPLAN International Conference on Certified Programs and Proofs</title>
        <loc>Los Angeles, United States</loc>
        <imprint>
          <dateStruct>
            <month>January</month>
            <year>2018</year>
          </dateStruct>
          <biblScope type="pages">14</biblScope>
          <ref xlink:href="https://hal.inria.fr/hal-01614987" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01614987</ref>
        </imprint>
        <meeting id="cid196878">
          <title>International Conference on Certified Programs and Proofs</title>
          <num>7</num>
          <abbr type="sigle">CPP</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid28" type="inproceedings" rend="year" n="cite:leslous:hal-01584989">
      <identifiant type="hal" value="hal-01584989"/>
      <analytic>
        <title level="a">GPFinder: Tracking the Invisible in Android Malware</title>
        <author>
          <persName key="cidre-2015-idp97096">
            <foreName>Mourad</foreName>
            <surname>Leslous</surname>
            <initial>M.</initial>
          </persName>
          <persName key="cidre-2014-idp77816">
            <foreName>Valérie</foreName>
            <surname>Viet Triem Tong</surname>
            <initial>V.</initial>
          </persName>
          <persName key="cidre-2014-idp71304">
            <foreName>Jean-François</foreName>
            <surname>Lalande</surname>
            <initial>J.-F.</initial>
          </persName>
          <persName key="celtique-2014-idp71232">
            <foreName>Thomas</foreName>
            <surname>Genet</surname>
            <initial>T.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no" x-editorial-board="yes">
        <title level="m">12th International Conference on Malicious and Unwanted Software</title>
        <loc>Fajardo, Puerto Rico</loc>
        <imprint>
          <publisher>
            <orgName>IEEE Conputer Society</orgName>
          </publisher>
          <dateStruct>
            <month>October</month>
            <year>2017</year>
          </dateStruct>
          <ref xlink:href="https://hal-centralesupelec.archives-ouvertes.fr/hal-01584989" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal-centralesupelec.<allowbreak/>archives-ouvertes.<allowbreak/>fr/<allowbreak/>hal-01584989</ref>
        </imprint>
        <meeting id="cid290439">
          <title>International Conference on Malicious and Unwanted Software</title>
          <num>12</num>
          <abbr type="sigle">MALWARE</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid22" type="inproceedings" rend="year" n="cite:saudel:hal-01656979">
      <identifiant type="hal" value="hal-01656979"/>
      <analytic>
        <title level="a">Confusion de Type en C++: État de l'Art et Difficultés de Détection</title>
        <author>
          <persName key="celtique-2015-idp129416">
            <foreName>Florent</foreName>
            <surname>Saudel</surname>
            <initial>F.</initial>
          </persName>
          <persName key="celtique-2014-idp67080">
            <foreName>Sandrine</foreName>
            <surname>Blazy</surname>
            <initial>S.</initial>
          </persName>
          <persName key="celtique-2014-idm26384">
            <foreName>Frédéric</foreName>
            <surname>Besson</surname>
            <initial>F.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="no" x-proceedings="no" x-invited-conference="no" x-editorial-board="yes">
        <title level="m">RESSI 2017 - Rendez-vous de la Recherche et de l'Enseignement de la Sécurité des Systèmes d'Information</title>
        <loc>Grenoble/Autrans, France</loc>
        <imprint>
          <dateStruct>
            <month>May</month>
            <year>2017</year>
          </dateStruct>
          <biblScope type="pages">1-5</biblScope>
          <ref xlink:href="https://hal.inria.fr/hal-01656979" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01656979</ref>
        </imprint>
        <meeting id="cid624974">
          <title>Rendez-Vous de la Recherche et de l'Enseignement de la Sécurité des Systèmes d'Information</title>
          <num>2017</num>
          <abbr type="sigle">RESSI</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid3" type="inproceedings" rend="year" n="cite:zakowski:hal-01613389">
      <identifiant type="doi" value="10.1007/978-3-319-66107-0_31"/>
      <identifiant type="hal" value="hal-01613389"/>
      <analytic>
        <title level="a">Verifying a Concurrent Garbage Collector using a Rely-Guarantee Methodology</title>
        <author>
          <persName key="celtique-2014-idp92856">
            <foreName>Yannick</foreName>
            <surname>Zakowski</surname>
            <initial>Y.</initial>
          </persName>
          <persName key="celtique-2014-idp68520">
            <foreName>David</foreName>
            <surname>Cachera</surname>
            <initial>D.</initial>
          </persName>
          <persName key="celtique-2014-idp69976">
            <foreName>Delphine</foreName>
            <surname>Demange</surname>
            <initial>D.</initial>
          </persName>
          <persName>
            <foreName>Gustavo</foreName>
            <surname>Petri</surname>
            <initial>G.</initial>
          </persName>
          <persName key="celtique-2014-idp73952">
            <foreName>David</foreName>
            <surname>Pichardie</surname>
            <initial>D.</initial>
          </persName>
          <persName>
            <foreName>Suresh</foreName>
            <surname>Jagannathan</surname>
            <initial>S.</initial>
          </persName>
          <persName>
            <foreName>Jan</foreName>
            <surname>Vitek</surname>
            <initial>J.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no" x-editorial-board="yes">
        <title level="m">ITP 2017 - 8th International Conference on Interactive Theorem Proving</title>
        <loc>Brasília, Brazil</loc>
        <title level="s">Lecture Notes in Computer Science</title>
        <imprint>
          <biblScope type="volume">10499</biblScope>
          <publisher>
            <orgName>Springer</orgName>
          </publisher>
          <dateStruct>
            <month>September</month>
            <year>2017</year>
          </dateStruct>
          <biblScope type="pages">496-513</biblScope>
          <ref xlink:href="https://hal.inria.fr/hal-01613389" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01613389</ref>
        </imprint>
        <meeting id="cid390060">
          <title>International Conference on Interactive Theorem Proving</title>
          <num>8</num>
          <abbr type="sigle">ITP</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid4" type="inproceedings" rend="year" n="cite:zakowski:hal-01653620">
      <identifiant type="hal" value="hal-01653620"/>
      <analytic>
        <title level="a">Verified Compilation of Linearizable Data Structures: Mechanizing Rely Guarantee for Semantic Refinement</title>
        <author>
          <persName key="celtique-2014-idp92856">
            <foreName>Yannick</foreName>
            <surname>Zakowski</surname>
            <initial>Y.</initial>
          </persName>
          <persName key="celtique-2014-idp68520">
            <foreName>David</foreName>
            <surname>Cachera</surname>
            <initial>D.</initial>
          </persName>
          <persName key="celtique-2014-idp69976">
            <foreName>Delphine</foreName>
            <surname>Demange</surname>
            <initial>D.</initial>
          </persName>
          <persName key="celtique-2014-idp73952">
            <foreName>David</foreName>
            <surname>Pichardie</surname>
            <initial>D.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no" x-editorial-board="yes">
        <title level="m">SAC 2018 - The 33rd ACM/SIGAPP Symposium On Applied Computing</title>
        <loc>Pau, France</loc>
        <imprint>
          <dateStruct>
            <month>April</month>
            <year>2018</year>
          </dateStruct>
          <biblScope type="pages">1-10</biblScope>
          <ref xlink:href="https://hal.archives-ouvertes.fr/hal-01653620" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>archives-ouvertes.<allowbreak/>fr/<allowbreak/>hal-01653620</ref>
        </imprint>
        <meeting id="cid23923">
          <title>ACM Symposium on Applied Computing</title>
          <num>33</num>
          <abbr type="sigle">SAC</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid0" type="techreport" rend="year" n="cite:biernacka:hal-01507625">
      <identifiant type="hal" value="hal-01507625"/>
      <monogr>
        <title level="m">Fully Abstract Encodings of λ-Calculus in HOcore through Abstract Machines</title>
        <author>
          <persName>
            <foreName>Małgorzata</foreName>
            <surname>Biernacka</surname>
            <initial>M.</initial>
          </persName>
          <persName>
            <foreName>Dariusz</foreName>
            <surname>Biernacki</surname>
            <initial>D.</initial>
          </persName>
          <persName key="pareo-2014-idp71504">
            <foreName>Sergueï</foreName>
            <surname>Lenglet</surname>
            <initial>S.</initial>
          </persName>
          <persName>
            <foreName>Piotr</foreName>
            <surname>Polesiuk</surname>
            <initial>P.</initial>
          </persName>
          <persName>
            <foreName>Damien</foreName>
            <surname>Pous</surname>
            <initial>D.</initial>
          </persName>
          <persName key="celtique-2014-idm25128">
            <foreName>Alan</foreName>
            <surname>Schmitt</surname>
            <initial>A.</initial>
          </persName>
        </author>
        <imprint>
          <biblScope type="number">RR-9052</biblScope>
          <publisher>
            <orgName type="institution">Inria</orgName>
          </publisher>
          <dateStruct>
            <month>April</month>
            <year>2017</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01507625" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01507625</ref>
        </imprint>
      </monogr>
      <note type="typdoc">Research Report</note>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid29" type="techreport" rend="year" n="cite:genet:hal-01208577">
      <identifiant type="hal" value="hal-01208577"/>
      <monogr>
        <title level="m">A Short Isabelle/HOL Tutorial for the Functional Programmer</title>
        <author>
          <persName key="celtique-2014-idp71232">
            <foreName>Thomas</foreName>
            <surname>Genet</surname>
            <initial>T.</initial>
          </persName>
        </author>
        <imprint>
          <publisher>
            <orgName type="institution">IRISA</orgName>
          </publisher>
          <dateStruct>
            <year>2017</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01208577" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01208577</ref>
        </imprint>
      </monogr>
      <note type="typdoc">Research Report</note>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid7" type="techreport" rend="year" n="cite:genet:hal-01501744">
      <identifiant type="hal" value="hal-01501744"/>
      <monogr>
        <title level="m">Automata Completion and Regularity Preservation</title>
        <author>
          <persName key="celtique-2014-idp71232">
            <foreName>Thomas</foreName>
            <surname>Genet</surname>
            <initial>T.</initial>
          </persName>
        </author>
        <imprint>
          <publisher>
            <orgName type="institution">IRISA, Inria Rennes</orgName>
          </publisher>
          <dateStruct>
            <month>April</month>
            <year>2017</year>
          </dateStruct>
          <ref xlink:href="https://hal.archives-ouvertes.fr/hal-01501744" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>archives-ouvertes.<allowbreak/>fr/<allowbreak/>hal-01501744</ref>
        </imprint>
      </monogr>
      <note type="typdoc">Research Report</note>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid5" type="techreport" rend="year" n="cite:genet:hal-01614380">
      <identifiant type="hal" value="hal-01614380"/>
      <monogr>
        <title level="m">Verifying Higher-Order Functions with Tree Automata: Extended Version</title>
        <author>
          <persName key="celtique-2014-idp71232">
            <foreName>Thomas</foreName>
            <surname>Genet</surname>
            <initial>T.</initial>
          </persName>
          <persName>
            <foreName>Timothée</foreName>
            <surname>HAUDEBOURG</surname>
            <initial>T.</initial>
          </persName>
          <persName key="celtique-2014-idm27832">
            <foreName>Thomas</foreName>
            <surname>Jensen</surname>
            <initial>T.</initial>
          </persName>
        </author>
        <imprint>
          <publisher>
            <orgName type="institution">Irisa</orgName>
          </publisher>
          <dateStruct>
            <month>October</month>
            <year>2017</year>
          </dateStruct>
          <biblScope type="pages">1-20</biblScope>
          <ref xlink:href="https://hal.inria.fr/hal-01614380" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01614380</ref>
        </imprint>
      </monogr>
      <note type="typdoc">Technical Report</note>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid30" type="techreport" rend="year" n="cite:zakowski:hal-01538128">
      <identifiant type="hal" value="hal-01538128"/>
      <monogr>
        <title level="m">Compilation of Linearizable Data Structures: A Mechanised RG Logic for Semantic Refinement</title>
        <author>
          <persName key="celtique-2014-idp92856">
            <foreName>Yannick</foreName>
            <surname>Zakowski</surname>
            <initial>Y.</initial>
          </persName>
          <persName key="celtique-2014-idp68520">
            <foreName>David</foreName>
            <surname>Cachera</surname>
            <initial>D.</initial>
          </persName>
          <persName key="celtique-2014-idp69976">
            <foreName>Delphine</foreName>
            <surname>Demange</surname>
            <initial>D.</initial>
          </persName>
          <persName key="celtique-2014-idp73952">
            <foreName>David</foreName>
            <surname>Pichardie</surname>
            <initial>D.</initial>
          </persName>
        </author>
        <imprint>
          <publisher>
            <orgName type="institution">ENS Rennes ; IRISA, Inria Rennes ; Université Rennes 1</orgName>
          </publisher>
          <dateStruct>
            <month>June</month>
            <year>2017</year>
          </dateStruct>
          <ref xlink:href="https://hal.archives-ouvertes.fr/hal-01538128" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>archives-ouvertes.<allowbreak/>fr/<allowbreak/>hal-01538128</ref>
        </imprint>
      </monogr>
      <note type="typdoc">Research Report</note>
    </biblStruct>
    
    <biblStruct id="celtique-2017-bid12" type="misc" rend="year" n="cite:genet:hal-01532086">
      <identifiant type="hal" value="hal-01532086"/>
      <monogr x-scientific-popularization="no">
        <title level="m">SPAN+AVISPA for Verifying Cryptographic Protocols</title>
        <author>
          <persName key="celtique-2014-idp71232">
            <foreName>Thomas</foreName>
            <surname>Genet</surname>
            <initial>T.</initial>
          </persName>
        </author>
        <imprint>
          <dateStruct>
            <year>2017</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01532086" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01532086</ref>
        </imprint>
      </monogr>
      <note type="bnote">This is a video tutorial to learn how to use SPAN+AVISPA to automatically check security properties on cryptographic protocols</note>
    </biblStruct>
  </biblio>
</raweb>
