Xavier Leroy
Professeur, chaire Sciences du logiciel, Collège de France, Paris.
85%
Libre accès
96
Documents
Identifiants chercheurs
Publications
1
1
3
1
1
1
3
3
3
1
3
6
1
6
5
5
7
3
1
8
3
1
3
3
2
2
2
3
1
1
1
2
3
2
2
2
Publications
|
|
Efficient Extensional Binary TriesJournal of Automated Reasoning, 2023, 67, pp.Article number 8. ⟨10.1007/s10817-022-09655-x⟩
Article dans une revue
hal-03372247
v4
|
|
|
Sciences du logicielL'Annuaire du Collège de France. Résumés des cours et travaux, 2023, 120, pp.13-22. ⟨10.4000/annuaire-cdf.18052⟩
Article dans une revue
hal-04245933
v1
|
|
|
Sciences du logicielL'Annuaire du Collège de France. Résumés des cours et travaux, 2022, 119, pp.21-33. ⟨10.4000/annuaire-cdf.16737⟩
Article dans une revue
hal-04265123
v1
|
|
|
Verified Code Generation for the Polyhedral ModelProceedings of the ACM on Programming Languages, 2021, 5 (POPL), pp.40:1-40:24. ⟨10.1145/3434321⟩
Article dans une revue
hal-03000244
v1
|
|
|
Verified Compilation of Floating-Point ComputationsJournal of Automated Reasoning, 2015, 54 (2), pp.135-163. ⟨10.1007/s10817-014-9317-x⟩
Article dans une revue
hal-00862689
v3
|
|
|
A list-machine benchmark for mechanized metatheoryJournal of Automated Reasoning, 2012, 49 (3), pp.453--491. ⟨10.1007/s10817-011-9226-1⟩
Article dans une revue
istex
hal-00674176
v1
|
Safety First! (technical perspective)Communications of the ACM, 2011, 54 (12), pp.122. ⟨10.1145/2043174.2043196⟩
Article dans une revue
hal-01091803
v1
|
|
|
|
Comment faire confiance à un compilateur ?Les Cahiers de l'INRIA - La Recherche, 2010, Cancer la révolution, 440 avril 2010
Article dans une revue
inria-00511377
v1
|
Comment faire confiance à un compilateur ?Interstices, 2010
Article dans une revue
hal-01350287
v1
|
|
|
|
Coinductive big-step operational semanticsInformation and Computation, 2009, 207 (2), pp.284-304. ⟨10.1016/j.ic.2007.12.004⟩
Article dans une revue
inria-00309010
v1
|
|
|
Compilation of extended recursion in call-by-value functional languagesHigher-Order and Symbolic Computation, 2009, 22 (1), pp.3-66. ⟨10.1007/s10990-009-9042-z⟩
Article dans une revue
hal-00359213
v1
|
|
|
Formal verification of a realistic compilerCommunications of the ACM, 2009, 52 (7), pp.107-115. ⟨10.1145/1538788.1538814⟩
Article dans une revue
inria-00415861
v1
|
|
|
Mechanized semantics for the Clight subset of the C languageJournal of Automated Reasoning, 2009, 43 (3), pp.263-288. ⟨10.1007/s10817-009-9148-3⟩
Article dans une revue
inria-00352524
v1
|
|
|
A verified framework for higher-order uncurrying optimizationsHigher-Order and Symbolic Computation, 2009, 22 (3), ⟨10.1007/s10990-010-9050-z⟩
Article dans une revue
hal-01499915
v1
|
|
|
A formally verified compiler back-endJournal of Automated Reasoning, 2009, 43 (4), pp.363-446. ⟨10.1007/s10817-009-9155-4⟩
Article dans une revue
inria-00360768
v3
|
|
|
Tilting at windmills with Coq: formal verification of a compilation algorithm for parallel movesJournal of Automated Reasoning, 2008, 40 (4), pp.307-326. ⟨10.1007/s10817-007-9096-8⟩
Article dans une revue
istex
inria-00289709
v1
|
|
|
Formal verification of a C-like memory model and its uses for verifying program transformationsJournal of Automated Reasoning, 2008, 41 (1), pp.1-31. ⟨10.1007/s10817-008-9099-0⟩
Article dans une revue
inria-00289542
v1
|
|
|
Mixin modules in a call-by-value settingACM Transactions on Programming Languages and Systems (TOPLAS), 2005, 27 (5), pp.857 - 881. ⟨10.1145/1086642.1086644⟩
Article dans une revue
hal-00310317
v1
|
|
|
Java bytecode verification: algorithms and formalizationsJournal of Automated Reasoning, 2003, 30 (3-4), pp.235--269. ⟨10.1023/A:1025055424017⟩
Article dans une revue
istex
hal-01499939
v1
|
|
|
Bytecode verification on Java smart cardsSoftware: Practice and Experience, 2002, 32 (4), pp.319-340. ⟨10.1002/spe.438⟩
Article dans une revue
hal-01499944
v1
|
|
|
A modular module systemJournal of Functional Programming, 2000, 10 (3), pp.269-303. ⟨10.1017/S0956796800003683⟩
Article dans une revue
hal-01499946
v1
|
|
|
Type-based analysis of uncaught exceptionsACM Transactions on Programming Languages and Systems (TOPLAS), 2000, 22 (2), pp.340-377. ⟨10.1145/349214.349230⟩
Article dans une revue
hal-01499948
v1
|
|
|
A syntactic theory of type generativity and sharingJournal of Functional Programming, 1996, 6 (5), pp.667 - 698. ⟨10.1017/S0956796800001933⟩
Article dans une revue
hal-01499965
v1
|
|
|
Dynamics in MLJournal of Functional Programming, 1993, 3 (4), pp.431-463. ⟨10.1017/S0956796800000848⟩
Article dans une revue
istex
hal-01499972
v1
|
|
|
Well-founded recursion done rightCoqPL 2024: The Tenth International Workshop on Coq for Programming Languages, ACM, Jan 2024, London, United Kingdom
Communication dans un congrès
hal-04356563
v2
|
In Search of Software PerfectionBOB Summer 2019 Konferenz, Aug 2019, Berlin, Germany
Communication dans un congrès
hal-02392114
v1
|
|
|
|
CompCert: Practical Experience on Integrating and Qualifying a Formally Verified Optimizing CompilerERTS2 2018 - 9th European Congress Embedded Real-Time Software and Systems, 3AF, SEE, SIE, Jan 2018, Toulouse, France. pp.1-9
Communication dans un congrès
hal-01643290
v1
|
|
|
Embedded Program Annotations for WCET AnalysisWCET 2018: 18th International Workshop on Worst-Case Execution Time Analysis, Jul 2018, Barcelona, Spain. ⟨10.4230/OASIcs.WCET.2018.8⟩
Communication dans un congrès
hal-01848686
v1
|
|
|
A Formally Verified Compiler for LustrePLDI 2017 - 38th ACM SIGPLAN Conference on Programming Language Design and Implementation, ACM, Jun 2017, Barcelone, Spain
Communication dans un congrès
hal-01512286
v1
|
|
|
Closing the Gap – The Formally Verified Optimizing Compiler CompCertSSS'17: Safety-critical Systems Symposium 2017, Feb 2017, Bristol, United Kingdom. pp.163-180
Communication dans un congrès
hal-01399482
v1
|
|
|
CompCert - A Formally Verified Optimizing CompilerERTS 2016: Embedded Real Time Software and Systems, 8th European Congress, SEE, Jan 2016, Toulouse, France
Communication dans un congrès
hal-01238879
v1
|
|
|
A formally-verified C static analyzerPOPL 2015: 42nd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, Jan 2015, Mumbai, India. pp.247-259, ⟨10.1145/2676726.2676966⟩
Communication dans un congrès
hal-01078386
v1
|
Proof assistants in computer science researchIHP thematic trimester on Semantics of proofs and certified mathematics, Institut Henri Poincaré, Apr 2014, Paris, France
Communication dans un congrès
hal-00983850
v1
|
|
|
|
Formal proofs of code generation and verification toolsSEFM 2014 - 12th International Conference Software Engineering and Formal Methods, Sep 2014, Grenoble, France. pp.1-4, ⟨10.1007/978-3-319-10431-7_1⟩
Communication dans un congrès
hal-01059423
v1
|
|
|
Formal verification of a static analyzer: abstract interpretation in type theoryTypes - The 2014 Types Meeting, May 2014, Paris, France
Communication dans un congrès
hal-00983847
v1
|
|
|
Formal C semantics: CompCert and the C standardITP 2014: Fifth conference on Interactive Theorem Proving, Jul 2014, Vienna, Austria. pp.543-548, ⟨10.1007/978-3-319-08970-6_36⟩
Communication dans un congrès
hal-00981212
v1
|
|
|
Compiler verification for fun and profitFMCAD 2014 - Formal Methods in Computer-Aided Design, Oct 2014, Lausanne, Switzerland. pp.9
Communication dans un congrès
hal-01076547
v1
|
|
|
A Formally-Verified C Compiler Supporting Floating-Point ArithmeticArith - 21st IEEE Symposium on Computer Arithmetic, Apr 2013, Austin, United States. pp.107-115
Communication dans un congrès
hal-00743090
v2
|
|
|
Validating LR(1) ParsersESOP 2012 - Programming Languages and Systems - 21st European Symposium on Programming, Mar 2012, Tallinn, Estonia. pp.397-416, ⟨10.1007/978-3-642-28869-2_20⟩
Communication dans un congrès
hal-01077321
v1
|
|
|
A mechanized semantics for C++ object construction and destruction, with applications to resource managementPOPL '12 - 39th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, ACM, Jan 2012, Philadelphia, PA, United States. pp.521-532, ⟨10.1145/2103656.2103718⟩
Communication dans un congrès
hal-00674663
v1
|
|
|
A formally-verified alias analysisCPP 2012 - Second International Conference on Certified Programs and Proofs, Dec 2012, Kyoto, Japan. pp.11-26, ⟨10.1007/978-3-642-35308-6_5⟩
Communication dans un congrès
hal-00773109
v1
|
|
|
Mechanized Semantics for Compiler VerificationAPLAS 2012 - 10th Asian Symposium on Programming Languages and Systems, Dec 2012, Kyoto, Japan. pp.386-388, ⟨10.1007/978-3-642-35182-2_27⟩
Communication dans un congrès
hal-01079337
v1
|
|
|
Formally verified optimizing compilation in ACG-based flight control softwareERTS2 2012: Embedded Real Time Software and Systems, AAAF, SEE, Feb 2012, Toulouse, France
Communication dans un congrès
hal-00653367
v1
|
|
|
Formally verifying a compiler: Why? How? How far?CGO 2011 - 9th Annual IEEE/ACM International Symposium on Code Generation and Optimization, Apr 2011, Chamonix, France. ⟨10.1109/CGO.2011.5764668⟩
Communication dans un congrès
hal-01091800
v1
|
|
|
Formal verification of object layout for C++ multiple inheritancePOPL'11 - 38th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, ACM, Jan 2011, Austin, TX, United States. pp.67-79, ⟨10.1145/1926385.1926395⟩
Communication dans un congrès
hal-00674174
v1
|
|
|
Verified squared: does critical software deserve verified tools?POPL 2011 - 38th symposium Principles of Programming Languages, Jan 2011, Austin, United States. pp.1-2, ⟨10.1145/1926385.1926387⟩
Communication dans un congrès
hal-01076682
v1
|
|
|
Towards Formally Verified Optimizing Compilation in Flight Control SoftwarePPES 2011: Predictability and Performance in Embedded Systems, Mar 2011, Grenoble, France. pp.59-68, ⟨10.4230/OASIcs.PPES.2011.59⟩
Communication dans un congrès
inria-00551370
v1
|
|
|
A simple, verified validator for software pipelining37th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2010, Jan 2010, Madrid, Spain. ⟨10.1145/1706299.1706311⟩
Communication dans un congrès
inria-00529836
v1
|
|
|
Validating register allocation and spillingCompiler Construction 2010, Mar 2010, Paphos, Cyprus. pp.224-243, ⟨10.1007/978-3-642-11970-5_13⟩
Communication dans un congrès
inria-00529841
v1
|
|
|
Verified Validation of Lazy Code MotionACM SIGPLAN conference on Programming Language Design and Implementation (PLDI), Jun 2009, Dublin, Ireland. pp.316-326, ⟨10.1145/1542476.1542512⟩
Communication dans un congrès
inria-00415865
v1
|
|
|
Formal verification of translation validators: A case study on instruction scheduling optimizations35th ACM Symposium on Principles of Programming Languages (POPL 2008), ACM, Jan 2008, San Francisco, United States. pp.17-27, ⟨10.1145/1328438.1328444⟩
Communication dans un congrès
inria-00289540
v1
|
|
|
Mechanized verification of CPS transformationsLogic for Programming, Artificial Intelligence and Reasoning, 14th Int. Conf. LPAR 2007, Oct 2007, Erevan, Armenia. pp.211-225, ⟨10.1007/978-3-540-75560-9_17⟩
Communication dans un congrès
inria-00289541
v1
|
|
|
Formal certification of a compiler back-end, or: programming a compiler with a proof assistant33rd Symposium Principles of Programming Languages (POPL 2006), Jan 2006, Charleston, SC, United States. pp.42--54, ⟨10.1145/1111037.1111042⟩
Communication dans un congrès
inria-00000963
v1
|
|
|
Formal Verification of a C Compiler Front-endFM'06: 14th Symposium on Formal Methods, Aug 2006, Hamilton, Canada. pp.460-475, ⟨10.1007/11813040_31⟩
Communication dans un congrès
inria-00106401
v1
|
|
|
A list-machine benchmark for mechanized metatheory (extended abstract)Int. Workshop on Logical Frameworks and Meta-Languages (LFMTP 2006), Aug 2006, Seattle (Washington), United States. pp.95-108, ⟨10.1016/j.entcs.2007.01.020⟩
Communication dans un congrès
inria-00289543
v1
|
|
|
A structured approach to proving compiler optimizations based on dataflow analysisTypes for Proofs and Programs, Workshop TYPES 2004, Dec 2004, Jouy-en-Josas, France. pp.66-81, ⟨10.1007/11617990⟩
Communication dans un congrès
inria-00289549
v1
|
|
|
Managing the Complexity of Large Free and Open Source Package-Based Software Distributions21st IEEE/ACM International Conference on Automated Software Engineering, Sep 2006, Tokyo, Japan. pp.199-208, ⟨10.1109/ASE.2006.49⟩
Communication dans un congrès
hal-00149566
v1
|
|
|
Coinductive big-step operational semanticsEuropean Symposium on Programming (ESOP 2006), Mar 2006, Vienne, Austria. pp.42-54, ⟨10.1007/11693024_5⟩
Communication dans un congrès
inria-00289545
v1
|
News from the EDOS project: improving the maintenance of free software distributions.Apr 2006, Porto Alegre, Brazil. pp.199-207
Communication dans un congrès
hal-00154357
v1
|
|
Maintaining large software distributions: new challenges from the FOSS era.Apr 2006, Vienna, Austria. pp.7-20
Communication dans un congrès
hal-00154188
v1
|
|
EDOS: Environment for the Development and Distribution of Open Source SoftwareOSS 2005 - The First International Conference on Open Source Systems, Jul 2005, Genova, Italy
Communication dans un congrès
hal-00699644
v1
|
|
|
|
Formal verification of a memory model for C-like imperative languagesICFEM'05: 7th International Conference on Formal Engineering Methods, Nov 2005, Manchester, United Kingdom. pp.280-299, ⟨10.1007/11576280⟩
Communication dans un congrès
inria-00077921
v1
|
|
|
Call-by-value mixin modules: Reduction semantics, side effects, typesEuropean Symposium on Programming, 2004, Barcelona, Spain. pp.64-78, ⟨10.1007/b96702⟩
Communication dans un congrès
hal-00310123
v1
|
|
|
Computer Security from a Programming Language and Static Analysis PerspectiveESOP 2003: Programming Languages and Systems, 12th European Symposium on Programming, Apr 2003, Warsaw, Poland. pp.1 - 9, ⟨10.1007/3-540-36575-3_1⟩
Communication dans un congrès
hal-01499938
v1
|
|
|
Compilation of extended recursion in call-by-value functional languagesPPDP '03, 2003, Uppsala, Sweden. pp.160--171, ⟨10.1145/888251.888267⟩
Communication dans un congrès
hal-00310121
v1
|
|
|
A Compiled Implementation of Strong ReductionICFP '02: seventh ACM SIGPLAN international conference on Functional programming , ACM, Oct 2002, Pittsburgh, United States. pp.235-246, ⟨10.1145/581478.581501⟩
Communication dans un congrès
hal-01499941
v1
|
|
|
Mixin modules in a call-by-value settingEuropean Symposium on Programming, 2002, Grenoble, France. pp.207-236, ⟨10.1007/3-540-45927-8⟩
Communication dans un congrès
hal-00310119
v1
|
|
|
Java bytecode verification: an overviewComputer Aided Verification, CAV 2001, Jul 2001, Paris, France. pp.265-285, ⟨10.1007/3-540-44585-4_26⟩
Communication dans un congrès
hal-01499955
v1
|
|
|
On-card Bytecode Verification for Java CardSmart card programming and security, proceedings E-Smart 2001, Sep 2001, Cannes, France. pp.150-164, ⟨10.1007/3-540-45418-7_13⟩
Communication dans un congrès
hal-01499956
v1
|
|
|
Type-based analysis of uncaught exceptionsPOPL 1999: 26th symposium Principles of Programming Languages, ACM, Jan 1999, San Antonio, United States. pp.276 - 290, ⟨10.1145/292540.292565⟩
Communication dans un congrès
hal-01499959
v1
|
|
|
Security properties of typed appletsPOPL 1998: 25th symposium Principles of Programming Languages, Jan 1998, San Diego, United States. pp.391-403, ⟨10.1145/268946.268979⟩
Communication dans un congrès
hal-01499963
v1
|
|
|
An overview of Types in CompilationTIC 1998: workshop Types in Compilation, Mar 1998, Kyoto, Japan. pp.1-8, ⟨10.1007/BFb0055509⟩
Communication dans un congrès
hal-01499960
v1
|
|
|
Parallel Functional Programming with Skeletons: the OCamlP3L experimentACM Workshop on ML and its applications, ACM, Sep 1998, Baltimore, United States
Communication dans un congrès
hal-01499962
v1
|
|
|
The effectiveness of type-based unboxingTIC 1997: Workshop Types in Compilation, Jun 1997, Amsterdam, Netherlands
Communication dans un congrès
hal-01499964
v1
|
|
|
Applicative functors and fully transparent higher-order modulesPOPL 1995: 22nd symposium Principles of Programming Languages, ACM, Jan 1995, San Francisco, United States. pp.142 - 153, ⟨10.1145/199448.199476⟩
Communication dans un congrès
hal-01499966
v1
|
|
|
Llamado de procedimientos a distancia y abstracción de tipos20th CLEI PANEL latino-american computer science conference, Aug 1994, Mexico, México. pp.1281-1292
Communication dans un congrès
hal-01499967
v1
|
|
|
Manifest types, modules, and separate compilationPOPL 1994: 21st symposium Principles of Programming Languages, ACM, Jan 1994, Portland, United States. pp.109-122, ⟨10.1145/174675.176926⟩
Communication dans un congrès
hal-01499976
v1
|
|
|
Polymorphism by name for references and continuationsPOPL 1993: 20th symposium Principles of Programming Languages, Jan 1993, Charleston, United States. pp.220-231, ⟨10.1145/158511.158632⟩
Communication dans un congrès
hal-01499970
v1
|
|
|
A concurrent, generational garbage collector for a multithreaded implementation of MLPOPL 1993: 20th symposium Principles of Programming Languages, Jan 1993, Charleston, United States. pp.113-123, ⟨10.1145/158511.158611⟩
Communication dans un congrès
hal-01499969
v1
|
|
|
Unboxed objects and polymorphic typingPOPL 1992: 19th symposium Principles of Programming Languages, Jan 1992, Albuquerque, United States. pp.177-188, ⟨10.1145/143165.143205⟩
Communication dans un congrès
hal-01499973
v1
|
|
|
Polymorphic type inference and assignmentPOPL 1991: 18th symposium Principles of Programming Languages, ACM, Jan 1991, Orlando, United States. pp.291-302, ⟨10.1145/99583.99622⟩
Communication dans un congrès
hal-01499974
v1
|
|
|
Dynamics in MLFPCA 1991: Functional Programming Languages and Computer Architecture, Aug 1991, Boston, United States. pp.406-426
Communication dans un congrès
hal-01499984
v1
|
|
|
Abstract types and the dot notationIFIP TC2 working conference on programming concepts and methods, IFIP, Apr 1990, Tiberias, Israel. pp.479-504
Communication dans un congrès
hal-01499980
v1
|
|
|
Efficient data representation in polymorphic languagesPLILP 1990: Programming Language Implementation and Logic Programming, Aug 1990, Linköping, Sweden. ⟨10.1007/BFb0024189⟩
Communication dans un congrès
hal-01499983
v1
|
Déchiffrement(s) : des hiéroglyphes à l’ADNOdile Jacob, pp.272, 2023, Colloque annuel du Collège de France, 978-2-415-00687-7
Proceedings/Recueil des communications
hal-04210865
v1
|
|
CPP '15: Proceedings of the 2015 Conference on Certified Programs and ProofsConference on Certified Programs and Proofs, Jan 2015, Mumbai, India. ACM, pp.184, 2015, 978-1-4503-3296-5
Proceedings/Recueil des communications
hal-01101937
v1
|
|
|
Software, between mind and matterCollège de France, 2020, Inaugural lecture at Collège de France
Ouvrages
hal-02392159
v2
|
|
|
Le logiciel, entre l’esprit et la matièreOpenEdition Books, 2019, 9782722605299
Ouvrages
hal-02405754
v1
|
Le logiciel, entre l'esprit et la matièreCollège de France; Fayard, 2019, Leçons inaugurales du Collège de France, 284, 978-2-213-71241-3
Ouvrages
hal-02370113
v1
|
Histoire de la masculinisation d'une science : l'informatiqueFrançoise Combes. Genre et société, Éditions du Collège de France; Odile Jacob, pp.123-146, 2025, Colloque annuel du Collège de France, 978-2-415-01332-5
Chapitre d'ouvrage
hal-05304329
v1
|
|
The CompCert memory modelAppel, Andrew W. Program Logics for Certified Compilers, Cambridge University Press, pp.237-271, 2014, 9781107048010
Chapitre d'ouvrage
hal-00905435
v1
|
|
|
|
Mechanized semanticsJ. Esparza and B. Spanfelner and O. Grumberg. Logics and languages for reliability and security, 25, IOS Press, pp.195-224, 2010, NATO Science for Peace and Security Series D: Information and Communication Security, ⟨10.3233/978-1-60750-100-8-195⟩
Chapitre d'ouvrage
inria-00529848
v1
|
|
|
Security properties of typed appletsJan Vitek; Christian D. Jensen Secure Internet Programming - Security issues for Mobile and Distributed Objects, 1603, Springer, pp.147-182, 1999, LNCS, 978-3-540-66130-6. ⟨10.1007/3-540-48749-2_7⟩
Chapitre d'ouvrage
hal-01499957
v1
|
À la recherche du logiciel parfait2018
Article de blog scientifique
hal-01966252
v1
|
|
How I found a crash bug with hyperthreading in Intel's Skylake processors2017
Article de blog scientifique
hal-01620870
v1
|
|
|
Typage polymorphe d'un langage algorithmiqueLangage de programmation [cs.PL]. Université Paris 7, 1992. Français. ⟨NNT : ⟩
Thèse
tel-01499951
v1
|
Chargement...
Chargement...