<?xml version="1.0" encoding="utf-8"?>
<raweb xmlns:xlink="http://www.w3.org/1999/xlink" xml:lang="en" year="2015">
  <identification id="tea" isproject="true">
    <shortname>TEA</shortname>
    <projectName>Time, Events and Architectures</projectName>
    <theme-de-recherche>Embedded and Real-time Systems</theme-de-recherche>
    <domaine-de-recherche>Algorithmics, Programming, Software and Architecture</domaine-de-recherche>
    <urlTeam>https://team.inria.fr/TEA</urlTeam>
    <header_dates_team>Creation of the Team: 2014 January 01, updated into Project-Team: 2015 January 01</header_dates_team>
    <LeTypeProjet>Project-Team</LeTypeProjet>
    <keywordsSdN>
      <term>1.2. - Networks</term>
      <term>1.2.7. - Cyber-physical systems</term>
      <term>1.2.8. - Network security</term>
      <term>1.5. - Complex systems</term>
      <term>1.5.1. - Systems of systems</term>
      <term>1.5.2. - Communicating systems</term>
      <term>2.1. - Programming Languages</term>
      <term>2.1.1. - Semantics of programming languages</term>
      <term>2.1.10. - Domain-specific languages</term>
      <term>2.1.6. - Concurrent programming</term>
      <term>2.1.8. - Synchronous languages</term>
      <term>2.2. - Compilation</term>
      <term>2.2.1. - Static analysis</term>
      <term>2.2.3. - Run-time systems</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. - Reliability, certification</term>
      <term>2.4.1. - Analysis</term>
      <term>2.4.2. - Verification</term>
      <term>2.4.3. - Proofs</term>
      <term>2.5. - Software engineering</term>
      <term>4.4. - Security of equipment and software</term>
      <term>4.5. - Formal methods for security</term>
      <term>4.7. - Access control</term>
      <term>5.7.2. - Music</term>
      <term>6.1.1. - Continuous Modeling (PDE, ODE)</term>
      <term>6.1.3. - Discrete Modeling (multi-agent, people centered)</term>
      <term>6.2.1. - Numerical analysis of PDE and ODE</term>
      <term>6.2.5. - Numerical Linear Algebra</term>
      <term>6.2.6. - Optimization</term>
      <term>7.4. - Logic in Computer Science</term>
      <term>7.6. - Computer Algebra</term>
    </keywordsSdN>
    <keywordsSecteurs>
      <term>5.1. - Factory of the future</term>
      <term>5.2. - Design and manufacturing</term>
      <term>6.1.1. - Software engineering</term>
      <term>6.4. - Internet of things</term>
      <term>6.6. - Embedded systems</term>
      <term>9.2.1. - Music, sound</term>
      <term>9.4.1. - Computer science</term>
    </keywordsSecteurs>
    <UR name="Rennes"/>
    <moreinfo/>
  </identification>
  <team id="uid1">
    <person key="tea-2014-idm28088">
      <firstname>Jean-Pierre</firstname>
      <lastname>Talpin</lastname>
      <categoryPro>Chercheur</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Team leader, Inria, Senior Researcher</moreinfo>
      <hdr>oui</hdr>
    </person>
    <person key="moais-2014-idm5672">
      <firstname>Thierry</firstname>
      <lastname>Gautier</lastname>
      <categoryPro>Chercheur</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Inria, Researcher</moreinfo>
    </person>
    <person key="tempo-2014-idm29712">
      <firstname>Vania</firstname>
      <lastname>Joloboff</lastname>
      <categoryPro>Chercheur</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Inria, Senior Researcher</moreinfo>
    </person>
    <person key="tea-2014-idm25368">
      <firstname>Paul</firstname>
      <lastname>Le Guernic</lastname>
      <categoryPro>Chercheur</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Inria, Senior Researcher</moreinfo>
    </person>
    <person key="tea-2015-idp65384">
      <firstname>Clement</firstname>
      <lastname>Guy</lastname>
      <categoryPro>Technique</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Inria</moreinfo>
    </person>
    <person key="tea-2015-idp66624">
      <firstname>Alexandre</firstname>
      <lastname>Honorat</lastname>
      <categoryPro>Technique</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Inria</moreinfo>
    </person>
    <person key="tea-2014-idp67904">
      <firstname>Christophe</firstname>
      <lastname>Junke</lastname>
      <categoryPro>Technique</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Inria</moreinfo>
    </person>
    <person key="tea-2015-idp69088">
      <firstname>Simon</firstname>
      <lastname>Lunel</lastname>
      <categoryPro>PhD</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Mitsubishi Electric R&amp;D, granted by CIFRE</moreinfo>
    </person>
    <person key="panama-2014-idp82704">
      <firstname>Stephanie</firstname>
      <lastname>Lemaile</lastname>
      <categoryPro>Assistant</categoryPro>
      <research-centre>Rennes</research-centre>
      <moreinfo>Inria</moreinfo>
    </person>
  </team>
  <presentation id="uid2">
    <bodyTitle>Overall Objectives</bodyTitle>
    <subsection id="uid3" level="1">
      <bodyTitle>Introduction</bodyTitle>
      <p>An embedded architecture is an artefact of heterogeneous constituants and at the crossing of several design viewpoints: software, embedded in hardware, interfaced with the physical world. Time takes different forms when observed from each of these viewpoints: continuous or discrete, event-based or time-triggered. Unfortunately, modelling and programming formalisms that represent software, hardware and physics significantly alter this perception of time. Moreover, time reasoning in system design is usually isolated to a specific design problem: simulation, profiling, performance, scheduling, parallelisation, simulation. The aim of project-team TEA is to define a conceptually unified framework for reasoning on time in cyber-physical system design, and to put this reflection to practice by revisiting analysis and synthesis issues in real-time system design with soundness and compositionality gained from formalisation.</p>
    </subsection>
    <subsection id="uid4" level="1">
      <bodyTitle>Context</bodyTitle>
      <p>In the construction of complex systems, information technology (IT) has become a central force of revolutionary changes, driven by the exponential increase of computational power. In the field of telecommunication, IT provides the necessary basis for systems of networked distributed applications. In the field of control engineering, IT provides the necessary basis for embedded control applications. The combination of telecommunication and embedded systems into networked embedded systems opens up a new range of systems, capable of providing more intelligent functionality thank to information and communication (ICT). Networked embedded systems have revolutionised several application domains: energy networks, industrial automation and transport systems.</p>
      <p>20th-century science and technology brought us effective methods and tools for designing both computational and physical systems. But the design of cyber-physical systems (CPS) is much more than the union of those two fields. Traditionally, information scientists only have a hazy notion of requirements imposed by the physical environment of computers. Similarly, mechanical, civil, and chemical engineers view computers strictly as devices executing algorithms. To the extent we have designed CPS, we have done so in an ad hoc, on-off manner that is not repeatable. A new science of CPS design will allow us to create new machines with complex dynamics and high reliability, to apply its principles to new industries and applications in a reliable and economically efficient way. Progress requires nothing less than the construction of a new science and technology foundation for CPS that is simultaneously physical and computational.</p>
    </subsection>
    <subsection id="uid5" level="1">
      <bodyTitle>Motivations</bodyTitle>
      <p>Beyond the buzzword, a CPS is nothing new. In fact, it is an ubiquitous object of our everyday life. CPSs have evolved from individual independent units (e.g an ABS brake) to more and more integrated networks of units, which may be aggregated into larger components or sub-systems. For example, a transportation monitoring network aggregates monitored stations and trains through a large scale distributed system with relatively high latency. Each individual train is being controlled by a train control network, each car in the train has its own real-time bus to control embedded devices. More and more, CPSs are mixing real-time low latency technology with higher latency distributed computing technology.</p>
      <p>In the past 15 years, CPS development has moved towards Model Driven Engineering (MDE). With MDE methodology, first all requirements are gathered together with use cases, then a model of the system is built (sometimes several models) that satisfy the requirements. There are several modelling formalisms that have appeared in the past ten years with more or less success. The most successful are the <i>executable</i> models, models that can be exercised, tested and validated. This approach can be used for both software and hardware.</p>
      <p>A common feature found in CPSs is the ever presence of concurrency and parallelism in models.
