<?xml version="1.0" encoding="UTF-8"?><mets:mets xmlns:mads="http://www.loc.gov/mads/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:tef="http://www.abes.fr/abes/documents/tef" xmlns:metsRights="http://cosimo.stanford.edu/sdr/metsrights/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:mets="http://www.loc.gov/METS/">
<mets:metsHdr ID="rennes1-ori-wf-1-21846" RECORDSTATUS="complet" CREATEDATE="2025-11-13T11:21:56" LASTMODDATE="2025-11-13T11:30:10">
  <mets:agent ROLE="CREATOR">
			<mets:name>SCD-Universite de Rennes 1</mets:name>
		</mets:agent>
</mets:metsHdr>
<mets:dmdSec ID="desc_expr" CREATED="2025-11-13T11:21:56">
  <mets:mdWrap MDTYPE="OTHER" OTHERMDTYPE="tef_desc_these">
			<mets:xmlData>
				<tef:thesisRecord>
     <dc:title xml:lang="en">Formal verification of weak topological orderings and dataflow analysis</dc:title>
     <dcterms:alternative xml:lang="fr">Vérification formelle de tris topologiques faibles et analyse flots de données</dcterms:alternative>
     <dc:subject xml:lang="fr">vérification formelle</dc:subject><dc:subject xml:lang="fr">analyse statique</dc:subject><dc:subject xml:lang="fr">Rocq</dc:subject><dc:subject xml:lang="fr">compilation optimisante</dc:subject>
     <dc:subject xml:lang="en">formal verification</dc:subject><dc:subject xml:lang="en">static analysis</dc:subject><dc:subject xml:lang="en">Rocq</dc:subject><dc:subject xml:lang="en">compiler optimizations</dc:subject>
     <tef:sujetRameau><tef:vedetteRameauNomCommun>
						<tef:elementdEntree autoriteSource="Sudoc" autoriteExterne="053469844">Logiciels -- Vérification</tef:elementdEntree>
					</tef:vedetteRameauNomCommun><tef:vedetteRameauNomCommun>
						<tef:elementdEntree autoriteSource="Sudoc" autoriteExterne="027709922">Compilation (informatique)</tef:elementdEntree>
					</tef:vedetteRameauNomCommun></tef:sujetRameau>
     
     <dcterms:abstract xml:lang="fr">L'analyse flots de données est une technique d'analyse statique qui détermine des informations sur la propagation des données lors de l'exécution d'un programme informatique, sans exécuter le programme. Ces informations peuvent être notamment utilisées pour optimiser le programme lors de sa compilation. Réaliser une analyse flots de données consiste en général à résoudre un système d'équations. En dehors des méthodes traditionnelles utilisées pour résoudre de tels systèmes, d'autres techniques ont été développées. L'une d'entre elles, qui a été proposée par Bourdoncle en 1993, consiste à pré-calculer une stratégie de résolution de manière à résoudre ensuite le système plus efficacement. Cette thèse vise à développer des solveurs formellement vérifiés, qui se basent sur cette technique de résolution. Premièrement, nous proposons une formalisation rigoureuse de la notion de tri topologique faible (WTO) qui permet de représenter la stratégie pré-calculée. Ensuite, nous implémentons et vérifions formellement avec l'assistant de preuve Rocq deux variantes de résolution proposées par Bourdoncle, appelées stratégies itérative et récursive, ainsi que l'algorithme le plus utilisé pour calculer un WTO. Notre développement est entièrement intégré au compilateur formellement vérifié CompCert. Enfin, nous évaluons expérimentalement nos implémentations, en les comparant aux solveurs de CompCert et à une implémentation non vérifiée du calcul du WTO.</dcterms:abstract>
     <dcterms:abstract xml:lang="en">Dataflow analysis is a static analysis technique that determines information on the propagation of data throughout the execution of a computer program, without actually executing the program. This information can notably be used to optimize the program at compile-time. Performing dataflow analysis usually consists in solving a system of equations. Besides the traditional methods used to solve such systems, other techniques have been developed in the static analysis community. One of them, proposed by Bourdoncle in 1993, consists in pre-computing a solving strategy in order to solve the system more efficiently. This thesis aims at the development of formally verified dataflow solvers that are based on this solving technique. First, we provide a rigorous formalization for the notion of Weak Topological Ordering (WTO), which captures the pre-computed solving strategy. Then, we implement and formally verify in the Rocq proof assistant two flavors of WTO-based solving strategies introduced by Bourdoncle, known as the iterative and the recursive strategy, along with the most commonly used algorithm to compute a WTO. Our development is entirely integrated inside the formally verified compiler CompCert. Finally, we evaluate experimentally our implementations, comparing them to CompCert's dataflow solvers and to an untrusted computation of the WTO.</dcterms:abstract>
     <dc:type>Electronic Thesis or Dissertation</dc:type><dc:type xsi:type="dcterms:DCMIType">Text</dc:type>
     <dc:language xsi:type="dcterms:RFC3066">en</dc:language>
    </tef:thesisRecord>
			</mets:xmlData>
		</mets:mdWrap>
