<?xml version="1.0" encoding="utf-8"?>
<raweb xmlns:xlink="http://www.w3.org/1999/xlink" xml:lang="en" year="2016">
  <identification id="spades" isproject="true">
    <shortname>SPADES</shortname>
    <projectName>Sound Programming of Adaptive Dependable Embedded Systems</projectName>
    <theme-de-recherche>Embedded and Real-time Systems</theme-de-recherche>
    <domaine-de-recherche>Algorithmics, Programming, Software and Architecture</domaine-de-recherche>
    <urlTeam>http://team.inria.fr/spades</urlTeam>
    <structure_exterieure type="Labs">
      <libelle>Laboratoire d'Informatique de Grenoble (LIG)</libelle>
    </structure_exterieure>
    <structure_exterieure type="Organism">
      <libelle>Institut polytechnique de Grenoble</libelle>
    </structure_exterieure>
    <header_dates_team>Creation of the Team: 2013 January 01, updated into Project-Team: 2015 July 01</header_dates_team>
    <LeTypeProjet>Project-Team</LeTypeProjet>
    <keywordsSdN>
      <term>1.1.1. - Multicore</term>
      <term>1.1.9. - Fault tolerant systems</term>
      <term>1.3. - Distributed Systems</term>
      <term>2.1.1. - Semantics of programming languages</term>
      <term>2.1.6. - Concurrent programming</term>
      <term>2.1.8. - Synchronous languages</term>
      <term>2.3. - Embedded and cyber-physical systems</term>
      <term>2.3.1. - Embedded systems</term>
      <term>2.3.2. - Cyber-physical systems</term>
      <term>2.3.3. - Real-time systems</term>
      <term>2.4.1. - Analysis</term>
      <term>2.4.3. - Proofs</term>
      <term>2.5.2. - Component-based Design</term>
    </keywordsSdN>
    <keywordsSecteurs>
      <term>6.6. - Embedded systems</term>
    </keywordsSecteurs>
    <UR name="Grenoble"/>
  </identification>
  <team id="uid1">
    <person key="spades-2014-idp103280">
      <firstname>Alain</firstname>
      <lastname>Girault</lastname>
      <categoryPro>Chercheur</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Team leader, Inria, Senior Researcher</moreinfo>
      <hdr>oui</hdr>
    </person>
    <person key="spades-2014-idp101824">
      <firstname>Pascal</firstname>
      <lastname>Fradet</lastname>
      <categoryPro>Chercheur</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Inria, Researcher</moreinfo>
      <hdr>oui</hdr>
    </person>
    <person key="spades-2014-idp104720">
      <firstname>Gregor</firstname>
      <lastname>Goessler</lastname>
      <categoryPro>Chercheur</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Inria, Researcher</moreinfo>
      <hdr>oui</hdr>
    </person>
    <person key="spades-2014-idp106152">
      <firstname>Sophie</firstname>
      <lastname>Quinton</lastname>
      <categoryPro>Chercheur</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Inria, Researcher</moreinfo>
    </person>
    <person key="spades-2014-idp100552">
      <firstname>Jean-Bernard</firstname>
      <lastname>Stefani</lastname>
      <categoryPro>Chercheur</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Inria, Senior Researcher</moreinfo>
    </person>
    <person key="spades-2014-idp107392">
      <firstname>Xavier</firstname>
      <lastname>Nicollin</lastname>
      <categoryPro>Enseignant</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Grenoble INP, Associate Professor</moreinfo>
    </person>
    <person key="spades-2014-idp111136">
      <firstname>Yoann</firstname>
      <lastname>Geoffroy</lastname>
      <categoryPro>PhD</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Inria, until Dec. 2016</moreinfo>
    </person>
    <person key="spades-2016-idp157328">
      <firstname>Xiaojie</firstname>
      <lastname>Guo</lastname>
      <categoryPro>PhD</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>UGA &amp; PERSYVAL-Lab, from Dec. 2016</moreinfo>
    </person>
    <person key="spades-2016-idp159872">
      <firstname>Stephan</firstname>
      <lastname>Plassart</lastname>
      <categoryPro>PhD</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>UGA &amp; PERSYVAL-Lab, from Sep. 2016</moreinfo>
    </person>
    <person key="spades-2015-idp110440">
      <firstname>Christophe</firstname>
      <lastname>Prévot</lastname>
      <categoryPro>PhD</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Thales, granted by CIFRE</moreinfo>
    </person>
    <person key="spades-2016-idp164848">
      <firstname>Lijun</firstname>
      <lastname>Shan</lastname>
      <categoryPro>PostDoc</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Inria, from Nov. 2016</moreinfo>
    </person>
    <person key="spades-2016-idp167344">
      <firstname>Athena</firstname>
      <lastname>Abdi</lastname>
      <categoryPro>Visiteur</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Amirkabir U., until Jul. 2016</moreinfo>
    </person>
    <person key="spades-2016-idp169840">
      <firstname>Leonie</firstname>
      <lastname>Ahrendts</lastname>
      <categoryPro>Visiteur</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>TU Braunschweig, Jan. and Jun. 2016</moreinfo>
    </person>
    <person key="spades-2014-idp116088">
      <firstname>Ismail</firstname>
      <lastname>Assayad</lastname>
      <categoryPro>Visiteur</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Casablanca U., Sep. 2016</moreinfo>
    </person>
    <person key="spades-2016-idp174832">
      <firstname>Zain</firstname>
      <lastname>Hammadeh</lastname>
      <categoryPro>Visiteur</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>TU Braunschweig, Aug. 2016</moreinfo>
    </person>
    <person key="spades-2014-idp114864">
      <firstname>Eugene</firstname>
      <lastname>Yip</lastname>
      <categoryPro>Visiteur</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Bamberg U., Oct. 2016</moreinfo>
    </person>
    <person key="spades-2016-idp179792">
      <firstname>Hamid</firstname>
      <lastname>Zarandi</lastname>
      <categoryPro>Visiteur</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Amirkabir U., Jul. 2016</moreinfo>
    </person>
    <person key="spades-2015-idp117976">
      <firstname>Helen</firstname>
      <lastname>Pouchot-Rouge-Blanc</lastname>
      <categoryPro>Assistant</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Inria</moreinfo>
    </person>
    <person key="roma-2016-idp187360">
      <firstname>Aurelie</firstname>
      <lastname>Kong Win Chang</lastname>
      <categoryPro>AutreCategorie</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>Université Claude Bernard Lyon 1, Master Student, from Feb. 2016 until Jul. 2016</moreinfo>
    </person>
    <person key="spades-2016-idp187360">
      <firstname>Lina</firstname>
      <lastname>Marsso</lastname>
      <categoryPro>AutreCategorie</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>UGA, Master Student, from Feb. 2016 until Jul. 2016</moreinfo>
    </person>
    <person key="spades-2016-idp189856">
      <firstname>Baptiste</firstname>
      <lastname>Pollien</lastname>
      <categoryPro>AutreCategorie</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>UGA, L1 Polytech Internship, from Jun. 2016 until Jul. 2016</moreinfo>
    </person>
    <person key="spades-2015-idp119216">
      <firstname>Martin</firstname>
      <lastname>Vassor</lastname>
      <categoryPro>AutreCategorie</categoryPro>
      <research-centre>Grenoble</research-centre>
      <moreinfo>EPFL, Summer Internship, from Jun. 2016 until Sep. 2016</moreinfo>
    </person>
  </team>
  <presentation id="uid2">
    <bodyTitle>Overall Objectives</bodyTitle>
    <subsection id="uid3" level="1">
      <bodyTitle>Overall Objectives</bodyTitle>
      <p>The <span class="smallcap" align="left">Spades</span> project-team aims at contributing to meet the challenge of
designing and programming dependable embedded systems in an
increasingly distributed and dynamic context. Specifically, by
exploiting formal methods and techniques, <span class="smallcap" align="left">Spades</span> aims to answer three
key questions:</p>
      <orderedlist>
        <li id="uid4">
          <p noindent="true">How to program open networked embedded systems as dynamic
adaptive modular structures?</p>
        </li>
        <li id="uid5">
          <p noindent="true">How to program reactive systems with real-time and resource
constraints on multicore architectures?</p>
        </li>
        <li id="uid6">
          <p noindent="true">How to program reliable, fault-tolerant embedded systems with
different levels of criticality?</p>
        </li>
      </orderedlist>
      <p>These questions above are not new, but answering them in the context
of modern embedded systems, which are increasingly distributed, open
and dynamic in nature <ref xlink:href="#spades-2016-bid0" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, makes them more
pressing and more difficult to address: the targeted system properties
– dynamic modularity, time-predictability, energy efficiency, and
fault-tolerance – are largely antagonistic (<i>e.g.</i>, having a highly
dynamic software structure is at variance with ensuring that resource
and behavioral constraints are met). Tackling these questions
together is crucial to address this antagonism, and constitutes a key
point of the <span class="smallcap" align="left">Spades</span> research program.</p>
      <p>A few remarks are in order:</p>
      <simplelist>
        <li id="uid7">
          <p noindent="true">We consider these questions to be central in the construction of
future embedded systems, dealing as they are with, roughly, software
architecture and the provision of real-time and fault-tolerance
guarantees. Building a safety-critical embedded system cannot avoid
dealing with these three concerns.</p>
        </li>
        <li id="uid8">
          <p noindent="true">The three questions above are highly connected. For instance,
composability along time, resource consumption and reliability
dimensions are key to the success of a component-based approach to
embedded systems construction.</p>
        </li>
        <li id="uid9">
          <p noindent="true">For us, “Programming” means any constructive process to build
a running system. It can encompass traditional programming as well
as high-level design or “model-based engineering” activities,
provided that the latter are supported by effective compiling tools
to produce a running system.</p>
        </li>
        <li id="uid10">
          <p noindent="true">We aim to provide semantically sound programming tools for
embedded systems. This translates into an emphasis on formal
methods and tools for the development of provably dependable
systems.</p>
        </li>
      </simplelist>
    </subsection>
  </presentation>
  <fondements id="uid11">
    <bodyTitle>Research Program</bodyTitle>
    <subsection id="uid12" level="1">
      <bodyTitle>Introduction</bodyTitle>
      <p>The SPADES research program is organized around three main themes,
<i>Components and contracts</i>, <i>Real-time multicore
programming</i>, and <i>Language-based fault tolerance</i>, that seek
to answer the three key questions identified in
Section <ref xlink:href="#uid3" location="intern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>. We plan to do so by developing and/or
building on programming languages and techniques based on formal
methods and formal semantics (hence the use of <i>“sound
programming”</i> in the project-team title). In particular, we seek
to support design where correctness is obtained by construction,
relying on proven tools and verified constructs, with programming
languages and programming abstractions designed with verification in
mind.</p>
    </subsection>
    <subsection id="uid13" level="1">
      <bodyTitle>Components and Contracts</bodyTitle>
      <p>Component-based construction has long been advocated as a key approach
to the “correct-by-construction” design of complex embedded
systems <ref xlink:href="#spades-2016-bid1" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>. Witness component-based toolsets such
as UC Berkeley's <span class="smallcap" align="left">Ptolemy</span> <ref xlink:href="#spades-2016-bid2" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, Verimag's
BIP <ref xlink:href="#spades-2016-bid3" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, or the modular architecture frameworks
used, for instance, in the automotive industry
(AUTOSAR) <ref xlink:href="#spades-2016-bid4" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>. For building large, complex systems, a
key feature of component-based construction is the ability to
associate with components a set of <i>contracts</i>, which can be
understood as rich behavioral types that can be composed and verified
to guarantee a component assemblage will meet desired properties. The
goal in this theme is to study the formal foundations of the
component-based construction of embedded systems, to develop component
and contract theories dealing with real-time, reliability and
fault-tolerance aspects of components, and to develop
proof-assistant-based tools for the computer-aided design and
verification of component-based systems.</p>
      <p>Formal models for component-based design are an active area of
research (see <i>e.g.</i>,  <ref xlink:href="#spades-2016-bid5" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, <ref xlink:href="#spades-2016-bid6" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>). However, we are
still missing a comprehensive formal model and its associated
behavioral theory able to deal <i>at the same time</i> with different
forms of composition, dynamic component structures, and quantitative
constraints (such as timing, fault-tolerance, or energy consumption).
Notions of contracts and interface theories have been proposed to
support modular and compositional design of correct-by-construction
embedded systems (see
<i>e.g.</i>,  <ref xlink:href="#spades-2016-bid7" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, <ref xlink:href="#spades-2016-bid8" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/> and
the references therein), but having a comprehensive theory of
contracts that deals with all the above aspects is still an open
question <ref xlink:href="#spades-2016-bid9" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>. In particular, it is not clear how to
accomodate different forms of composition, reliability and
fault-tolerance aspects, or to deal with evolving component structures
in a theory of contracts.</p>
      <p>Dealing in the same component theory with heterogeneous forms of
composition, different quantitative aspects, and dynamic
configurations, requires to consider together the three elements that
comprise a component model: behavior, structure and types.
<i>Behavior</i> refers to behavioral (interaction and execution)
models that characterize the behavior of components and component
assemblages (<i>e.g.</i>, transition systems and their multiple variants –
timed, stochastic, etc.). <i>Structure</i> refers to the organization
of component assemblages or configurations, and the composition
operators they involve. <i>Types</i> refer to properties or contracts
that can be attached to components and component interfaces to
facilitate separate development and ensure the correctness of
component configurations with respect to certain properties. Taking
into account dynamicity requires to establish an explicit link between
behavior and structure, as well as to consider higher-order systems,
both of which have a direct impact on types.</p>
      <p>We plan to develop our component theory by progressing on two fronts:
component calculi, and semantical framework. The work on typed
component calculi aims to elicit process calculi that capture the main
insights of component-based design and programming and that can serve
as a bridge towards actual architecture description and programming
language developments. The work on the semantical framework should,
in the longer term, provide abstract mathematical models for the more
operational and linguistic analysis afforded by component calculi.
Our work on component theory will find its application in the
development of a <span class="smallcap" align="left">Coq</span>-based toolchain for the certified design and
construction of dependable embedded systems, which constitutes our
third main objective for this axis.</p>
    </subsection>
    <subsection id="uid14" level="1">
      <bodyTitle>Real-Time Multicore Programming</bodyTitle>
      <p>Programming real-time systems (<i>i.e.</i>, systems whose correct behavior
depends on meeting timing constraints) requires appropriate languages
(as exemplified by the family of synchronous
languages <ref xlink:href="#spades-2016-bid10" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>), but also the support of
efficient scheduling policies, execution time and schedulability
analyses to guarantee real-time constraints (<i>e.g.</i>, deadlines) while
making the most effective use of available (processing, memory, or
networking) resources. Schedulability analysis involves analyzing the
worst-case behavior of real-time tasks under a given scheduling
algorithm and is crucial to guarantee that time constraints are met in
any possible execution of the system. Reactive programming and
real-time scheduling and schedulability for multiprocessor systems are
old subjects, but they are nowhere as mature as their uniprocessor
counterparts, and still feature a number of open research
questions <ref xlink:href="#spades-2016-bid11" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, <ref xlink:href="#spades-2016-bid12" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, in particular in
relation with mixed criticality systems. The main goal in this theme
is to address several of these open questions.</p>
      <p>We intend to focus on two issues: multicriteria scheduling on
multiprocessors, and schedulability analysis for real-time
multiprocessor systems. Beyond real-time aspects, multiprocessor
environments, and multicore ones in particular, are subject to several
constraints <i>in conjunction</i>, typically involving real-time,
reliability and energy-efficiency constraints, making the scheduling
problem more complex for both the offline and the online
cases. Schedulability analysis for multiprocessor systems, in
particular for systems with mixed criticality tasks, is still very
much an open research area.</p>
      <p>Distributed reactive programming is rightly singled out as a major
open issue in the recent, but heavily biased (it essentially ignores
recent research in synchronous and dataflow programming), survey by
Bainomugisha et al. <ref xlink:href="#spades-2016-bid11" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>. For our part, we
intend to focus on two questions: devising synchronous programming
languages for distributed systems and precision-timed architectures,
and devising dataflow languages for multiprocessors supporting
dynamicity and parametricity while enjoying effective analyses for
meeting real-time, resource and energy constraints in conjunction.</p>
    </subsection>
    <subsection id="uid15" level="1">
      <bodyTitle>Language-Based Fault Tolerance</bodyTitle>
      <p>Tolerating faults is a clear and present necessity in networked
embedded systems. At the hardware level, modern multicore
architectures are manufactured using inherently unreliable
technologies <ref xlink:href="#spades-2016-bid13" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, <ref xlink:href="#spades-2016-bid14" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>. The evolution
of embedded systems towards increasingly distributed architectures
highlighted in the introductory section means that dealing with
partial failures, as in Web-based distributed systems, becomes an
important issue. While fault-tolerance is an old and much researched
topic, several important questions remain open: automation of
fault-tolerance provision, composable abstractions for
fault-tolerance, fault diagnosis, and fault isolation.</p>
      <p>The first question is related to the old question of “system
structure for fault-tolerance” as originally discussed by Randell for
software fault tolerance <ref xlink:href="#spades-2016-bid15" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, and concerns in part
our ability to clearly separate fault-tolerance aspects from the
design and programming of purely “functional” aspects of an
application. The classical arguments in favor of a clear separation of
fault-tolerance concerns from application code revolve around reduced
code and maintenance complexity <ref xlink:href="#spades-2016-bid16" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>. The second
question concerns the definition of appropriate abstractions for the
modular construction of fault-tolerant embedded systems. The current
set of techniques available for building such systems spans a wide
range, including exception handling facilities, transaction management
schemes, rollback/recovery schemes, and replication protocols.
Unfortunately, these different techniques do not necessarily compose
well – for instance, combining exception handling and transactions is
non trivial, witness the flurry of recent work on the topic, see
<i>e.g.</i>,  <ref xlink:href="#spades-2016-bid17" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/> and the references therein –, they have
no common semantical basis, and they suffer from limited programming
language support. The third question concerns the identification of
causes for faulty behavior in component-based assemblages. It is
directly related to the much researched area of fault diagnosis, fault
detection and isolation <ref xlink:href="#spades-2016-bid18" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>.</p>
      <p>We intend to address these questions by leveraging programming
language techniques (programming constructs, formal semantics, static
analyses, program transformations) with the goal to achieve provable
fault-tolerance, <i>i.e.</i>, the construction of systems whose
fault-tolerance can be formally ensured using verification tools and
proof assistants. We aim in this axis to address some of the issues
raised by the above open questions by using aspect-oriented
programming techniques and program transformations to automate the
inclusion of fault-tolerance in systems (software as well as
hardware), by exploiting reversible programming models to investigate
composable recovery abstractions, and by leveraging causality analyses
to study fault-ascription in component-based systems. Compared to the
huge literature on fault-tolerance in general, in particular in the
systems area (see <i>e.g.</i>,  <ref xlink:href="#spades-2016-bid19" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/> for an interesting but
not so recent survey), we find by comparison much less work exploiting
formal language techniques and tools to achieve or support
fault-tolerance. The works reported
in <ref xlink:href="#spades-2016-bid20" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, <ref xlink:href="#spades-2016-bid21" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, <ref xlink:href="#spades-2016-bid22" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, <ref xlink:href="#spades-2016-bid23" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, <ref xlink:href="#spades-2016-bid24" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, <ref xlink:href="#spades-2016-bid25" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, <ref xlink:href="#spades-2016-bid26" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>
provide a representative sample of recent such works.</p>
      <p>A common theme in this axis is the use and exploitation of causality