Large systems are increasingly mixing both types of concurrency. They are structured hierarchically and comprise multiple synchronous devices connected by buses or networks that communicate asynchronously. This led to the advent of so-called GALS (Globally Asynchronous, Locally Synchronous) models, or PALS (Physically Asynchronous, Logically Synchronous) systems, where reactive synchronous objects are communicating asynchronously. Still, these infrastructures, together with their programming models, share some fundamental concerns: parallelism and concurrency synchronisation, determinism and functional correctness, scheduling optimality and calculation time predictability.</p>
      <p>Additionally, CPSs monitor and control real-world processes, the dynamics of which are usually governed by physical laws. These laws are expressed by physicists as mathematical equations and formulas. Discrete CPS models cannot ignore these dynamics, but whereas the equations express the continuous behaviour usually using real numbers (irrational) variables, the models usually have to work with discrete time and approximate floating point variables.</p>
    </subsection>
    <subsection id="uid6" level="1">
      <bodyTitle>Challenges</bodyTitle>
      <p>A cyber-physical (or reactive, or embedded) system is the integration of heterogeneous components originating from several design viewpoints: reactive software, some of which is embedded in hardware, interfaced with the physical environment through mechanical parts. Time takes different forms when observed from each of these viewpoints: it is discrete and event-based in software, discrete and time-triggered in hardware, continuous in mechanics or physics. Design of CPS often benefits from concepts of multiform and logical time(s) for their natural description. High-level formalisms used to model software, hardware and physics additionally alter this perception of time quite significantly.</p>
      <p>In model-based system design, time is usually abstracted to serve the purpose of one of many design tasks: verification, simulation, profiling, performance analysis, scheduling analysis, parallelisation, distribution, or virtual prototyping. For example in non-real-time commodity software, timing abstraction such as number of instructions and algorithmic complexity is sufficient: software will run the same on different machines, except slower or faster. Alternatively, in cyber-physical systems, multiple recurring instances of meaningful events may create as many dedicated logical clocks, on which to ground modelling and design practices.</p>
      <p>Time abstraction increases efficiency in event-driven simulation or execution (i.e SystemC simulation models try to abstract time, from cycle-accurate to approximate-time, and to loosely-time), while attempting to retain functionality, but without any actual guarantee of valid accuracy (responsibility is left to the model designer). Functional determinism (a.k.a. conflict-freeness in Petri Nets, monotonicity in Kahn PNs, confluence in Milner's CCS, latency-insensitivity and elasticity in circuit design) allows for reducing to some amount the problem to that of many schedules of a single self-timed behaviour, and time in many systems studies is partitioned into models of computation and communication (MoCCs). Multiple, multiform time(s) raises the question of combination, abstraction or refinement between distinct time bases. The question of combining continuous time with discrete logical time calls for proper discretisation in simulation and implementation. While timed reasoning takes multiple forms, there is no unified foundation to reasoning about multi-form time in system design.</p>
      <p>The objective of project-team TEA is henceforth to define formal models for timed quantitative reasoning, or put simply for time reasoning, in embedded system design. Formal time models and calculi should allow us to revisit common domain problems in real-time system design, such as time predictability and determinism, memory ressources predictability, real-time scheduling, mixed-criticality and power management; yet from the perspective gained from inter-domain timed and quantitative abstraction or refinement relations. A regained focus on fundamentals will allow to deliver better tooled methodologies for virtual prototyping and integration of embedded architectures.</p>
    </subsection>
  </presentation>
  <fondements id="uid7">
    <bodyTitle>Research Program</bodyTitle>
    <subsection id="uid8" level="1">
      <bodyTitle>Previous Works</bodyTitle>
      <p>The challenges of team TEA support the claim that sound Cyber-Physical System design (including embedded, reactive, and concurrent systems altogether) should consider multi-form time models as a central aspect.
In this aim, architectural specifications found in software engineering are a natural focal point to start from. Architecture descriptions organise a system model into manageable components, establish clear interfaces between them, collect domain-specific constraints and properties to help correct integration of components during system design.
The definition of a formal design methodology to support heterogeneous or multi-form models of time in architecture descriptions demands the elaboration of sound mathematical foundations and the development of formal calculi and methods to instrument them. This constitutes the research program of team TEA.</p>
      <p>System design based on the “synchronous paradigm” has focused the attention of many academic and industrial actors on abstracting non-functional implementation details from system design. This elegant design abstraction focuses on the logic of interaction in reactive programs rather than their timed behaviour, allowing to secure functional correctness while remaining an intuitive programming model for embedded systems.
Yet, it corresponds to embedded technologies of single cores and synchronous buses from the 90s, and may hardly cover the semantic diversity of distribution, parallelism, heterogeneity, of cyber-physical systems found in 21st century internet-connected, true-time<formula type="inline"><math xmlns="http://www.w3.org/1998/Math/MathML" overflow="scroll"><msup><mrow/><mrow><mi>T</mi><mi>M</mi></mrow></msup></math></formula>-synchronized clouds, of tomorrow's grids.</p>
      <p>By contrast with a synchronous hypothesis yet from the same era, the polychronous MoCC implemented in the data-flow specification language Signal, available in the Eclipse project POP <footnote id="uid9" id-text="1"><i>Polychrony on POLARSYS</i>, an Eclipse project in the POLARSYS Industry Working Group, 2013. <ref xlink:href="https://www.POLARSYS.org/projects/POLARSYS.pop" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>www.<allowbreak/>POLARSYS.<allowbreak/>org/<allowbreak/>projects/<allowbreak/>POLARSYS.<allowbreak/>pop</ref></footnote> and in the CCSL standard <footnote id="uid10" id-text="2"><i>Clock Constraints in UML/MARTE CCSL</i>. C. André, F. Mallet. Technical Report RR-6540. Inria, 2008. <ref xlink:href="http://hal.inria.fr/inria-00280941" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>inria-00280941</ref></footnote>, are inherently capable of describing multi-clock abstractions of GALS systems.
The POP and TimeSquare projects provide tooled infrastructures to refine high-level specifications into real-time streaming applications or locally synchronous and globally asynchronous systems, through a series of model analysis, verification, and synthesis services. These tool-supported refinement and transformation techniques can assist the system engineer from the earliest design stages of requirement specification to the latest stages of synthesis, scheduling and deployment. These characteristics make polychrony much closer to the required semantic for compositional, refinement-based, architecture-driven, system design.</p>
      <p>While polychrony was a step ahead of the traditional synchronous hypothesis, CCSL is a leap forward from synchrony and polychrony. The essence of CCSL is “multi-form time” toward addressing all of the domain-specific physical, electronic and logical aspects of cyber-physical system design.
</p>
    </subsection>
    <subsection id="uid11" level="1">
      <bodyTitle>Modelling Times</bodyTitle>
      <p>To make a sense and eventually formalize the semantcs of time in system design, we should most certainly rely on algebraic representations of time found in previous works and introduce the paradigm of "time systems" (type systems to represent time) in a way reminiscent to CCSL. Just as a type system abstracts data carried along operations in a program, a time system abstracts the causal interaction of that program module or hardware element with its environment, its pre and post conditions, its assumptions and guarantees, either logical or numerical, discrete or continuous. Some fundamental concepts of the time systems we envision are present in the clock calculi found in data-flow synchronous languages like Signal or Lustre, yet bound to a particular model of concurrency, hence time.</p>
      <p>In particular, the principle of refinement type systems <footnote id="uid12" id-text="3"><i>Abstract Refinement Types</i>. N. Vazou, P. Rondon, and R. Jhala. European Symposium on Programming. Springer, 2013.</footnote>,
is to associate information (data-types) inferred from programs and models with properties pertaining, for instance, to the algebraic domain on their value, or any algebraic property related to its computation: effect, memory usage <footnote id="uid13" id-text="4"><i>Region-based memory management</i>. Tofte, M., Talpin, J.-P. Information and Computation, 1997.</footnote>,
pre-post condition, value-range, cost, speed, time, temporal logic <footnote id="uid14" id-text="5"><i>LTL types FRP</i>. A. Jeffrey. PLPV'12.</footnote>.</p>
      <p>Being grounded on type and domain theories, a time system should naturally be equipped with program analysis techniques based on type inference (for data-type inference) or abstract interpretation (for program properties inference) to help establish formal relations between heterogeneous component “types”.
Just as a time calculus may formally abstract timed concurrent behaviours of system components, timed relations (abstraction and refinement) represent interaction among components.</p>
      <p>Scalability and compositionality dictates the use of assume-guarantee reasoning to represent them, and to facilitate composition by behavioural sub-typing, in the spirit of the (static) contract-based formalism proposed by Passerone et al.
<footnote id="uid15" id-text="6"><i>A contract-based formalism for the specification of heterogeneous systems</i>. L. Benvenistu, A. Ferrari, L. Mangeruca, E. Mazzi, R. Passerone, C. Sofronis. Forum on design languages, 2008</footnote>.
Verification problems encompassing heterogeneously timed specifications are common and of great variety: checking correctness between abstract and concrete time models relates to desynchronisation (from synchrony to asynchrony) and scheduling analysis (from synchrony to hardware). More generally, they can be perceived from heterogeneous timing viewpoints (e.g. mapping a synchronous-time software on a real-time middleware or hardware).</p>
      <p>This perspective demands capabilities not only to inject time models one into the other (by abstract interpretation, using refinement calculi), to compare time abstractions one another (using simulation, refinement, bisimulation, equivalence relations) but also to prove more specific properties (synchronisation, determinism, endochrony).</p>
      <p>To check conformance between heterogeneously timed specifications, we will consider variants of the abstract interpretation framework proposed by Bertrane et al.
<footnote id="uid16" id-text="7"><i>Temporal Abstract Domains</i>. J. Bertrane. International Conference on Engineering of Complex Computer Systems. IEEE, 2011</footnote>
to inject properties from one time domain into another, continuous
<footnote id="uid17" id-text="8"><i>Abstract Interpretation of the Physical Inputs of Embedded Programs</i>. O. Bouissou, M. Martel. Verification, Model Checking, and Abstract Interpretation. LNCS 4905, Springer, 2008</footnote>
or discrete
<footnote id="uid18" id-text="9"><i>Proving the Properties of Communicating Imperfectly-Clocked Synchronous Systems</i>. J. Bertrane. Static Analysis Symposium. Springer, 2006</footnote>.</p>
      <p>All this formalisation effort will allow to effectively perform the tooled validation of common cross-domain properties (e.g. cost v.s. power v.s. performance v.s. software mapping) and tackle equally common yet though case studies such as these linking battery capacity, to onboard CPU performance, to static software schedulability, to logical software correctness and plant controllability: the choice of the right sampling period across the system components.</p>
    </subsection>
    <subsection id="uid19" level="1">
      <bodyTitle>Modelling Architectures</bodyTitle>
      <p>To address the formalisation of such cross-domain case studies, modelling the architecture formally plays an essential role. An architectural model represents components in a distributed system as boxes with well-defined interfaces, connections between ports on component interfaces, and specifies component properties that can be used in analytical reasoning about the model.
Several architectural modelling languages for embedded systems have emerged in recent years, including the SAE AADL <footnote id="uid20" id-text="10"><i>Architecture Analysis and Design Language</i>, AS-5506. SAE, 2004. <ref xlink:href="http://standards.sae.org/as5506b" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>standards.<allowbreak/>sae.<allowbreak/>org/<allowbreak/>as5506b</ref></footnote>, SysML <footnote id="uid21" id-text="11"><i>System Modelling Language</i>. OMG, 2007. <ref xlink:href="http://www.omg.org/spec/SysML" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>www.<allowbreak/>omg.<allowbreak/>org/<allowbreak/>spec/<allowbreak/>SysML</ref></footnote>, UML MARTE <footnote id="uid22" id-text="12"><i>UML Profile for MARTE</i>. OMG, 2009. <ref xlink:href="http://www.omg.org/spec/MARTE" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>www.<allowbreak/>omg.<allowbreak/>org/<allowbreak/>spec/<allowbreak/>MARTE</ref></footnote>.</p>
      <p>In system design, an architectural specification serves several important purposes. First, it breaks down a system model into manageable components to establish clear interfaces between components. In this way, complexity becomes manageable by hiding details that are not relevant at a given level of abstraction. Clear, formally defined, component interfaces allow us to avoid integration problems at the implementation phase. Connections between components, which specify how components affect each other, help propagate the effects of a change in one component to the linked components.</p>
      <p>Most importantly, an architectural model is a repository to share knowledge about the system being designed. This knowledge can be represented as requirements, design artefacts, component implementations, held together by a structural backbone. Such a repository enables automatic generation of analytical models for different aspects of the system, such as timing, reliability, security, performance, energy, etc. Since all the models are generated from the same source, the consistency of assumptions w.r.t. guarantees, of abstractions w.r.t. refinements, used for different analyses becomes easier, and can be properly ensured in a design methodology based on formal verification and synthesis methods.</p>
      <p>Related works in this aim, and closer in spirit to our approach (to focus on modelling time) are domain-specific languages such as Prelude <footnote id="uid23" id-text="13"><i>The Prelude language</i>. LIFL and ONERA, 2012. <ref xlink:href="http://www.lifl.fr/~forget/prelude.html" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>www.<allowbreak/>lifl.<allowbreak/>fr/<allowbreak/>~forget/<allowbreak/>prelude.<allowbreak/>html</ref></footnote> to model the real-time characteristics of embedded software architectures. Conversely, standard architecture description languages could be based on algebraic modelling tools, such as interface theories with the ECDAR tool <footnote id="uid24" id-text="14"><i>PyECDAR, timed games for timed specifications</i>. Inria, 2013. <ref xlink:href="https://project.inria.fr/pyecdar" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>project.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>pyecdar</ref></footnote>.</p>
      <p>In project TEA, it takes form by the normalisation of the AADL standard's formal semantics and the proposal of a time specification annex in the form of related standards, such as CCSL, to model concurrency time and physical properties, and PSL, to model timed traces.</p>
    </subsection>
    <subsection id="uid25" level="1">
      <bodyTitle>Application to Scheduling Theory</bodyTitle>
      <p>Based on sound formalisation of time and CPS architectures, real-time scheduling theory provides tools for predicting the timing behaviour of a CPS which consists of many interacting software and hardware components. Expressing parallelism among software components is a crucial aspect of the design process of a CPS. It allows for efficient partition and exploitation of available resources.</p>
      <p>The literature about real-time scheduling
<footnote id="uid26" id-text="15"><i>A survey of hard real-time scheduling for multiprocessor systems</i>. R. I. Davis and A. Burns. <i>ACM Computing Survey</i> 43(4), 2011.</footnote> provides very mature schedulability tests regarding many scheduling strategies, preemptive or non-preemptive scheduling, uniprocessor or multiprocessor scheduling, etc.
Scheduling of data-flow graphs has also been extensively studied in the past decades.</p>
      <p>A milestone in this prospect is the development of abstract affine scheduling techniques <footnote id="uid27" id-text="16"><i>Buffer minimization in earliest-deadline first scheduling of dataflow graphs</i>. A. Bouakaz and J.-P. Talpin. Conference on Languages, Compilers and Tools for Embedded Systems. ACM, June 2013.</footnote>. It consists, first, of approximating task communication patterns (here Safety-Critical Java threads) using cyclo-static data-flow graphs and affine functions. Then, it uses state of the art ILP techniques to find optimal schedules and concretise them as real-time schedules for Safety Critical Java programs <footnote id="uid28" id-text="17"><i>Affine data-flow graphs for the synthesis of hard real-time applications</i>. A. Bouakaz, J.-P. Talpin, and J. Vitek. Application of Concurrency to System Design. IEEE Press, June 2012.</footnote> <footnote id="uid29" id-text="18"><i>Design of Safety-Critical Java Level 1 Applications Using Affine Abstract Clocks</i>. A. Bouakaz and J.-P. Talpin. International Workshop on Software and Compilers for Embedded Systems. ACM, June 2013.</footnote>.</p>
      <p>Abstract scheduling, or the use of abstraction and refinement techniques in scheduling borrowed to the theory of abstract interpretation <footnote id="uid30" id-text="19"><i>La vérification de programmes par interprétation abstraite</i>. P. Cousot. Séminaire au Collège de France, 2008.</footnote> is a promising development toward tooled methodologies to orchestrate thousands of heterogeneous hardware/software blocks on modern CPS architectures (just consider modern cars or aircrafts). It is an issue that simply defies the state of the art and known bounds of complexity theory in the field, and consequently requires a particular address.</p>
      <p>To develop the underlying theory of this promising research topic, we first need to deepen the theoretical foundation to establish links between scheduling analysis and abstract interpretation. A theory of time systems would offer the ideal framework to pursue this development. It amounts to representing scheduling constraints, inferred from programs, as types or contract properties. It allows to formalise the target time model of the scheduler (the architecture, its middle-ware, its real-time system) and defines the basic concepts to verify assumptions made in one with promises offered by the other: contract verification or, in this case, synthesis.</p>
    </subsection>
    <subsection id="uid31" level="1">
      <bodyTitle>Virtual Prototyping</bodyTitle>
      <p>Virtual Prototyping is the technology of developing realistic simulators from models of a system under design; that is, an emulated device that captures most, if not all, of the required properties of the real system, based on its specifications. A virtual prototype should be run and tested like the real device. Ideally, the real application software would be run on the virtual prototyping platform and produce the same results as the real device with the same sequence of outputs and reported performance measurements. This may be true to some extent only. Some trade-offs have often to be made between the accuracy of the virtual prototype, and time to develop accurate models.</p>
      <p>In order to speed-up simulation time, the virtual prototype must trade-off with something. Depending upon the application designer's goals, one may be interested in trading some loss of accuracy in exchange for simulation speed, which leads to constructing simulation models that focus on some design aspects and provide abstraction of others. A simulation model can provide an abstraction of the simulated hardware in three directions:</p>
      <simplelist>
        <li id="uid32">
          <p noindent="true"><i>Computation abstraction</i>. A hardware component computes a high level function by carrying out a series of small steps executed by composing logical gates. In a virtual prototyping environment, it is often possible to compute the high level function directly by using the available computing resources on the simulation host machine, thus abstracting the hardware function.</p>
        </li>
        <li id="uid33">
          <p noindent="true"><i>Communication abstraction</i>. Hardware components communicate together using some wiring, and some protocol to transmit the data. Simulation of the communication and the particular protocol may be irrelevant for the purpose of virtual prototyping: communication can be abstracted into higher level data transmission functions.</p>
        </li>
        <li id="uid34">
          <p noindent="true"><i>Timing Abstraction</i>. In a cycle accurate simulator, there are multiple simulation tasks, and each task makes some progress on each clock cycle, but this slows down the simulation. In a virtual prototyping experiment, one may not need such precise timing information: coarser time abstractions can be defined allowing for faster simulation.</p>
        </li>
      </simplelist>
      <p>The cornerstone of a virtual prototyping platform is the component that simulates the processor(s) of the platform, and its associated peripherals. Such simulation can be <i>static</i> or <i>dynamic</i>.</p>
      <p>A solution usually adopted to handle time in virtual prototyping is to manage hierarchical time scales, use component abstractions where possible to gain performance, use refinement to gain accuracy where needed. Localised time abstraction may not only yield faster simulation, but facilitate also verification and synthesis (e.g. synchronous abstractions of physically distributed systems). Such an approach requires computations and communications to be harmoniously discretised and abstracted from originally heterogeneous viewpoints onto a structuring, articulating, pivot model, for concerted reasoning about time and scheduling of events in a way that ensures global system specification correctness.</p>
      <p>In the short term these component models could be based on libraries of predefined models of different levels of abstractions. Such abstractions are common in large programming workbench for hardware modelling, such as SystemC, but less so, because of the engineering required, for virtual prototyping platforms.</p>
      <p>The approach of team TEA provides an additional ingredient in the form of rich component interfaces. It therefore dictates to further investigate the combined use of conventional virtual prototyping libraries, defined as executable abstractions of real hardware, with executable component simulators synthesised from rich interface specifications (using, e.g., conventional compiling techniques used for synchronous programs).</p>
    </subsection>
  </fondements>
  <domaine id="uid35">
    <bodyTitle>Application Domains</bodyTitle>
    <subsection id="uid36" level="1">
      <bodyTitle>Automotive and Avionics</bodyTitle>
      <p>From our continuous collaboration with major academic and industrial partners through projects TOPCASED, OPENEMBEDD, SPACIFY, CESAR, OPEES, P and CORAIL, our experience has primarily focused on the aerospace domain. The topics of time and architecture of team TEA extend to both avionics and automotive. Yet, the research focus on time in team TEA is central in any aspect of, cyber-physical, embedded system design in factory automation, automotive, music synthesis, signal processing, software radio, circuit and system on a chip design; many application domains which, should more collaborators join the team, would definitely be worth investigating.</p>
      <p>Multi-scale, multi-aspect time modelling, analysis and software synthesis will greatly contribute to architecture modelling in these domains, with applications to optimised (distributed, parallel, multi-core) code generation for avionics (project Corail with Thales avionics, section 8) as well as modelling standards, real-time simulation and virtual integration in automotive (project with Toyota ITC, section 8).</p>
      <p>Together with the importance of open-source software, one of these projects, the FUI Project P (section 8), demonstrated that a centralised model for system design could not just be a domain-specific programming language, such as discrete Simulink data-flows or a synchronous language. Synchronous languages implement a fixed model of time using logical clocks that are abstraction of time as sensed by software. They correspond to a fixed viewpoint in system design, and in a fixed hardware location in the system, which is not adequate to our purpose and must be extended.</p>
      <p>In project P, we first tried to define a centralised model for importing discrete-continuous models onto a simplified implementation of SIMULINK: P models. Certified code generators would then be developed from that format. Because this does not encompass all aspects being translated to P, the P meta-model is now being extended to architecture description concepts (of the AADL) in order to become better suited for the purpose of system design. Another example is the development of System Modeller on top of SCADE, which uses the more model-engineering flavoured formalism SysML to try to unambiguously represent architectures around SCADE modules.</p>
      <p>An abstract specification formalism, capable of representing time, timing relations, with which heterogeneous models can be abstracted, from which programs can be synthesised, naturally appears better suited for the purpose of virtual prototyping. RT-Builder, based on Signal like Polychrony and developed by TNI, was industrially proven and deployed for that purpose at Peugeot. It served to develop the virtual platform simulating all onboard electronics of PSA cars. This `hardware in the loop” simulator was used to test equipments supplied by other manufacturers with respect to virtual cars. In the avent of the related automotive standard, RT-Builder then became AUTOSAR-Builder.</p>
    </subsection>
    <subsection id="uid37" level="1">
      <bodyTitle>Factory Automation</bodyTitle>
      <p>In the new collaboration with Mitsubishi R&amp;D, started in 2015, we explore another application domain where time and domain heterogeneity are prime concerns: factory automation.
In factory automation alone, a system is conventionally built from generic computing modules: PLCs (Programmable Logic Controllers), connected to the environment with actuators and detectors, and linked to a distributed network. Each individual, physically distributed, PLC module must be timely programmed to perform individually coherent actions
and fulfill the global physical, chemical, safety, power efficiency, performance and latency requirements of the whole production chain.
Factory chains are subject to global and heterogeneous (physical, electronical, functional) requirements whose enforcement must be orchestrated for all individual components.</p>
      <p>Model-based analysis in factory automation emerges from different scientific domains and focus on different CPS abstractions that interact in subtle ways: logic of PLC programs, real-time electromechanical processing, physical and chemical environments.
This yields domain communication problems that render individual domain analysis useless. For instance, if one domain analysis (e.g. software) modifies a system model in a way that violates assumptions made by another domain (e.g. chemistry) then the detection of its violation may well be impossible to explain to either of the software and chemistry experts.</p>
      <p>As a consequence, cross-domain analysis issues are discovered very late during system integration and lead to costly fixes. This is particularly prevalent in multi-tier industries, such as avionic, automotive, factories, where systems are prominently integrated from independently-developed parts.
</p>
    </subsection>
  </domaine>
  <highlights id="uid38">
    <bodyTitle>Highlights of the Year</bodyTitle>
    <subsection id="uid39" level="1">
      <bodyTitle>Highlights of the Year</bodyTitle>
      <p>TEA became an Inria project-team in 2015 and developed new and promising collaborations with Mitsubishi, on factory automations, with UCSD on refinement type theory and with UCSD-UCLA again, on time synchronisation protocols verificaton.</p>
      <p>We published a paper in the automotive session of the 52nd. Digital Automation Conference (core A*) on our project with Toyota ITC <ref xlink:href="#tea-2015-bid0" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/> as well as two patents filed with the USPTO.</p>
      <subsection id="uid40" level="2">
        <bodyTitle>Awards</bodyTitle>
        <p>Our paper on "Polychronous automata" <ref xlink:href="#tea-2015-bid1" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/> received the Best Paper Award at the TASE'15 conference.</p>
        <best>
          <ref xlink:href="#tea-2015-bid1" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>
        </best>
      </subsection>
    </subsection>
  </highlights>
  <logiciels id="uid41">
    <bodyTitle>New Software and Platforms</bodyTitle>
    <subsection id="uid42" level="1">
      <bodyTitle>The Eclipse project POP</bodyTitle>
      <participants>
        <person key="PASUSERID">
          <firstname>Loïc</firstname>
          <lastname>Besnard</lastname>
        </person>
        <person key="moais-2014-idm5672">
          <firstname>Thierry</firstname>
          <lastname>Gautier</lastname>
        </person>
        <person key="tea-2014-idm25368">
          <firstname>Paul</firstname>
          <lastname>Le Guernic</lastname>
        </person>
        <person key="tea-2014-idm28088">
          <firstname>Jean-Pierre</firstname>
          <lastname>Talpin</lastname>
        </person>
      </participants>
      <p>The distribution of project POP <footnote id="uid43" id-text="20"><i>Polychrony on POLARSYS (POP)</i>, an Eclipse project in the POLARSYS Industry Working Group, 2013. <ref xlink:href="https://www.POLARSYS.org/projects/POLARSYS.pop" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>www.<allowbreak/>POLARSYS.<allowbreak/>org/<allowbreak/>projects/<allowbreak/>POLARSYS.<allowbreak/>pop</ref></footnote> is a major achievement of the ESPRESSO (and now TEA) project-team. The Eclipse project POP is a model-driven engineering front-end to our open-source toolset Polychrony. It was finalised in the frame of project OPEES, as a case study: by passing the POLARSYS qualification kit as a computer aided simulation and verification tool. This qualification was implemented by CS Toulouse in conformance with relevant generic (platform independent) qualification documents. Polychrony is now distributed by the Eclipse project POP on the platform of the POLARSYS industrial working group. Project-team TEA aims at continuing its dissemination to academic partners, as to its principles and features, and industrial partners, as to the services it can offer.</p>
      <p>Technically, project POP is composed of the Polychrony toolset, under GPL license, and its Eclipse framework, under EPL license. SSME (Syntactic Signal-Meta under Eclipse), is the metamodel of the Signal language implemented with Eclipse/Ecore. It describes all syntactic elements specified in Signal Reference Manual <footnote id="uid44" id-text="21"><i>SIGNAL V4-Inria version: Reference Manual</i>. Besnard, L., Gautier, T. and Le Guernic, P. <ref xlink:href="http://www.irisa.fr/espresso/Polychrony" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>www.<allowbreak/>irisa.<allowbreak/>fr/<allowbreak/>espresso/<allowbreak/>Polychrony</ref>, 2010</footnote>: all Signal operators (e.g. arithmetic, clock synchronization), model (e.g. process frame, module), and construction (e.g. iteration, type declaration).</p>
      <p>The metamodel primarily aims at making the language and services of the Polychrony environment available to inter-operation and composition with other components (e.g. AADL, Simulink, GeneAuto, P) within an Eclipse-based development toolchain. Polychrony now comprises the capability to directly import and export Ecore models instead of textual Signal programs, in order to facilitate interaction between components within such a toolchain.</p>
      <object id="uid45">
        <table>
          <tr>
            <td>
              <ressource xlink:href="IMG/pop.png" type="float" width="341.6013pt" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest" media="WEB"/>
            </td>
          </tr>
        </table>
        <caption>The Eclipse POP Environment</caption>
      </object>
      <p>The download site for project POP has opened in 2015 at: <ref xlink:href="https://www.polarsys.org/projects/polarsys.pop" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>www.<allowbreak/>polarsys.<allowbreak/>org/<allowbreak/>projects/<allowbreak/>polarsys.<allowbreak/>pop</ref>.
It should be noted that the Eclipse Foundation does not host code under GPL license. So, the Signal toolbox useful to compile Signal code from Eclipse is hosted on our web server.</p>
    </subsection>
    <subsection id="uid46" level="1">
      <bodyTitle>The Polychrony toolset</bodyTitle>
      <participants>
        <person key="PASUSERID">
          <firstname>Loïc</firstname>
          <lastname>Besnard</lastname>
        </person>
        <person key="moais-2014-idm5672">
          <firstname>Thierry</firstname>
          <lastname>Gautier</lastname>
        </person>
        <person key="tea-2014-idm25368">
          <firstname>Paul</firstname>
          <lastname>Le Guernic</lastname>
        </person>
        <person key="tea-2014-idm28088">
          <firstname>Jean-Pierre</firstname>
          <lastname>Talpin</lastname>
        </person>
      </participants>
      <p>The Polychrony toolset is an Open Source development environment for critical/embedded systems.
It is based on Signal, a real-time polychronous dataflow language.
It provides a unified model-driven environment to perform design exploration
by using top-down and bottom-up design methodologies formally supported by design model
transformations from specification to implementation and from synchrony to asynchrony.
It can be included in heterogeneous design systems with various input formalisms and output languages.</p>
      <object id="uid47">
        <table>
          <tr>
            <td>
              <ressource xlink:href="IMG/map.png" type="float" width="341.6013pt" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest" media="WEB"/>
            </td>
          </tr>
        </table>
        <caption>The Polychrony toolset high-level architecture</caption>
      </object>
      <p>The Polychrony toolset provides a formal framework to:</p>
      <simplelist>
        <li id="uid48">
          <p noindent="true">validate a design at different levels, by the way of formal verification and/or simulation,</p>
        </li>
        <li id="uid49">
          <p noindent="true">refine descriptions in a top-down approach,</p>
        </li>
        <li id="uid50">
          <p noindent="true">abstract properties needed for black-box composition,</p>
        </li>
        <li id="uid51">
          <p noindent="true">assemble heterogeneous predefined components (bottom-up with COTS),</p>
        </li>
        <li id="uid52">
          <p noindent="true">generate executable code for various architectures.</p>
        </li>
      </simplelist>
      <p>The Polychrony toolset contains three main components and an experimental interface to GNU Compiler Collection (GCC):</p>
      <simplelist>
        <li id="uid53">
          <p noindent="true">The Signal toolbox, a batch compiler for the Signal language, and a structured API that provides a set of program transformations. Itcan be installed without other components and is distributed under GPL V2 license.</p>
        </li>
        <li id="uid54">
          <p noindent="true">The Signal GUI, a Graphical User Interface to the Signal toolbox (editor + interactive access to compiling functionalities).
It can be used either as a specific tool or as a graphical view under Eclipse. In 2015, it has been transformed and restructured, in order to get a more up-to-date interface allowing multi-window manipulation of programs.
It is distributed under GPL V2 license.</p>
        </li>
        <li id="uid55">
          <p noindent="true">The SSME platform, a front-end to the Signal toolbox in the Eclipse environment.
It is distributed under EPL license.</p>
        </li>
        <li id="uid56">
          <p noindent="true">GCCst, a back-end to GCC that generates Signal programs (not yet available for download).</p>
        </li>
      </simplelist>
      <p>The Polychrony toolset also provides a large library of Signal programs and examples, user documentations and developer-oriented implementation documents, and facilities to generate new versions.</p>
      <p>The Polychrony toolset can be freely downloaded on the following web sites:</p>
      <simplelist>
        <li id="uid57">
          <p noindent="true">The Polychrony toolset public web site:
<ref xlink:href="http://polychrony.inria.fr/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>polychrony.<allowbreak/>inria.<allowbreak/>fr/</ref>.
This site, intended for users and for developers, contains downloadable executable and source versions of the software for differents platforms, user documentation, examples, libraries, scientific publications and implementation documentation. In particular, this is the site for the open-source distribution of Polychrony.</p>
        </li>
        <li id="uid58">
          <p noindent="true">The Inria GForge:
<ref xlink:href="https://gforge.inria.fr" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>gforge.<allowbreak/>inria.<allowbreak/>fr</ref>.
This site, intended for internal developers, contains the whole sources of the environment and their documentation.</p>
        </li>
      </simplelist>
      <p>As part of its open-source release, the Polychrony toolset not only comprises source code libraries but also an important corpus of structured documentation, whose aim is not only to document each functionality and service, but also to help a potential developer to package a subset of these functionalities and services, and adapt them to developing a new application-specific tool: a new language front-end, a new back-end compiler. This multi-scale, multi-purpose documentation aims to provide different views of the software, from a high-level structural view to low-level descriptions of basic modules. It supports a distribution of the software “by apartment” (a functionality or a set of functionalities) intended for developers who would only be interested by part of the services of the toolset.</p>
    </subsection>
    <subsection id="uid59" level="1">
      <bodyTitle>SigCert: translation validation from Signal to C</bodyTitle>
      <participants>
        <person key="PASUSERID">
          <firstname>Van-Chan</firstname>
          <lastname>Ngo</lastname>
        </person>
        <person key="tea-2014-idm28088">
          <firstname>Jean-Pierre</firstname>
          <lastname>Talpin</lastname>
        </person>
        <person key="moais-2014-idm5672">
          <firstname>Thierry</firstname>
          <lastname>Gautier</lastname>
        </person>
        <person key="tea-2014-idm25368">
          <firstname>Paul</firstname>
          <lastname>Le Guernic</lastname>
        </person>
        <person key="PASUSERID">
          <firstname>Loïc</firstname>
          <lastname>Besnard</lastname>
        </person>
      </participants>
      <p>Translation validation <footnote id="uid60" id-text="22"><i>Translation validation.</i> Pnueli A., Siegel M., and Singerman E. In Proceedings of TACAS'98, 1998.</footnote> <footnote id="uid61" id-text="23"><i>Translation validation: From signal to c.</i> M. Siegel A. Pnueli and E. Singeman. In Correct Sytem Design Recent Insights and Advances, 2000.</footnote> is a technique that attempts to verify that program transformations preserve the program semantics. It is obvious to prove globally that the source program and its final compiled program have the same semantics. However, we believe that a better approach is to separate concerns and prove each analysis and transformation stage separately with respect to ad-hoc data-structures to carry the semantic information relevant to that phase.</p>
      <p>In the case of the Signal compiler <ref xlink:href="#tea-2015-bid2" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, <ref xlink:href="#tea-2015-bid3" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, the preservation of the semantics can be decomposed into the preservation of clock semantics at the <i>clock calculation</i> phase <ref xlink:href="#tea-2015-bid4" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>
and that of data dependencies at the <i>static scheduling</i> phase<ref xlink:href="#tea-2015-bid5" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, and, finally, value-equivalence of variables at the <i>code generation</i> phase<ref xlink:href="#tea-2015-bid6" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>.</p>
      <p noindent="true" spacebefore="10.0pt"><b>Translation Validation for Clock Transformations in a Synchronous Compiler.</b>
The clock semantics of the source and transformed programs are formally represented as <i>clock models</i>. A clock model is a first-order logic formula that characterizes the presence/absence status of all signals in a Signal program at a given instant. Given two clock models, a <i>clock refinement</i> between them is defined which expresses the semantic preservation of clock semantics<ref xlink:href="#tea-2015-bid4" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>. A method to check the existence of clock refinement is defined as a satisfiability problem which can be automatically and efficiently proved by a SMT solver <footnote id="uid62" id-text="24"><i>Satisfiability modulo theories: An appetizer.</i> L. de Moura and N. Bjorner. In Brazilian Symposium on Formal Methods, 2009.</footnote>.</p>
      <p noindent="true" spacebefore="10.0pt"><b>Precise Deadlock Detection for Polychronous Data-flow Specifications.</b>
Dependency graphs are a commonly used data structure to encode the streams of values in data-flow programs and play a central role in scheduling instructions during automated code generation from such specifications. We propose a precise and effective method that combines a structure of dependency graph and first order logic formulas to check whether multi-clocked data-flow specifications are deadlock-free before generating code from them. We represent the flow of values in the source programs by means of a dependency graph and attach first-order logic formulas to condition these dependencies. We use an SMT solver to effectively reason about the implied formulas and check deadlock freedom <ref xlink:href="#tea-2015-bid5" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>.</p>
      <p noindent="true" spacebefore="10.0pt"><b>Implementation and Experiments</b>.
At a high level, our prototype tool <i>SigCert</i> (<ref xlink:href="#tea-2015-bid6" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>) developed in OCaml could check the correctness of the compilation of Signal compiler w.r.t clock semantics, data dependence, and value-equivalence as given in Figure <ref xlink:href="#uid63" location="intern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>. The individual modules designed in the context of this work are now being implemented and integrated in the open-source Polychrony toolset.</p>
      <object id="uid63">
        <table>
          <tr>
            <td>
              <ressource xlink:href="IMG/sigcert.png" type="float" width="384.2974pt" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest" media="WEB"/>
            </td>
          </tr>
        </table>
        <caption>Our Integration within Polychrony Toolset</caption>
      </object>
    </subsection>
    <subsection id="uid64" level="1">
      <bodyTitle>ADFG: Affine data-flow graphs scheduler synthesis under Eclipse</bodyTitle>
      <participants>
        <person key="tea-2015-idp66624">
          <firstname>Alexandre</firstname>
          <lastname>Honorat</lastname>
        </person>
        <person key="tea-2014-idm28088">
          <firstname>Jean-Pierre</firstname>
          <lastname>Talpin</lastname>
        </person>
        <person key="moais-2014-idm5672">
          <firstname>Thierry</firstname>
          <lastname>Gautier</lastname>
        </person>
        <person key="PASUSERID">
          <firstname>Loïc</firstname>
          <lastname>Besnard</lastname>
        </person>
      </participants>
      <p>We have proposed a dataflow design model <ref xlink:href="#tea-2015-bid7" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/> of SCJ/L1 applications <footnote id="uid65" id-text="25"><i>Safety critical Java technology specification</i>. JSR-302, Year = 2010</footnote> in which handlers (periodic and aperiodic actors) communicate only through lock-free channels. Hence, each mission is modeled as a dataflow graph. The presented dataflow design model comes with a development tool integrated in the Eclipse IDE for easing the development of SCJ/L1 applications and enforcing the restrictions imposed by the design model. It consists of a GMF editor where applications are designed graphically and timing and buffering parameters can be synthesized. Indeed, abstract affine scheduling is first applied on the dataflow subgraph, that consists only of periodic actors, to compute timeless scheduling constraints (e.g. relation between the speeds of two actors) and buffering parameters. Then, symbolic fixed-priority schedulability analysis (i.e., synthesis of timing and scheduling parameters of actors) considers both periodic and aperiodic actors.</p>
      <p>Through a model-to-text transformation, using Acceleo, the SCJ code for missions, interfaces of handlers, and the mission sequencer is automatically generated in addition to the annotations needed by the memory checker. Channels are implemented as cyclic arrays or cyclical asynchronous buffers; and a fixed amount of memory is hence reused to store the infinite streams of tokens. The user must provide the SCJ code of all the <tt>handleAsyncEvent()</tt> methods. We have integrated the SCJ memory checker <footnote id="uid66" id-text="26"><i>Static checking of safety critical Java annotations</i>. Tang, D. Plsek, A. and Vitek, J. International Workshop on Java Technologies for Real-Time and Embedded Systems, 2010</footnote> in our tool so that potential dangling pointers can be highlighted at compile-time. To enhance functional determinism, we would like to develop an ownership type system to ensure that actors are strongly isolated and communicate only through buffers.</p>
      <object id="uid67">
        <table>
          <tr>
            <td>
              <ressource xlink:href="IMG/adfg.png" type="float" width="341.6013pt" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest" media="WEB"/>
            </td>
          </tr>
        </table>
        <caption>The ADFG Tool</caption>
      </object>
      <p>The ADFG tool is being further developed in the context of the ADT "La vie d'AADL" in order to serve both as scheduler synthesis tool from AADL specifications and SCJ tasksets. We plan to further the front end analysis tools from Java task sets in order to build the input CSDF graphs from program analysis, in the context of a future PhD.
</p>
    </subsection>
  </logiciels>
  <resultats id="uid68">
    <bodyTitle>New Results</bodyTitle>
    <subsection id="uid69" level="1">
      <bodyTitle>Polychronous automata</bodyTitle>
      <participants>
        <person key="PASUSERID">
          <firstname>Loïc</firstname>
          <lastname>Besnard</lastname>
        </person>
        <person key="moais-2014-idm5672">
          <firstname>Thierry</firstname>
          <lastname>Gautier</lastname>
        </person>
        <person key="tea-2014-idm25368">
          <firstname>Paul</firstname>
          <lastname>Le Guernic</lastname>
        </person>
        <person key="tea-2014-idm28088">
          <firstname>Jean-Pierre</firstname>
          <lastname>Talpin</lastname>
        </person>
      </participants>
      <p>We have defined a model of <i>polychronous automata</i> based
on clock relations <ref xlink:href="#tea-2015-bid1" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>.
A specificity of this model is that an automaton is submitted to clock constraints:
these finite-state automata define transition systems to express explicit reactions
together with properties, in the form of Boolean formulas over logical time, to constrain their behavior.
This allows one to specify a wide range of control-related configurations, either reactive, or restrictive
with respect to their control environment.
A semantic model is defined for these polychronous automata, that relies on a Boolean algebra of clocks.
Polychronous automata integrate smoothly with data-flow equations in the
polychronous model of computation.</p>
      <p>This formal model of automata also supports the recommendations adopted
by the SAE committee on the AADL to implement a timed and synchronous
behavioural annex for the standard <footnote id="uid70" id-text="27"><i>Logically timed specification in the AADL: a synchronous model of computation and communication (recommendations to the SAE committee on AADL).</i> L. Besnard, E. Borde, P. Dissaux, T. Gautier, P. Le Guernic, and J.-P. Talpin. Technical Report RT-0446, Inria, 2014.</footnote>.</p>
      <p>A minimal syntactic extension of the Signal language has been defined
to integrate polychronous automata in Polychrony.
We have added a new syntactic category of <i>process</i>, called <tt>automaton</tt>.
In such an automaton process, labeled processes represent states,
and generic processes such as <tt>Transition</tt> are used to represent
the automaton features.
Usual equations can be used in these automaton processes
to specify constraints or to define computations.</p>
      <p>We have also defined and implemented the refinement of Signal processes as automata.
A given Signal program may be seen as an automaton which contains
one single state and one single transition, labeled by a clock.
This clock is the upper bound of all the clocks of the program
(the <i>tick</i> of the program).
The construction of a refined automaton from a Signal program is based
on delayed signals, viewed as state variables (in particular Boolean ones).
A state of the automaton is a Signal program with some valuation
of its state variables.
Transitions are labeled by clocks, which represent the events
that fire these transitions.
The principle of the construction consists in dividing a given state
according to the possible values of a state variable (i.e., <i>true</i>
and <i>false</i> for Boolean state variables)
in order to get two states, and thus two new Signal programs.
Each one of these two states is obtained using a rewriting of the
starting program.
Moreover, the absence of value for the state variable (which can be
considered as another possible value) is taken into account
in the clocks labelling the transitions.
The construction of the automaton is a hierarchic process.
Thanks to the clock hierarchy, this construction, which would be
expensive in the worst case (the size of the explicit automaton
being an exponential of its number of state variables),
may be heavily simplified.</p>
    </subsection>
    <subsection id="uid71" level="1">
      <bodyTitle>Runtime verification and trace analysis</bodyTitle>
      <participants>
        <person key="tempo-2014-idm29712">
          <firstname>Vania</firstname>
          <lastname>Joloboff</lastname>
        </person>
        <person key="PASUSERID">
          <firstname>Daian</firstname>
          <lastname>Yue</lastname>
        </person>
        <person key="PASUSERID">
          <firstname>Frédéric</firstname>
          <lastname>Mallet</lastname>
        </person>
      </participants>
      <p>When engineers design a new cyber physical system, there are well
known requirements that can be translated as system properties that
must be verified. These properties can be expressed in some
formalism and when the model has been designed, the properties can be
checked at the model level, using model checking techniques or other
model verification techniques. When building a virtual prototype of
the system, including a combination of simulated hardware, firmware
and application software, the executable models can be augmented also
with property verification, for example in the PSL language, or
simply by introducing assertions in the implementation code.</p>
      <p>This requires that the properties are well specified at the time the
virtual prototype is assembled. However it is also the case that many
intrinsic properties are actually unforeseen when the virtual
prototype is assembled, for example that some hardware buffer overflow
should not remain unnoticed by the software. In most cases, during
system design the simulation fails: the engineers then must
investigate the cause of the failure. Most of time the failure is due
to an unexpected sequence of states and transitions that involve
several components mixing hardware and software that could not be
checked at the model level (e.g. state explosion) or was simply
unforeseen. The engineers then have to investigate the cause of failure.</p>
      <p>A widely used technique for that consists in storing all of the trace
data of simulation sessions into trace files, which are analyzed later
with specialized trace analyzer tools. Such trace files have become
huge, possibly hundred of Gigabytes as all data are stored into the
trace files, and have become untractable by human manual handling. The
engineers use some kind of search tools to identify the cause of
failure and after iterative refinement steps, which are very time
consuming, eventually identify the reason, most often some unforeseen
causality chain of events and state transitions that lead to a
failure. A new system property can then be captured and included into
the set of verified properties.</p>
      <p>In order to better identify the reason for such failures and capture
the missing properties that the system should verify we have started to
work on a new run time verification approach based on trace analysis.
Approaches like PSL requires that the properties to verify are known
before hand. Our approach is attempting for the engineers to
experiment various property verification of failing simulations
without re-building the virtual prototype. We are investigating a
technique for trace analysis that makes it possible to investigate
properties either statically working from a trace file or dynamically
by introducing a dynamic verification component into the virtual prototype.</p>
      <p>The first idea is to introduce a formal mapping/filtering technique
such that the raw data generated by a virtual prototype can be mapped
onto a formal trace model. For that, we propose to use a model
transformer whose code is generated from a higher level. Using the
Eclipse modelling framework, we propose for the virtual prototyping
engineers to first describe using a Domain Specific Language how the
raw output of the simulator can be filtered and mapped to a formal
model. This Domain Specific Language takes as input the description of
the simulator output, and the description of the formal output,
following fixed meta models. In current version, the meta model of
the virtual prototype dictates that it generates 'trace items' where
each trace item is specified as a sequence of identified binary data
variables (bits, bytes, words..) that carry a timestamp.</p>
      <p>The model transformer generates code (in our case C++) that is
dynamically invoked by the virtual prototype to dynamical map the
trace output. An advantage of doing that is that all irrelevant data
with regards to a tested property can be ignored and the size of trace
files can be considerably reduced. For our experiment, we have chosen
logical clock CCSL as our formal target formalism. The Eclipse EMF
tool we have defined allows users to define a mapping model from
the local simulation events from the SimSoC simulator to a logical clock format.</p>
      <p>The second idea is to hide the complexity of the formal method
formulas into a user friendly property specification language. For
example, we do not want to expose the end-users engineers to
understand the intricacies of CCSL or LTL. The property specification
language is translated into CCSL formulas, which in turn generate
automata. It should be possible then, to some extent, to change the
formalism underneath the language without changing the properties
expressed by the user.</p>
      <p>The property specification language ultimately compiles into automata
that parse the formal trace output generated above. At runtime of the
virtual prototype, the mapping library is dynamically loaded by the
simulator and generates input for the automata. The verification of
the properties can be dynamic, with a true runtime verification, or
statically by analyzing the (much smaller) trace file after a failure.</p>
      <p>This year we have investigated this approach, designed the
architecture described above and carried some experimental work, but a
significant part of the implementation still remains to be done. We
have started designing a new property specification language where the
users can express properties such as causality (e.g. the train must
not start if the door is opened) or jittering or clock drift in image
processing <ref xlink:href="#tea-2015-bid8" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, <ref xlink:href="#tea-2015-bid9" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>.
There remain some theoretical issues with regards to
which properties can be effectively verified.</p>
    </subsection>
    <subsection id="uid72" level="1">
      <bodyTitle>Integration of Polychrony with QGen</bodyTitle>
      <participants>
        <person key="tea-2014-idp67904">
          <firstname>Christophe</firstname>
          <lastname>Junke</lastname>
        </person>
        <person key="PASUSERID">
          <firstname>Loïc</firstname>
          <lastname>Besnard</lastname>
        </person>
        <person key="moais-2014-idm5672">
          <firstname>Thierry</firstname>
          <lastname>Gautier</lastname>
        </person>
        <person key="tea-2014-idm25368">
          <firstname>Paul</firstname>
          <lastname>Le Guernic</lastname>
        </person>
        <person key="tea-2014-idm28088">
          <firstname>Jean-Pierre</firstname>
          <lastname>Talpin</lastname>
        </person>
      </participants>
      <p>The FUI project P gave birth to the QGen qualifiable model compiler, developed by Adacore.
The tool accepts a discrete subset of Simulink expressed in a language called P and produces C or Ada code.
It is currently not known if an architectural description language is going to be integrated in QGen, as originally planned.</p>
      <p>We developed a transformation tool named <tt>P2S</tt> for expressing P system models in Signal, using the EMF
(Eclipse Modelling Framework) technology. <tt>P2S</tt> tool is written in Clojure, a language inspired by Lisp
running on the Java Virtual Machine, which helped us define a terse and expressive API for manipulating Signal
models while remaining fully interoperable with existing Java libraries (including Eclipse plugins and especially Polychrony ones).</p>
      <p>We experimented this transformation tool on small to medium use cases provided by members of the P project.
Our work is detailed in a conference paper titled “Integration of Polychrony and QGen Model Compiler”, which will appear
at ERTSS'16 <footnote id="uid73" id-text="28"><i>Integration of polychrony in the QGen model compiler</i>. C. Junke, T. Gautier, L. Besnard, J.-P. Talpin. ERTS'16 - European Congress on Embeddd Real-Rime Software and Systems, 2016.</footnote>. A perspective of our work is to convert the intermediate code emitted by QGen as Signal too (under development), in order to produce a fully executable Signal model of Simulink models, and combine them with architectural description of systems in AADL, and/or P's architecture language.
</p>
    </subsection>
    <subsection id="uid74" level="1">
      <bodyTitle>Formal semantics and model-based analysis of AADL specifications</bodyTitle>
      <participants>
        <person key="PASUSERID">
          <firstname>Loïc</firstname>
          <lastname>Besnard</lastname>
        </person>
        <person key="PASUSERID">
          <firstname>Etienne</firstname>
          <lastname>Borde</lastname>
        </person>
        <person key="moais-2014-idm5672">
          <firstname>Thierry</firstname>
          <lastname>Gautier</lastname>
        </person>
        <person key="tea-2014-idm25368">
          <firstname>Paul</firstname>
          <lastname>Le Guernic</lastname>
        </person>
        <person key="tea-2015-idp65384">
          <firstname>Clément</firstname>
          <lastname>Guy</lastname>
        </person>
        <person key="tea-2014-idm28088">
          <firstname>Jean-Pierre</firstname>
          <lastname>Talpin</lastname>
        </person>
        <person key="PASUSERID">
          <firstname>Huafeng</firstname>
          <lastname>Yu</lastname>
        </person>
      </participants>
      <p>Last year, the SAE committee on the AADL adopted our recommendations to implement a timed and synchronous behavioural annex for the standard. We have defined a new model of polychronous constrained automata that has been provided as semantic model for our proposal of an extension of the AADL behavioural annex. An experimental implementation of the semantic features of this “timing annex” will be provided through the Polychrony framework. For that purpose, representations of automata have been introduced in the Signal toolbox of Polychrony. The implementation will enrich the already existing transformation from AADL models to Signal programs to consider behaviour of AADL models, and will be integrated in the POP environment for Eclipse. The transformation from AADL behaviour annex to Signal programs use the Signal extension for polychronous automata, which are used as the common semantic domain. The implementation is currently tested with the adaptive cruise control case study developed with Toyota ITC.</p>
      <p>Our work with the SAE committee is sponsored by Toyota, with whom we started a new project in 2014 jointly with VTRL as US partner. The main topic of our project is the semantic-based model integration of automotive architectures, virtual integration, toward formal verification and automated code synthesis <ref xlink:href="#tea-2015-bid0" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>. The project led to the elaboration of a case study of an adaptive cruise control system, supported through an AADL implementation and a video of demonstration. The case study implementation is an AADL model representing the whole adaptive cruise control system, from car devices (e.g., brakes, throttle or radar) to software behavior, including embedded hardware (buses, processors and memories). It will be used in the future to demonstrate property and constraint analyses through heterogeneous systems. Huafeng Yu, our main collaborator at Toyota ITC, presented the video of demonstration at the annual Toyota show case. Early returns from the show case express a growing interest of Toyota for architecture and timing of car embedded systems, which could lead to new collaborations.</p>
    </subsection>
    <subsection id="uid75" level="1">
      <bodyTitle>Refinement types for reactive system models</bodyTitle>
      <participants>
        <person key="PASUSERID">
          <firstname>Pierre</firstname>
          <lastname>Jouvelot</lastname>
        </person>
        <person key="PASUSERID">
          <firstname>Sandeep</firstname>
          <lastname>Shukla</lastname>
        </person>
        <person key="tea-2014-idm28088">
          <firstname>Jean-Pierre</firstname>
          <lastname>Talpin</lastname>
        </person>
      </participants>
      <p>We introduced a new technique born from the field of functional programming to adapt and extend it to the case of reaction systems, the notion of refinement types of Jahla et al. <footnote id="uid76" id-text="29"><i>Liquid Types</i>. P. M. Rondon, M. Kawaguchi, R. Jhala. PLDI, 2008</footnote>. Our idea is to formulate the analysis of algebraic properties in synchronous and reactive programs as data-dependent type properties formulated using multi-sorted logic formulas, which we call liquid clocks <ref xlink:href="#tea-2015-bid10" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>, <ref xlink:href="#tea-2015-bid11" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>. Our objectives are to cover the case of several models of concurrency and computation: synchronous, asynchronous, data-parallel; as well as to formulate such algebraic properties for linear, continuous and logical forms of time, all into the same type-theoretical framework. This work, born from two collaborations With USAF/VT and with the ANR Feever project, will be pursued within the TIX international partnership.
</p>
    </subsection>
    <subsection id="uid77" level="1">
      <bodyTitle>Formal verification of timing aspects of cyber-physical systems using a contract theory</bodyTitle>
      <participants>
        <person key="tea-2014-idm28088">
          <firstname>Jean-Pierre</firstname>
          <lastname>Talpin</lastname>
        </person>
        <person key="PASUSERID">
          <firstname>Benoit</firstname>
          <lastname>Boyer</lastname>
        </person>
        <person key="PASUSERID">
          <firstname>David</firstname>
          <lastname>Mentre</lastname>
        </person>
        <person key="tea-2015-idp69088">
          <firstname>Simon</firstname>
          <lastname>Lunel</lastname>
        </person>
      </participants>
      <p>This is a new project in collaboration with Mitsubishi Electronics Research Centre Europe (MERCE). The primary goal of our project is to ensure correctness-by-design in cyber-physical systems, i.e., systems that mix software and hardware in a physical environment, e.g., Mitsubishi factory automation lines. We plan to explore a multi-sorted algebraic framework for static analysis and formal verification starting from a simple use case extracted from Mitsubishi factory automation documentations. This will serve as a basis to more ambitious research where we intend to leverage recent advance in type theory, SMT solvers for nonlinear real arithmetic (dReal and <formula type="inline"><math xmlns="http://www.w3.org/1998/Math/MathML" overflow="scroll"><mi>δ</mi></math></formula>-decidability) and contracts theory (meta-theory of Benveniste et al., Ruchkin's contracts) to provide a general framework of reasoning about heterogeneous factory components.
</p>
    </subsection>
  </resultats>
  <contrats id="uid78">
    <bodyTitle>Bilateral Contracts and Grants with Industry</bodyTitle>
    <subsection id="uid79" level="1">
      <bodyTitle>Bilateral Contracts with Industry</bodyTitle>
      <subsection id="idp2600200" level="2">
        <bodyTitle>
          <b>Toyota Info-Technology Centre (2014+)</b>
        </bodyTitle>
        <sanspuceslist>
          <li id="uid80">
            <p noindent="true">Title: Co-Modeling of Safety-Critical Multi-threaded Embedded Software for Multi-Core Embedded Platforms</p>
          </li>
          <li id="uid81">
            <p noindent="true">Inria principal investigator: Jean-Pierre Talpin</p>
          </li>
          <li id="uid82">
            <p noindent="true">International Partner (Institution - Laboratory - Researcher):</p>
            <sanspuceslist>
              <li id="uid83">
                <p noindent="true">Toyota Info-Technology Centre, Mountain View, California</p>
              </li>
              <li id="uid84">
                <p noindent="true">Virginia Tech Research Laboratories, Arlington</p>
              </li>
            </sanspuceslist>
          </li>
          <li id="uid85">
            <p noindent="true">Duration: renewed yearly since 2014</p>
          </li>
          <li id="uid86">
            <p noindent="true">Abstract: We started a new project in April 2014 funded by Toyota ITC, California, to work with Huafeng Yu (a former post-doctorate of team ESPRESSO) and with VTRL as US partner. The main topic of our project is the semantic-based model integration of automotive architectures, virtual integration, toward formal verification and automated code synthesis. This year, Toyota ITC is sponsoring our submission for the standardisation of a time annex in the SAE standard AADL.</p>
            <p>In a second work-package, we aim at elaborating a standardised solution to virtually integrate and simulate a car based on heterogeneous models of its components. This year, it will be exemplified by the elaboration of a case study in collaboration with Virginia Tech. The second phase of the project will consist of delivering an open-source, reference implementation, of the proposed AADL standard and validate it with a real-scale model of the initial case-study.</p>
          </li>
        </sanspuceslist>
      </subsection>
    </subsection>
    <subsection id="uid87" level="1">
      <bodyTitle>Bilateral Grants with Industry</bodyTitle>
      <subsection id="idp2606720" level="2">
        <bodyTitle>
          <b>Mitsubishi Electric R&amp;D Europe (2015-2018)</b>
        </bodyTitle>
        <sanspuceslist>
          <li id="uid88">
            <p noindent="true">Title: Analysis and verification for correct by construction orchestration in automated factories</p>
          </li>
          <li id="uid89">
            <p noindent="true">Inria principal investigator: Jean-Pierre Talpin, Simon Lunel</p>
          </li>
          <li id="uid90">
            <p noindent="true">International Partner: Mitsubishi Electric R&amp;D Europe</p>
          </li>
          <li id="uid91">
            <p noindent="true">Duration: 2015 - 2018</p>
          </li>
          <li id="uid92">
            <p noindent="true">Abstract: The primary goal of our project is to ensure correctness-by-design in cyber-physical systems, i.e., systems that mix software and hardware in a physical environment, e.g., Mitsubishi factory automation lines. We plan to explore a multi-sorted algebraic framework for static analysis and formal verification starting from a simple use case extracted from Mitsubishi factory automation documentations. This will serve as a basis to more ambitious research where we intend to leverage recent advance in type theory, SMT solvers for nonlinear real arithmetic (dReal and <formula type="inline"><math xmlns="http://www.w3.org/1998/Math/MathML" overflow="scroll"><mi>δ</mi></math></formula>-decidability) and contracts theory (meta-theory of Benveniste et al., Ruchkin's contracts) to provide a general framework of reasoning about heterogeneous factory components.</p>
          </li>
        </sanspuceslist>
      </subsection>
    </subsection>
  </contrats>
  <partenariat id="uid93">
    <bodyTitle>Partnerships and Cooperations</bodyTitle>
    <subsection id="uid94" level="1">
      <bodyTitle>National Initiatives</bodyTitle>
      <subsection id="uid95" level="2">
        <bodyTitle>ANR</bodyTitle>
        <sanspuceslist>
          <li id="uid96">
            <p noindent="true">Program: ANR</p>
          </li>
          <li id="uid97">
            <p noindent="true">Project acronym: <b>Feever</b></p>
          </li>
          <li id="uid98">
            <p noindent="true">Project title: Faust Environment Everyware</p>
          </li>
          <li id="uid99">
            <p noindent="true">Duration: 2014-2016</p>
          </li>
          <li id="uid100">
            <p noindent="true">Coordinator: Pierre Jouvelot, Mines ParisTech</p>
          </li>
          <li id="uid101">
            <p noindent="true">Other partners: Grame, Inria Rennes, CIEREC</p>
          </li>
          <li id="uid102">
            <p noindent="true">URL: <ref xlink:href="http://www.feever.fr" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>www.<allowbreak/>feever.<allowbreak/>fr</ref></p>
          </li>
          <li id="uid103">
            <p noindent="true">Abstract:</p>
            <p>The aim of project FEEVER is to ready the Faust music synthesis language for the Web. In this context, we collaborate with Mines ParisTech to define a type system suitable to model music signals timed at multiple rates and to formally support playing music synthesised from different physical locations.</p>
          </li>
        </sanspuceslist>
      </subsection>
      <subsection id="uid104" level="2">
        <bodyTitle>Competitivity Clusters</bodyTitle>
        <sanspuceslist>
          <li id="uid105">
            <p noindent="true">Program: FUI</p>
          </li>
          <li id="uid106">
            <p noindent="true">Project acronym: P</p>
          </li>
          <li id="uid107">
            <p noindent="true">Project title: Project P</p>
          </li>
          <li id="uid108">
            <p noindent="true">Duration: March 2011 - Sept. 2015</p>
          </li>
          <li id="uid109">
            <p noindent="true">Coordinator: Continental Automotive France</p>
          </li>
          <li id="uid110">
            <p noindent="true">Other partners: 19 partners (Airbus, Astrium, Rockwell Collins, Safran, Thales Alenia Space, Thales Avionics...)</p>
          </li>
          <li id="uid111">
            <p noindent="true">URL: <ref xlink:href="http://www.open-do.org/projects/p/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>www.<allowbreak/>open-do.<allowbreak/>org/<allowbreak/>projects/<allowbreak/>p/</ref></p>
          </li>
          <li id="uid112">
            <p noindent="true">Abstract:</p>
            <p>The aim of project P is 1/ to aid industrials to deploy model-driven
engineering technology for the development of safety-critical embedded
applications, 2/ to contribute on initiatives such as ITEA2 OPEES 
and Artemisia CESAR to develop support for tools inter-operability, and 3/ to provide
state-of-the-art automated code generation techniques from multiple,
heterogeneous, system-levels models. The focus of project P is the
development of a code generation toolchain starting from
domain-specific modeling languages for embedded software design and to
deliver the outcome of this development as an open-source
distribution, in the aim of gaining an impact similar to GCC for
general-purpose programming, as well as a kit to aid with the
qualification of that code generation toolchain.</p>
            <p>The contribution of project-team TEA in project P is to bring the
necessary open-source technology of the Polychrony environment to
allow for the synthesis of symbolic schedulers for software
architectures modeled with P in a manner ensuring global asynchronous deterministic execution..</p>
          </li>
        </sanspuceslist>
      </subsection>
      <subsection id="uid113" level="2">
        <bodyTitle>PAI CORAC</bodyTitle>
        <sanspuceslist>
          <li id="uid114">
            <p noindent="true">Program: CORAC</p>
          </li>
          <li id="uid115">
            <p noindent="true">Project acronym: CORAIL</p>
          </li>
          <li id="uid116">
            <p noindent="true">Project title: Composants pour l'Avionique Modulaire Étendue</p>
          </li>
          <li id="uid117">
            <p noindent="true">Duration: July 2013 - May 2017</p>
          </li>
          <li id="uid118">
            <p noindent="true">Coordinator: Thales Avionics</p>
          </li>
          <li id="uid119">
            <p noindent="true">Other partners: Airbus, Dassault Aviation, Eurocopter, Sagem...</p>
          </li>
          <li id="uid120">
            <p noindent="true">URL: <ref xlink:href="http://www.corac-ame.com/" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>www.<allowbreak/>corac-ame.<allowbreak/>com/</ref></p>
          </li>
          <li id="uid121">
            <p noindent="true">Abstract:</p>
            <p>The CORAIL project aims at defining components for Extended Modular Avionics.
The contribution of project-team TEA is to define a specification method
and to provide a generator of multi-task applications.</p>
          </li>
        </sanspuceslist>
      </subsection>
    </subsection>
    <subsection id="uid122" level="1">
      <bodyTitle>International Initiatives</bodyTitle>
      <subsection id="uid123" level="2">
        <bodyTitle>International Project Grants</bodyTitle>
        <subsection id="idp2635752" level="3">
          <bodyTitle>US Air Force Office for Scientific Research – Grant FA8655-13-1-3049</bodyTitle>
          <sanspuceslist>
            <li id="uid124">
              <p noindent="true">Title: Co-Modeling of Safety-Critical Multi-threaded Embedded Software for Multi-Core Embedded Platforms</p>
            </li>
            <li id="uid125">
              <p noindent="true">Inria principal investigator: Jean-Pierre Talpin</p>
            </li>
            <li id="uid126">
              <p noindent="true">International Partner (Institution - Laboratory - Researcher):</p>
              <sanspuceslist>
                <li id="uid127">
                  <p noindent="true">Virginia Tech Research Laboratories, Arlington (United States)</p>
                </li>
                <li id="uid128">
                  <p noindent="true">Embedded Systems Group, Teschnische Universität Kaiserslautern (Germany)</p>
                </li>
              </sanspuceslist>
            </li>
            <li id="uid129">
              <p noindent="true">Duration: 2013 - 2016</p>
            </li>
            <li id="uid130">
              <p noindent="true">See also: <ref xlink:href="http://www.irisa.fr/espresso/Polycore" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>www.<allowbreak/>irisa.<allowbreak/>fr/<allowbreak/>espresso/<allowbreak/>Polycore</ref></p>
            </li>
            <li id="uid131">
              <p noindent="true">Abstract: The aim of the USAF OSR Grant FA8655-13-1-3049 is to support collaborative research entitled “Co-Modeling of safety-critical multi-threaded embedded software for multi-core embedded platforms” between Inria project-team ESPRESSO, the VTRL Fermat Laboratory and the TUKL embedded system research group, under the program of the Polycore associate-project.</p>
            </li>
          </sanspuceslist>
        </subsection>
        <subsection id="idp2643576" level="3">
          <bodyTitle>Applied Science &amp; Technology Research Institute (ASTRI, Hong Kong)</bodyTitle>
          <sanspuceslist>
            <li id="uid132">
              <p noindent="true">Title: Virtual Prototyping of Embedded Software Architectures</p>
            </li>
            <li id="uid133">
              <p noindent="true">Inria principal investigator: Jean-Pierre Talpin</p>
            </li>
            <li id="uid134">
              <p noindent="true">International Partner: ASTRI, Hong Kong</p>
            </li>
            <li id="uid135">
              <p noindent="true">Duration: 2015 - 2016</p>
            </li>
            <li id="uid136">
              <p noindent="true">Abstract: the topics of our present collaboration is essentially on heterogeneous time modelling for virtual prototyping in cyber-physical systems. Our project covers a wide spectrum of area of experience developed since 2012 and comprising</p>
              <simplelist>
                <li id="uid137">
                  <p noindent="true">model-based design and analysis of cyber-physical systems;</p>
                </li>
                <li id="uid138">
                  <p noindent="true">system-level virtual prototyping and validation;</p>
                </li>
                <li id="uid139">
                  <p noindent="true">design space exploration and system synthesis;</p>
                </li>
              </simplelist>
            </li>
          </sanspuceslist>
        </subsection>
      </subsection>
      <subsection id="uid140" level="2">
        <bodyTitle>Inria International Labs</bodyTitle>
        <subsection id="uid141" level="3">
          <bodyTitle>SACCADES</bodyTitle>
          <sanspuceslist>
            <li id="uid142">
              <p noindent="true">Title: Saccades</p>
            </li>
            <li id="uid143">
              <p noindent="true">International Partner:</p>
              <sanspuceslist>
                <li id="uid144">
                  <p noindent="true">LIAMA</p>
                </li>
                <li id="uid145">
                  <p noindent="true">East China Normal University</p>
                </li>
                <li id="uid146">
                  <p noindent="true">Inria project-teams Aoste and Tea</p>
                </li>
              </sanspuceslist>
            </li>
            <li id="uid147">
              <p noindent="true">Duration: 2003 - now</p>
            </li>
            <li id="uid148">
              <p noindent="true">The SACCADES project is a LIAMA project hosted by East China Normal University and jointly led by Vania Joloboff (Inria)
and Min Zhang (ECNU).
The SACCADES project aims at improving the development of reliable cyber physical systems and more generally of distributed systems combining asynchronous with synchronous aspects, with different but complementary angles:</p>
              <simplelist>
                <li id="uid149">
                  <p noindent="true">develop the theoretical support for Models of Computations and Communications (MoCCs) that are the fundamentals basis of the tools.</p>
                </li>
                <li id="uid150">
                  <p noindent="true">develop software tools (a) to enable the development and verification of executable models of the application software, which may be local or distributed and (b) to define and optimize the mapping of software components over the available resources.</p>
                </li>
                <li id="uid151">
                  <p noindent="true">develop virtual prototyping technology enabling the validation of the application software on the target hardware platform.</p>
                </li>
              </simplelist>
              <p>The ambition of SACCADES project is to develop</p>
              <simplelist>
                <li id="uid152">
                  <p noindent="true">Theoretical Support for Cyber Physical Systems</p>
                </li>
                <li id="uid153">
                  <p noindent="true">Software Tools for design and validation of CPS</p>
                </li>
                <li id="uid154">
                  <p noindent="true">Virtual Prototyping of CPS</p>
                </li>
              </simplelist>
            </li>
          </sanspuceslist>
        </subsection>
      </subsection>
      <subsection id="uid155" level="2">
        <bodyTitle>Inria International Partners</bodyTitle>
        <subsection id="uid156" level="3">
          <bodyTitle>POLYCORE</bodyTitle>
          <sanspuceslist>
            <li id="uid157">
              <p noindent="true">Title: Models of computation for embedded software design</p>
            </li>
            <li id="uid158">
              <p noindent="true">International Partner:</p>
              <sanspuceslist>
                <li id="uid159">
                  <p noindent="true">Virginia Tech Research Laboratories (USA)</p>
                </li>
                <li id="uid160">
                  <p noindent="true">University of Kanpur (India)</p>
                </li>
              </sanspuceslist>
            </li>
            <li id="uid161">
              <p noindent="true">Duration: 2002 - now</p>
            </li>
            <li id="uid162">
              <p noindent="true">Team TEA collaborates with Sandeep Shukla (now with IIT Kanpur) and his team at Virginia Tech, since 2002 (NSF-Inria BALBOA and Polycore projects, USAF OSR grant).</p>
              <p>To date, our fruitful and sustained collaboration has yield the creation of the ACM-IEEE MEMOCODE conference series <footnote id="uid163" id-text="30">ACM-IEEE MEMOCODE conference series</footnote> in 2003, of the ACM-SIGDA FMGALS workshop series, and of a full-day tutorial at ACM-IEEE DATE'09 on formal methods in system design. We have jointly edited two books with Springer <footnote id="uid164" id-text="31"><i>Formal methods and models for system design</i>, R. Gupta, S. Shukla, J.-P. Talpin, Eds. ISBN 1-4020-8051-4. Springer, 2004.</footnote> <footnote id="uid165" id-text="32"><i>Synthesis of embedded systems</i>. S. Shukla, J.-P. Talpin, Eds. ISBN 978-1-4419-6399-4. Springer, 2010</footnote>, two special issues of the IEEE Transactions on Computers and one of the IEEE Transactions on Industrial Informatics, and published more than 40 joint journal articles and conference papers.</p>
              <p>This year, we published a joint paper at the 52nd. Digital Automation Conference in San Francisco <ref xlink:href="#tea-2015-bid0" location="biblio" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest"/>.</p>
            </li>
          </sanspuceslist>
        </subsection>
        <subsection id="uid166" level="3">
          <bodyTitle>VESA</bodyTitle>
          <sanspuceslist>
            <li id="uid167">
              <p noindent="true">Title: Virtual Prototyping of embedded software architectures</p>
            </li>
            <li id="uid168">
              <p noindent="true">International Partner:</p>
              <sanspuceslist>
                <li id="uid169">
                  <p noindent="true">Applied Science &amp; Technology Research Institute (ASTRI, Hong Kong)</p>
                </li>
                <li id="uid170">
                  <p noindent="true">The University of Hong Kong</p>
                </li>
              </sanspuceslist>
            </li>
            <li id="uid171">
              <p noindent="true">Duration: 2012 - now</p>
            </li>
            <li id="uid172">
              <p noindent="true">We collaborate with John Koo, now with ASTRI, and LIAMA since 2012 through visiting grants of the Chinese Academy of Science and of the University of Rennes on the topics of heterogeneous time modelling and virtual prototyping in cyber-physical systems.</p>
            </li>
          </sanspuceslist>
        </subsection>
        <subsection id="uid173" level="3">
          <bodyTitle>TIX</bodyTitle>
          <sanspuceslist>
            <li id="uid174">
              <p noindent="true">Title: Time In Cybernetic Systems</p>
            </li>
            <li id="uid175">
              <p noindent="true">International Partner:</p>
              <sanspuceslist>
                <li id="uid176">
                  <p noindent="true">Rajesh Gupta, UCSD</p>
                </li>
                <li id="uid177">
                  <p noindent="true">Mani Srivastava, UCLA</p>
                </li>
              </sanspuceslist>
            </li>
            <li id="uid178">
              <p noindent="true">Start year: 2015</p>
            </li>
            <li id="uid179">
              <p noindent="true">The first topic of our collaboration is the formal definition of cross-domains clock models in system design and the formal verification of time stabilisation and synchronisation protocols used in distributed systems (sensor networks, data-bases). In this prospect, the NSF project Roseline is our basis of investigation (<ref xlink:href="https://sites.google.com/site/roselineproject" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>sites.<allowbreak/>google.<allowbreak/>com/<allowbreak/>site/<allowbreak/>roselineproject</ref>). Roseline aims at enabling robust, secure and efficient knowledge of time across the system stack.</p>
              <p>Our second topic of collaboration is the refoundation of time modelling in high-level reactive and scripting languages, for application to the above using uni-kernels to cut through system stacks. We aim at applying the concepts of refinement types to formally specify and infer timing properties in CPS models from different system design view-point (physical, hardware, software) and using different levels of abstraction into multi-sorted 1st order logic (delta-decidability, linear arithmetic, Boolean logic, temporal logic).</p>
            </li>
          </sanspuceslist>
        </subsection>
      </subsection>
    </subsection>
    <subsection id="uid180" level="1">
      <bodyTitle>International Research Visitors</bodyTitle>
      <subsection id="uid181" level="2">
        <bodyTitle>Visits to International Teams</bodyTitle>
        <subsection id="uid182" level="3">
          <bodyTitle>Research stays abroad</bodyTitle>
          <p>Jean-Pierre Talpin was awarded a visiting researcher grant by USAF OSR in 2014. In this context, he visited the Arlington and Falls Church VT campuses in Spring, Summer of 2015, and UC San Diego in Autumn 2015.</p>
          <p>Thierry Gautier was invited to visit NUAA (Nanjing University of Aeronautics and Astronautics), Nanjing, China, in September 2015.</p>
        </subsection>
      </subsection>
    </subsection>
  </partenariat>
  <diffusion id="uid183">
    <bodyTitle>Dissemination</bodyTitle>
    <subsection id="uid184" level="1">
      <bodyTitle>Promoting Scientific Activities</bodyTitle>
      <subsection id="uid185" level="2">
        <bodyTitle>Scientific events organisation</bodyTitle>
        <subsection id="uid186" level="3">
          <bodyTitle>Member of the organizing committees</bodyTitle>
          <p>Jean-Pierre Talpin is a member of the steering committee of the ACM-IEEE Conference on Methods and Models for System Design (MEMOCODE).</p>
        </subsection>
      </subsection>
      <subsection id="uid187" level="2">
        <bodyTitle>Scientific events selection</bodyTitle>
        <subsection id="uid188" level="3">
          <bodyTitle>Chair of conference program committees</bodyTitle>
          <p>Jean-Pierre Talpin co-chaired the AVICPS'15 workshop at RTSS'15</p>
        </subsection>
        <subsection id="uid189" level="3">
          <bodyTitle>Member of the conference program committees</bodyTitle>
          <p>Jean-Pierre Talpin served the program committee of:</p>
          <simplelist>
            <li id="uid190">
              <p noindent="true">MEMOCODE'15, 13th ACM-IEEE International Conference on Formal Methods and Models for System Design</p>
            </li>
            <li id="uid191">
              <p noindent="true">ACVI'15, 2nd Workshop Architecture Centric Virtual Integration</p>
            </li>
            <li id="uid192">
              <p noindent="true">AVICPS'15, 5th Analytic Virtual Integration of Cyber-Physical Systems Workshop</p>
            </li>
            <li id="uid193">
              <p noindent="true">FACS'15, 12th International Conference on Formal Aspects of Component Software</p>
            </li>
            <li id="uid194">
              <p noindent="true">FTSCS'15, 8th International Workshop on Formal Techniques for Safety-Critical Systems</p>
            </li>
            <li id="uid195">
              <p noindent="true">ICESS'15, 12th International Conference on Embedded Software and Systems</p>
            </li>
            <li id="uid196">
              <p noindent="true">SCOPES'15, 18th International Workshop on Software and Compilers for Embedded Systems</p>
            </li>
            <li id="uid197">
              <p noindent="true">SAC'15, 30th ACM/SIGAPP Symposium on Applied Computing</p>
            </li>
          </simplelist>
          <p>Thierry Gautier served as program committee member for the 2015 Electronic System Level Synthesis Conference, ESLsyn 2015 (<ref xlink:href="http://ecsi.org//eslsyn" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>ecsi.<allowbreak/>org//<allowbreak/>eslsyn</ref>).</p>
        </subsection>
        <subsection id="uid198" level="3">
          <bodyTitle>reviewer</bodyTitle>
          <p>Thierry Gautier reviewed for ICCAD 2015 and MEMOCODE 2015.</p>
        </subsection>
      </subsection>
      <subsection id="uid199" level="2">
        <bodyTitle>Journal</bodyTitle>
        <subsection id="uid200" level="3">
          <bodyTitle>Member of the editorial boards</bodyTitle>
          <p>Jean-Pierre Talpin is Associate Editor with the ACM Transactions for Embedded Computing Systems (TECS),
with the Springer journal on Frontiers of Computer Science (FCS),
and with the EURASIP journal of embedded systems (JES).</p>
          <p>Jean-Pierre Talpin was Guest Editor of two special issues of the ACM TECS on <i>Architecture-Centric Virtual Integration</i> and on <i>Formal Methods for System Design</i>.</p>
        </subsection>
        <subsection id="uid201" level="3">
          <bodyTitle>reviewer</bodyTitle>
          <p>Jean-Pierre Talpin reviewed articles for Acta Informatica.</p>
          <p>Thierry Gautier reviewed for Frontiers of Computer Science.</p>
        </subsection>
      </subsection>
      <subsection id="uid202" level="2">
        <bodyTitle>Invited talks</bodyTitle>
        <p>Jean-Pierre Talpin gave a lecture on "Sémantique formelle de modèles d'architecture" at the Ecole temps-réel 2015 in Rennes</p>
      </subsection>
      <subsection id="uid203" level="2">
        <bodyTitle>Scientific expertise</bodyTitle>
        <p>Jean-Pierre Talpin is co-author with Huafeng Yu and Sandeep Shukla of two patents filed with the USPTO:</p>
        <simplelist>
          <li id="uid204">
            <p noindent="true">T1834.10134US01 – A timing-oriented and architecture-centric system design using contracts</p>
          </li>
          <li id="uid205">
            <p noindent="true">T1834.10131US01 – Bottom-up approach for integrating models for software components using contracts</p>
          </li>
        </simplelist>
      </subsection>
    </subsection>
    <subsection id="uid206" level="1">
      <bodyTitle>Teaching - Supervision - Juries</bodyTitle>
      <subsection id="uid207" level="2">
        <bodyTitle>Supervision</bodyTitle>
        <simplelist>
          <li id="uid208">
            <p noindent="true">Jean-Pierre Talpin is the supervisor of Simon Lunel's thesis on "<i>Timed contract algebras for correct by construction real-time system design</i>" and co-supervisor of Imré Frotier de la Mésselière with Mines ParisTech until June 2015.</p>
          </li>
        </simplelist>
      </subsection>
      <subsection id="uid209" level="2">
        <bodyTitle>Juries</bodyTitle>
        <p>Jean-Pierre Talpin served as Referee (rapporteur) for the HDR Thesis defense of Claire Paggetti , entitled "<i>Programmation sûre de plates-formes embarquées de type multi/pluri-cœurs</i>".</p>
        <p>Jean-Pierre Talpin served as Referee (rapporteur) for the PhD. Thesis Defence of</p>
        <simplelist>
          <li id="uid210">
            <p noindent="true">Elie Richa, Telecom ParisTech, entitled "<i>Qualification of Source Code Generators in the Avionics Domain :
Automated Testing of Model Transformation Chains</i>".</p>
          </li>
          <li id="uid211">
            <p noindent="true">Ahlem Triki, Université de Grenoble , entitled "<i>Distributed Implementations of Timed Component-based Systems</i>".</p>
          </li>
          <li id="uid212">
            <p noindent="true">Yu Bai, TU Kaiserslautern , entitled "<i>Model-based Design of Embedded Systems by Desynchronization</i>".</p>
          </li>
        </simplelist>
      </subsection>
    </subsection>
  </diffusion>
  <biblio id="bibliography" html="bibliography" numero="10" titre="Bibliography">
    
    <biblStruct id="tea-2015-bid2" type="incollection" rend="refer" n="refercite:besnard:inria-00540493">
      <identifiant type="doi" value="10.1007/978-1-4419-6400-7_1"/>
      <identifiant type="hal" value="inria-00540493"/>
      <analytic>
        <title level="a">Compilation of Polychronous Data Flow Equations</title>
        <author>
          <persName key="tea-2014-idp66648">
            <foreName>Loïc</foreName>
            <surname>Besnard</surname>
            <initial>L.</initial>
          </persName>
          <persName key="moais-2014-idm5672">
            <foreName>Thierry</foreName>
            <surname>Gautier</surname>
            <initial>T.</initial>
          </persName>
          <persName key="tea-2014-idm25368">
            <foreName>Paul</foreName>
            <surname>Le Guernic</surname>
            <initial>P.</initial>
          </persName>
          <persName key="tea-2014-idm28088">
            <foreName>Jean-Pierre</foreName>
            <surname>Talpin</surname>
            <initial>J.-P.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <editor role="editor">
          <persName>
            <foreName>Sandeep K.</foreName>
            <surname>Shukla</surname>
            <initial>S. K.</initial>
          </persName>
          <persName key="tea-2014-idm28088">
            <foreName>Jean-Pierre</foreName>
            <surname>Talpin</surname>
            <initial>J.-P.</initial>
          </persName>
        </editor>
        <title level="m">Synthesis of Embedded Software</title>
        <imprint>
          <publisher>
            <orgName>Springer</orgName>
          </publisher>
          <dateStruct>
            <year>2010</year>
          </dateStruct>
          <biblScope type="pages">1-40</biblScope>
          <ref xlink:href="http://hal.inria.fr/inria-00540493" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>inria-00540493</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="tea-2015-bid7" type="inproceedings" rend="refer" n="refercite:bouakaz:hal-00916487">
      <identifiant type="doi" value="10.1145/2463596.2463600"/>
      <identifiant type="hal" value="hal-00916487"/>
      <analytic>
        <title level="a">Design of Safety-Critical Java Level 1 Applications Using Affine Abstract Clocks</title>
        <author>
          <persName key="spades-2014-idp112384">
            <foreName>Adnan</foreName>
            <surname>Bouakaz</surname>
            <initial>A.</initial>
          </persName>
          <persName key="tea-2014-idm28088">
            <foreName>Jean-Pierre</foreName>
            <surname>Talpin</surname>
            <initial>J.-P.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="m">International Workshop on Software and Compilers for Embedded Systems</title>
        <loc>St. Goar, Germany</loc>
        <imprint>
          <dateStruct>
            <month>June</month>
            <year>2013</year>
          </dateStruct>
          <biblScope type="pages">58-67</biblScope>
          <ref xlink:href="https://hal.inria.fr/hal-00916487" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-00916487</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="tea-2015-bid17" type="article" rend="refer" n="refercite:Brunette2009233">
      <identifiant type="doi" value="10.1016/j.jlap.2008.11.005"/>
      <analytic>
        <title level="a">A metamodel for the design of polychronous systems</title>
        <author>
          <persName>
            <foreName>Christian</foreName>
            <surname>Brunette</surname>
            <initial>C.</initial>
          </persName>
          <persName key="tea-2014-idm28088">
            <foreName>Jean-Pierre</foreName>
            <surname>Talpin</surname>
            <initial>J.-P.</initial>
          </persName>
          <persName>
            <foreName>Abdoulaye</foreName>
            <surname>Gamatié</surname>
            <initial>A.</initial>
          </persName>
          <persName key="moais-2014-idm5672">
            <foreName>Thierry</foreName>
            <surname>Gautier</surname>
            <initial>T.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">The Journal of Logic and Algebraic Programming</title>
        <imprint>
          <biblScope type="volume">78</biblScope>
          <biblScope type="number">4</biblScope>
          <dateStruct>
            <year>2009</year>
          </dateStruct>
          <biblScope type="pages">233 - 259</biblScope>
          <ref xlink:href="http://www.sciencedirect.com/science/article/pii/S1567832608000957" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>www.<allowbreak/>sciencedirect.<allowbreak/>com/<allowbreak/>science/<allowbreak/>article/<allowbreak/>pii/<allowbreak/>S1567832608000957</ref>
        </imprint>
      </monogr>
      <note type="bnote">IFIP WG1.8 Workshop on Applying Concurrency Research in Industry</note>
    </biblStruct>
    
    <biblStruct id="tea-2015-bid14" type="article" rend="refer" n="refercite:tosem07">
      <identifiant type="doi" value="10.1145/1217295.1217298"/>
      <analytic>
        <title level="a">Polychronous Design of Embedded Real-Time Applications</title>
        <author>
          <persName>
            <foreName>Abdoulaye</foreName>
            <surname>Gamatié</surname>
            <initial>A.</initial>
          </persName>
          <persName key="moais-2014-idm5672">
            <foreName>Thierry</foreName>
            <surname>Gautier</surname>
            <initial>T.</initial>
          </persName>
          <persName key="tea-2014-idm25368">
            <foreName>Paul</foreName>
            <surname>Le Guernic</surname>
            <initial>P.</initial>
          </persName>
          <persName key="tea-2014-idm28088">
            <foreName>Jean-Pierre</foreName>
            <surname>Talpin</surname>
            <initial>J.-P.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">ACM Transactions on Software Engineering and Methodology (TOSEM)</title>
        <imprint>
          <biblScope type="volume">16</biblScope>
          <biblScope type="number">2</biblScope>
          <dateStruct>
            <month>April</month>
            <year>2007</year>
          </dateStruct>
          <ref xlink:href="http://doi.acm.org/10.1145/1217295.1217298" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>doi.<allowbreak/>acm.<allowbreak/>org/<allowbreak/>10.<allowbreak/>1145/<allowbreak/>1217295.<allowbreak/>1217298</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="tea-2015-bid16" type="article" rend="refer" n="refercite:gamatie:inria-00522794">
      <identifiant type="doi" value="10.1109/TPDS.2009.125"/>
      <identifiant type="hal" value="inria-00522794"/>
      <analytic>
        <title level="a">The Signal Synchronous Multiclock Approach to the Design of Distributed Embedded Systems</title>
        <author>
          <persName>
            <foreName>Abdoulaye</foreName>
            <surname>Gamatié</surname>
            <initial>A.</initial>
          </persName>
          <persName key="moais-2014-idm5672">
            <foreName>Thierry</foreName>
            <surname>Gautier</surname>
            <initial>T.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">IEEE Transactions on Parallel and Distributed Systems</title>
        <imprint>
          <biblScope type="volume">21</biblScope>
          <biblScope type="number">5</biblScope>
          <dateStruct>
            <year>2010</year>
          </dateStruct>
          <biblScope type="pages">641-657</biblScope>
          <ref xlink:href="http://hal.inria.fr/inria-00522794" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>inria-00522794</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="tea-2015-bid18" type="article" rend="refer" n="refercite:gamatie:hal-00541523">
      <identifiant type="hal" value="hal-00541523"/>
      <analytic>
        <title level="a">Synchronous design of avionic applications based on model refinements</title>
        <author>
          <persName>
            <foreName>Abdoulaye</foreName>
            <surname>Gamatié</surname>
            <initial>A.</initial>
          </persName>
          <persName key="moais-2014-idm5672">
            <foreName>Thierry</foreName>
            <surname>Gautier</surname>
            <initial>T.</initial>
          </persName>
          <persName key="tea-2014-idm25368">
            <foreName>Paul</foreName>
            <surname>Le Guernic</surname>
            <initial>P.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">Journal of Embedded Computing (IOS Press)</title>
        <imprint>
          <biblScope type="volume">2</biblScope>
          <biblScope type="number">3-4</biblScope>
          <dateStruct>
            <year>2006</year>
          </dateStruct>
          <biblScope type="pages">273-289</biblScope>
          <ref xlink:href="http://hal.archives-ouvertes.fr/hal-00541523" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>hal.<allowbreak/>archives-ouvertes.<allowbreak/>fr/<allowbreak/>hal-00541523</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="tea-2015-bid15" type="article" rend="refer" n="refercite:Potop-Butucaru:2011:CMP:2362088.2362094">
      <analytic>
        <title level="a">From Concurrent Multi-clock Programs to Deterministic Asynchronous Implementations</title>
        <author>
          <persName>
            <foreName>Dumitru</foreName>
            <surname>Potop-Butucaru</surname>
            <initial>D.</initial>
          </persName>
          <persName key="aoste-2014-idp64176">
            <foreName>Yves</foreName>
            <surname>Sorel</surname>
            <initial>Y.</initial>
          </persName>
          <persName key="aoste-2014-idp62696">
            <foreName>Robert</foreName>
            <surname>de Simone</surname>
            <initial>R.</initial>
          </persName>
          <persName key="tea-2014-idm28088">
            <foreName>Jean-Pierre</foreName>
            <surname>Talpin</surname>
            <initial>J.-P.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">Fundamenta Informaticae</title>
        <imprint>
          <biblScope type="volume">108</biblScope>
          <biblScope type="number">1-2</biblScope>
          <dateStruct>
            <month>January</month>
            <year>2011</year>
          </dateStruct>
          <biblScope type="pages">91–118</biblScope>
          <ref xlink:href="http://dl.acm.org/citation.cfm?id=2362088.2362094" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>dl.<allowbreak/>acm.<allowbreak/>org/<allowbreak/>citation.<allowbreak/>cfm?id=2362088.<allowbreak/>2362094</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="tea-2015-bid19" type="article" rend="refer" n="refercite:talpin:hal-00768341">
      <identifiant type="doi" value="10.1016/j.scico.2010.06.006"/>
      <identifiant type="hal" value="hal-00768341"/>
      <analytic>
        <title level="a">Compositional design of isochronous systems</title>
        <author>
          <persName key="tea-2014-idm28088">
            <foreName>Jean-Pierre</foreName>
            <surname>Talpin</surname>
            <initial>J.-P.</initial>
          </persName>
          <persName>
            <foreName>Julien</foreName>
            <surname>Ouy</surname>
            <initial>J.</initial>
          </persName>
          <persName key="moais-2014-idm5672">
            <foreName>Thierry</foreName>
            <surname>Gautier</surname>
            <initial>T.</initial>
          </persName>
          <persName key="tea-2014-idp66648">
            <foreName>Loïc</foreName>
            <surname>Besnard</surname>
            <initial>L.</initial>
          </persName>
          <persName key="tea-2014-idm25368">
            <foreName>Paul</foreName>
            <surname>Le Guernic</surname>
            <initial>P.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-editorial-board="yes" x-international-audience="yes">
        <title level="j">Science of Computer Programming</title>
        <imprint>
          <biblScope type="volume">77</biblScope>
          <biblScope type="number">2</biblScope>
          <dateStruct>
            <month>February</month>
            <year>2012</year>
          </dateStruct>
          <biblScope type="pages">113-128</biblScope>
          <ref xlink:href="http://hal.archives-ouvertes.fr/hal-00768341" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>hal.<allowbreak/>archives-ouvertes.<allowbreak/>fr/<allowbreak/>hal-00768341</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="tea-2015-bid3" type="article" rend="refer" n="refercite:Jcsc03">
      <identifiant type="hal" value="docs"/>
      <analytic>
        <title level="a">Polychrony for system design</title>
        <author>
          <persName key="tea-2014-idm25368">
            <foreName>Paul</foreName>
            <surname>Le Guernic</surname>
            <initial>P.</initial>
          </persName>
          <persName key="tea-2014-idm28088">
            <foreName>Jean-Pierre</foreName>
            <surname>Talpin</surname>
            <initial>J.-P.</initial>
          </persName>
          <persName>
            <foreName>J.-C.</foreName>
            <surname>Le Lann</surname>
            <initial>J.-C.</initial>
          </persName>
        </author>
      </analytic>
      <monogr>
        <title level="j">Journal of Circuits, Systems and Computers, Special Issue on Application Specific Hardware Design</title>
        <imprint>
          <biblScope type="volume">12</biblScope>
          <biblScope type="number">03</biblScope>
          <dateStruct>
            <month>June</month>
            <year>2003</year>
          </dateStruct>
          <ref xlink:href="http://hal.inria.fr/docs/00/07/18/71/PDF/RR-4715.pdf" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">http://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>docs/<allowbreak/>00/<allowbreak/>07/<allowbreak/>18/<allowbreak/>71/<allowbreak/>PDF/<allowbreak/>RR-4715.<allowbreak/>pdf</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="tea-2015-bid9" type="article" rend="year" n="cite:joloboff:hal-01081104">
      <identifiant type="hal" value="hal-01081104"/>
      <analytic>
        <title level="a">Fast approximately timed simulation</title>
        <author>
          <persName key="tempo-2014-idm29712">
            <foreName>Vania</foreName>
            <surname>Joloboff</surname>
            <initial>V.</initial>
          </persName>
          <persName>
            <foreName>Shenpeng</foreName>
            <surname>WANG</surname>
            <initial>S.</initial>
          </persName>
          <persName>
            <foreName>Yangdong</foreName>
            <surname>DENG</surname>
            <initial>Y.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-editorial-board="yes" x-international-audience="yes" id="rid02778">
        <idno type="issn">1743-3517</idno>
        <title level="j">WIT Transactions on Information and Communication Technologies</title>
        <imprint>
          <biblScope type="volume">978-1-78466-054-3</biblScope>
          <biblScope type="number">68</biblScope>
          <dateStruct>
            <month>March</month>
            <year>2015</year>
          </dateStruct>
          <biblScope type="pages">756</biblScope>
          <ref xlink:href="https://hal.archives-ouvertes.fr/hal-01081104" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>archives-ouvertes.<allowbreak/>fr/<allowbreak/>hal-01081104</ref>
        </imprint>
      </monogr>
    </biblStruct>
    
    <biblStruct id="tea-2015-bid8" type="inproceedings" rend="year" n="cite:joloboff:hal-01242963">
      <identifiant type="hal" value="hal-01242963"/>
      <analytic>
        <title level="a">Towards Verified Faithful Simulation</title>
        <author>
          <persName key="tempo-2014-idm29712">
            <foreName>Vania</foreName>
            <surname>Joloboff</surname>
            <initial>V.</initial>
          </persName>
          <persName>
            <foreName>Jean-François</foreName>
            <surname>Monin</surname>
            <initial>J.-F.</initial>
          </persName>
          <persName>
            <foreName>Xiaomu</foreName>
            <surname>Shi</surname>
            <initial>X.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no" x-editorial-board="yes">
        <editor role="editor">
          <persName>
            <foreName>Springer</foreName>
            <surname>Verlag</surname>
            <initial>S.</initial>
          </persName>
        </editor>
        <title level="m">Dependable Software Engineering: Theories, Tools, and Applications</title>
        <loc>Nanjing, China</loc>
        <imprint>
          <dateStruct>
            <month>November</month>
            <year>2015</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01242963" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01242963</ref>
        </imprint>
        <meeting id="cid624972">
          <title>International Symposium on Dependable Software Engineering: Theories, Tools, and Applications</title>
          <num>1</num>
          <abbr type="sigle"/>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct id="tea-2015-bid13" type="inproceedings" rend="year" n="cite:junke:hal-01241808">
      <identifiant type="hal" value="hal-01241808"/>
      <analytic>
        <title level="a">Integration of polychrony in the QGen model compiler</title>
        <author>
          <persName key="tea-2014-idp67904">
            <foreName>Christophe</foreName>
            <surname>Junke</surname>
            <initial>C.</initial>
          </persName>
          <persName key="moais-2014-idm5672">
            <foreName>Thierry</foreName>
            <surname>Gautier</surname>
            <initial>T.</initial>
          </persName>
          <persName key="tea-2014-idp66648">
            <foreName>Loic</foreName>
            <surname>Besnard</surname>
            <initial>L.</initial>
          </persName>
          <persName key="tea-2014-idm28088">
            <foreName>Jean-Pierre</foreName>
            <surname>Talpin</surname>
            <initial>J.-P.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no" x-editorial-board="yes">
        <title level="m">ERTS'16 - European Congress on Embeddd Real-Rime Software and Systems</title>
        <loc>Toulouse, France</loc>
        <imprint>
          <dateStruct>
            <month>January</month>
            <year>2016</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01241808" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01241808</ref>
        </imprint>
        <meeting id="cid68744">
          <title>European Congress on Embedded Real Time Software</title>
          <num>8</num>
          <abbr type="sigle">ERTS</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct id="tea-2015-bid1" type="inproceedings" rend="best" n="cite:leguernic:hal-01240440">
      <identifiant type="doi" value="10.1109/TASE.2015.21"/>
      <identifiant type="hal" value="hal-01240440"/>
      <analytic>
        <title level="a">Polychronous Automata</title>
        <author>
          <persName key="tea-2014-idm25368">
            <foreName>Paul</foreName>
            <surname>Le Guernic</surname>
            <initial>P.</initial>
          </persName>
          <persName key="moais-2014-idm5672">
            <foreName>Thierry</foreName>
            <surname>Gautier</surname>
            <initial>T.</initial>
          </persName>
          <persName key="tea-2014-idm28088">
            <foreName>Jean-Pierre</foreName>
            <surname>Talpin</surname>
            <initial>J.-P.</initial>
          </persName>
          <persName key="tea-2014-idp66648">
            <foreName>Loïc</foreName>
            <surname>Besnard</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">TASE 2015, 9th International Symposium on Theoretical Aspects of Software Engineering</title>
        <loc>Nanjing, China</loc>
        <imprint>
          <publisher>
            <orgName>IEEE Computer Society</orgName>
          </publisher>
          <dateStruct>
            <month>September</month>
            <year>2015</year>
          </dateStruct>
          <biblScope type="pages">95-102</biblScope>
          <ref xlink:href="https://hal.archives-ouvertes.fr/hal-01240440" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>archives-ouvertes.<allowbreak/>fr/<allowbreak/>hal-01240440</ref>
        </imprint>
        <meeting id="cid90900">
          <title>IEEE International Symposium on Theoretical Aspects of Software Engineering</title>
          <num>9</num>
          <abbr type="sigle">TASE</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct id="tea-2015-bid6" type="inproceedings" rend="year" n="cite:ngo:hal-01148919">
      <identifiant type="hal" value="hal-01148919"/>
      <analytic>
        <title level="a">Modular translation validation of a full-sized synchronous compiler using off-the-shelf verification tools (abstract)</title>
        <author>
          <persName key="tea-2014-idp69160">
            <foreName>Van Chan</foreName>
            <surname>Ngo</surname>
            <initial>V. C.</initial>
          </persName>
          <persName key="tea-2014-idm28088">
            <foreName>Jean-Pierre</foreName>
            <surname>Talpin</surname>
            <initial>J.-P.</initial>
          </persName>
          <persName key="moais-2014-idm5672">
            <foreName>Thierry</foreName>
            <surname>Gautier</surname>
            <initial>T.</initial>
          </persName>
          <persName key="tea-2014-idp66648">
            <foreName>Loic</foreName>
            <surname>Besnard</surname>
            <initial>L.</initial>
          </persName>
          <persName key="tea-2014-idm25368">
            <foreName>Paul</foreName>
            <surname>Le Guernic</surname>
            <initial>P.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no" x-editorial-board="yes">
        <title level="m">International Workshop on Software and Compilers for Embedded Systems</title>
        <loc>St Goar, Germany</loc>
        <imprint>
          <publisher>
            <orgName type="organisation">ACM</orgName>
          </publisher>
          <dateStruct>
            <month>June</month>
            <year>2015</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01148919" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01148919</ref>
        </imprint>
        <meeting id="cid395740">
          <title>International Workshop on Software and Compilers for Embedded Systems</title>
          <num>16</num>
          <abbr type="sigle">SCOPES</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct id="tea-2015-bid4" type="inproceedings" rend="year" n="cite:ngo:hal-01087795">
      <identifiant type="hal" value="hal-01087795"/>
      <analytic>
        <title level="a">Translation Validation for Clock Transformations in a Synchronous Compiler</title>
        <author>
          <persName key="tea-2014-idp69160">
            <foreName>Van Chan</foreName>
            <surname>Ngo</surname>
            <initial>V. C.</initial>
          </persName>
          <persName key="tea-2014-idm28088">
            <foreName>Jean-Pierre</foreName>
            <surname>Talpin</surname>
            <initial>J.-P.</initial>
          </persName>
          <persName key="moais-2014-idm5672">
            <foreName>Thierry</foreName>
            <surname>Gautier</surname>
            <initial>T.</initial>
          </persName>
          <persName key="tea-2014-idm25368">
            <foreName>Paul</foreName>
            <surname>Le Guernic</surname>
            <initial>P.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no" x-editorial-board="yes">
        <title level="m">FASE - ETAPS 2015</title>
        <loc>London, United Kingdom</loc>
        <imprint>
          <publisher>
            <orgName>Springer</orgName>
          </publisher>
          <dateStruct>
            <month>April</month>
            <year>2015</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01087795" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01087795</ref>
        </imprint>
        <meeting id="cid623532">
          <title>European Joint Conferences on Theory and Practice of Software</title>
          <num>2015</num>
          <abbr type="sigle">ETAPS</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct id="tea-2015-bid5" type="inproceedings" rend="year" n="cite:ngo:hal-01148901">
      <identifiant type="doi" value="10.1007/978-3-319-19195-9_5"/>
      <identifiant type="hal" value="hal-01148901"/>
      <analytic>
        <title level="a">Translation Validation for Synchronous Data-flow Specification in the SIGNAL Compiler</title>
        <author>
          <persName key="tea-2014-idp69160">
            <foreName>Van Chan</foreName>
            <surname>Ngo</surname>
            <initial>V. C.</initial>
          </persName>
          <persName key="tea-2014-idm28088">
            <foreName>Jean-Pierre</foreName>
            <surname>Talpin</surname>
            <initial>J.-P.</initial>
          </persName>
          <persName key="moais-2014-idm5672">
            <foreName>Thierry</foreName>
            <surname>Gautier</surname>
            <initial>T.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no" x-editorial-board="yes">
        <title level="m">International Conference on Formal Techniques for Distributed Objects, Components and Systems</title>
        <loc>Grenoble, France</loc>
        <title level="s">Formal Techniques for Distributed Objects, Components, and Systems</title>
        <imprint>
          <biblScope type="volume">9039</biblScope>
          <publisher>
            <orgName>Springer</orgName>
          </publisher>
          <publisher>
            <orgName type="organisation">IFIP</orgName>
          </publisher>
          <dateStruct>
            <month>June</month>
            <year>2015</year>
          </dateStruct>
          <biblScope type="pages">66-80</biblScope>
          <ref xlink:href="https://hal.inria.fr/hal-01148901" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01148901</ref>
        </imprint>
        <meeting id="cid282000">
          <title>International Conference on Formal Techniques for Networked and Distributed Systems</title>
          <num>35</num>
          <abbr type="sigle">FORTE</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct id="tea-2015-bid12" type="inproceedings" rend="year" n="cite:prashi:hal-01148908">
      <identifiant type="hal" value="hal-01148908"/>
      <analytic>
        <title level="a">Mapping Functional Behavior onto Architectural Model in a Model Driven Embedded System Design</title>
        <author>
          <persName>
            <foreName>Joshi</foreName>
            <surname>Prashi</surname>
            <initial>J.</initial>
          </persName>
          <persName>
            <foreName>Sandeep</foreName>
            <surname>Kumar Shukla</surname>
            <initial>S.</initial>
          </persName>
          <persName key="tea-2014-idm28088">
            <foreName>Jean-Pierre</foreName>
            <surname>Talpin</surname>
            <initial>J.-P.</initial>
          </persName>
          <persName>
            <foreName>Huafeng</foreName>
            <surname>Yu</surname>
            <initial>H.</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">Symposium On Applied Computing</title>
        <loc>Salamanca, Spain</loc>
        <imprint>
          <dateStruct>
            <month>April</month>
            <year>2015</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01148908" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01148908</ref>
        </imprint>
        <meeting id="cid23923">
          <title>ACM Symposium on Applied Computing</title>
          <num>28</num>
          <abbr type="sigle">SAC</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct id="tea-2015-bid11" type="inproceedings" rend="year" n="cite:talpin:hal-01241806">
      <identifiant type="hal" value="hal-01241806"/>
      <analytic>
        <title level="a">Towards refinement types for time-dependent data-flow networks</title>
        <author>
          <persName key="tea-2014-idm28088">
            <foreName>Jean-Pierre</foreName>
            <surname>Talpin</surname>
            <initial>J.-P.</initial>
          </persName>
          <persName>
            <foreName>Pierre</foreName>
            <surname>Jouvelot</surname>
            <initial>P.</initial>
          </persName>
          <persName>
            <foreName>Sandeep</foreName>
            <surname>Kumar Shukla</surname>
            <initial>S.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no" x-editorial-board="yes">
        <editor role="editor">
          <persName>
            <foreName>IEEE Computer</foreName>
            <surname>Society</surname>
            <initial>I. C.</initial>
          </persName>
        </editor>
        <title level="m">ACM-IEEE Conference on Methods and Models for System Design</title>
        <loc>Austin, United States</loc>
        <imprint>
          <dateStruct>
            <month>September</month>
            <year>2015</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01241806" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01241806</ref>
        </imprint>
        <meeting id="cid25831">
          <title>ACM-IEEE International Conference on Formal Methods and Models for Codesign</title>
          <num>13</num>
          <abbr type="sigle">MEMOCODE</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct id="tea-2015-bid0" type="inproceedings" rend="year" n="cite:yu:hal-01148905">
      <identifiant type="hal" value="hal-01148905"/>
      <analytic>
        <title level="a">Model-Based Integration for Automotive Control Software</title>
        <author>
          <persName>
            <foreName>Huafeng</foreName>
            <surname>Yu</surname>
            <initial>H.</initial>
          </persName>
          <persName>
            <foreName>Joshi</foreName>
            <surname>Prashi</surname>
            <initial>J.</initial>
          </persName>
          <persName key="tea-2014-idm28088">
            <foreName>Jean-Pierre</foreName>
            <surname>Talpin</surname>
            <initial>J.-P.</initial>
          </persName>
          <persName>
            <foreName>Sandeep Kumar</foreName>
            <surname>Shukla</surname>
            <initial>S. K.</initial>
          </persName>
          <persName>
            <foreName>Shin'Ichi</foreName>
            <surname>Shiraishi</surname>
            <initial>S.</initial>
          </persName>
        </author>
      </analytic>
      <monogr x-scientific-popularization="no" x-international-audience="yes" x-proceedings="yes" x-invited-conference="no" x-editorial-board="yes">
        <title level="m">Digital Automation Conference</title>
        <loc>San Francisco, United States</loc>
        <imprint>
          <publisher>
            <orgName type="organisation">ACM</orgName>
          </publisher>
          <dateStruct>
            <month>June</month>
            <year>2015</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01148905" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01148905</ref>
        </imprint>
        <meeting id="cid97388">
          <title>IEEE/ACM Design Automation Conference</title>
          <num>52</num>
          <abbr type="sigle">DAC</abbr>
        </meeting>
      </monogr>
    </biblStruct>
    
    <biblStruct id="tea-2015-bid10" type="techreport" rend="year" n="cite:talpin:hal-01166350">
      <identifiant type="hal" value="hal-01166350"/>
      <monogr>
        <title level="m">Liquid Clocks - Refinement Types for Time-Dependent Stream Functions</title>
        <author>
          <persName key="tea-2014-idm28088">
            <foreName>Jean-Pierre</foreName>
            <surname>Talpin</surname>
            <initial>J.-P.</initial>
          </persName>
          <persName>
            <foreName>Pierre</foreName>
            <surname>Jouvelot</surname>
            <initial>P.</initial>
          </persName>
          <persName>
            <foreName>Sandeep</foreName>
            <surname>Kumar Shukla</surname>
            <initial>S.</initial>
          </persName>
        </author>
        <imprint>
          <biblScope type="number">RR-8747</biblScope>
          <publisher>
            <orgName type="institution">Inria Rennes - Bretagne Atlantique ; Inria</orgName>
          </publisher>
          <dateStruct>
            <month>June</month>
            <year>2015</year>
          </dateStruct>
          <ref xlink:href="https://hal.inria.fr/hal-01166350" location="extern" xlink:type="simple" xlink:show="replace" xlink:actuate="onRequest">https://<allowbreak/>hal.<allowbreak/>inria.<allowbreak/>fr/<allowbreak/>hal-01166350</ref>
        </imprint>
      </monogr>
      <note type="typdoc">Research Report</note>
    </biblStruct>
  </biblio>
</raweb>