</mets:dmdSec>
<mets:dmdSec ID="desc_edition" CREATED="2025-11-13T11:21:56">
  <mets:mdWrap MDTYPE="OTHER" OTHERMDTYPE="tef_desc_edition">
			<mets:xmlData>
				<tef:edition><dcterms:medium xsi:type="dcterms:IMT">application/pdf</dcterms:medium><dcterms:extent>1 : 4218 Ko</dcterms:extent><dc:identifier xsi:type="dcterms:URI">https://ged.univ-rennes1.fr/nuxeo/site/esupversions/a779f69f-172b-4144-a260-e994a8640676</dc:identifier></tef:edition>
			</mets:xmlData>
		</mets:mdWrap>
</mets:dmdSec>
<mets:amdSec>
		<mets:techMD ID="admin_expr">
			<mets:mdWrap MDTYPE="OTHER" OTHERMDTYPE="tef_admin_these">
				<mets:xmlData>
					<tef:thesisAdmin>
      <tef:auteur>
       <tef:nom>La Spina</tef:nom>
       <tef:prenom>Sophia</tef:prenom>
       <tef:nomDeNaissance>Sophia</tef:nomDeNaissance>
       <tef:dateNaissance>2000-10-09</tef:dateNaissance>
       <tef:nationalite scheme="ISO-3166-1">FR</tef:nationalite>
       <tef:autoriteExterne autoriteSource="Sudoc">297659898</tef:autoriteExterne>
       <tef:autoriteExterne autoriteSource="mailPerso">sophia.laspina@protonmail.com</tef:autoriteExterne>
      </tef:auteur>
      <dc:identifier xsi:type="tef:NNT">2025URENS108</dc:identifier>
      <dc:identifier xsi:type="tef:nationalThesisPID">http://www.theses.fr/2025URENS108</dc:identifier>
      <dcterms:dateAccepted xsi:type="dcterms:W3CDTF">2025-12-16</dcterms:dateAccepted>
      <tef:thesis.degree>
							<tef:thesis.degree.discipline xml:lang="fr">Informatique</tef:thesis.degree.discipline>
							<tef:thesis.degree.grantor>
        <tef:nom>Université de Rennes</tef:nom><tef:autoriteInterne>thesis.degree.grantor_1</tef:autoriteInterne>
        
        <tef:autoriteExterne autoriteSource="Sudoc">26693823X</tef:autoriteExterne>
       </tef:thesis.degree.grantor>
							<tef:thesis.degree.level>Doctorat</tef:thesis.degree.level>
						</tef:thesis.degree>
      <tef:theseSurTravaux>non</tef:theseSurTravaux>
      <tef:avisJury>oui</tef:avisJury><tef:directeurThese><tef:nom>Blazy</tef:nom><tef:prenom>Sandrine</tef:prenom><tef:autoriteInterne>intervenant_1</tef:autoriteInterne><tef:autoriteExterne autoriteSource="Sudoc">153042567</tef:autoriteExterne></tef:directeurThese><tef:directeurThese><tef:nom>Demange</tef:nom><tef:prenom>Delphine</tef:prenom><tef:autoriteInterne>intervenant_2</tef:autoriteInterne><tef:autoriteExterne autoriteSource="Sudoc">174231989</tef:autoriteExterne></tef:directeurThese><tef:presidentJury><tef:nom>Baelde</tef:nom><tef:prenom>David</tef:prenom><tef:autoriteInterne>intervenant_3</tef:autoriteInterne><tef:autoriteExterne autoriteSource="Sudoc">201647249</tef:autoriteExterne></tef:presidentJury><tef:membreJury><tef:nom>Blazy</tef:nom><tef:prenom>Sandrine</tef:prenom><tef:autoriteInterne>intervenant_1</tef:autoriteInterne><tef:autoriteExterne autoriteSource="Sudoc">153042567</tef:autoriteExterne></tef:membreJury><tef:membreJury><tef:nom>Demange</tef:nom><tef:prenom>Delphine</tef:prenom><tef:autoriteInterne>intervenant_2</tef:autoriteInterne><tef:autoriteExterne autoriteSource="Sudoc">174231989</tef:autoriteExterne></tef:membreJury><tef:membreJury><tef:nom>Keller</tef:nom><tef:prenom>Chantal</tef:prenom><tef:autoriteInterne>intervenant_4</tef:autoriteInterne><tef:autoriteExterne autoriteSource="Sudoc">176956875</tef:autoriteExterne></tef:membreJury><tef:rapporteur><tef:nom>Miné</tef:nom><tef:prenom>Antoine</tef:prenom><tef:autoriteInterne>intervenant_5</tef:autoriteInterne><tef:autoriteExterne autoriteSource="Sudoc">111391636</tef:autoriteExterne></tef:rapporteur><tef:rapporteur><tef:nom>Filliâtre</tef:nom><tef:prenom>Jean-Christophe</tef:prenom><tef:autoriteInterne>intervenant_6</tef:autoriteInterne><tef:autoriteExterne autoriteSource="Sudoc">15500395X</tef:autoriteExterne></tef:rapporteur>
      
      
      


      
      
      
      
      
      
      
      
      
      
      


      <tef:ecoleDoctorale>
       <tef:nom>MATISSE</tef:nom><tef:autoriteInterne>ecoleDoctorale_1</tef:autoriteInterne>
       
       <tef:autoriteExterne autoriteSource="Sudoc">267602553</tef:autoriteExterne>
      </tef:ecoleDoctorale>
      <tef:partenaireRecherche type="laboratoire">
       <tef:nom>