information. Causality, <i>i.e.</i>, the logical dependence of an effect on a
cause, has long been studied in disciplines such as
philosophy <ref xlink:href="#spades-2016-bid27" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, natural sciences,
law <ref xlink:href="#spades-2016-bid28" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, and statistics <ref xlink:href="#spades-2016-bid29" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, but it
has only recently emerged as an important focus of research in
computer science. The analysis of logical causality has applications
in many areas of computer science. For instance, tracking and
analyzing logical causality between events in the execution of a
concurrent system is required to ensure
reversibility <ref xlink:href="#spades-2016-bid30" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, to allow the diagnosis of faults
in a complex concurrent system <ref xlink:href="#spades-2016-bid31" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, or to enforce
accountability <ref xlink:href="#spades-2016-bid32" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, that is, designing systems in
such a way that it can be determined without ambiguity whether a
required safety or security property has been violated, and why. More
generally, the goal of fault-tolerance can be understood as being to
prevent certain causal chains from occurring by designing systems such
that each causal chain either has its premises outside of the fault
model (<i>e.g.</i>, by introducing redundancy <ref xlink:href="#spades-2016-bid19" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>), or is
broken (<i>e.g.</i>, by limiting fault propagation <ref xlink:href="#spades-2016-bid33" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>).</p>
    </subsection>
  </fondements>
  <domaine id="uid16">
    <bodyTitle>Application Domains</bodyTitle>
    <subsection id="uid17" level="1">
      <bodyTitle>Industrial Applications</bodyTitle>
      <p>Our applications are in the embedded system area, typically:
transportation, energy production, robotics, telecommunications,
systems on chip (SoC). In some areas, safety is critical, and
motivates the investment in formal methods and techniques for design.
But even in less critical contexts, like telecommunications and
multimedia, these techniques can be beneficial in improving the
efficiency and the quality of designs, as well as the cost of the
programming and the validation processes.</p>
      <p>Industrial acceptance of formal techniques, as well as their
deployment, goes necessarily through their usability by specialists of
the application domain, rather than of the formal techniques
themselves. Hence, we are looking to propose domain-specific (but
generic) realistic models, validated through experience (<i>e.g.</i>, control
tasks systems), based on formal techniques with a high degree of
automation (<i>e.g.</i>, synchronous models), and tailored for concrete
functionalities (<i>e.g.</i>, code generation).</p>
    </subsection>
    <subsection id="uid18" level="1">
      <bodyTitle>Industrial Design Tools</bodyTitle>
      <p>The commercially available design tools (such as <span class="smallcap" align="left">UML</span> with real-time
extensions, <span class="smallcap" align="left">Matlab</span>/ <span class="smallcap" align="left">Simulink</span>/
d<span class="smallcap" align="left">Space</span> <footnote id="uid19" id-text="1"><ref xlink:href="http://www.dspaceinc.com" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>www.<allowbreak/>dspaceinc.<allowbreak/>com</ref></footnote>) and execution
platforms (OS such as <span class="smallcap" align="left">VxWorks</span>, QNX, real-time versions of
<span class="smallcap" align="left">Linux</span> ...) start now to provide besides their core functionalities
design or verification methods. Some of them, founded on models of
reactive systems, come close to tools with a formal basis, such as for
example <span class="smallcap" align="left">StateMate</span> by i<span class="smallcap" align="left">Logix</span>.</p>
      <p>Regarding the synchronous approach, commercial tools are available:
<span class="smallcap" align="left">Scade</span> <footnote id="uid20" id-text="2"><ref xlink:href="http://www.esterel-technologies.com" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>www.<allowbreak/>esterel-technologies.<allowbreak/>com</ref></footnote> (based on
<span class="smallcap" align="left">Lustre</span>), <span class="smallcap" align="left">ControlBuild</span> and <span class="smallcap" align="left">RT-Builder</span> (based on
<span class="smallcap" align="left">Signal</span>) from <span class="smallcap" align="left">Geensys</span> <footnote id="uid21" id-text="3"><ref xlink:href="http://www.geensoft.com" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>www.<allowbreak/>geensoft.<allowbreak/>com</ref></footnote> (part
of <span class="smallcap" align="left">Dassault</span> <span class="smallcap" align="left">Systemes</span>), specialized environments like <span class="smallcap" align="left">CellControl</span> for
industrial automatism (by the <span class="smallcap" align="left">Inria</span> spin-off <span class="smallcap" align="left">Athys</span>– now part of
<span class="smallcap" align="left">Dassault</span> <span class="smallcap" align="left">Systemes</span>). One can observe that behind the variety of actors, there
is a real consistency of the synchronous technology, which makes sure
that the results of our work related to the synchronous approach are
not restricted to some language due to compatibility issues.</p>
    </subsection>
    <subsection id="uid22" level="1">
      <bodyTitle>Current Industrial Cooperations</bodyTitle>
      <p>Regarding applications and case studies with industrial end-users of
our techniques, we cooperate with Thales on schedulability analysis
for evolving or underspecified real-time embedded systems, with Orange
Labs on software architecture for cloud services and with Daimler on
reduction of nondeterminism and analysis of deadline miss models for
the design of automotive systems.</p>
    </subsection>
  </domaine>
  <logiciels id="uid23">
    <bodyTitle>New Software and Platforms</bodyTitle>
    <subsection id="uid24" level="1">
      <bodyTitle>pyCPA_TWCA: A pyCPA plugin for
computing deadline miss models</bodyTitle>
      <p>
        <span class="smallcap" align="left">Functional Description</span>
      </p>
      <p>We are developing pyCPA_TWCA, a pyCPA plugin for Typical Worst-Case
Analysis as described in Section <ref xlink:href="#uid39" location="intern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>. pyCPA is an
open-source Python implementation of Compositional Performance
Analysis developed at TU Braunschweig, which allows in particular
response-time analysis. pyCPA_TWCA is an extension of this tool that
is co-developed by Sophie Quinton, Zain Hammadeh (TU Braunschweig) and Leonie Ahrendts
(TU Braunschweig). It allows in particular the computation of
weakly-hard guarantees for real-time tasks, <i>i.e.</i>, the number of deadline
misses out of a sequence of executions. This year, pyCPA_TWCA has
been extended to task chains but remains limited to uniprocessor
systems, scheduled according to static priority scheduling. A public
release is planned but has not yet taken place.</p>
      <simplelist>
        <li id="uid25">
          <p noindent="true">Authors: Zain Hammadeh and Leonie Ahrendts and Sophie Quinton.</p>
        </li>
        <li id="uid26">
          <p noindent="true">Contact: Sophie Quinton.</p>
        </li>
      </simplelist>
    </subsection>
  </logiciels>
  <resultats id="uid27">
    <bodyTitle>New Results</bodyTitle>
    <subsection id="uid28" level="1">
      <bodyTitle>Components and contracts</bodyTitle>
      <participants>
        <person key="spades-2014-idp103280">
          <firstname>Alain</firstname>
          <lastname>Girault</lastname>
        </person>
        <person key="spades-2015-idp110440">
          <firstname>Christophe</firstname>
          <lastname>Prévot</lastname>
        </person>
        <person key="spades-2014-idp106152">
          <firstname>Sophie</firstname>
          <lastname>Quinton</lastname>
        </person>
        <person key="spades-2014-idp100552">
          <firstname>Jean-Bernard</firstname>
          <lastname>Stefani</lastname>
        </person>
      </participants>
      <subsection id="uid29" level="2">
        <bodyTitle>Contracts for the negotiation of embedded software
updates</bodyTitle>
        <p>We address the issue of change after deployment in safety-critical
