<?xml version="1.0" encoding="utf-8"?>
<TEI xmlns="http://www.tei-c.org/ns/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:hal="http://hal.archives-ouvertes.fr/" xmlns:gml="http://www.opengis.net/gml/3.3/" xmlns:gmlce="http://www.opengis.net/gml/3.3/ce" version="1.1" xsi:schemaLocation="http://www.tei-c.org/ns/1.0 http://api.archives-ouvertes.fr/documents/aofr-sword.xsd">
  <teiHeader>
    <fileDesc>
      <titleStmt>
        <title>HAL TEI export of hal-03794951</title>
      </titleStmt>
      <publicationStmt>
        <distributor>CCSD</distributor>
        <availability status="restricted">
          <licence target="https://creativecommons.org/publicdomain/zero/1.0/">CC0 1.0 - Universal</licence>
        </availability>
        <date when="2026-05-02T12:53:49+02:00"/>
      </publicationStmt>
      <sourceDesc>
        <p part="N">HAL API Platform</p>
      </sourceDesc>
    </fileDesc>
  </teiHeader>
  <text>
    <body>
      <listBibl>
        <biblFull>
          <titleStmt>
            <title xml:lang="en">Relational abstract interpretation of arrays in assembly code</title>
            <author role="aut">
              <persName>
                <forename type="first">Clément</forename>
                <surname>Ballabriga</surname>
              </persName>
              <email type="md5">50de60a039c1a4d4d17d799fb0282d18</email>
              <email type="domain">univ-lille1.fr</email>
              <idno type="idhal" notation="string">ballabri</idno>
              <idno type="idhal" notation="numeric">4982</idno>
              <idno type="halauthorid" notation="string">22726-4982</idno>
              <idno type="IDREF">https://www.idref.fr/152839445</idno>
              <affiliation ref="#struct-1081309"/>
            </author>
            <author role="aut">
              <persName>
                <forename type="first">Julien</forename>
                <surname>Forget</surname>
              </persName>
              <email type="md5">c1c46656cbabfdac37dab7bf9fa05f51</email>
              <email type="domain">univ-lille.fr</email>
              <idno type="idhal" notation="string">julienforget</idno>
              <idno type="idhal" notation="numeric">10132</idno>
              <idno type="halauthorid" notation="string">27977-10132</idno>
              <idno type="ORCID">https://orcid.org/0000-0002-1669-8971</idno>
              <idno type="IDREF">https://www.idref.fr/163689709</idno>
              <affiliation ref="#struct-1081309"/>
            </author>
            <author role="aut">
              <persName>
                <forename type="first">Jordy</forename>
                <surname>Ruiz</surname>
              </persName>
              <idno type="halauthorid">1062072-0</idno>
              <affiliation ref="#struct-69530"/>
            </author>
            <editor role="depositor">
              <persName>
                <forename>Julien</forename>
                <surname>Forget</surname>
              </persName>
              <email type="md5">c1c46656cbabfdac37dab7bf9fa05f51</email>
              <email type="domain">univ-lille.fr</email>
            </editor>
            <funder ref="#projanr-43349"/>
          </titleStmt>
          <editionStmt>
            <edition n="v1" type="current">
              <date type="whenSubmitted">2022-10-03 16:20:26</date>
              <date type="whenModified">2025-10-07 15:10:01</date>
              <date type="whenReleased">2022-10-03 16:45:33</date>
              <date type="whenProduced">2022-10-02</date>
              <date type="whenEndEmbargoed">2023-04-03</date>
              <ref type="file" target="https://inria.hal.science/hal-03794951v1/document">
                <date notBefore="2023-04-03"/>
              </ref>
              <ref type="file" subtype="author" n="1" target="https://inria.hal.science/hal-03794951v1/file/ballabriga-et-al-2022-accepted.pdf" id="file-3794951-3319955">
                <date notBefore="2023-04-03"/>
              </ref>
            </edition>
            <respStmt>
              <resp>contributor</resp>
              <name key="172141">
                <persName>
                  <forename>Julien</forename>
                  <surname>Forget</surname>
                </persName>
                <email type="md5">c1c46656cbabfdac37dab7bf9fa05f51</email>
                <email type="domain">univ-lille.fr</email>
              </name>
            </respStmt>
          </editionStmt>
          <publicationStmt>
            <distributor>CCSD</distributor>
            <idno type="halId">hal-03794951</idno>
            <idno type="halUri">https://inria.hal.science/hal-03794951</idno>
            <idno type="halBibtex">ballabriga:hal-03794951</idno>
            <idno type="halRefHtml">&lt;i&gt;Formal Methods in System Design&lt;/i&gt;, 2022, &lt;a target="_blank" href="https://dx.doi.org/10.1007/s10703-022-00399-3"&gt;&amp;#x27E8;10.1007/s10703-022-00399-3&amp;#x27E9;&lt;/a&gt;</idno>
            <idno type="halRef">Formal Methods in System Design, 2022, &amp;#x27E8;10.1007/s10703-022-00399-3&amp;#x27E9;</idno>
            <availability status="restricted">
              <licence target="https://about.hal.science/hal-authorisation-v1/">HAL Authorization<ref corresp="#file-3794951-3319955"/></licence>
            </availability>
          </publicationStmt>
          <seriesStmt>
            <idno type="stamp" n="CNRS">CNRS - Centre national de la recherche scientifique</idno>
            <idno type="stamp" n="INRIA">INRIA - Institut National de Recherche en Informatique et en Automatique</idno>
            <idno type="stamp" n="INRIA-LILLE">INRIA Lille - Nord Europe</idno>
            <idno type="stamp" n="INRIA_TEST">INRIA - Institut National de Recherche en Informatique et en Automatique</idno>
            <idno type="stamp" n="TESTALAIN1">TESTALAIN1</idno>
            <idno type="stamp" n="CRISTAL">Centre de Recherche en Informatique, Signal et Automatique de Lille (CRISTAL)</idno>
            <idno type="stamp" n="INRIA2">INRIA 2</idno>
            <idno type="stamp" n="UNIV-LILLE">Université de Lille</idno>
            <idno type="stamp" n="ANR">ANR</idno>
            <idno type="stamp" n="CRISTAL-SYCOMORES" corresp="CRISTAL">Symbolic analysis and Component-based design for Modular Real-Time Embedded Systems</idno>
            <idno type="stamp" n="INRIA-ROYAUMEUNI">INRIA-ROYAUMEUNI</idno>
          </seriesStmt>
          <notesStmt>
            <note type="audience" n="2">International</note>
            <note type="popular" n="0">No</note>
            <note type="peer" n="1">Yes</note>
          </notesStmt>
          <sourceDesc>
            <biblStruct>
              <analytic>
                <title xml:lang="en">Relational abstract interpretation of arrays in assembly code</title>
                <author role="aut">
                  <persName>
                    <forename type="first">Clément</forename>
                    <surname>Ballabriga</surname>
                  </persName>
                  <email type="md5">50de60a039c1a4d4d17d799fb0282d18</email>
                  <email type="domain">univ-lille1.fr</email>
                  <idno type="idhal" notation="string">ballabri</idno>
                  <idno type="idhal" notation="numeric">4982</idno>
                  <idno type="halauthorid" notation="string">22726-4982</idno>
                  <idno type="IDREF">https://www.idref.fr/152839445</idno>
                  <affiliation ref="#struct-1081309"/>
                </author>
                <author role="aut">
                  <persName>
                    <forename type="first">Julien</forename>
                    <surname>Forget</surname>
                  </persName>
                  <email type="md5">c1c46656cbabfdac37dab7bf9fa05f51</email>
                  <email type="domain">univ-lille.fr</email>
                  <idno type="idhal" notation="string">julienforget</idno>
                  <idno type="idhal" notation="numeric">10132</idno>
                  <idno type="halauthorid" notation="string">27977-10132</idno>
                  <idno type="ORCID">https://orcid.org/0000-0002-1669-8971</idno>
                  <idno type="IDREF">https://www.idref.fr/163689709</idno>
                  <affiliation ref="#struct-1081309"/>
                </author>
                <author role="aut">
                  <persName>
                    <forename type="first">Jordy</forename>
                    <surname>Ruiz</surname>
                  </persName>
                  <idno type="halauthorid">1062072-0</idno>
                  <affiliation ref="#struct-69530"/>
                </author>
              </analytic>
              <monogr>
                <idno type="halJournalId" status="VALID">13429</idno>
                <idno type="issn">0925-9856</idno>
                <idno type="eissn">1572-8102</idno>
                <title level="j">Formal Methods in System Design</title>
                <imprint>
                  <publisher>Springer Verlag</publisher>
                  <date type="datePub">2022-10-02</date>
                </imprint>
              </monogr>
              <idno type="doi">10.1007/s10703-022-00399-3</idno>
            </biblStruct>
          </sourceDesc>
          <profileDesc>
            <langUsage>
              <language ident="en">English</language>
            </langUsage>
            <textClass>
              <keywords scheme="author">
                <term xml:lang="en">Polyhedral invariants</term>
                <term xml:lang="en">Assembly code</term>
                <term xml:lang="en">Array analysis</term>
                <term xml:lang="en">Abstract Interpretation</term>
              </keywords>
              <classCode scheme="https://dl.acm.org/ccs" n="ACM2012.E.0.2.1.2"/>
              <classCode scheme="https://dl.acm.org/ccs" n="ACM2012.E.0.2.0.1"/>
              <classCode scheme="halDomain" n="info">Computer Science [cs]</classCode>
              <classCode scheme="halTypology" n="ART">Journal articles</classCode>
              <classCode scheme="halOldTypology" n="ART">Journal articles</classCode>
              <classCode scheme="halTreeTypology" n="ART">Journal articles</classCode>
            </textClass>
            <abstract xml:lang="en">
              <p>In this paper, we propose a static analysis technique for assembly code, based on abstract interpretation, to discover properties on arrays. Considering assembly code rather than source code has important advantages: we do not require to make assumptions on the compiler behaviour, and we can handle closed-source programs. The main disadvantage however, is that information about source code variables and their types, in particular about arrays, is unavailable. Instead, the binary code reasons about data-locations (registers and memory addresses) and their sizes in bytes. Without any knowledge of the source code, our analysis infers which sets of memory addresses correspond to arrays, and establishes properties on these addresses and their contents. The underlying abstract domain is relational, meaning that we can infer relations between variables of the domain. As a consequence, we can infer properties on arrays whose start address and size are dened with respect to variables of the domain, and thus can be unknown statically. Currently, no other tool operating at the assembly or binary level can infer such properties.</p>
            </abstract>
          </profileDesc>
        </biblFull>
      </listBibl>
    </body>
    <back>
      <listOrg type="structures">
        <org type="researchteam" xml:id="struct-1081309" status="VALID">
          <idno type="RNSR">202124119E</idno>
          <idno type="ROR">https://ror.org/0110mcx69</idno>
          <orgName>Analyse symbolique et conception orientée composants pour des systèmes embarqués temps-réel modulaires</orgName>
          <orgName type="acronym">SYCOMORES</orgName>
          <date type="start">2021-10-01</date>
          <date type="end">2025-12-31</date>
          <desc>
            <address>
              <addrLine>Parc scientifique de la Haute Borne40, avenue Halley - Bât A - Park Plaza59650 Villeneuve d'Ascq</addrLine>
              <country key="FR"/>
            </address>
            <ref type="url">https://www.inria.fr/fr/sycomores</ref>
          </desc>
          <listRelation>
            <relation active="#struct-104752" type="direct"/>
            <relation active="#struct-300009" type="indirect"/>
            <relation active="#struct-410272" type="direct"/>
            <relation name="UMR9189" active="#struct-120930" type="indirect"/>
            <relation name="UMR9189" active="#struct-374570" type="indirect"/>
            <relation name="UMR9189" active="#struct-441569" type="indirect"/>
          </listRelation>
        </org>
        <org type="institution" xml:id="struct-69530" status="VALID">
          <idno type="ISNI">0000000121138111</idno>
          <idno type="ROR">https://ror.org/041kmwe10</idno>
          <orgName>Imperial College London</orgName>
          <date type="start">1907-01-01</date>
          <desc>
            <address>
              <addrLine>South Kensington Campus, London SW7 2AZ</addrLine>
              <country key="GB"/>
            </address>
            <ref type="url">http://www.imperial.ac.uk/</ref>
          </desc>
        </org>
        <org type="laboratory" xml:id="struct-104752" status="VALID">
          <idno type="RNSR">200818245B</idno>
          <idno type="ROR">https://ror.org/04eej9726</idno>
          <orgName>Centre Inria de l'Université de Lille</orgName>
          <desc>
            <address>
              <addrLine>Parc Scientifique de la Haute Borne 40, avenue Halley Bât.A, Park Plaza 59650 Villeneuve d'Ascq</addrLine>
              <country key="FR"/>
            </address>
            <ref type="url">http://www.inria.fr/lille/</ref>
          </desc>
          <listRelation>
            <relation active="#struct-300009" type="direct"/>
          </listRelation>
        </org>
        <org type="institution" xml:id="struct-300009" status="VALID">
          <idno type="ROR">https://ror.org/02kvxyf05</idno>
          <orgName>Institut National de Recherche en Informatique et en Automatique</orgName>
          <orgName type="acronym">Inria</orgName>
          <desc>
            <address>
              <addrLine>Domaine de VoluceauRocquencourt - BP 10578153 Le Chesnay Cedex</addrLine>
              <country key="FR"/>
            </address>
            <ref type="url">http://www.inria.fr/en/</ref>
          </desc>
        </org>
        <org type="laboratory" xml:id="struct-410272" status="VALID">
          <idno type="IdRef">18388695X</idno>
          <idno type="RNSR">201521249L</idno>
          <idno type="ROR">https://ror.org/05vrs3189</idno>
          <idno type="Wikidata">Q116959497</idno>
          <orgName>Centre de Recherche en Informatique, Signal et Automatique de Lille - UMR 9189</orgName>
          <orgName type="acronym">CRIStAL</orgName>
          <date type="start">2015-01-01</date>
          <desc>
            <address>
              <addrLine>Université de Lille - Campus scientifique - Bâtiment ESPRIT - Avenue Henri Poincaré - 59655 Villeneuve d’Ascq</addrLine>
              <country key="FR"/>
            </address>
            <ref type="url">https://www.cristal.univ-lille.fr/</ref>
          </desc>
          <listRelation>
            <relation name="UMR9189" active="#struct-120930" type="direct"/>
            <relation name="UMR9189" active="#struct-374570" type="direct"/>
            <relation name="UMR9189" active="#struct-441569" type="direct"/>
          </listRelation>
        </org>
        <org type="institution" xml:id="struct-120930" status="VALID">
          <idno type="IdRef">256304629</idno>
          <idno type="ISNI">0000000122034461</idno>
          <idno type="ROR">https://ror.org/01x441g73</idno>
          <orgName>Centrale Lille</orgName>
          <desc>
            <address>
              <addrLine>École Centrale de Lille - Cité Scientifique - CS 20048 59651 Villeneuve d'Ascq Cedex</addrLine>
              <country key="FR"/>
            </address>
            <ref type="url">https://centralelille.fr/</ref>
          </desc>
        </org>
        <org type="regroupinstitution" xml:id="struct-374570" status="VALID">
          <idno type="IdRef">223446556</idno>
          <idno type="ISNI">0000 0001 2242 6780</idno>
          <idno type="ROR">https://ror.org/02kzqn938</idno>
          <idno type="Wikidata">Q3551621</idno>
          <orgName>Université de Lille</orgName>
          <desc>
            <address>
              <addrLine>EPE Université de Lille. -- 42 rue Paul Duez, 59000 Lille</addrLine>
              <country key="FR"/>
            </address>
            <ref type="url">https://www.univ-lille.fr/</ref>
          </desc>
        </org>
        <org type="regroupinstitution" xml:id="struct-441569" status="VALID">
          <idno type="IdRef">02636817X</idno>
          <idno type="ISNI">0000000122597504</idno>
          <idno type="ROR">https://ror.org/02feahw73</idno>
          <orgName>Centre National de la Recherche Scientifique</orgName>
          <orgName type="acronym">CNRS</orgName>
          <date type="start">1939-10-19</date>
          <desc>
            <address>
              <country key="FR"/>
            </address>
            <ref type="url">https://www.cnrs.fr/</ref>
          </desc>
        </org>
      </listOrg>
      <listOrg type="projects">
        <org type="anrProject" xml:id="projanr-43349" status="VALID">
          <idno type="anr">ANR-17-CE25-0003</idno>
          <orgName>Corteva</orgName>
          <desc>Une méthodologie correcte par construction pour supporter la variabilité du temps d'exécution dans les systèmes temps réel</desc>
          <date type="start">2017</date>
        </org>
      </listOrg>
    </back>
  </text>
</TEI>