IRISA
</tef:nom><tef:autoriteInterne>partenaireRecherche_1</tef:autoriteInterne>
       
       <tef:autoriteExterne autoriteSource="Sudoc">
026386909
</tef:autoriteExterne>
      </tef:partenaireRecherche>
      <tef:oaiSetSpec>ddc:004</tef:oaiSetSpec>

     




     








     <tef:MADSAuthority authorityID="intervenant_1" type="personal"><tef:personMADS><mads:namePart type="family">Blazy</mads:namePart><mads:namePart type="given">Sandrine</mads:namePart></tef:personMADS></tef:MADSAuthority><tef:MADSAuthority authorityID="intervenant_2" type="personal"><tef:personMADS><mads:namePart type="family">Demange</mads:namePart><mads:namePart type="given">Delphine</mads:namePart></tef:personMADS></tef:MADSAuthority><tef:MADSAuthority authorityID="intervenant_3" type="personal"><tef:personMADS><mads:namePart type="family">Baelde</mads:namePart><mads:namePart type="given">David</mads:namePart></tef:personMADS></tef:MADSAuthority><tef:MADSAuthority authorityID="intervenant_4" type="personal"><tef:personMADS><mads:namePart type="family">Keller</mads:namePart><mads:namePart type="given">Chantal</mads:namePart></tef:personMADS></tef:MADSAuthority><tef:MADSAuthority authorityID="intervenant_5" type="personal"><tef:personMADS><mads:namePart type="family">Miné</mads:namePart><mads:namePart type="given">Antoine</mads:namePart></tef:personMADS></tef:MADSAuthority><tef:MADSAuthority authorityID="intervenant_6" type="personal"><tef:personMADS><mads:namePart type="family">Filliâtre</mads:namePart><mads:namePart type="given">Jean-Christophe</mads:namePart></tef:personMADS></tef:MADSAuthority><tef:MADSAuthority authorityID="thesis.degree.grantor_1" type="corporate"><tef:personMADS><mads:namePart>Université de Rennes</mads:namePart></tef:personMADS></tef:MADSAuthority><tef:MADSAuthority authorityID="ecoleDoctorale_1" type="corporate"><tef:personMADS><mads:namePart>MATISSE</mads:namePart></tef:personMADS></tef:MADSAuthority><tef:MADSAuthority authorityID="partenaireRecherche_1" type="corporate"><tef:personMADS><mads:namePart>