embedded system applications in collaboration with Thales and also in
the context of the CCC project (<ref xlink:href="http://ccc-project.org/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>ccc-project.<allowbreak/>org/</ref>).</p>
        <p>The goal of CCC is to substitute lab-based verification with in-field
formal analysis to determine whether an update may be safely
applied. This is challenging because it requires an automated process
able to handle multiple viewpoints such as functional correctness,
timing, etc. For this purpose, we propose an original methodology for
contract-based negotiation of software updates. The use of contracts
allows us to cleanly split the verification effort between the lab and
the field. In addition, we show how to rely on existing
viewpoint-specific methods for update negotiation. We have validated
our approach on a concrete example inspired by the automotive domain
in collaboration with our German partners from TU
Braunschweig <ref xlink:href="#spades-2016-bid34" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>.</p>
        <p>In collaboration with Thales we mostly focus on timing aspects with
the objective to anticipate at design time future software evolutions
and identify potential schedulability bottlenecks. This year we have
presented an approach to quantify the flexibility of a system with
respect to timing. In particular we have shown that it is possible
under certain conditions to identify the task that will directly
induce the limitations on a possible software update. If performed at
design time, such a result can be used to adjust the system design by
giving more slack to the limiting task <ref xlink:href="#spades-2016-bid35" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>.</p>
      </subsection>
      <subsection id="uid30" level="2">
        <bodyTitle>Location graphs</bodyTitle>
        <p>The design of configurable systems can be streamlined and made more
systematic by adopting a component-based structure, as demonstrated
with the <span class="smallcap" align="left">Fractal</span> component model <ref xlink:href="#spades-2016-bid36" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>. However,
the formal foundations for configurable component-based systems,
featuring higher-order capabilities where components can be
dynamically instantiated and passivated, and non-hierarchical
structures where components can be contained in different composites
at the same time, are still an open topic. We have recently
introduced the location graph model <ref xlink:href="#spades-2016-bid37" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, where
components are understood as graphs of locations hosting higher-order
processes, and where component structures can be arbitrary graphs.</p>
        <p>We have continued the development of location graphs, revisiting the
underlying structural model (hypergraphs instead of graphs), and simplifying
its operational semantics while preserving the model expressivity.
Towards the development of a behavioral theory of location graphs,
we have defined different notions of bisimilarity for location graphs
and shown them to be congruences, although a fully fledged co-inductive characterization
of contextual equivalence for location graphs is still in the works.
This work has not yet been published.</p>
      </subsection>
    </subsection>
    <subsection id="uid31" level="1">
      <bodyTitle>Real-Time multicore programming</bodyTitle>
      <participants>
        <person key="spades-2014-idp101824">
          <firstname>Pascal</firstname>
          <lastname>Fradet</lastname>
        </person>
        <person key="spades-2014-idp103280">
          <firstname>Alain</firstname>
          <lastname>Girault</lastname>
        </person>
        <person key="spades-2014-idp104720">
          <firstname>Gregor</firstname>
          <lastname>Goessler</lastname>
        </person>
        <person key="spades-2014-idp107392">
          <firstname>Xavier</firstname>
          <lastname>Nicollin</lastname>
        </person>
        <person key="spades-2014-idp106152">
          <firstname>Sophie</firstname>
          <lastname>Quinton</lastname>
        </person>
      </participants>
      <subsection id="uid32" level="2">
        <bodyTitle>Time predictable programming languages</bodyTitle>
        <p>Time predictability (PRET) is a topic that emerged in 2007 as a
solution to the ever increasing unpredictability of today's embedded
processors, which results from features such as multi-level caches or
deep pipelines <ref xlink:href="#spades-2016-bid38" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>. For many real-time systems, it is
mandatory to compute a strict bound on the program's execution
time. Yet, in general, computing a tight bound is extremely
difficult <ref xlink:href="#spades-2016-bid39" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>. The rationale of PRET is to simplify
both the programming language and the execution platform to allow more
precise execution times to be easily computed <ref xlink:href="#spades-2016-bid40" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>.</p>
        <p>Following our past results on the <span class="smallcap" align="left">Pret-C</span> programming
language <ref xlink:href="#spades-2016-bid41" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, we have proposed a time predictable
synchronous programming language for multicores, called <span class="smallcap" align="left">ForeC</span>. It
extends C with a small set of <span class="smallcap" align="left">Esterel</span>-like synchronous primitives to
express concurrency, interaction with the environment, looping, and a
synchronization barrier <ref xlink:href="#spades-2016-bid42" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/> (like the
<tt>pause</tt> statement in <span class="smallcap" align="left">Esterel</span>). <span class="smallcap" align="left">ForeC</span> threads communicate with
each other via shared variables, the values of which are
<i>combined</i> at the end of each tick to maintain deterministic
execution. We provide several deterministic combine policies for
shared variables, in a way similar as concurrent
revisions <ref xlink:href="#spades-2016-bid43" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>. Thanks to this, it benefits from a
deterministic semantics. <span class="smallcap" align="left">ForeC</span> is compiled into threads that are then
statically scheduled for a target multicore chip. Our WCET analysis
takes into account the access to the shared TDMA bus and the necessary
administration for the shared variables. We achieve a very precise
WCET (the over-approximation being less than <formula type="inline"><math xmlns="http://www.w3.org/1998/Math/MathML" overflow="scroll"><mrow><mn>2</mn><mo>%</mo></mrow></math></formula>) thanks to a
reachable space exploration of the threads'
states <ref xlink:href="#spades-2016-bid44" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>. We have published a research report
presenting the complete semantics and the
compiler <ref xlink:href="#spades-2016-bid45" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, and submitted it to a journal.</p>
        <p>Furthermore, we have extended the <span class="smallcap" align="left">Pret-C</span> compiler <ref xlink:href="#spades-2016-bid41" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/> in order to make it energy aware. To
achieve this, we use dynamic voltage and frequency scaling (DFVS) and
we insert DVFS control points in the control flow graph of the <span class="smallcap" align="left">Pret-C</span> program. The difficulty is twofold: first the control flow graph is
concurrent, and second resulting optimization problem is in the 2D
space (time,energy). Thanks to a novel ILP formulation and to a
bicriteria heuristic, we are able to address the two objectives
jointly and to compute, for each <span class="smallcap" align="left">Pret-C</span> program, the Pareto front of
the non-dominated solutions in the 2D space (time,
energy) <ref xlink:href="#spades-2016-bid46" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>.</p>
        <p>This is a collaboration with Eugene Yip from Bamberg University,
and with Partha Roop and Jiajie Wang from the University of Auckland.</p>
      </subsection>
      <subsection id="uid33" level="2">
        <bodyTitle>Modular distribution of synchronous programs</bodyTitle>
        <p>Synchronous programming languages describe functionally centralized
systems, where every value, input, output, or function is always
directly available for every operation. However, most embedded systems
are nowadays composed of several computing resources. The aim of this
work is to provide a language-oriented solution to describe
<i>functionally distributed reactive systems</i>. This research
started within the Inria large scale action <span class="smallcap" align="left">Synchronics</span> and
is a joint work with Marc Pouzet (ENS, <span class="smallcap" align="left">Parkas</span> team from Rocquencourt)
and Gwenaël Delaval (UGA, <span class="smallcap" align="left">Ctrl-A</span> team from Grenoble).</p>
        <p>We are working on defining a <i>fully-conservative</i> extension of a
synchronous data-flow programming language (the <span class="smallcap" align="left">Heptagon</span> language,
inspired from <span class="smallcap" align="left">Lucid Synchrone</span> <ref xlink:href="#spades-2016-bid47" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>). The
extension, by means of <i>annotations</i> adds <i>abstract location
parameters</i> to functions, and <i>communications</i> of values
between locations. At deployment, every abstract location is assigned
an actual one; this yields an executable for each actual computing
resource. Compared to the PhD of
Gwenaël Delaval <ref xlink:href="#spades-2016-bid48" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, <ref xlink:href="#spades-2016-bid49" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, the goal here is to achieve
<i>modular</i> distribution even in the presence of non-static clocks,
<i>i.e.</i>, clocks defined according to the value of inputs.</p>
        <p>By <i>fully-conservative</i>, we have three aims in mind:</p>
        <orderedlist>
          <li id="uid34">
            <p noindent="true">A non-annotated (<i>i.e.</i>, centralized) program will be compiled
exactly as before;</p>
          </li>
          <li id="uid35">
            <p noindent="true">An annotated program eventually deployed onto only one computing
location will behave exactly as its centralized couterpart;</p>
          </li>
          <li id="uid36">
            <p noindent="true">The input-output semantics of a distributed program is the same
as its centralized counterpart.</p>
          </li>
        </orderedlist>
        <p>By <i>modular</i>, we mean that we want to compile each function of
the program into a single function capable of running on any computing
location. At deployment, the program of each location may be optimized
(by simple Boolean-constant-propagation, dead-code and unused-variable
elimination), yielding different optimized code for each computing
location.</p>
        <p>We have formalized the type-system for inferring the location of each
variable and computation. In the presence of local clocks, added
information is computed from the existing clock-calculus and the
location-calculus, to infer necessary communication of clocks between
location. All pending theorical and technical issues have been
answered, and the new compiler is being implemented, with
new algorithms for deployment (and code optimization),
achieving the three aims detailed above.</p>
      </subsection>
      <subsection id="uid37" level="2">
        <bodyTitle>Parametric dataflow models</bodyTitle>
        <p>Recent data-flow programming environments support applications whose
behavior is characterized by dynamic variations in resource
requirements. The high expressive power of the underlying models (<i>e.g.</i>, Kahn Process Networks or the CAL actor language) makes it challenging
to ensure predictable behavior. In particular, checking
<i>liveness</i> (<i>i.e.</i>, no part of the system will deadlock) and
<i>boundedness</i> (<i>i.e.</i>, the system can be executed in finite memory)
is known to be hard or even undecidable for such models. This
situation is troublesome for the design of high-quality embedded
systems.</p>
        <p>Recently, we have introduced the <i>Schedulable Parametric
Data-Flow</i> (SPDF) MoC for dynamic streaming
applications <ref xlink:href="#spades-2016-bid50" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, which extends the
standard dataflow model by allowing rates to be parametric, and the
<i>Boolean Parametric Data Flow</i> (BPDF)
MoC <ref xlink:href="#spades-2016-bid51" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, <ref xlink:href="#spades-2016-bid52" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/> which combines integer
parameters (to express dynamic rates) and boolean parameters (to
express the activation and deactivation of communication channels).
In the past years, several other parametric dataflow MoCs have
been presented. All these models aim at providing an
interesting trade-off between analyzability and expressiveness. They
offer a controlled form of dynamism under the form of parameters (<i>e.g.</i>, parametric rates), along with run-time parameter configuration.</p>
        <p>We have written a survey which provides a comprehensive description
of the existing parametric
dataflow MoCs (constructs, constraints, properties, static analyses)
and compares them using a common example <ref xlink:href="#spades-2016-bid53" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>.
The main objectives are to
help designers of streaming applications to choose the most suitable
model for their needs and to pave the way for the design of new
parametric MoCs.</p>
        <p>We have also studied <i>symbolic</i> analyses of
data-flow graphs <ref xlink:href="#spades-2016-bid54" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, <ref xlink:href="#spades-2016-bid55" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, <ref xlink:href="#spades-2016-bid56" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, <ref xlink:href="#spades-2016-bid57" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>.
Symbolic analyses express the system performance as a function of
parameters (<i>i.e.</i>, input and output rates, execution times).
Such functions can be quickly evaluated for each different configuration or
checked <i>w.r.t.</i> different quality-of-service requirements.
These analyses are useful for parametric MoCs,
partially specified graphs, and even for completely static SDF graphs.
We provide symbolic analyses for computing the maximal throughput of acyclic
synchronous dataflow graphs, the minimum required buffers for which as
soon as possible (asap) scheduling achieves this throughput, and finally the
corresponding input-output latency of the graph. We first
investigate these problems for a single
parametric edge. The results are then extended to general acyclic
graphs using linear approximation techniques. We assess the proposed
analyses experimentally on both synthetic and real benchmarks.</p>
      </subsection>
      <subsection id="uid38" level="2">
        <bodyTitle>Synthesis of switching controllers using approximately
bisimilar multiscale abstractions</bodyTitle>
        <p>The use of discrete abstractions for continuous dynamics has become
standard in hybrid systems design (see <i>e.g.</i>,  <ref xlink:href="#spades-2016-bid58" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/> and
the references therein). The main advantage of this approach is that
it offers the possibility to leverage controller synthesis techniques
developed in the areas of supervisory control of discrete-event
systems <ref xlink:href="#spades-2016-bid59" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>. The first attempts to compute discrete
abstractions for hybrid systems were based on traditional systems
behavioral relationships such as simulation or bisimulation, initially
proposed for discrete systems most notably in the area of formal
methods. These notions require inclusion or equivalence of observed
behaviors which is often too restrictive when dealing with systems
observed over metric spaces. For such systems, a more natural
abstraction requirement is to ask for closeness of observed
behaviors. This leads to the notions of approximate simulation and
bisimulation introduced in <ref xlink:href="#spades-2016-bid60" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>.</p>
        <p>These approaches are based on sampling of time and space where the
sampling parameters must satisfy some relation in order to obtain
abstractions of a prescribed precision. In particular, the smaller the
time sampling parameter, the finer the lattice used for approximating
the state-space; this may result in abstractions with a very large
number of states when the sampling period is small. However, there
are a number of applications where sampling has to be fast; though
this is generally necessary only on a small part of the state-space.
We have been exploring two approaches to overcome this state-space
explosion <ref xlink:href="#spades-2016-bid61" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>.</p>
        <p>We are currently investigating an approach using mode sequences of
given length as symbolic states for our abstractions. By using mode
sequences of variable length we are able to adapt the granularity of
our abstraction to the dynamics of the system, so as to automatically
trade off precision against controllability of the abstract states.</p>
      </subsection>
      <subsection id="uid39" level="2">
        <bodyTitle>Schedulability of weakly-hard real-time systems</bodyTitle>
        <p>We focus on the problem of computing tight deadline miss models for
real-time systems, which bound the number of potential deadline misses
in a given sequence of activations of a task. In practical
applications, such guarantees are often sufficient because many
systems are in fact not hard real-time <ref xlink:href="#spades-2016-bid62" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>.</p>
        <p>Our major contribution this year is the extension of our method for
computing deadline miss models, called Typical Worst-Case Analysis
(TWCA), to systems with task dependencies. This allows us to provide
bounds on deadline misses for systems which until now could not be
analyzed <ref xlink:href="#spades-2016-bid63" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>.</p>
        <p>In parallel, we have developed an extension of sensitivity analysis
for budgeting in the design of weakly-hard real-time systems. During
design, it often happens that some parts of a task set are fully
specified while other parameters, e.g. regarding recovery or
monitoring tasks, will be available only much later. In such cases,
sensitivity analysis can help anticipate how these missing parameters
can influence the behavior of the whole system so that a resource
budget can be allocated to them. We have developed an extension of
sensitivity analysis for deriving task budgets for systems with hard
and weakly-hard requirements. This approach has been validated on
synthetic test cases and a realistic case study given by our partner
Thales. This work will be submitted soon.</p>
        <p>Finally, in collaboration with TU Braunschweig and Daimler we have
investigated the use of TWCA in conjunction with the Logical Execution
Time paradigm  <ref xlink:href="#spades-2016-bid64" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/> according to which data are read and
written at predefined time instants. In particular, we have extended
TWCA to different deadline miss handling strategies. This work has not
been published yet.</p>
      </subsection>
    </subsection>
    <subsection id="uid40" level="1">
      <bodyTitle>Language Based Fault-Tolerance</bodyTitle>
      <participants>
        <person key="spades-2014-idp101824">
          <firstname>Pascal</firstname>
          <lastname>Fradet</lastname>
        </person>
        <person key="spades-2014-idp103280">
          <firstname>Alain</firstname>
          <lastname>Girault</lastname>
        </person>
        <person key="spades-2014-idp111136">
          <firstname>Yoann</firstname>
          <lastname>Geoffroy</lastname>
        </person>
        <person key="spades-2014-idp104720">
          <firstname>Gregor</firstname>
          <lastname>Goessler</lastname>
        </person>
        <person key="spades-2014-idp100552">
          <firstname>Jean-Bernard</firstname>
          <lastname>Stefani</lastname>
        </person>
        <person key="spades-2015-idp119216">
          <firstname>Martin</firstname>
          <lastname>Vassor</lastname>
        </person>
        <person key="spades-2016-idp167344">
          <firstname>Athena</firstname>
          <lastname>Abdi</lastname>
        </person>
      </participants>
      <subsection id="uid41" level="2">
        <bodyTitle>Fault Ascription in Concurrent Systems</bodyTitle>
        <p>The failure of one component may entail a cascade of failures in other
components; several components may also fail independently. In such
cases, elucidating the exact scenario that led to the failure is a
complex and tedious task that requires significant expertise.</p>
        <p>The notion of causality <i>(did an event <formula type="inline"><math xmlns="http://www.w3.org/1998/Math/MathML" overflow="scroll"><mi>e</mi></math></formula> cause an event <formula type="inline"><math xmlns="http://www.w3.org/1998/Math/MathML" overflow="scroll"><msup><mi>e</mi><mo>'</mo></msup></math></formula>?)</i>
has been studied in many disciplines, including philosophy, logic,
statistics, and law. The definitions of causality studied in these
disciplines usually amount to variants of the counterfactual test
“<formula type="inline"><math xmlns="http://www.w3.org/1998/Math/MathML" overflow="scroll"><mi>e</mi></math></formula> is a cause of <formula type="inline"><math xmlns="http://www.w3.org/1998/Math/MathML" overflow="scroll"><msup><mi>e</mi><mo>'</mo></msup></math></formula> if both <formula type="inline"><math xmlns="http://www.w3.org/1998/Math/MathML" overflow="scroll"><mi>e</mi></math></formula> and <formula type="inline"><math xmlns="http://www.w3.org/1998/Math/MathML" overflow="scroll"><msup><mi>e</mi><mo>'</mo></msup></math></formula> have occurred, and in a
world that is as close as possible to the actual world but where <formula type="inline"><math xmlns="http://www.w3.org/1998/Math/MathML" overflow="scroll"><mi>e</mi></math></formula>
does not occur, <formula type="inline"><math xmlns="http://www.w3.org/1998/Math/MathML" overflow="scroll"><msup><mi>e</mi><mo>'</mo></msup></math></formula> does not occur either”. In computer science,
almost all definitions of logical causality — including the landmark
definition of <ref xlink:href="#spades-2016-bid65" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/> and its derivatives — rely
on a causal model that may not be known, for instance in presence of
black-box components. For such systems, we have been developing a
framework for blaming that helps us establish the causal relationship
between component failures and system failures, given an observed
system execution trace. The analysis is based on a formalization of
counterfactual reasoning <ref xlink:href="#spades-2016-bid66" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>.</p>
        <p>In his PhD thesis, Yoann Geoffroy proposed a generalization of our fault
ascription technique to systems composed of black-box and white-box
components. For the latter a faithful behavioral model is given but no
specification. The approach leverages results from game theory and
discrete controller synthesis to define several notions of causality.</p>
        <p>We are currently working on an instantiation of our general semantic
framework for fault ascription in  <ref xlink:href="#spades-2016-bid67" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/> to
acyclic models of computation, in order to compare our approach with
the standard definition of <i>actual causality</i> proposed by Halpern
and Pearl.</p>
      </subsection>
      <subsection id="uid42" level="2">
        <bodyTitle>Tradeoff exploration between energy consumption and execution time</bodyTitle>
        <p>We have continued our work on multi-criteria scheduling, in two
directions. First, in the context of dynamic applications that are
launched and terminated on an embedded homogeneous multi-core chip,
under execution time and energy consumption constraints, we have
proposed a two layer adaptive scheduling method. In the first layer,
each application (represented as a DAG of tasks) is scheduled
statically on subsets of cores: 2 cores, 3 cores, 4 cores, and so
on. For each size of these sets (2, 3, 4, ...), there may be only
one topology or several topologies. For instance, for 2 or 3 cores
there is only one topology (a “line”), while for 4 cores there are
three distinct topologies (“line”, “square”, and
“T shape”). Moreover, for each topology, we generate statically
several schedules, each one subject to a different total energy
consumption constraint, and consequently with a different Worst-Case
Reaction Time (WCRT). Coping with the energy consumption constraints
is achieved thanks to Dynamic Frequency and Voltage Scaling (DVFS). In
the second layer, we use these pre-generated static schedules to
reconfigure dynamically the applications running on the multi-core
each time a new application is launched or an existing one is
stopped. The goal of the second layer is to perform a dynamic global
optimization of the configuration, such that each running application
meets a pre-defined quality-of-service constraint (translated into an
upper bound on its WCRT) and such that the total energy consumption be
minimized. For this, we <i>(i)</i> allocate a sufficient number of
cores to each active application, <i>(ii)</i> allocate the unassigned
cores to the applications yielding the largest gain in energy, and
<i>(iii)</i> choose for each application the best topology for its
subset of cores (<i>i.e.</i>, better than the by default “line”
topology). This is a joint work with Ismail Assayad (U. Casablanca, Morocco) who
visited the team in September 2015.</p>
        <p>Second, in the context of a static application (again represented a
DAG of tasks) running on an homogeneous multi-core chip, we have
worked on the static scheduling minimizing the WCRT of the application
under the multiple constraints that the reliability, the power
consumption, and the temperature remain below some given thresholds.
There are multiple difficulties: <i>(i)</i> the reliability is not an
invariant measure w.r.t. time, which makes it impossible to use
backtrack-free scheduling algorithms such as list
scheduling <ref xlink:href="#spades-2016-bid68" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>; to overcome this, we adopt instead the
Global System Failure Rate (GSFR) as a measure of the system's
reliability, which is invariant with time <ref xlink:href="#spades-2016-bid69" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>;
<i>(ii)</i> keeping the power consumption under a given threshold
requires to lower the voltage and frequency, but this has a negative
impact both on the WCRT and on the GSFR; keeping the GSFR below a
given threshold requires to replicate the tasks on multiple cores, but
this has a negative impact both on the WCRT, on the power consumption,
and on the temperature; <i>(iii)</i> keeping the temperature below a
given threshold is even more difficult because the temperature
continues to increase even after the activity stops, so each
scheduling decision must be assessed not based on the current state of
the chip (<i>i.e.</i>, the temperature of each core) but on the state of the
chip at the end of the candidate task, and cooling slacks must be
inserted. We have proposed a multi-criteria scheduling heuristics to
address these challenges. It produces a static schedule of the given
application graph and the given architecture description, such that
the GSFR, power, and temperature thresholds are satisfied, and such
that the execution time is minimized. We then combine our heuristic
with a variant of the <formula type="inline"><math xmlns="http://www.w3.org/1998/Math/MathML" overflow="scroll"><mi>ε</mi></math></formula>-constraint
method <ref xlink:href="#spades-2016-bid70" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/> in order to produce, for a given application
graph and a given architecture description, its entire Pareto front in
the 4D space (exec. time, GSFR, power, temp.). This is a joint work
with Athena Abdi and Hamid Zarandi from Amirkabir U., Iran, who have visited the team
in 2016.</p>
      </subsection>
      <subsection id="uid43" level="2">
        <bodyTitle>Automatic transformations for fault tolerant circuits</bodyTitle>
        <p>In the past years, we have studied the implementation of specific
fault tolerance techniques in real-time embedded systems using program
transformation <ref xlink:href="#spades-2016-bid71" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>.
We are now investigating the use of automatic transformations to
ensure fault-tolerance properties in digital circuits. To this aim, we
consider program transformations for hardware description languages
(HDL).
We consider both single-event upsets (SEU) and single-event transients
(SET) and fault models of the form <i>“at most 1 SEU or SET
within <formula type="inline"><math xmlns="http://www.w3.org/1998/Math/MathML" overflow="scroll"><mi>n</mi></math></formula> clock cycles”</i>.</p>
        <p>We have expressed several variants of triple modular redundancy (TMR)
as program transformations. We have proposed a verification-based
approach to minimize the number of voters in
TMR <ref xlink:href="#spades-2016-bid72" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>. Our technique guarantees that the
resulting circuit <i>(i)</i> is fault tolerant to the soft-errors
defined by the fault model and <i>(ii)</i> is functionally equivalent
to the initial one. Our approach operates at the logic level and takes
into account the input and output interface specifications of the
circuit. Its implementation makes use of graph traversal algorithms,
fixed-point iterations, and BDDs. Experimental results on the ITC’99
benchmark suite indicate that our method significantly decreases the
number of inserted voters which entails a hardware reduction of up to
<formula type="inline"><math xmlns="http://www.w3.org/1998/Math/MathML" overflow="scroll"><mrow><mn>55</mn><mo>%</mo></mrow></math></formula> and a clock frequency increase of up to <formula type="inline"><math xmlns="http://www.w3.org/1998/Math/MathML" overflow="scroll"><mrow><mn>35</mn><mo>%</mo></mrow></math></formula> compared to full
TMR. We address scalability issues arising from formal verification
with approximations and assess their efficiency and precision.
As our experiments show, if the SEU fault-model is replaced
with the stricter fault-model of SET, it has a minor impact on
the number of removed voters. On the other hand, BDD-based modeling of SET
effects represents a more complex task than the modeling of an SEU as a bit-flip.
We propose solutions for this task and explain the nature of encountered problems.
We discuss scalability issues arising from formal verification with approximations
and assess their efficiency and precision.</p>
      </subsection>
      <subsection id="uid44" level="2">
        <bodyTitle>Concurrent flexible reversibility</bodyTitle>
        <p>Reversible concurrent models of computation provide natively what appears to
be very fine-grained checkpoint and recovery capabilities.
We have made this intuition clear by formally comparing a distributed algorithm
for checkpointing and recovery based on causal information, and the distributed
backtracking algorithm that lies at the heart of our reversible higher-order
pi-calculus. We have shown that (a variant of) the reversible higher-order
calculus with explicit rollback can faithfully encode a distributed causal checkpoint and
recovery algorithm. The reverse is also true but under precise conditions, which restrict
the ability to rollback a computation to an identified checkpoint.
This work has currently not been published.</p>
      </subsection>
    </subsection>
  </resultats>
  <contrats id="uid45">
    <bodyTitle>Bilateral Contracts and Grants with Industry</bodyTitle>
    <subsection id="uid46" level="1">
      <bodyTitle>Bilateral Contracts with Industry</bodyTitle>
      <simplelist>
        <li id="uid47">
          <p noindent="true"><span class="smallcap" align="left">Inria</span> and Orange Labs have established this year a joint
virtual research laboratory, called <span class="smallcap" align="left">I/O Lab</span>. We have been
heavily involved in the creation of the laboratory and are actively
involved in its operation (Jean-Bernard Stefani is one of the two co-directors of
the lab). <span class="smallcap" align="left">I/O Lab</span> focuses on the network virtualization and
cloudification. As part of the work of <span class="smallcap" align="left">I/O Lab</span>, we have
cooperated with Orange Lab, as part of a cooperative research
contract funded by Orange, on defining architectural principles and
frameworks for network cloud infrastructures encompassing control
and management of computing, storage and network resources.</p>
        </li>
        <li id="uid48">
          <p noindent="true">With Daimler (subcontracting via iUTBS): We have shown how to
extend our current method for computing deadline miss models to
real-time systems designed according to the Logical Execution Time
paradigm.</p>
        </li>
      </simplelist>
    </subsection>
    <subsection id="uid49" level="1">
      <bodyTitle>Bilateral Grants with Industry</bodyTitle>
      <p>With Thales: Early Performance assessment for evolving and variable
Cyber-Physical Systems. This CIFRE grant funds the PhD of Christophe Prévot.</p>
    </subsection>
  </contrats>
  <partenariat id="uid50">
    <bodyTitle>Partnerships and Cooperations</bodyTitle>
    <subsection id="uid51" level="1">
      <bodyTitle>Regional Initiatives</bodyTitle>
      <subsection id="uid52" level="2">
        <bodyTitle>CASERM (PERSYVAL-Lab project)</bodyTitle>
        <participants>
          <person key="spades-2014-idp101824">
            <firstname>Pascal</firstname>
            <lastname>Fradet</lastname>
          </person>
          <person key="spades-2014-idp103280">
            <firstname>Alain</firstname>
            <lastname>Girault</lastname>
          </person>
          <person key="spades-2014-idp104720">
            <firstname>Gregor</firstname>
            <lastname>Goessler</lastname>
          </person>
          <person key="spades-2016-idp157328">
            <firstname>Xiaojie</firstname>
            <lastname>Guo</lastname>
          </person>
          <person key="spades-2014-idp107392">
            <firstname>Xavier</firstname>
            <lastname>Nicollin</lastname>
          </person>
          <person key="spades-2016-idp159872">
            <firstname>Stephan</firstname>
            <lastname>Plassart</lastname>
          </person>
          <person key="spades-2014-idp106152">
            <firstname>Sophie</firstname>
            <lastname>Quinton</lastname>
          </person>
          <person key="spades-2014-idp100552">
            <firstname>Jean-Bernard</firstname>
            <lastname>Stefani</lastname>
          </person>
        </participants>
        <p>Despite recent advances, there exist currently no integrated formal
methods and tools for the design and analysis of reconfigurable
multi-view embedded systems. This is the goal of the <span class="smallcap" align="left">Caserm</span> project.</p>
        <p>The <span class="smallcap" align="left">Caserm</span> project represents a significant effort towards a
<span class="smallcap" align="left">Coq</span>-based design method for reconfigurable multi-view embedded
systems, in order to formalize the structure and behavior of systems
and to prove their main properties. The use of a proof assistant to
support such a framework is motivated by the fact that the targeted
systems are both extremely complex and critical. The challenges
addressed are threefold:</p>
        <orderedlist>
          <li id="uid53">
            <p noindent="true">to model software architectures for embedded systems taking into
account their dynamicity and multiple constraints (functional as
well as non functional);</p>
          </li>
          <li id="uid54">
            <p noindent="true">to propose novel scheduling techniques for dynamically
reconfiguring embedded systems; and</p>
          </li>
          <li id="uid55">
            <p noindent="true">to advance the state of the art in automated proving for such
systems.</p>
          </li>
        </orderedlist>
        <p>The objectives of <span class="smallcap" align="left">Caserm</span> that address these challenges are organized
in three tasks. They consist respectively in designing an architecture
description framework based on a process calculus, in proposing online
optimization methods for dynamic reconfiguration systems (this is the
topic of Stephan Plassart's PhD), and in developing a formal framework for
real-time analysis in the <span class="smallcap" align="left">Coq</span> proof assistant (this is the topic of
Xiaojie Guo's PhD). A fourth task focuses on common case studies for the
evaluation of the obtained results.</p>
        <p>The <span class="smallcap" align="left">Caserm</span> consortium gathers researchers from the <span class="smallcap" align="left">G-Scop</span>, <span class="smallcap" align="left">LIG</span> and
<span class="smallcap" align="left">Verimag</span> laboratories who are reknown specialists in these fields.
The project started in November 2016 and will last three years.</p>
      </subsection>
    </subsection>
    <subsection id="uid56" level="1">
      <bodyTitle>European Initiatives</bodyTitle>
      <subsection id="uid57" level="2">
        <bodyTitle>Collaborations with Major European Organizations</bodyTitle>
        <p>We have a strong collaboration with the Technische Universität
Braunschweig in Germany. In particular, Sophie Quinton is involved in the CCC
project (<ref xlink:href="http://ccc-project.org/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>ccc-project.<allowbreak/>org/</ref>) to provide methods and
mechanisms for the verification of software updates after deployment
in safety-critical systems and in the TypicalCPA project which aims at
computing deadline miss models for distributed systems.</p>
        <p>We also a recent collaboration with the MPI-SWS in Kaiserslautern
(Germany) on formal proofs for real-time systems.</p>
      </subsection>
    </subsection>
    <subsection id="uid58" level="1">
      <bodyTitle>International Initiatives</bodyTitle>
      <subsection id="uid59" level="2">
        <bodyTitle>Inria Associate Teams Not Involved in an Inria International Labs</bodyTitle>
        <subsection id="uid60" level="3">
          <bodyTitle>
            <ref xlink:href="https://team.inria.fr/causalysis/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">Causalysis </ref>
          </bodyTitle>
          <sanspuceslist>
            <li id="uid61">
              <p noindent="true">Title: Causality Analysis for Safety-Critical Embedded Systems</p>
            </li>
            <li id="uid62">
              <p noindent="true">International Partner (Institution - Laboratory - Researcher):</p>
              <sanspuceslist>
                <li id="uid63">
                  <p noindent="true">University of Pennsylvania (United States)
- PRECISE center - Oleg Sokolsky</p>
                </li>
              </sanspuceslist>
            </li>
            <li id="uid64">
              <p noindent="true">Start year: 2015</p>
            </li>
            <li id="uid65">
              <p noindent="true">See also: <ref xlink:href="https://team.inria.fr/causalysis/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>team.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>causalysis/</ref></p>
            </li>
            <li id="uid66">
              <p noindent="true">Today's embedded systems become more and more complex, while an increasing number of safety-critical functions rely on them. Determining the cause(s) of a system-level failure and elucidating the exact scenario that led to the failure is today a complex and tedious task that requires significant expertise. The CAUSALYSIS project will develop automated approaches to causality analysis on execution logs.</p>
            </li>
          </sanspuceslist>
        </subsection>
      </subsection>
    </subsection>
    <subsection id="uid67" level="1">
      <bodyTitle>International Research Visitors</bodyTitle>
      <subsection id="uid68" level="2">
        <bodyTitle>Visits of International Scientists</bodyTitle>
        <subsection id="uid69" level="3">
          <bodyTitle>Internships</bodyTitle>
          <simplelist>
            <li id="uid70">
              <p noindent="true">Athena Abdi has been a visitor in the team from October 2015 to June
2016. She is doing her PhD at the Amirkabir University of Technology
in Teheran, Iran. In the <span class="smallcap" align="left">Spades</span> team, she is working on
multi-criteria scheduling for real-time embedded systems, addressing
the complex interplay between reliability, power consumption,
temperature, and execution time (see <ref xlink:href="#uid42" location="intern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>).</p>
            </li>
            <li id="uid71">
              <p noindent="true">Ismail Assayad has been a visitor in the team in September 2015. He is
assistant professor at the University of Casablanca, Morocco. In the
<span class="smallcap" align="left">Spades</span> team, he is working on adaptive scheduling methods and
admission control for dynamic embedded applications
(see <ref xlink:href="#uid42" location="intern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>).</p>
            </li>
          </simplelist>
        </subsection>
      </subsection>
    </subsection>
  </partenariat>
  <diffusion id="uid72">
    <bodyTitle>Dissemination</bodyTitle>
    <subsection id="uid73" level="1">
      <bodyTitle>Promoting Scientific Activities</bodyTitle>
      <subsection id="uid74" level="2">
        <bodyTitle>Scientific events organisation</bodyTitle>
        <subsection id="uid75" level="3">
          <bodyTitle>Member of organizing committees</bodyTitle>
          <simplelist>
            <li id="uid76">
              <p noindent="true">Sophie Quinton was artifact evaluation chair of the 24th International
Conference on Real-Time Networks and Systems (RTNS'16).</p>
            </li>
            <li id="uid77">
              <p noindent="true">Sophie Quinton was demo chair of the 22nd IEEE Real-Time Embedded
Technology &amp; Applications Symposium (RTAS'16)</p>
            </li>
            <li id="uid78">
              <p noindent="true">Sophie Quinton was co-chair of the 1st Tutorial on Tools for Real-Time
Systems (TuToR'16), held as a satellite event of
CPSWeek'16. <ref xlink:href="http://tutor2016.inria.fr/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>tutor2016.<allowbreak/>inria.<allowbreak/>fr/</ref></p>
            </li>
            <li id="uid79">
              <p noindent="true">Sophie Quinton was co-organizer of the 1st Workshop on Collaboration of
Academia and Industry for Real World Embedded Systems (CAIRES'16),
held as a satellite event of ESWeek'16. <ref xlink:href="http://caires2016.inria.fr/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>caires2016.<allowbreak/>inria.<allowbreak/>fr/</ref></p>
            </li>
          </simplelist>
        </subsection>
      </subsection>
      <subsection id="uid80" level="2">
        <bodyTitle>Scientific events selection</bodyTitle>
        <subsection id="uid81" level="3">
          <bodyTitle>Chair of conference program committees</bodyTitle>
          <simplelist>
            <li id="uid82">
              <p noindent="true">Gregor Gössler was co-chair of the 1st international Workshop on Causal
Reasoning for Embedded and safety-critical Systems Technologies
(CREST'16) <ref xlink:href="#spades-2016-bid73" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, held as a satellite event of
ETAPS'16. <ref xlink:href="http://crest2016.inria.fr" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>crest2016.<allowbreak/>inria.<allowbreak/>fr</ref></p>
            </li>
            <li id="uid83">
              <p noindent="true">Sophie Quinton was co-chair of the 7th International Workshop on Analysis
Tools and Methodologies for Embedded and Real-time Systems
(WATERS'16), held as a satellite event of ECRTS'16.
<ref xlink:href="http://waters2016.inria.fr" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>waters2016.<allowbreak/>inria.<allowbreak/>fr</ref></p>
            </li>
          </simplelist>
        </subsection>
        <subsection id="uid84" level="3">
          <bodyTitle>Member of conference program committees</bodyTitle>
          <simplelist>
            <li id="uid85">
              <p noindent="true">Pascal Fradet served in the program committee of the 15th International
Conference on Modularity (MODULARITY'16).</p>
            </li>
            <li id="uid86">
              <p noindent="true">Alain Girault served in the program committees of the International
Conference on Design and Test in Europe (DATE'16), the Embedded
Software conference (EMSOFT'16), and the International Symposium on
Industrial Embedded Systems (SIES'16).</p>
            </li>
            <li id="uid87">
              <p noindent="true">Sophie Quinton served in the program committees of the 28th Euromicro
Conference on Real-Time Systems (ECRTS'16), the 24th International
Conference on Real-Time Networks and Systems (RTNS'16), the 4th
International Workshop on Mixed Criticality Systems (WMC'16), the
10th Junior Researcher Workshop on Real-Time Computing (JRWRTC'16),
and in the artifact evaluation committees of ECRTS'16 and the IEEE Real-Time Systems Symposium
(RTSS'16).</p>
            </li>
            <li id="uid88">
              <p noindent="true">Jean-Bernard Stefani served on the program committees of the 36th IFIP
International Conference on Formal Techniques for Distributed
Objects, Components and Systems (FORTE) and the 8th Conference on
Reversible Computation.</p>
            </li>
          </simplelist>
        </subsection>
        <subsection id="uid89" level="3">
          <bodyTitle>Reviewer</bodyTitle>
          <simplelist>
            <li id="uid90">
              <p noindent="true">Alain Girault reviewed an article for ECRTS'16.</p>
            </li>
            <li id="uid91">
              <p noindent="true">Gregor Gössler reviewed articles for EMSOFT'16, FACS'16, and RTNS'16.</p>
            </li>
            <li id="uid92">
              <p noindent="true">Xavier Nicollin reviewed an article for SIES'16.</p>
            </li>
            <li id="uid93">
              <p noindent="true">Sophie Quinton reviewed articles for EMSOFT'16 and DATE'17.</p>
            </li>
          </simplelist>
        </subsection>
      </subsection>
      <subsection id="uid94" level="2">
        <bodyTitle>Journal</bodyTitle>
        <subsection id="uid95" level="3">
          <bodyTitle>Member of the editorial boards</bodyTitle>
          <simplelist>
            <li id="uid96">
              <p noindent="true">Alain Girault is a member of the editorial board of the EURASIP Journal
on Embedded Systems.</p>
            </li>
            <li id="uid97">
              <p noindent="true">Jean-Bernard Stefani is a member of the editorial board of Annals of
Telecommunications.</p>
            </li>
          </simplelist>
        </subsection>
        <subsection id="uid98" level="3">
          <bodyTitle>Reviewer - Reviewing activities</bodyTitle>
          <simplelist>
            <li id="uid99">
              <p noindent="true">Alain Girault reviewed articles for ACM TECS, Parallel Computing, Embedded
Systems Letters, and Microprocessors and Microsystems.</p>
            </li>
            <li id="uid100">
              <p noindent="true">Gregor Gössler reviewed articles for Formal Methods in System Design (FMSD)
and IEEE Transactions on Automatic Control (TAC).</p>
            </li>
            <li id="uid101">
              <p noindent="true">Jean-Bernard Stefani reviewed articles for Theoretical Computer Science (TCS)
and Science of Computer Programming (SCP).</p>
            </li>
          </simplelist>
        </subsection>
      </subsection>
      <subsection id="uid102" level="2">
        <bodyTitle>Research administration</bodyTitle>
        <simplelist>
          <li id="uid103">
            <p noindent="true">Pascal Fradet is head of the committee for doctoral studies (“Responsable
du comité des études doctorales”) of the <span class="smallcap" align="left">Inria</span> Grenoble – Rhône-Alpes research center
and local correspondent for the young researchers <span class="smallcap" align="left">Inria</span> mission
(mission jeunes chercheurs).</p>
          </li>
          <li id="uid104">
            <p noindent="true">Alain Girault is Vice Chair of the <span class="smallcap" align="left">Inria</span> Evaluation Committee. As such,
he co-organizes in particular the evaluation seminars of the
<span class="smallcap" align="left">Inria</span> teams (twice a year) and all the juries for the hiring and
promotion of <span class="smallcap" align="left">Inria</span>'s researchers (CR2, CR1, DR2, DR1, and DR0).</p>
          </li>
          <li id="uid105">
            <p noindent="true">Jean-Bernard Stefani is Head of science of the <span class="smallcap" align="left">Inria</span> Grenoble – Rhône-Alpes research center. As
such, he manages with the research center director all aspects of
the scientific life of the research center (creation of the research
teams and their evaluation by international panels, scientific
relationships with our academic and industrial partners, hiring of
the new junior researchers, ...).</p>
          </li>
          <li id="uid106">
            <p noindent="true">Jean-Bernard Stefani is co-director of <span class="smallcap" align="left">I/O Lab</span>, the joint research
laboratory with Orange Lab.</p>
          </li>
        </simplelist>
      </subsection>
    </subsection>
    <subsection id="uid107" level="1">
      <bodyTitle>Teaching - Supervision - Juries</bodyTitle>
      <subsection id="uid108" level="2">
        <bodyTitle>Teaching</bodyTitle>
        <sanspuceslist>
          <li id="uid109">
            <p noindent="true">Licence : Pascal Fradet, Théorie des Langages 1 &amp; 2, 36 HeqTD, niveau L3,
Grenoble INP (Ensimag), France</p>
          </li>
          <li id="uid110">
            <p noindent="true">Licence : Gregor Gössler, Théorie des Langages 2, 36 HeqTD, niveau L3,
Grenoble INP (Ensimag), France</p>
          </li>
          <li id="uid111">
            <p noindent="true">Master : Xavier Nicollin, Sémantique et Analyse des Programmes,
11,25 HeqTD, niveau M1, Grenoble INP (Ensimag), France</p>
          </li>
          <li id="uid112">
            <p noindent="true">Licence : Xavier Nicollin, Théorie des Langages 2, 36 HeqTD, niveau L3,
Grenoble INP (Ensimag), France</p>
          </li>
          <li id="uid113">
            <p noindent="true">Licence : Xavier Nicollin, Bases de la Programmation Impérative, 66
HeqTD, niveau L3, Grenoble INP (Ensimag), France</p>
          </li>
          <li id="uid114">
            <p noindent="true">Licence : Sophie Quinton, Théorie des Langages 2, 18 HeqTD, niveau L3,
Grenoble INP (Ensimag), France</p>
          </li>
          <li id="uid115">
            <p noindent="true">Master : Jean-Bernard Stefani, Formal Aspects of Component Software, 9h, MOSIG,
Univ. Grenoble Alpes, France</p>
          </li>
          <li id="uid116">
            <p noindent="true">Master : Sophie Quinton, Performance and Quantitative Properties, 6h,
MOSIG, Univ. Grenoble Alpes, France</p>
          </li>
        </sanspuceslist>
      </subsection>
      <subsection id="uid117" level="2">
        <bodyTitle>Supervision</bodyTitle>
        <simplelist>
          <li id="uid118">
            <p noindent="true">PhD: Yoann Geoffroy, “A general trace-based causality framework for
component-based systems”, Univ. Grenoble Alpes, defended on
December 7th 2016, advised by Gregor Gössler.</p>
          </li>
          <li id="uid119">
            <p noindent="true">PhD in progress: Sihem Cherrared, “Fault Management in
Multi-Tenant Programmable Networks”, Univ. Rennes 1, since October
2016, co-advised by Eric Fabre and Gregor Gössler.</p>
          </li>
          <li id="uid120">
            <p noindent="true">PhD in progress: Christophe Prévot, “Early Performance assessment for
evolving and variable Cyber-Physical Systems”, Univ. Grenoble
Alpes, since November 2015, co-advised by Alain Girault and Sophie Quinton.</p>
          </li>
          <li id="uid121">
            <p noindent="true">PhD in progress: Xiaojie Guo, “Formal Proofs for the Analysis of
Real-Time Systems in <span class="smallcap" align="left">Coq</span>”, Univ. Grenoble Alpes, since December
2016, co-advised by Pascal Fradet, Jean-François Monin, and Sophie Quinton.</p>
          </li>
          <li id="uid122">
            <p noindent="true">PhD in progress: Stephan Plassart, “On-line optimization in dynamic
real-time systems”, Univ. Grenoble Alpes, since September 2016,
co-advised by Alain Girault and Bruno Gaujal.</p>
          </li>
        </simplelist>
      </subsection>
      <subsection id="uid123" level="2">
        <bodyTitle>Juries</bodyTitle>
        <simplelist>
          <li id="uid124">
            <p noindent="true">Alain Girault was president of the HDR jury of Goran Frehse
(Univ. Grenoble Alpes).</p>
          </li>
          <li id="uid125">
            <p noindent="true">Sophie Quinton was member of the PhD jury of Houssam Zahaf (U. Lille).</p>
          </li>
          <li id="uid126">
            <p noindent="true">Jean-Bernard Stefani was president of the HDR jury of Tom Hirschowitz (U. Savoie).</p>
          </li>
        </simplelist>
      </subsection>
    </subsection>
    <subsection id="uid127" level="1">
      <bodyTitle>Popularization</bodyTitle>
      <p>Alain Girault gave a lecture to high school math professors, titled “Multi-core architectures, reliability, and optimization” (ISN conference cycle, Grenoble, February 2016).
<ref xlink:href="http://www.canal-u.tv/video/inria/architectures_multi_coeurs_ fiabilite_et_optimisation.20829" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>www.<allowbreak/>canal-u.<allowbreak/>tv/<allowbreak/>video/<allowbreak/>inria/<allowbreak/>architectures_multi_coeurs_ fiabilite_et_optimisation.<allowbreak/>20829</ref></p>
    </subsection>
  </diffusion>
  <biblio id="bibliography" html="bibliography" numero="10" titre="Bibliography">
    
    <biblStruct id="spades-2016-bid71" type="article" rend="refer" n="refercite:TECS08">
      <analytic>
        <title level="a">Implementing Fault-Tolerance in Real-Time Programs by Automatic Program Transformations</title>
        <author>
          <persName>
            <foreName>Tolga</foreName>
            <surname>Ayav</surname>
            <initial>T.</initial>
          </persName>
          <persName key="spades-2014-idp101824">
            <foreName>Pascal</foreName>
            <surname>Fradet</surname>
            <initial>P.</initial>
          </persName>
          <persName key="spades-2014-idp103280">
            <foreName>Alain</foreName>
            <surname>Girault</surname>
            <initial>A.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-editorial-board="yes" x-international-audience="yes">
        <title level="j">ACM Trans. Embedd. Comput. Syst.</title>
        <imprint>
          <biblScope type="volume">7</biblScope>
          <biblScope type="number">4</biblScope>
          <dateStruct>
            <month>July</month>
            <year>2008</year>
          </dateStruct>
          <biblScope type="pages">1–43</biblScope>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid36" type="article" rend="refer" n="refercite:Bruneton06SPE">
      <analytic>
        <title level="a">The Fractal Component Model and its Support in Java</title>
        <author>
          <persName>
            <foreName>Eric</foreName>
            <surname>Bruneton</surname>
            <initial>E.</initial>
          </persName>
          <persName>
            <foreName>Thierry</foreName>
            <surname>Coupaye</surname>
            <initial>T.</initial>
          </persName>
          <persName>
            <foreName>Matthieu</foreName>
            <surname>Leclercq</surname>
            <initial>M.</initial>
          </persName>
          <persName>
            <foreName>Vivien</foreName>
            <surname>Quema</surname>
            <initial>V.</initial>
          </persName>
          <persName key="spades-2014-idp100552">
            <foreName>Jean-Bernard</foreName>
            <surname>Stefani</surname>
            <initial>J.-B.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">Software - Practice and Experience</title>
        <imprint>
          <biblScope type="volume">36</biblScope>
          <biblScope type="number">11-12</biblScope>
          <dateStruct>
            <year>2006</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid62" type="inproceedings" rend="refer" n="refercite:frehse:hal-01097622">
      <identifiant type="hal" value="hal-01097622"/>
      <analytic>
        <title level="a">Formal Analysis of Timing Effects on Closed-loop Properties of Control Software</title>
        <author>
          <persName>
            <foreName>Goran</foreName>
            <surname>Frehse</surname>
            <initial>G.</initial>
          </persName>
          <persName>
            <foreName>Arne</foreName>
            <surname>Hamann</surname>
            <initial>A.</initial>
          </persName>
          <persName key="spades-2014-idp106152">
            <foreName>Sophie</foreName>
            <surname>Quinton</surname>
            <initial>S.</initial>
          </persName>
          <persName>
            <foreName>Matthias</foreName>
            <surname>Wöhrle</surname>
            <initial>M.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="m">35th IEEE Real-Time Systems Symposium 2014 (RTSS)</title>
        <loc>Rome, Italy</loc>
        <imprint>
          <dateStruct>
            <month>December</month>
            <year>2014</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01097622" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01097622</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid61" type="article" rend="refer" n="refercite:girard:hal-01197426">
      <identifiant type="doi" value="10.1109/TAC.2015.2478131"/>
      <identifiant type="hal" value="hal-01197426"/>
      <analytic>
        <title level="a">Safety Controller Synthesis for Incrementally Stable Switched Systems Using Multiscale Symbolic Models</title>
        <author>
          <persName>
            <foreName>Antoine</foreName>
            <surname>Girard</surname>
            <initial>A.</initial>
          </persName>
          <persName>
            <foreName>Gregor</foreName>
            <surname>Gössler</surname>
            <initial>G.</initial>
          </persName>
          <persName>
            <foreName>Sebti</foreName>
            <surname>Mouelhi</surname>
            <initial>S.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-editorial-board="yes" x-international-audience="yes">
        <title level="j">IEEE Transactions on Automatic Control</title>
        <imprint>
          <biblScope type="volume">61</biblScope>
          <biblScope type="number">6</biblScope>
          <dateStruct>
            <year>2016</year>
          </dateStruct>
          <biblScope type="pages">1537-1549</biblScope>
          <ref xlink:href="https://hal.archives-ouvertes.fr/hal-01197426" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>archives-ouvertes.<allowbreak/>fr/<allowbreak/>hal-01197426</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid81" type="article" rend="refer" n="refercite:giraultkalla09">
      <identifiant type="hal" value="inria-00177117"/>
      <analytic>
        <title level="a">A Novel Bicriteria Scheduling Heuristics Providing a Guaranteed Global System Failure Rate</title>
        <author>
          <persName key="spades-2014-idp103280">
            <foreName>Alain</foreName>
            <surname>Girault</surname>
            <initial>A.</initial>
          </persName>
          <persName>
            <foreName>Hamoudi</foreName>
            <surname>Kalla</surname>
            <initial>H.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-editorial-board="yes" x-international-audience="yes">
        <title level="j">IEEE Trans. Dependable Secure Comput.</title>
        <imprint>
          <biblScope type="volume">6</biblScope>
          <biblScope type="number">4</biblScope>
          <dateStruct>
            <month>December</month>
            <year>2009</year>
          </dateStruct>
          <biblScope type="pages">241–254</biblScope>
          <ref xlink:href="http://hal.inria.fr/inria-00177117" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>inria-00177117</ref>
        </imprint>
      </monogr>
      <note type="bnote">Research report Inria 6319</note>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid66" type="article" rend="refer" n="refercite:gossler:hal-01211484">
      <identifiant type="doi" value="10.1016/j.scico.2015.06.010"/>
      <identifiant type="hal" value="hal-01211484"/>
      <analytic>
        <title level="a">A general framework for blaming in component-based systems</title>
        <author>
          <persName>
            <foreName>Gregor</foreName>
            <surname>Gössler</surname>
            <initial>G.</initial>
          </persName>
          <persName key="privatics-2014-idp66104">
            <foreName>Daniel</foreName>
            <surname>Le Métayer</surname>
            <initial>D.</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">113, Part 3</biblScope>
          <dateStruct>
            <year>2015</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01211484" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01211484</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid79" type="article" rend="refer" n="refercite:LengletSS11">
      <analytic>
        <title level="a">Characterizing Contextual Equivalence in Calculi with Passivation</title>
        <author>
          <persName key="pareo-2014-idp71504">
            <foreName>Serguei</foreName>
            <surname>Lenglet</surname>
            <initial>S.</initial>
          </persName>
          <persName key="celtique-2014-idm25128">
            <foreName>Alan</foreName>
            <surname>Schmitt</surname>
            <initial>A.</initial>
          </persName>
          <persName key="spades-2014-idp100552">
            <foreName>Jean-Bernard</foreName>
            <surname>Stefani</surname>
            <initial>J.-B.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">Inf. Comput.</title>
        <imprint>
          <biblScope type="volume">209</biblScope>
          <biblScope type="number">11</biblScope>
          <dateStruct>
            <year>2011</year>
          </dateStruct>
          <biblScope type="pages">1390-1433</biblScope>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid82" type="inproceedings" rend="refer" n="refercite:QuintonHE12">
      <identifiant type="doi" value="10.1109/DATE.2012.6176523"/>
      <analytic>
        <title level="a">Formal analysis of sporadic overload in real-time systems</title>
        <author>
          <persName key="spades-2014-idp106152">
            <foreName>Sophie</foreName>
            <surname>Quinton</surname>
            <initial>S.</initial>
          </persName>
          <persName>
            <foreName>Matthias</foreName>
            <surname>Hanke</surname>
            <initial>M.</initial>
          </persName>
          <persName>
            <foreName>Rolf</foreName>
            <surname>Ernst</surname>
            <initial>R.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="m">2012 Design, Automation &amp; Test in Europe Conference &amp; Exhibition, DATE 2012, Dresden, Germany, March, 2012</title>
        <imprint>
          <dateStruct>
            <year>2012</year>
          </dateStruct>
          <biblScope type="pages">515–520</biblScope>
          <ref xlink:href="http://dx.doi.org/10.1109/DATE.2012.6176523" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>dx.<allowbreak/>doi.<allowbreak/>org/<allowbreak/>10.<allowbreak/>1109/<allowbreak/>DATE.<allowbreak/>2012.<allowbreak/>6176523</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid80" type="article" rend="refer" n="refercite:SCP12">
      <analytic>
        <title level="a">Aspects preserving properties</title>
        <author>
          <persName>
            <foreName>Simplice</foreName>
            <surname>Djoko Djoko</surname>
            <initial>S.</initial>
          </persName>
          <persName key="ascola-2014-idp69088">
            <foreName>Rémi</foreName>
            <surname>Douence</surname>
            <initial>R.</initial>
          </persName>
          <persName key="spades-2014-idp101824">
            <foreName>Pascal</foreName>
            <surname>Fradet</surname>
            <initial>P.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">Science of Computer Programming</title>
        <imprint>
          <biblScope type="volume">77</biblScope>
          <biblScope type="number">3</biblScope>
          <dateStruct>
            <year>2012</year>
          </dateStruct>
          <biblScope type="pages">393-422</biblScope>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid73" type="proceedings" rend="year" n="cite:gossler:hal-01378792">
      <identifiant type="doi" value="10.4204/EPTCS.224"/>
      <identifiant type="hal" value="hal-01378792"/>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="yes">
        <title level="m">Proceedings First Workshop on Causal Reasoning for Embedded and safety-critical Systems Technologies</title>
        <title level="s">EPTCS</title>
        <editor role="editor">
          <persName>
            <foreName>Gregor</foreName>
            <surname>Gössler</surname>
            <initial>G.</initial>
          </persName>
          <persName>
            <foreName>Oleg</foreName>
            <surname>Sokolsky</surname>
            <initial>O.</initial>
          </persName>
        </editor>
        <imprint>
          <biblScope type="volume">224</biblScope>
          <dateStruct>
            <month>August</month>
            <year>2016</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01378792" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01378792</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid75" type="proceedings" rend="year" n="cite:nelis:hal-01305183">
      <identifiant type="hal" value="hal-01305183"/>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="yes">
        <title level="m">Work-in-Progress and Demo Proceedings - 2016 IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS)</title>
        <editor role="editor">
          <persName>
            <foreName>Vincent</foreName>
            <surname>Nélis</surname>
            <initial>V.</initial>
          </persName>
          <persName key="spades-2014-idp106152">
            <foreName>Sophie</foreName>
            <surname>Quinton</surname>
            <initial>S.</initial>
          </persName>
        </editor>
        <imprint>
          <dateStruct>
            <month>April</month>
            <year>2016</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01305183" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01305183</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid76" type="article" rend="year" n="cite:aubert:hal-01229408">
      <identifiant type="hal" value="hal-01229408"/>
      <analytic>
        <title level="a">Contextual equivalences in configuration structures and reversibility</title>
        <author>
          <persName key="spades-2015-idp111688">
            <foreName>Clément</foreName>
            <surname>Aubert</surname>
            <initial>C.</initial>
          </persName>
          <persName>
            <foreName>Ioana</foreName>
            <surname>Cristescu</surname>
            <initial>I.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-editorial-board="yes" x-international-audience="yes" id="rid02911">
        <idno type="issn">2352-2208</idno>
        <title level="j">Journal of Logical and Algebraic Methods in Programming</title>
        <imprint>
          <dateStruct>
            <year>2016</year>
          </dateStruct>
          <ref xlink:href="https://hal.archives-ouvertes.fr/hal-01229408" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>archives-ouvertes.<allowbreak/>fr/<allowbreak/>hal-01229408</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid53" type="article" rend="year" n="cite:bouakaz:hal-01417126">
      <identifiant type="hal" value="hal-01417126"/>
      <analytic>
        <title level="a">A Survey of Parametric Dataflow Models of Computation</title>
        <author>
          <persName key="spades-2014-idp112384">
            <foreName>Adnan</foreName>
            <surname>Bouakaz</surname>
            <initial>A.</initial>
          </persName>
          <persName key="spades-2014-idp101824">
            <foreName>Pascal</foreName>
            <surname>Fradet</surname>
            <initial>P.</initial>
          </persName>
          <persName key="spades-2014-idp103280">
            <foreName>Alain</foreName>
            <surname>Girault</surname>
            <initial>A.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-editorial-board="yes" x-international-audience="yes" id="rid00022">
        <idno type="issn">1084-4309</idno>
        <title level="j">ACM Transactions on Design Automation of Electronic Systems (TODAES)</title>
        <imprint>
          <dateStruct>
            <month>January</month>
            <year>2017</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01417126" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01417126</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid57" type="article" rend="year" n="cite:bouakaz:hal-01417146">
      <identifiant type="hal" value="hal-01417146"/>
      <analytic>
        <title level="a">Symbolic Analyses of Dataflow Graphs</title>
        <author>
          <persName key="spades-2014-idp112384">
            <foreName>Adnan</foreName>
            <surname>Bouakaz</surname>
            <initial>A.</initial>
          </persName>
          <persName key="spades-2014-idp101824">
            <foreName>Pascal</foreName>
            <surname>Fradet</surname>
            <initial>P.</initial>
          </persName>
          <persName key="spades-2014-idp103280">
            <foreName>Alain</foreName>
            <surname>Girault</surname>
            <initial>A.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-editorial-board="yes" x-international-audience="yes" id="rid00022">
        <idno type="issn">1084-4309</idno>
        <title level="j">ACM Transactions on Design Automation of Electronic Systems (TODAES)</title>
        <imprint>
          <dateStruct>
            <month>January</month>
            <year>2017</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01417146" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01417146</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid78" type="article" rend="year" n="cite:girard:hal-01197426">
      <identifiant type="doi" value="10.1109/TAC.2015.2478131"/>
      <identifiant type="hal" value="hal-01197426"/>
      <analytic>
        <title level="a">Safety Controller Synthesis for Incrementally Stable Switched Systems Using Multiscale Symbolic Models</title>
        <author>
          <persName>
            <foreName>Antoine</foreName>
            <surname>Girard</surname>
            <initial>A.</initial>
          </persName>
          <persName>
            <foreName>Gregor</foreName>
            <surname>Gössler</surname>
            <initial>G.</initial>
          </persName>
          <persName>
            <foreName>Sebti</foreName>
            <surname>Mouelhi</surname>
            <initial>S.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-editorial-board="yes" x-international-audience="yes" id="rid00707">
        <idno type="issn">0018-9286</idno>
        <title level="j">IEEE Transactions on Automatic Control</title>
        <imprint>
          <biblScope type="volume">61</biblScope>
          <biblScope type="number">6</biblScope>
          <dateStruct>
            <year>2016</year>
          </dateStruct>
          <biblScope type="pages">1537-1549</biblScope>
          <ref xlink:href="https://hal.archives-ouvertes.fr/hal-01197426" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>archives-ouvertes.<allowbreak/>fr/<allowbreak/>hal-01197426</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid74" type="article" rend="year" n="cite:lanese:hal-01303090">
      <identifiant type="doi" value="10.1016/j.tcs.2016.02.019"/>
      <identifiant type="hal" value="hal-01303090"/>
      <analytic>
        <title level="a">Reversibility in the higher-order π-calculus</title>
        <author>
          <persName key="focus-2014-idp88376">
            <foreName>Ivan</foreName>
            <surname>Lanese</surname>
            <initial>I.</initial>
          </persName>
          <persName>
            <foreName>Claudio Antares</foreName>
            <surname>Mezzina</surname>
            <initial>C. A.</initial>
          </persName>
          <persName key="spades-2014-idp100552">
            <foreName>Jean-Bernard</foreName>
            <surname>Stefani</surname>
            <initial>J.-B.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-editorial-board="yes" x-international-audience="yes" id="rid01855">
        <idno type="issn">0304-3975</idno>
        <title level="j">Theoretical Computer Science</title>
        <imprint>
          <biblScope type="volume">625</biblScope>
          <dateStruct>
            <year>2016</year>
          </dateStruct>
          <biblScope type="pages">25-84</biblScope>
          <ref xlink:href="https://hal.inria.fr/hal-01303090" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01303090</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid55" type="inproceedings" rend="year" n="cite:bouakaz:hal-01253168">
      <identifiant type="doi" value="10.1109/RTAS.2016.7461360"/>
      <identifiant type="hal" value="hal-01253168"/>
      <analytic>
        <title level="a">Symbolic Buffer Sizing for Throughput-Optimal Scheduling of Dataflow Graphs</title>
        <author>
          <persName key="spades-2014-idp112384">
            <foreName>Adnan</foreName>
            <surname>Bouakaz</surname>
            <initial>A.</initial>
          </persName>
          <persName key="spades-2014-idp101824">
            <foreName>Pascal</foreName>
            <surname>Fradet</surname>
            <initial>P.</initial>
          </persName>
          <persName key="spades-2014-idp103280">
            <foreName>Alain</foreName>
            <surname>Girault</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">RTAS 2016 - 22nd IEEE Real-Time Embedded Technology &amp; Applications Symposium</title>
        <loc>Vienne, Austria</loc>
        <imprint>
          <dateStruct>
            <month>April</month>
            <year>2016</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01253168" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01253168</ref>
        </imprint>
        <meeting id="cid93721">
          <title>IEEE Real-Time and Embedded Technology and Applications Symposium</title>
          <num>22</num>
          <abbr type="sigle">RTAS</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid56" type="inproceedings" rend="year" n="cite:bouakaz:hal-01417111">
      <identifiant type="hal" value="hal-01417111"/>
      <analytic>
        <title level="a">Symbolic computation of the latency for dataflow graphs</title>
        <author>
          <persName key="spades-2014-idp112384">
            <foreName>Adnan</foreName>
            <surname>Bouakaz</surname>
            <initial>A.</initial>
          </persName>
          <persName key="spades-2014-idp101824">
            <foreName>Pascal</foreName>
            <surname>Fradet</surname>
            <initial>P.</initial>
          </persName>
          <persName key="spades-2014-idp103280">
            <foreName>Alain</foreName>
            <surname>Girault</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">Integrating Dataflow, Embedded computing and Architecture (IDEA'2016)</title>
        <loc>Vienne, Austria</loc>
        <imprint>
          <dateStruct>
            <month>April</month>
            <year>2016</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01417111" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01417111</ref>
        </imprint>
        <meeting id="cid625370">
          <title>Integrating Dataflow, Embedded computing and Architecture Conference</title>
          <num>2016</num>
          <abbr type="sigle">IDEA</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid63" type="inproceedings" rend="year" n="cite:hammadeh:hal-01426632">
      <identifiant type="hal" value="hal-01426632"/>
      <analytic>
        <title level="a">Bounding Deadline Misses in Weakly-Hard Real-Time Systems with Task Dependencies</title>
        <author>
          <persName key="spades-2016-idp174832">
            <foreName>Zain A. H.</foreName>
            <surname>Hammadeh</surname>
            <initial>Z. A. H.</initial>
          </persName>
          <persName>
            <foreName>Ernst</foreName>
            <surname>Rolf</surname>
            <initial>E.</initial>
          </persName>
          <persName key="spades-2014-idp106152">
            <foreName>Sophie</foreName>
            <surname>Quinton</surname>
            <initial>S.</initial>
          </persName>
          <persName>
            <foreName>Rafik</foreName>
            <surname>Henia</surname>
            <initial>R.</initial>
          </persName>
          <persName>
            <foreName>Laurent</foreName>
            <surname>Rioux</surname>
            <initial>L.</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">Design, Automation and Test in Europe</title>
        <loc>Lausanne, Switzerland</loc>
        <imprint>
          <dateStruct>
            <month>March</month>
            <year>2017</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01426632" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01426632</ref>
        </imprint>
        <meeting id="cid58552">
          <title>Design, Automation, and Test in Europe</title>
          <num>19</num>
          <abbr type="sigle">DATE</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid35" type="inproceedings" rend="year" n="cite:henia:hal-01426658">
      <identifiant type="hal" value="hal-01426658"/>
      <analytic>
        <title level="a">Quantifying the Flexibility of Real-Time Systems</title>
        <author>
          <persName>
            <foreName>Rafik</foreName>
            <surname>Henia</surname>
            <initial>R.</initial>
          </persName>
          <persName key="spades-2014-idp103280">
            <foreName>Alain</foreName>
            <surname>Girault</surname>
            <initial>A.</initial>
          </persName>
          <persName key="spades-2015-idp110440">
            <foreName>Christophe</foreName>
            <surname>Prévot</surname>
            <initial>C.</initial>
          </persName>
          <persName key="spades-2014-idp106152">
            <foreName>Sophie</foreName>
            <surname>Quinton</surname>
            <initial>S.</initial>
          </persName>
          <persName>
            <foreName>Laurent</foreName>
            <surname>Rioux</surname>
            <initial>L.</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">10th Junior Researcher Workshop on Real-Time Computing</title>
        <loc>Brest, France</loc>
        <imprint>
          <dateStruct>
            <month>October</month>
            <year>2016</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01426658" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01426658</ref>
        </imprint>
        <meeting id="cid350186">
          <title>Junior Researcher Workshop on Real-Time Computing</title>
          <num>10</num>
          <abbr type="sigle">JRWRTC</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid34" type="inproceedings" rend="year" n="cite:holthusen:hal-01426654">
      <identifiant type="doi" value="10.4204/EPTCS.208.3"/>
      <identifiant type="hal" value="hal-01426654"/>
      <analytic>
        <title level="a">Using Multi-Viewpoint Contracts for Negotiation of Embedded Software Updates</title>
        <author>
          <persName>
            <foreName>Sönke</foreName>
            <surname>Holthusen</surname>
            <initial>S.</initial>
          </persName>
          <persName key="spades-2014-idp106152">
            <foreName>Sophie</foreName>
            <surname>Quinton</surname>
            <initial>S.</initial>
          </persName>
          <persName>
            <foreName>Ina</foreName>
            <surname>Schaefer</surname>
            <initial>I.</initial>
          </persName>
          <persName>
            <foreName>Johannes</foreName>
            <surname>Schlatow</surname>
            <initial>J.</initial>
          </persName>
          <persName>
            <foreName>Martin</foreName>
            <surname>Wegner</surname>
            <initial>M.</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">Workshop on Pre- and Post-Deployment Verification Techniques</title>
        <loc>Reykjavik, Iceland</loc>
        <imprint>
          <dateStruct>
            <month>June</month>
            <year>2016</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01426654" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01426654</ref>
        </imprint>
        <meeting id="cid625371">
          <title>Workshop on Pre- and Post-Deployment Verification Techniques</title>
          <num>2016</num>
          <abbr type="sigle"/>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid46" type="inproceedings" rend="year" n="cite:wang:hal-01412100">
      <identifiant type="doi" value="10.1145/2968478.2968500"/>
      <identifiant type="hal" value="hal-01412100"/>
      <analytic>
        <title level="a">Energy and timing aware synchronous programming</title>
        <author>
          <persName key="rits-2014-idp90776">
            <foreName>Jiajie</foreName>
            <surname>Wang</surname>
            <initial>J.</initial>
          </persName>
          <persName>
            <foreName>Patha S</foreName>
            <surname>Roop</surname>
            <initial>P. S.</initial>
          </persName>
          <persName key="spades-2014-idp103280">
            <foreName>Alain</foreName>
            <surname>Girault</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">International Conference on Embedded Software, EMSOFT'16</title>
        <loc>Pittsburgh, United States</loc>
        <imprint>
          <publisher>
            <orgName>ACM</orgName>
          </publisher>
          <dateStruct>
            <month>October</month>
            <year>2016</year>
          </dateStruct>
          <biblScope type="pages">10</biblScope>
          <ref xlink:href="https://hal.inria.fr/hal-01412100" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01412100</ref>
        </imprint>
        <meeting id="cid19044">
          <title>ACM International Conference on Embedded Software</title>
          <num>2016</num>
          <abbr type="sigle">EMSOFT</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid44" type="inproceedings" rend="year" n="cite:yip:hal-01412102">
      <identifiant type="hal" value="hal-01412102"/>
      <analytic>
        <title level="a">The ForeC Synchronous Deterministic Parallel Programming Language for Multicores</title>
        <author>
          <persName key="spades-2014-idp114864">
            <foreName>Eugene</foreName>
            <surname>Yip</surname>
            <initial>E.</initial>
          </persName>
          <persName key="spades-2014-idp103280">
            <foreName>Alain</foreName>
            <surname>Girault</surname>
            <initial>A.</initial>
          </persName>
          <persName key="spades-2014-idp121080">
            <foreName>Partha S</foreName>
            <surname>Roop</surname>
            <initial>P. S.</initial>
          </persName>
          <persName>
            <foreName>Morteza</foreName>
            <surname>Biglari-Abhari</surname>
            <initial>M.</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">IEEE 10th International Symposium on Embedded Multicore/Many-core Systems-on-Chip, MCSoC'16</title>
        <loc>Lyon, France</loc>
        <imprint>
          <publisher>
            <orgName>IEEE</orgName>
          </publisher>
          <dateStruct>
            <month>September</month>
            <year>2016</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01412102" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01412102</ref>
        </imprint>
        <meeting id="cid624174">
          <title>IEEE International Symposium on Embedded Multicore/Many-core SoCs</title>
          <num>10</num>
          <abbr type="sigle">MCSoC</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid54" type="techreport" rend="year" n="cite:bouakaz:hal-01166360">
      <identifiant type="hal" value="hal-01166360"/>
      <monogr>
        <title level="m">Symbolic Analysis of Dataflow Graphs (Extended Version)</title>
        <author>
          <persName key="spades-2014-idp112384">
            <foreName>Adnan</foreName>
            <surname>Bouakaz</surname>
            <initial>A.</initial>
          </persName>
          <persName key="spades-2014-idp101824">
            <foreName>Pascal</foreName>
            <surname>Fradet</surname>
            <initial>P.</initial>
          </persName>
          <persName key="spades-2014-idp103280">
            <foreName>Alain</foreName>
            <surname>Girault</surname>
            <initial>A.</initial>
          </persName>
        </author>
        <imprint>
          <biblScope type="number">8742</biblScope>
          <publisher>
            <orgName type="institution">Inria - Research Centre Grenoble – Rhône-Alpes</orgName>
          </publisher>
          <dateStruct>
            <month>January</month>
            <year>2016</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01166360" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01166360</ref>
        </imprint>
      </monogr>
      <note type="typdoc">Research Report</note>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid72" type="techreport" rend="year" n="cite:burlyaev:hal-01417164">
      <identifiant type="hal" value="hal-01417164"/>
      <monogr>
        <title level="m">A static analysis for the minimization of voters in fault-tolerant circuits</title>
        <author>
          <persName key="spades-2014-idp109912">
            <foreName>Dmitry</foreName>
            <surname>Burlyaev</surname>
            <initial>D.</initial>
          </persName>
          <persName key="spades-2014-idp101824">
            <foreName>Pascal</foreName>
            <surname>Fradet</surname>
            <initial>P.</initial>
          </persName>
          <persName key="spades-2014-idp103280">
            <foreName>Alain</foreName>
            <surname>Girault</surname>
            <initial>A.</initial>
          </persName>
        </author>
        <imprint>
          <biblScope type="number">RR-9004</biblScope>
          <publisher>
            <orgName type="institution">Inria - Research Centre Grenoble – Rhône-Alpes</orgName>
          </publisher>
          <dateStruct>
            <month>December</month>
            <year>2016</year>
          </dateStruct>
          <biblScope type="pages">1-27</biblScope>
          <ref xlink:href="https://hal.inria.fr/hal-01417164" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01417164</ref>
        </imprint>
      </monogr>
      <note type="typdoc">Research Report</note>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid77" type="techreport" rend="year" n="cite:shan:hal-01393888">
      <identifiant type="hal" value="hal-01393888"/>
      <monogr>
        <title level="m">RTLib: A Library of Timed Automata for Modeling Real-Time Systems</title>
        <author>
          <persName key="spades-2016-idp164848">
            <foreName>Lijun</foreName>
            <surname>Shan</surname>
            <initial>L.</initial>
          </persName>
          <persName>
            <foreName>Susanne</foreName>
            <surname>Graf</surname>
            <initial>S.</initial>
          </persName>
          <persName key="spades-2014-idp106152">
            <foreName>Sophie</foreName>
            <surname>Quinton</surname>
            <initial>S.</initial>
          </persName>
        </author>
        <imprint>
          <publisher>
            <orgName type="institution">Grenoble 1 UGA - Université Grenoble Alpe ; Inria Grenoble - Rhone-Alpes</orgName>
          </publisher>
          <dateStruct>
            <month>November</month>
            <year>2016</year>
          </dateStruct>
          <ref xlink:href="https://hal.archives-ouvertes.fr/hal-01393888" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>archives-ouvertes.<allowbreak/>fr/<allowbreak/>hal-01393888</ref>
        </imprint>
      </monogr>
      <note type="typdoc">Research Report</note>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid45" type="techreport" rend="year" n="cite:yip:hal-01351552">
      <identifiant type="hal" value="hal-01351552"/>
      <monogr>
        <title level="m">Synchronous Deterministic Parallel Programming for Multicores with ForeC: Programming Language, Semantics, and Code Generation</title>
        <author>
          <persName key="spades-2014-idp114864">
            <foreName>Eugene</foreName>
            <surname>Yip</surname>
            <initial>E.</initial>
          </persName>
          <persName key="spades-2014-idp121080">
            <foreName>Partha S.</foreName>
            <surname>Roop</surname>
            <initial>P. S.</initial>
          </persName>
          <persName key="spades-2014-idp103280">
            <foreName>Alain</foreName>
            <surname>Girault</surname>
            <initial>A.</initial>
          </persName>
          <persName>
            <foreName>Morteza</foreName>
            <surname>Biglari-Abhari</surname>
            <initial>M.</initial>
          </persName>
        </author>
        <imprint>
          <biblScope type="number">RR-8943</biblScope>
          <publisher>
            <orgName type="institution">Inria - Research Centre Grenoble – Rhône-Alpes</orgName>
          </publisher>
          <dateStruct>
            <month>August</month>
            <year>2016</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01351552" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01351552</ref>
        </imprint>
      </monogr>
      <note type="typdoc">Research Report</note>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid41" type="inproceedings" rend="foot" n="footcite:AndalamRG10b">
      <analytic>
        <title level="a">Predictable Multithreading of Embedded Applications Using PRET-C</title>
        <author>
          <persName>
            <foreName>S.</foreName>
            <surname>Andalam</surname>
            <initial>S.</initial>
          </persName>
          <persName key="spades-2014-idp121080">
            <foreName>Partha</foreName>
            <surname>Roop</surname>
            <initial>P.</initial>
          </persName>
          <persName key="spades-2014-idp103280">
            <foreName>Alain</foreName>
            <surname>Girault</surname>
            <initial>A.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-international-audience="yes" x-editorial-board="yes">
        <title level="m">International Conference on Formal Methods and Models for Codesign, MEMOCODE'10</title>
        <loc>Grenoble, France</loc>
        <imprint>
          <publisher>
            <orgName>IEEE</orgName>
          </publisher>
          <dateStruct>
            <month>July</month>
            <year>2010</year>
          </dateStruct>
          <biblScope type="pages">159–168</biblScope>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid68" type="article" rend="foot" n="footcite:assayad13">
      <analytic>
        <title level="a">Tradeoff Exploration between Reliability, Power Consumption, and Execution Time for Embedded Systems</title>
        <author>
          <persName key="spades-2014-idp116088">
            <foreName>I.</foreName>
            <surname>Assayad</surname>
            <initial>I.</initial>
          </persName>
          <persName key="spades-2014-idp103280">
            <foreName>A.</foreName>
            <surname>Girault</surname>
            <initial>A.</initial>
          </persName>
          <persName>
            <foreName>H.</foreName>
            <surname>Kalla</surname>
            <initial>H.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-editorial-board="yes" x-international-audience="yes">
        <title level="j">Int. J. Software Tools for Technology Transfer</title>
        <imprint>
          <biblScope type="volume">15</biblScope>
          <biblScope type="number">3</biblScope>
          <dateStruct>
            <month>June</month>
            <year>2013</year>
          </dateStruct>
          <biblScope type="pages">229–245</biblScope>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid4" type="misc" rend="foot" n="footcite:Autosar">
      <monogr>
        <title level="m">Automotive Open System Architecture</title>
        <imprint>
          <dateStruct>
            <year>2003</year>
          </dateStruct>
          <ref xlink:href="http://www.autosar.org" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>www.<allowbreak/>autosar.<allowbreak/>org</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid40" type="article" rend="foot" n="footcite:Axer14">
      <analytic>
        <title level="a">Building Timing Predictable Embedded Systems</title>
        <author>
          <persName>
            <foreName>P.</foreName>
            <surname>Axer</surname>
            <initial>P.</initial>
          </persName>
          <persName>
            <foreName>R.</foreName>
            <surname>Ernst</surname>
            <initial>R.</initial>
          </persName>
          <persName>
            <foreName>H.</foreName>
            <surname>Falk</surname>
            <initial>H.</initial>
          </persName>
          <persName key="spades-2014-idp103280">
            <foreName>A.</foreName>
            <surname>Girault</surname>
            <initial>A.</initial>
          </persName>
          <persName>
            <foreName>D.</foreName>
            <surname>Grund</surname>
            <initial>D.</initial>
          </persName>
          <persName>
            <foreName>N.</foreName>
            <surname>Guan</surname>
            <initial>N.</initial>
          </persName>
          <persName>
            <foreName>B.</foreName>
            <surname>Jonsson</surname>
            <initial>B.</initial>
          </persName>
          <persName>
            <foreName>P.</foreName>
            <surname>Marwedel</surname>
            <initial>P.</initial>
          </persName>
          <persName>
            <foreName>J.</foreName>
            <surname>Reineke</surname>
            <initial>J.</initial>
          </persName>
          <persName>
            <foreName>C.</foreName>
            <surname>Rochange</surname>
            <initial>C.</initial>
          </persName>
          <persName>
            <foreName>M.</foreName>
            <surname>Sebatian</surname>
            <initial>M.</initial>
          </persName>
          <persName>
            <foreName>R.</foreName>
            <surname>von Hanxleden</surname>
            <initial>R.</initial>
          </persName>
          <persName>
            <foreName>R.</foreName>
            <surname>Wilhelm</surname>
            <initial>R.</initial>
          </persName>
          <persName>
            <foreName>W.</foreName>
            <surname>Yi</surname>
            <initial>W.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">ACM Trans. Embedd. Comput. Syst.</title>
        <imprint>
          <dateStruct>
            <year>2014</year>
          </dateStruct>
        </imprint>
      </monogr>
      <note type="bnote">To appear</note>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid11" type="article" rend="foot" n="footcite:BainomugishaCVCMDM13">
      <analytic>
        <title level="a">A Survey on Reactive Programming</title>
        <author>
          <persName>
            <foreName>E.</foreName>
            <surname>Bainomugisha</surname>
            <initial>E.</initial>
          </persName>
          <persName>
            <foreName>A.L.</foreName>
            <surname>Carreton</surname>
            <initial>A.</initial>
          </persName>
          <persName>
            <foreName>T.</foreName>
            <surname>Van Cutsem</surname>
            <initial>T.</initial>
          </persName>
          <persName>
            <foreName>S.</foreName>
            <surname>Mostinckx</surname>
            <initial>S.</initial>
          </persName>
          <persName>
            <foreName>W.</foreName>
            <surname>De Meuter</surname>
            <initial>W.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">ACM Computing Surveys</title>
        <imprint>
          <biblScope type="volume">45</biblScope>
          <biblScope type="number">4</biblScope>
          <dateStruct>
            <year>2013</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid3" type="article" rend="foot" n="footcite:BasuBBCJNS11">
      <analytic>
        <title level="a">Rigorous Component-Based System Design Using the BIP Framework</title>
        <author>
          <persName key="kerdata-2014-idp68144">
            <foreName>A.</foreName>
            <surname>Basu</surname>
            <initial>A.</initial>
          </persName>
          <persName>
            <foreName>S.</foreName>
            <surname>Bensalem</surname>
            <initial>S.</initial>
          </persName>
          <persName>
            <foreName>M.</foreName>
            <surname>Bozga</surname>
            <initial>M.</initial>
          </persName>
          <persName>
            <foreName>J.</foreName>
            <surname>Combaz</surname>
            <initial>J.</initial>
          </persName>
          <persName>
            <foreName>M.</foreName>
            <surname>Jaber</surname>
            <initial>M.</initial>
          </persName>
          <persName>
            <foreName>T.-H.</foreName>
            <surname>Nguyen</surname>
            <initial>T.-H.</initial>
          </persName>
          <persName>
            <foreName>J.</foreName>
            <surname>Sifakis</surname>
            <initial>J.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">IEEE Software</title>
        <imprint>
          <biblScope type="volume">28</biblScope>
          <biblScope type="number">3</biblScope>
          <dateStruct>
            <year>2011</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid52" type="inproceedings" rend="foot" n="footcite:BebelisFG14">
      <analytic>
        <title level="a">A Framework to Schedule Parametric Dataflow Applications on Many-Core Platforms</title>
        <author>
          <persName key="spades-2014-idp108672">
            <foreName>V.</foreName>
            <surname>Bebelis</surname>
            <initial>V.</initial>
          </persName>
          <persName key="spades-2014-idp101824">
            <foreName>P.</foreName>
            <surname>Fradet</surname>
            <initial>P.</initial>
          </persName>
          <persName key="spades-2014-idp103280">
            <foreName>A.</foreName>
            <surname>Girault</surname>
            <initial>A.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-international-audience="yes" x-editorial-board="yes">
        <title level="m">International Conference on Languages, Compilers and Tools for Embedded Systems, LCTES'14</title>
        <loc>Edinburgh, UK</loc>
        <imprint>
          <publisher>
            <orgName>ACM</orgName>
          </publisher>
          <dateStruct>
            <month>June</month>
            <year>2014</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid51" type="inproceedings" rend="foot" n="footcite:BebelisFGL13">
      <analytic>
        <title level="a">BPDF: A Statically Analyzable Dataflow Model with Integer and Boolean Parameters</title>
        <author>
          <persName key="spades-2014-idp108672">
            <foreName>V.</foreName>
            <surname>Bebelis</surname>
            <initial>V.</initial>
          </persName>
          <persName key="spades-2014-idp101824">
            <foreName>P.</foreName>
            <surname>Fradet</surname>
            <initial>P.</initial>
          </persName>
          <persName key="spades-2014-idp103280">
            <foreName>A.</foreName>
            <surname>Girault</surname>
            <initial>A.</initial>
          </persName>
          <persName>
            <foreName>B.</foreName>
            <surname>Lavigueur</surname>
            <initial>B.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-international-audience="yes" x-editorial-board="yes">
        <title level="m">International Conference on Embedded Software, EMSOFT'13</title>
        <loc>Montreal, Canada</loc>
        <imprint>
          <publisher>
            <orgName>ACM</orgName>
          </publisher>
          <dateStruct>
            <month>September</month>
            <year>2013</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid10" type="article" rend="foot" n="footcite:BenvenisteCEHGS03">
      <analytic>
        <title level="a">The synchronous languages 12 years later</title>
        <author>
          <persName key="hycomes-2014-idm8984">
            <foreName>Albert</foreName>
            <surname>Benveniste</surname>
            <initial>A.</initial>
          </persName>
          <persName>
            <foreName>Paul</foreName>
            <surname>Caspi</surname>
            <initial>P.</initial>
          </persName>
          <persName>
            <foreName>Stephen A.</foreName>
            <surname>Edwards</surname>
            <initial>S. A.</initial>
          </persName>
          <persName>
            <foreName>Nicolas</foreName>
            <surname>Halbwachs</surname>
            <initial>N.</initial>
          </persName>
          <persName key="tea-2014-idm25368">
            <foreName>Paul</foreName>
            <surname>Le Guernic</surname>
            <initial>P.</initial>
          </persName>
          <persName key="aoste-2014-idp62696">
            <foreName>Robert</foreName>
            <surname>de Simone</surname>
            <initial>R.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">Proceedings of the IEEE</title>
        <imprint>
          <biblScope type="volume">91</biblScope>
          <biblScope type="number">1</biblScope>
          <dateStruct>
            <year>2003</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid7" type="article" rend="foot" n="footcite:BenvenisteRCNP2012Method">
      <analytic>
        <title level="a">Contracts for the Design of Embedded Systems Part I: Methodology and Use Cases</title>
        <author>
          <persName key="hycomes-2014-idm8984">
            <foreName>A.</foreName>
            <surname>Benveniste</surname>
            <initial>A.</initial>
          </persName>
          <persName>
            <foreName>J.B.</foreName>
            <surname>Raclet</surname>
            <initial>J.</initial>
          </persName>
          <persName key="hycomes-2014-idm10408">
            <foreName>B.</foreName>
            <surname>Caillaud</surname>
            <initial>B.</initial>
          </persName>
          <persName>
            <foreName>D.</foreName>
            <surname>Nickovic</surname>
            <initial>D.</initial>
          </persName>
          <persName>
            <foreName>R.</foreName>
            <surname>Passerone</surname>
            <initial>R.</initial>
          </persName>
          <persName>
            <foreName>A.</foreName>
            <surname>Sangiovanni-Vicentelli</surname>
            <initial>A.</initial>
          </persName>
          <persName>
            <foreName>T.</foreName>
            <surname>Henzinger</surname>
            <initial>T.</initial>
          </persName>
          <persName key="tamis-2016-idp129520">
            <foreName>K.</foreName>
            <surname>Larsen</surname>
            <initial>K.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">Proceedings of the IEEE</title>
        <imprint>
          <dateStruct>
            <year>2012</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid8" type="article" rend="foot" n="footcite:BenvenisteRCNP2012Theory">
      <analytic>
        <title level="a">Contracts for the Design of Embedded Systems Part II: Theory</title>
        <author>
          <persName key="hycomes-2014-idm8984">
            <foreName>A.</foreName>
            <surname>Benveniste</surname>
            <initial>A.</initial>
          </persName>
          <persName>
            <foreName>J.B.</foreName>
            <surname>Raclet</surname>
            <initial>J.</initial>
          </persName>
          <persName key="hycomes-2014-idm10408">
            <foreName>B.</foreName>
            <surname>Caillaud</surname>
            <initial>B.</initial>
          </persName>
          <persName>
            <foreName>D.</foreName>
            <surname>Nickovic</surname>
            <initial>D.</initial>
          </persName>
          <persName>
            <foreName>R.</foreName>
            <surname>Passerone</surname>
            <initial>R.</initial>
          </persName>
          <persName>
            <foreName>A.</foreName>
            <surname>Sangiovanni-Vicentelli</surname>
            <initial>A.</initial>
          </persName>
          <persName>
            <foreName>T.</foreName>
            <surname>Henzinger</surname>
            <initial>T.</initial>
          </persName>
          <persName key="tamis-2016-idp129520">
            <foreName>K.</foreName>
            <surname>Larsen</surname>
            <initial>K.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">Proceedings of the IEEE</title>
        <imprint>
          <dateStruct>
            <year>2012</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid20" type="article" rend="foot" n="footcite:BonakdarpourKA12">
      <analytic>
        <title level="a">Symbolic synthesis of masking fault-tolerant distributed programs</title>
        <author>
          <persName>
            <foreName>B.</foreName>
            <surname>Bonakdarpour</surname>
            <initial>B.</initial>
          </persName>
          <persName>
            <foreName>S. S.</foreName>
            <surname>Kulkarni</surname>
            <initial>S. S.</initial>
          </persName>
          <persName>
            <foreName>F.</foreName>
            <surname>Abujarad</surname>
            <initial>F.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">Distributed Computing</title>
        <imprint>
          <biblScope type="volume">25</biblScope>
          <biblScope type="number">1</biblScope>
          <dateStruct>
            <year>2012</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid13" type="article" rend="foot" n="footcite:Borkar05">
      <analytic>
        <title level="a">Designing Reliable Systems from Unreliable Components: The Challenges of Transistor Variability and Degradation</title>
        <author>
          <persName>
            <foreName>S.</foreName>
            <surname>Borkar</surname>
            <initial>S.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">IEEE Micro</title>
        <imprint>
          <biblScope type="volume">25</biblScope>
          <biblScope type="number">6</biblScope>
          <dateStruct>
            <year>2005</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid21" type="inproceedings" rend="foot" n="footcite:BruniMM05">
      <analytic>
        <title level="a">Theoretical foundations for compensations in flow composition languages</title>
        <author>
          <persName>
            <foreName>R.</foreName>
            <surname>Bruni</surname>
            <initial>R.</initial>
          </persName>
          <persName>
            <foreName>H. C.</foreName>
            <surname>Melgratti</surname>
            <initial>H. C.</initial>
          </persName>
          <persName>
            <foreName>U.</foreName>
            <surname>Montanari</surname>
            <initial>U.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="m">32nd ACM Symposium on Principles of Programming Languages (POPL)</title>
        <imprint>
          <publisher>
            <orgName>ACM</orgName>
          </publisher>
          <dateStruct>
            <year>2005</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid43" type="inproceedings" rend="foot" n="footcite:burckhardt11">
      <analytic>
        <title level="a">Semantics of Concurrent Revisions</title>
        <author>
          <persName>
            <foreName>S.</foreName>
            <surname>Burckhardt</surname>
            <initial>S.</initial>
          </persName>
          <persName>
            <foreName>D.</foreName>
            <surname>Leijen</surname>
            <initial>D.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="m">European Symposium on Programming, ESOP'11</title>
        <loc>Saarbrucken, Germany</loc>
        <title level="s">LNCS</title>
        <imprint>
          <biblScope type="number">6602</biblScope>
          <publisher>
            <orgName>Springer</orgName>
          </publisher>
          <dateStruct>
            <month>March</month>
            <year>2011</year>
          </dateStruct>
          <biblScope type="pages">116–135</biblScope>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid47" type="inproceedings" rend="foot" n="footcite:lucy-icfp">
      <analytic>
        <title level="a">Synchronous Kahn Networks</title>
        <author>
          <persName>
            <foreName>Paul</foreName>
            <surname>Caspi</surname>
            <initial>P.</initial>
          </persName>
          <persName key="parkas-2014-idp13232">
            <foreName>Marc</foreName>
            <surname>Pouzet</surname>
            <initial>M.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="m">ACM SIGPLAN International Conference on Functional Programming, ICFP'96</title>
        <loc>Philadelphia (PA), USA</loc>
        <imprint>
          <publisher>
            <orgName>ACM</orgName>
          </publisher>
          <dateStruct>
            <month>May</month>
            <year>1996</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid22" type="article" rend="foot" n="footcite:ChothiaD04">
      <analytic>
        <title level="a">Abstractions for fault-tolerant global computing</title>
        <author>
          <persName>
            <foreName>T.</foreName>
            <surname>Chothia</surname>
            <initial>T.</initial>
          </persName>
          <persName>
            <foreName>D.</foreName>
            <surname>Duggan</surname>
            <initial>D.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">Theor. Comput. Sci.</title>
        <imprint>
          <biblScope type="volume">322</biblScope>
          <biblScope type="number">3</biblScope>
          <dateStruct>
            <year>2004</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid12" type="article" rend="foot" n="footcite:DavisB11">
      <analytic>
        <title level="a">A Survey of Hard Real-Time Scheduling for Multiprocessor Systems</title>
        <author>
          <persName key="aoste-2014-idp68152">
            <foreName>Rob</foreName>
            <surname>Davis</surname>
            <initial>R.</initial>
          </persName>
          <persName>
            <foreName>Alan</foreName>
            <surname>Burns</surname>
            <initial>A.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">ACM Computing Surveys</title>
        <imprint>
          <biblScope type="volume">43</biblScope>
          <biblScope type="number">4</biblScope>
          <dateStruct>
            <year>2011</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid48" type="phdthesis" rend="foot" n="footcite:delaval-these">
      <monogr>
        <title level="m">Répartition modulaire de programmes synchrones</title>
        <author>
          <persName key="ctrl-a-2014-idp66864">
            <foreName>Gwenaël</foreName>
            <surname>Delaval</surname>
            <initial>G.</initial>
          </persName>
        </author>
        <imprint>
          <publisher>
            <orgName type="school">INPG</orgName>
            <address>
              <addrLine>Inria Grenoble Rhône-Alpes</addrLine>
            </address>
          </publisher>
          <dateStruct>
            <month>July</month>
            <year>2008</year>
          </dateStruct>
        </imprint>
      </monogr>
      <note type="bnote">PhD thesis</note>
      <note type="typdoc">Ph. D. Thesis</note>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid49" type="inproceedings" rend="foot" n="footcite:delaval08b">
      <analytic>
        <title level="a">A Type System for the Automatic Distribution of Higher-order Synchronous Dataflow Programs</title>
        <author>
          <persName key="ctrl-a-2014-idp66864">
            <foreName>Gwenaël</foreName>
            <surname>Delaval</surname>
            <initial>G.</initial>
          </persName>
          <persName key="spades-2014-idp103280">
            <foreName>Alain</foreName>
            <surname>Girault</surname>
            <initial>A.</initial>
          </persName>
          <persName key="parkas-2014-idp13232">
            <foreName>Marc</foreName>
            <surname>Pouzet</surname>
            <initial>M.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-international-audience="yes" x-editorial-board="yes">
        <title level="m">International Conference on Languages, Compilers, and Tools for Embedded Systems, LCTES'08</title>
        <loc>Tucson (AZ), USA</loc>
        <imprint>
          <publisher>
            <orgName>ACM</orgName>
          </publisher>
          <dateStruct>
            <month>June</month>
            <year>2008</year>
          </dateStruct>
          <biblScope type="pages">101–110</biblScope>
          <ref xlink:href="ftp://ftp.inrialpes.fr/pub/bip/pub/girault/Publications/Lctes08/main.pdf" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">ftp://<allowbreak/>ftp.<allowbreak/>inrialpes.<allowbreak/>fr/<allowbreak/>pub/<allowbreak/>bip/<allowbreak/>pub/<allowbreak/>girault/<allowbreak/>Publications/<allowbreak/>Lctes08/<allowbreak/>main.<allowbreak/>pdf</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid38" type="inproceedings" rend="foot" n="footcite:EdwardsL07">
      <analytic>
        <title level="a">The Case for the Precision Timed (PRET) Machine</title>
        <author>
          <persName>
            <foreName>S. A.</foreName>
            <surname>Edwards</surname>
            <initial>S. A.</initial>
          </persName>
          <persName>
            <foreName>E. A.</foreName>
            <surname>Lee</surname>
            <initial>E. A.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="m">44th Design Automation Conference (DAC)</title>
        <imprint>
          <publisher>
            <orgName>IEEE</orgName>
          </publisher>
          <dateStruct>
            <year>2007</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid2" type="article" rend="foot" n="footcite:EkerJLLLLNSX03">
      <analytic>
        <title level="a">Taming heterogeneity - the Ptolemy approach</title>
        <author>
          <persName>
            <foreName>J.</foreName>
            <surname>Eker</surname>
            <initial>J.</initial>
          </persName>
          <persName>
            <foreName>J. W.</foreName>
            <surname>Janneck</surname>
            <initial>J. W.</initial>
          </persName>
          <persName>
            <foreName>E. A.</foreName>
            <surname>Lee</surname>
            <initial>E. A.</initial>
          </persName>
          <persName key="crypt-2014-idp73720">
            <foreName>J.</foreName>
            <surname>Liu</surname>
            <initial>J.</initial>
          </persName>
          <persName key="disco-2015-idp79992">
            <foreName>X.</foreName>
            <surname>Liu</surname>
            <initial>X.</initial>
          </persName>
          <persName>
            <foreName>J.</foreName>
            <surname>Ludvig</surname>
            <initial>J.</initial>
          </persName>
          <persName>
            <foreName>S.</foreName>
            <surname>Neuendorffer</surname>
            <initial>S.</initial>
          </persName>
          <persName>
            <foreName>S.</foreName>
            <surname>Sachs</surname>
            <initial>S.</initial>
          </persName>
          <persName>
            <foreName>Y.</foreName>
            <surname>Xiong</surname>
            <initial>Y.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">Proceedings of the IEEE</title>
        <imprint>
          <biblScope type="volume">91</biblScope>
          <biblScope type="number">1</biblScope>
          <dateStruct>
            <year>2003</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid23" type="inproceedings" rend="foot" n="footcite:FieldV05">
      <analytic>
        <title level="a">Transactors: a programming model for maintaining globally consistent distributed state in unreliable environments</title>
        <author>
          <persName>
            <foreName>J.</foreName>
            <surname>Field</surname>
            <initial>J.</initial>
          </persName>
          <persName>
            <foreName>C. A.</foreName>
            <surname>Varela</surname>
            <initial>C. A.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="m">32nd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL)</title>
        <imprint>
          <publisher>
            <orgName>ACM</orgName>
          </publisher>
          <dateStruct>
            <year>2005</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid50" type="inproceedings" rend="foot" n="footcite:fradet:hal-00744376">
      <identifiant type="hal" value="hal-00744376"/>
      <analytic>
        <title level="a">SPDF: A Schedulable Parametric Data-Flow MoC</title>
        <author>
          <persName key="spades-2014-idp101824">
            <foreName>Pascal</foreName>
            <surname>Fradet</surname>
            <initial>P.</initial>
          </persName>
          <persName key="spades-2014-idp103280">
            <foreName>Alain</foreName>
            <surname>Girault</surname>
            <initial>A.</initial>
          </persName>
          <persName>
            <foreName>Petro</foreName>
            <surname>Poplavko</surname>
            <initial>P.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-international-audience="yes" x-proceedings="yes">
        <title level="m">Design Automation and Test in Europe, DATE'12</title>
        <loc>Dresden, Germany</loc>
        <imprint>
          <dateStruct>
            <year>2012</year>
          </dateStruct>
          <ref xlink:href="http://hal.inria.fr/hal-00744376" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-00744376</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid67" type="inproceedings" rend="foot" n="footcite:GoesslerStefani2015">
      <analytic>
        <title level="a">Fault Ascription in Concurrent Systems</title>
        <author>
          <persName>
            <foreName>G.</foreName>
            <surname>Gössler</surname>
            <initial>G.</initial>
          </persName>
          <persName>
            <foreName>J.-B.</foreName>
            <surname>Stefani</surname>
            <initial>J.-B.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <editor role="editor">
          <persName>
            <foreName>P.</foreName>
            <surname>Ganty</surname>
            <initial>P.</initial>
          </persName>
          <persName>
            <foreName>M.</foreName>
            <surname>Loreti</surname>
            <initial>M.</initial>
          </persName>
        </editor>
        <title level="m">Proc. Trustworthy Global Computing - 10th International Symposium, TGC 2015</title>
        <title level="s">LNCS</title>
        <imprint>
          <biblScope type="volume">9533</biblScope>
          <publisher>
            <orgName>Springer</orgName>
          </publisher>
          <dateStruct>
            <year>2016</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid60" type="article" rend="foot" n="footcite:girard2007">
      <analytic>
        <title level="a">Approximation metrics for discrete and continuous systems</title>
        <author>
          <persName>
            <foreName>Antoine</foreName>
            <surname>Girard</surname>
            <initial>A.</initial>
          </persName>
          <persName>
            <foreName>G.J.</foreName>
            <surname>Pappas</surname>
            <initial>G.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">IEEE Trans. on Automatic Control</title>
        <imprint>
          <biblScope type="volume">52</biblScope>
          <biblScope type="number">5</biblScope>
          <dateStruct>
            <year>2007</year>
          </dateStruct>
          <biblScope type="pages">782–798</biblScope>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid69" type="article" rend="foot" n="footcite:girault09">
      <identifiant type="doi" value="portal/web/csdl/doi/10.1109/TDSC.2008.50"/>
      <analytic>
        <title level="a">A Novel Bicriteria Scheduling Heuristics Providing a Guaranteed Global System Failure Rate</title>
        <author>
          <persName key="spades-2014-idp103280">
            <foreName>Alain</foreName>
            <surname>Girault</surname>
            <initial>A.</initial>
          </persName>
          <persName>
            <foreName>Hamoudi</foreName>
            <surname>Kalla</surname>
            <initial>H.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-editorial-board="yes" x-international-audience="yes">
        <title level="j">IEEE Trans. Dependable Secure Comput.</title>
        <imprint>
          <biblScope type="volume">6</biblScope>
          <biblScope type="number">4</biblScope>
          <dateStruct>
            <month>December</month>
            <year>2009</year>
          </dateStruct>
          <biblScope type="pages">241–254</biblScope>
          <ref xlink:href="http://www.computer.org/portal/web/csdl/doi/10.1109/TDSC.2008.50" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>www.<allowbreak/>computer.<allowbreak/>org/<allowbreak/>portal/<allowbreak/>web/<allowbreak/>csdl/<allowbreak/>doi/<allowbreak/>10.<allowbreak/>1109/<allowbreak/>TDSC.<allowbreak/>2008.<allowbreak/>50</ref>
        </imprint>
      </monogr>
      <note type="bnote">Research report Inria 6319</note>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid14" type="inproceedings" rend="foot" n="footcite:GizopoulosPARHSMBV11">
      <analytic>
        <title level="a">Architectures for Online Error Detection and Recovery in Multicore Processors</title>
        <author>
          <persName>
            <foreName>D.</foreName>
            <surname>Gizopoulos</surname>
            <initial>D.</initial>
          </persName>
          <persName>
            <foreName>M.</foreName>
            <surname>Psarakis</surname>
            <initial>M.</initial>
          </persName>
          <persName>
            <foreName>S. V.</foreName>
            <surname>Adve</surname>
            <initial>S. V.</initial>
          </persName>
          <persName>
            <foreName>P.</foreName>
            <surname>Ramachandran</surname>
            <initial>P.</initial>
          </persName>
          <persName>
            <foreName>S. K. S.</foreName>
            <surname>Hari</surname>
            <initial>S. K. S.</initial>
          </persName>
          <persName>
            <foreName>D.</foreName>
            <surname>Sorin</surname>
            <initial>D.</initial>
          </persName>
          <persName>
            <foreName>A.</foreName>
            <surname>Meixner</surname>
            <initial>A.</initial>
          </persName>
          <persName>
            <foreName>A.</foreName>
            <surname>Biswas</surname>
            <initial>A.</initial>
          </persName>
          <persName>
            <foreName>X.</foreName>
            <surname>Vera</surname>
            <initial>X.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="m">Design Automation and Test in Europe (DATE)</title>
        <imprint>
          <dateStruct>
            <year>2011</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid19" type="article" rend="foot" n="footcite:Gartner99CS">
      <analytic>
        <title level="a">Fundamentals of Fault-Tolerant Distributed Computing in Asynchronous Environments</title>
        <author>
          <persName>
            <foreName>F. C.</foreName>
            <surname>Gärtner</surname>
            <initial>F. C.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">ACM Computing Surveys</title>
        <imprint>
          <biblScope type="volume">31</biblScope>
          <biblScope type="number">1</biblScope>
          <dateStruct>
            <year>1999</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid31" type="incollection" rend="foot" n="footcite:HaarF13">
      <analytic>
        <title level="a">Diagnosis with Petri Net Unfoldings</title>
        <author>
          <persName key="mexico-2014-idm27712">
            <foreName>S.</foreName>
            <surname>Haar</surname>
            <initial>S.</initial>
          </persName>
          <persName key="sumo-2014-idp100144">
            <foreName>E.</foreName>
            <surname>Fabre</surname>
            <initial>E.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="m">Control of Discrete-Event Systems</title>
        <title level="s">Lecture Notes in Control and Information Sciences</title>
        <imprint>
          <biblScope type="volume">433</biblScope>
          <biblScope type="chapter">15</biblScope>
          <publisher>
            <orgName>Springer</orgName>
          </publisher>
          <dateStruct>
            <year>2013</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid70" type="article" rend="foot" n="footcite:haimes71">
      <analytic>
        <title level="a">On a Bicriterion Formulation of the Problems of Integrated System Identification and System Optimization</title>
        <author>
          <persName>
            <foreName>Y.</foreName>
            <surname>Haimes</surname>
            <initial>Y.</initial>
          </persName>
          <persName>
            <foreName>L.</foreName>
            <surname>Lasdon</surname>
            <initial>L.</initial>
          </persName>
          <persName>
            <foreName>D.</foreName>
            <surname>Wismer</surname>
            <initial>D.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">IEEE Trans. Systems, Man, and Cybernetics</title>
        <imprint>
          <biblScope type="volume">1</biblScope>
          <dateStruct>
            <year>1971</year>
          </dateStruct>
          <biblScope type="pages">296–297</biblScope>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid65" type="article" rend="foot" n="footcite:HalpernPearl2005">
      <analytic>
        <title level="a">Causes and Explanations: A Structural-Model Approach. Part I: Causes</title>
        <author>
          <persName>
            <foreName>J.Y.</foreName>
            <surname>Halpern</surname>
            <initial>J.</initial>
          </persName>
          <persName>
            <foreName>J.</foreName>
            <surname>Pearl</surname>
            <initial>J.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">British Journal for the Philosophy of Science</title>
        <imprint>
          <biblScope type="volume">56</biblScope>
          <biblScope type="number">4</biblScope>
          <dateStruct>
            <year>2005</year>
          </dateStruct>
          <biblScope type="pages">843-887</biblScope>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid17" type="inproceedings" rend="foot" n="footcite:HarmanciGF11">
      <analytic>
        <title level="a">Atomic Boxes: Coordinated Exception Handling with Transactional Memory</title>
        <author>
          <persName>
            <foreName>D.</foreName>
            <surname>Harmanci</surname>
            <initial>D.</initial>
          </persName>
          <persName>
            <foreName>V.</foreName>
            <surname>Gramoli</surname>
            <initial>V.</initial>
          </persName>
          <persName>
            <foreName>P.</foreName>
            <surname>Felber</surname>
            <initial>P.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="m">25th European Conference on Object-Oriented Programming (ECOOP)</title>
        <title level="s">Lecture Notes in Computer Science</title>
        <imprint>
          <biblScope type="volume">6813</biblScope>
          <dateStruct>
            <year>2011</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid1" type="inproceedings" rend="foot" n="footcite:HenzigerS06">
      <analytic>
        <title level="a">The Embedded Systems Design Challenge</title>
        <author>
          <persName>
            <foreName>T.A.</foreName>
            <surname>Henzinger</surname>
            <initial>T.</initial>
          </persName>
          <persName>
            <foreName>J.</foreName>
            <surname>Sifakis</surname>
            <initial>J.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="m">Formal Methods 2006</title>
        <title level="s">Lecture Notes in Computer Science</title>
        <imprint>
          <biblScope type="volume">4085</biblScope>
          <publisher>
            <orgName>Springer</orgName>
          </publisher>
          <dateStruct>
            <year>2006</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid18" type="article" rend="foot" n="footcite:HwangKKS10">
      <analytic>
        <title level="a">A Survey of Fault Detection, Isolation and Reconfiguration Methods</title>
        <author>
          <persName>
            <foreName>I.</foreName>
            <surname>Hwang</surname>
            <initial>I.</initial>
          </persName>
          <persName>
            <foreName>S.</foreName>
            <surname>Kim</surname>
            <initial>S.</initial>
          </persName>
          <persName key="diana-2014-idp78056">
            <foreName>Y.</foreName>
            <surname>Kim</surname>
            <initial>Y.</initial>
          </persName>
          <persName>
            <foreName>C. E.</foreName>
            <surname>Seah</surname>
            <initial>C. E.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">IEEE Trans. on Control Systems Technology</title>
        <imprint>
          <biblScope type="volume">18</biblScope>
          <biblScope type="number">3</biblScope>
          <dateStruct>
            <year>2010</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid24" type="article" rend="foot" n="footcite:IzosimovPEP12">
      <analytic>
        <title level="a">Scheduling and Optimization of Fault-Tolerant Embedded Systems with Transparency/Performance Trade-Offs</title>
        <author>
          <persName>
            <foreName>V.</foreName>
            <surname>Izosimov</surname>
            <initial>V.</initial>
          </persName>
          <persName>
            <foreName>P.</foreName>
            <surname>Pop</surname>
            <initial>P.</initial>
          </persName>
          <persName>
            <foreName>P.</foreName>
            <surname>Eles</surname>
            <initial>P.</initial>
          </persName>
          <persName>
            <foreName>Z.</foreName>
            <surname>Peng</surname>
            <initial>Z.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">ACM Trans. Embedded Comput. Syst.</title>
        <imprint>
          <biblScope type="volume">11</biblScope>
          <biblScope type="number">3</biblScope>
          <dateStruct>
            <year>2012</year>
          </dateStruct>
          <biblScope type="pages">61</biblScope>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid64" type="inproceedings" rend="foot" n="footcite:KirschS12">
      <analytic>
        <title level="a">The Logical Execution Time Paradigm</title>
        <author>
          <persName>
            <foreName>Christoph M.</foreName>
            <surname>Kirsch</surname>
            <initial>C. M.</initial>
          </persName>
          <persName>
            <foreName>Ana</foreName>
            <surname>Sokolova</surname>
            <initial>A.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="m">Advances in Real-Time Systems (to Georg Färber on the occasion of his appointment as Professor Emeritus at TU München after leading the Lehrstuhl für Realzeit-Computersysteme for 34 illustrious years)</title>
        <imprint>
          <dateStruct>
            <year>2012</year>
          </dateStruct>
          <biblScope type="pages">103–120</biblScope>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid32" type="inproceedings" rend="foot" n="footcite:KustersTV10">
      <analytic>
        <title level="a">Accountability: definition and relationship to verifiability</title>
        <author>
          <persName>
            <foreName>R.</foreName>
            <surname>Küsters</surname>
            <initial>R.</initial>
          </persName>
          <persName>
            <foreName>T.</foreName>
            <surname>Truderung</surname>
            <initial>T.</initial>
          </persName>
          <persName>
            <foreName>A.</foreName>
            <surname>Vogt</surname>
            <initial>A.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="m">ACM Conference on Computer and Communications Security</title>
        <imprint>
          <dateStruct>
            <year>2010</year>
          </dateStruct>
          <biblScope type="pages">526-535</biblScope>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid30" type="inproceedings" rend="foot" n="footcite:LaneseMS10">
      <analytic>
        <title level="a">Reversing Higher-Order Pi</title>
        <author>
          <persName key="focus-2014-idp88376">
            <foreName>I.</foreName>
            <surname>Lanese</surname>
            <initial>I.</initial>
          </persName>
          <persName>
            <foreName>C. A.</foreName>
            <surname>Mezzina</surname>
            <initial>C. A.</initial>
          </persName>
          <persName>
            <foreName>J.-B.</foreName>
            <surname>Stefani</surname>
            <initial>J.-B.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="m">21th International Conference on Concurrency Theory (CONCUR)</title>
        <title level="s">Lecture Notes in Computer Science</title>
        <imprint>
          <biblScope type="volume">6269</biblScope>
          <publisher>
            <orgName>Springer</orgName>
          </publisher>
          <dateStruct>
            <year>2010</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid5" type="book" rend="foot" n="footcite:Leavens00">
      <monogr>
        <title level="m">Foundations of Component-Based Systems</title>
        <editor role="editor">
          <persName>
            <foreName>G.</foreName>
            <surname>Leavens</surname>
            <initial>G.</initial>
          </persName>
          <persName>
            <foreName>M.</foreName>
            <surname>Sitaraman</surname>
            <initial>M.</initial>
          </persName>
        </editor>
        <imprint>
          <publisher>
            <orgName>Cambridge University Press</orgName>
          </publisher>
          <dateStruct>
            <year>2000</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid9" type="inproceedings" rend="foot" n="footcite:LeeS11">
      <analytic>
        <title level="a">Component-based design for the future</title>
        <author>
          <persName>
            <foreName>E. A.</foreName>
            <surname>Lee</surname>
            <initial>E. A.</initial>
          </persName>
          <persName>
            <foreName>A. L.</foreName>
            <surname>Sangiovanni-Vincentelli</surname>
            <initial>A. L.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="m">Design, Automation and Test in Europe, DATE 2011</title>
        <imprint>
          <publisher>
            <orgName>IEEE</orgName>
          </publisher>
          <dateStruct>
            <year>2011</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid6" type="book" rend="foot" n="footcite:Liu06MathCS">
      <monogr>
        <title level="m">Mathematical Frameworks for Component Software - Models for Analysis and Synthesis</title>
        <editor role="editor">
          <persName key="sirocco-2014-idp91504">
            <foreName>Zhiming</foreName>
            <surname>Liu</surname>
            <initial>Z.</initial>
          </persName>
          <persName>
            <foreName>He</foreName>
            <surname>Jifeng</surname>
            <initial>H.</initial>
          </persName>
        </editor>
        <imprint>
          <publisher>
            <orgName>World Scientific</orgName>
          </publisher>
          <dateStruct>
            <year>2006</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid27" type="incollection" rend="foot" n="footcite:Menzies09">
      <analytic>
        <title level="a">Counterfactual Theories of Causation</title>
        <author>
          <persName>
            <foreName>P.</foreName>
            <surname>Menzies</surname>
            <initial>P.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <editor role="editor">
          <persName>
            <foreName>E.N.</foreName>
            <surname>Zalta</surname>
            <initial>E.</initial>
          </persName>
        </editor>
        <title level="m">Stanford Encyclopedia of Philosophy</title>
        <imprint>
          <publisher>
            <orgName>Stanford University</orgName>
          </publisher>
          <dateStruct>
            <year>2009</year>
          </dateStruct>
          <ref xlink:href="http://plato.stanford.edu/entries/causation-counterfactual" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>plato.<allowbreak/>stanford.<allowbreak/>edu/<allowbreak/>entries/<allowbreak/>causation-counterfactual</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid28" type="book" rend="foot" n="footcite:Moore1999">
      <monogr>
        <title level="m">Causation and Responsibility</title>
        <author>
          <persName>
            <foreName>M.S.</foreName>
            <surname>Moore</surname>
            <initial>M.</initial>
          </persName>
        </author>
        <imprint>
          <publisher>
            <orgName>Oxford</orgName>
          </publisher>
          <dateStruct>
            <year>1999</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid29" type="article" rend="foot" n="footcite:Pearl2009">
      <analytic>
        <title level="a">Causal inference in statistics: An overview</title>
        <author>
          <persName>
            <foreName>J.</foreName>
            <surname>Pearl</surname>
            <initial>J.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">Statistics Surveys</title>
        <imprint>
          <biblScope type="volume">3</biblScope>
          <dateStruct>
            <year>2009</year>
          </dateStruct>
          <biblScope type="pages">96-146</biblScope>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid59" type="article" rend="foot" n="footcite:ramadge87">
      <analytic>
        <title level="a">Supervisory Control of a Class of Discrete Event Processes</title>
        <author>
          <persName>
            <foreName>P.J.</foreName>
            <surname>Ramadge</surname>
            <initial>P.</initial>
          </persName>
          <persName>
            <foreName>W.M.</foreName>
            <surname>Wonham</surname>
            <initial>W.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-editorial-board="yes" x-international-audience="yes">
        <title level="j">SIAM Journal on control and optimization</title>
        <imprint>
          <biblScope type="volume">25</biblScope>
          <biblScope type="number">1</biblScope>
          <dateStruct>
            <month>January</month>
            <year>1987</year>
          </dateStruct>
          <biblScope type="pages">206–230</biblScope>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid25" type="inproceedings" rend="foot" n="footcite:RamalingamV13">
      <analytic>
        <title level="a">Fault tolerance via idempotence</title>
        <author>
          <persName>
            <foreName>G.</foreName>
            <surname>Ramalingam</surname>
            <initial>G.</initial>
          </persName>
          <persName>
            <foreName>K.</foreName>
            <surname>Vaswani</surname>
            <initial>K.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="m">40th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL)</title>
        <imprint>
          <publisher>
            <orgName>ACM</orgName>
          </publisher>
          <dateStruct>
            <year>2013</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid15" type="article" rend="foot" n="footcite:Randell75">
      <analytic>
        <title level="a">System Structure for Software Fault Tolerance</title>
        <author>
          <persName>
            <foreName>B.</foreName>
            <surname>Randell</surname>
            <initial>B.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">IEEE Trans. on Software Engineering</title>
        <imprint>
          <biblScope type="volume">1</biblScope>
          <biblScope type="number">2</biblScope>
          <dateStruct>
            <year>1975</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid33" type="techreport" rend="foot" n="footcite:Rushby1999">
      <monogr>
        <title level="m">Partitioning for Safety and Security: Requirements, Mechanisms, and Assurance</title>
        <author>
          <persName>
            <foreName>J.</foreName>
            <surname>Rushby</surname>
            <initial>J.</initial>
          </persName>
        </author>
        <imprint>
          <biblScope type="number">CR-1999-209347</biblScope>
          <publisher>
            <orgName type="institution">NASA Langley Research Center</orgName>
          </publisher>
          <dateStruct>
            <year>1999</year>
          </dateStruct>
        </imprint>
      </monogr>
      <note type="typdoc">Technical report</note>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid37" type="inproceedings" rend="foot" n="footcite:stefani:hal-01094208">
      <identifiant type="hal" value="hal-01094208"/>
      <analytic>
        <title level="a">Components as Location Graphs</title>
        <author>
          <persName key="spades-2014-idp100552">
            <foreName>Jean-Bernard</foreName>
            <surname>Stefani</surname>
            <initial>J.-B.</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">11th International Symposium on Formal Aspects of Component Software</title>
        <loc>Bertinoro, Italy</loc>
        <title level="s">Lecture Notes in Computer Science</title>
        <imprint>
          <biblScope type="volume">8997</biblScope>
          <dateStruct>
            <month>September</month>
            <year>2014</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01094208" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01094208</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid58" type="book" rend="foot" n="footcite:tabuada2009">
      <monogr>
        <title level="m">Verification and Control of Hybrid Systems - A Symbolic Approach</title>
        <author>
          <persName>
            <foreName>P.</foreName>
            <surname>Tabuada</surname>
            <initial>P.</initial>
          </persName>
        </author>
        <imprint>
          <publisher>
            <orgName>Springer</orgName>
          </publisher>
          <dateStruct>
            <year>2009</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid26" type="inproceedings" rend="foot" n="footcite:WalkerMLRA06">
      <analytic>
        <title level="a">Static typing for a faulty lambda calculus</title>
        <author>
          <persName>
            <foreName>D.</foreName>
            <surname>Walker</surname>
            <initial>D.</initial>
          </persName>
          <persName>
            <foreName>L. W.</foreName>
            <surname>Mackey</surname>
            <initial>L. W.</initial>
          </persName>
          <persName>
            <foreName>J.</foreName>
            <surname>Ligatti</surname>
            <initial>J.</initial>
          </persName>
          <persName>
            <foreName>G. A.</foreName>
            <surname>Reis</surname>
            <initial>G. A.</initial>
          </persName>
          <persName>
            <foreName>D. I.</foreName>
            <surname>August</surname>
            <initial>D. I.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="m">11th ACM SIGPLAN International Conference on Functional Programming (ICFP)</title>
        <imprint>
          <publisher>
            <orgName>ACM</orgName>
          </publisher>
          <dateStruct>
            <year>2006</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid39" type="article" rend="foot" n="footcite:wilhelm07">
      <analytic>
        <title level="a">The Determination of Worst-Case Execution Times — Overview of the Methods and Survey of Tools</title>
        <author>
          <persName>
            <foreName>R.</foreName>
            <surname>Wilhelm</surname>
            <initial>R.</initial>
          </persName>
          <persName>
            <foreName>Jakob</foreName>
            <surname>Engblom</surname>
            <initial>J.</initial>
          </persName>
          <persName>
            <foreName>Andreas</foreName>
            <surname>Ermedahl</surname>
            <initial>A.</initial>
          </persName>
          <persName>
            <foreName>Niklas</foreName>
            <surname>Holsti</surname>
            <initial>N.</initial>
          </persName>
          <persName>
            <foreName>Stephan</foreName>
            <surname>Thesing</surname>
            <initial>S.</initial>
          </persName>
          <persName>
            <foreName>David B.</foreName>
            <surname>Whalley</surname>
            <initial>D. B.</initial>
          </persName>
          <persName>
            <foreName>Guillem</foreName>
            <surname>Bernat</surname>
            <initial>G.</initial>
          </persName>
          <persName>
            <foreName>Christian</foreName>
            <surname>Ferdinand</surname>
            <initial>C.</initial>
          </persName>
          <persName>
            <foreName>Reinhold</foreName>
            <surname>Heckmann</surname>
            <initial>R.</initial>
          </persName>
          <persName>
            <foreName>Tulika</foreName>
            <surname>Mitra</surname>
            <initial>T.</initial>
          </persName>
          <persName>
            <foreName>Frank</foreName>
            <surname>Mueller</surname>
            <initial>F.</initial>
          </persName>
          <persName key="alf-2014-idp69920">
            <foreName>Isabelle</foreName>
            <surname>Puaut</surname>
            <initial>I.</initial>
          </persName>
          <persName>
            <foreName>Peter P.</foreName>
            <surname>Puschner</surname>
            <initial>P. P.</initial>
          </persName>
          <persName>
            <foreName>Jan</foreName>
            <surname>Staschulat</surname>
            <initial>J.</initial>
          </persName>
          <persName>
            <foreName>Per</foreName>
            <surname>Stenström</surname>
            <initial>P.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">ACM Trans. Embedd. Comput. Syst.</title>
        <imprint>
          <biblScope type="volume">7</biblScope>
          <biblScope type="number">3</biblScope>
          <dateStruct>
            <month>April</month>
            <year>2008</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid42" type="inproceedings" rend="foot" n="footcite:yip:hal-00842402">
      <identifiant type="hal" value="hal-00842402"/>
      <analytic>
        <title level="a">Programming and Timing Analysis of Parallel Programs on Multicores</title>
        <author>
          <persName key="spades-2014-idp114864">
            <foreName>Eugene</foreName>
            <surname>Yip</surname>
            <initial>E.</initial>
          </persName>
          <persName key="spades-2014-idp121080">
            <foreName>Partha</foreName>
            <surname>Roop</surname>
            <initial>P.</initial>
          </persName>
          <persName>
            <foreName>Morteza</foreName>
            <surname>Biglari-Abhari</surname>
            <initial>M.</initial>
          </persName>
          <persName key="spades-2014-idp103280">
            <foreName>Alain</foreName>
            <surname>Girault</surname>
            <initial>A.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="m">International Conference on Application of Concurrency to System Design, ACSD'13</title>
        <loc>Barcelona, Spain</loc>
        <imprint>
          <publisher>
            <orgName>IEEE</orgName>
          </publisher>
          <dateStruct>
            <month>July</month>
            <year>2013</year>
          </dateStruct>
          <biblScope type="pages">167–176</biblScope>
          <ref xlink:href="https://hal.inria.fr/hal-00842402" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-00842402</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid0" type="misc" rend="foot" n="footcite:Artemis11SRA">
      <monogr>
        <title level="m">ARTEMIS Strategic Research Agenda</title>
        <author>
          <persName>
            <foreName/>
            <surname>ARTEMIS Joint Undertaking</surname>
            <initial/>
          </persName>
        </author>
        <imprint>
          <dateStruct>
            <year>2011</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="spades-2016-bid16" type="article" rend="foot" n="footcite:FlorioB08">
      <analytic>
        <title level="a">A Survey of Linguistic Structures for Application-Level Fault-Tolerance</title>
        <author>
          <persName>
            <foreName>V.</foreName>
            <surname>De Florio</surname>
            <initial>V.</initial>
          </persName>
          <persName>
            <foreName>C.</foreName>
            <surname>Blondia</surname>
            <initial>C.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">ACM Computing Surveys</title>
        <imprint>
          <biblScope type="volume">40</biblScope>
          <biblScope type="number">2</biblScope>
          <dateStruct>
            <year>2008</year>
          </dateStruct>
        </imprint>
      </monogr>
    </biblStruct>
  </biblio>
</raweb>