IRISA
</mads:namePart></tef:personMADS></tef:MADSAuthority></tef:thesisAdmin>
				</mets:xmlData>
			</mets:mdWrap>
		</mets:techMD><mets:techMD ID="file_1"><mets:mdWrap MDTYPE="OTHER" OTHERMDTYPE="tef_tech_fichier"><mets:xmlData><tef:meta_fichier>
     <tef:encodage>ASCII</tef:encodage>
     <tef:formatFichier>PDF</tef:formatFichier>
     
     
     
     <tef:taille>4319684</tef:taille>
    </tef:meta_fichier></mets:xmlData></mets:mdWrap></mets:techMD>


		
		
		
		<mets:rightsMD ID="dr_expr_thesard">
			<mets:mdWrap MDTYPE="OTHER" OTHERMDTYPE="tef_droits_auteur_these">
				<mets:xmlData>
					<metsRights:RightsDeclarationMD>
						<metsRights:Context CONTEXTCLASS="GENERAL PUBLIC">
							<metsRights:Permissions DISCOVER="true" COPY="true" DISPLAY="true" DUPLICATE="true" PRINT="true" MODIFY="false" DELETE="false"/>
						</metsRights:Context>
					</metsRights:RightsDeclarationMD>
				</mets:xmlData>
			</mets:mdWrap>
		</mets:rightsMD>
		
		<mets:rightsMD ID="dr_expr_univ">
			<mets:mdWrap MDTYPE="OTHER" OTHERMDTYPE="tef_droits_etablissement_these">
				<mets:xmlData>
					<metsRights:RightsDeclarationMD>
						<metsRights:Context CONTEXTCLASS="GENERAL PUBLIC">
							<metsRights:Permissions DISCOVER="true" COPY="true" DISPLAY="true" DUPLICATE="true" PRINT="true" MODIFY="false" DELETE="false"/>
						</metsRights:Context>
					</metsRights:RightsDeclarationMD>
				</mets:xmlData>
			</mets:mdWrap>
		</mets:rightsMD>
		
		<mets:rightsMD ID="dr_version">
			<mets:mdWrap MDTYPE="OTHER" OTHERMDTYPE="tef_droits_version">
				<mets:xmlData>
					<metsRights:RightsDeclarationMD>
						<metsRights:Context CONTEXTCLASS="GENERAL PUBLIC">
							<metsRights:Permissions DISCOVER="true" COPY="true" DISPLAY="true" DUPLICATE="true" PRINT="true" MODIFY="false" DELETE="false"/>
						</metsRights:Context>
					</metsRights:RightsDeclarationMD>
				</mets:xmlData>
			</mets:mdWrap>
		</mets:rightsMD>
	</mets:amdSec>
<mets:fileSec>
  <mets:fileGrp ID="FGrID1" USE="archive"><mets:file ID="FID1" ADMID="file_1" MIMETYPE="application/pdf" USE="maitre"><mets:FLocat LOCTYPE="URL" xlink:href="https://ged.univ-rennes1.fr/nuxeo/site/esupversions/a779f69f-172b-4144-a260-e994a8640676"/></mets:file></mets:fileGrp>
 </mets:fileSec>
<mets:structMap TYPE="logical">
		<mets:div TYPE="THESE" DMDID="desc_expr" ADMID="dr_expr_thesard dr_expr_univ admin_expr" CONTENTIDS="http://ori-oai-search.univ-rennes1.fr/uid/rennes1-ori-wf-1-21846/oeuvre">
			<mets:div TYPE="VERSION_COMPLETE" ADMID="dr_version" CONTENTIDS="http://ori-oai-search.univ-rennes1.fr/uid/rennes1-ori-wf-1-21846/oeuvre/version">
				<mets:div TYPE="EDITION" DMDID="desc_edition" CONTENTIDS="http://ori-oai-search.univ-rennes1.fr/uid/rennes1-ori-wf-1-21846/oeuvre/version/edition">
					<mets:fptr FILEID="FGrID1"/>
				</mets:div>
			</mets:div>
		</mets:div>
	</mets:structMap>
</mets:mets>