Thomas Genet

dblp:03/3582 · DBLP profile ↗
← Back
16ranked-venue papers
7as first author
3since 2021 · last 2026
0000-0002-2145-3370ORCID · corroborated

Domains — the database's venue-derived domains; a paper can count in several

Theory of computation · 10 · 7 first-author · 1 since 2021Software engineering, systems software and programming languages · 5 · 1 first-author · 2 since 2021Artificial intelligence and machine learning · 3 · 2 first-authorSecurity and privacy · 1
YearPublicationVenuePosition
2026 Complete Abstractions for Verification of Polymorphic Functions with Equality
Malo Revel, Thomas Genet, Thomas P. Jensen
ESOP (2)2
2024 Verification of Programs with ADTs Using Shallow Horn Clauses
Théo Losekoot, Thomas Genet, Thomas P. Jensen
SAS2
2023 Automata-Based Verification of Relational Properties of Functions over Algebraic Data Structures
abstract
This paper is concerned with automatically proving properties about the input-output relation of functional programs operating over algebraic data types. Recent results show how to approximate the image of a functional program using a regular tree language. Though expressive, those techniques cannot prove properties relating the input and the output of a function, e.g., proving that the output of a function reversing a list has the same length as the input list. In this paper, we built upon those results and define a procedure to compute or over-approximate such a relation. Instead of representing the image of a function by a regular set of terms, we represent (an approximation of) the input-output relation by a regular set of tuples of terms. Regular languages of tuples of terms are recognized using a tree automaton recognizing convolutions of terms, where a convolution transforms a tuple of terms into a term built on tuples of symbols. Both the program and the properties are transformed into predicates and Constrained Horn clauses (CHCs). Then, using an Implication Counter Example procedure (ICE), we infer a model of the clauses, associating to each predicate a regular relation. In this ICE procedure, checking if a given model satisfies the clauses is undecidable in general. We overcome undecidability by proposing an incomplete but sound inference procedure for such relational regular properties. Though the procedure is incomplete, its implementation performs well on 120 examples. It efficiently proves non-trivial relational properties or finds counter-examples.
Théo Losekoot, Thomas Genet, Thomas P. Jensen
FSCD2
2020 Regular language type inference with term rewriting
abstract
This paper defines a new type system applied to the fully automatic verification of safety properties of tree-processing higher-order functional programs. We use term rewriting systems to model the program and its semantics and tree automata to model algebraic data types. We define the regular abstract interpretation of the input term rewriting system where the abstract domain is a set of regular languages. From the regular abstract interpretation we derive a type system where each type is a regular language. We define an inference procedure for this type system which allows us check the validity of safety properties. The inference mechanism is built on an invariant learning procedure based on the tree automata completion algorithm. This invariant learning procedure is regularly-complete and complete in refutation, meaning that if it is possible to give a regular type to a term then we will eventually find it, and if there is no possible type (regular or not) then we will eventually find a counter-example.
Timothée Haudebourg, Thomas Genet, Thomas P. Jensen
Proc. ACM Program. Lang.2
2018 Verifying Higher-Order Functions with Tree Automata
abstract
This paper describes a fully automatic technique for verifying safety properties of higher-order functional programs. Tree automata are used to represent sets of reachable states and functional programs are modeled using term rewriting systems. From a tree automaton representing the initial state, a completion algorithm iteratively computes an automaton which over-approximates the output set of the program to verify. We identify a subclass of higher-order functional programs for which the completion is guaranteed to terminate. Precision and termination are obtained conjointly by a careful choice of equations between terms. The verification objective can be used to generate sets of equations automatically. Our experiments show that tree automata are sufficiently expressive to prove intricate safety properties and sufficiently simple for the verification result to be certified in Coq.
Thomas Genet, Timothée Haudebourg, Thomas P. Jensen
FoSSaCS1
2015 Reachability Analysis of Innermost Rewriting
abstract
We consider the problem of inferring a grammar describing the output of a functional program given a grammar describing its input. Solutions to this problem are helpful for detecting bugs or proving safety properties of functional programs, and several rewriting tools exist for solving this problem. However, known grammar inference techniques are not able to take evaluation strategies of the program into account. This yields very imprecise results when the evaluation strategy matters. In this work, we adapt the Tree Automata Completion algorithm to approximate accurately the set of terms reachable by rewriting under the innermost strategy. We formally prove that the proposed technique is sound and precise w.r.t. innermost rewriting. We show that those results can be extended to the leftmost and rightmost innermost case. The algorithms for the general innermost case have been implemented in the Timbuk reachability tool. Experiments show that it noticeably improves the accuracy of static analysis for functional programs using the call-by-value evaluation strategy.
Thomas Genet, Yann Salmon 0001
RTA1
2013 A Completion Algorithm for Lattice Tree Automata
Thomas Genet, Tristan Le Gall, Axel Legay, Valérie Murat
CIAA1
2012 Equational Abstraction Refinement for Certified Tree Regular Model Checking
Yohan Boichut, Benoît Boyer, Thomas Genet, Axel Legay
ICFEM3
2010 Equational approximations for tree automata completion
Thomas Genet, Vlad Rusu
J. Symb. Comput.1
2009 On the Unobservability of a Trust Relation in Mobile Ad Hoc Networks
Olivier Heen, Gilles Guette, Thomas Genet
WISTP3
2007 Rewriting Approximations for Fast Prototyping of Static Analyzers
Yohan Boichut, Thomas Genet, Thomas P. Jensen, Luka Leroux
RTA2
2006 Feasible Trace Reconstruction for Rewriting Approximations
Yohan Boichut, Thomas Genet
RTA2
2004 Reachability Analysis over Term Rewriting Systems
Guillaume Feuillade, Thomas Genet, Valérie Viet Triem Tong
J. Autom. Reason.2
2001 Reachability Analysis of Term Rewriting Systems with Timbuk
Thomas Genet, Valérie Viet Triem Tong
LPAR1
2000 Rewriting for Cryptographic Protocol Verification
Thomas Genet, Francis Klay
CADE1
1998 Decidable Approximations of Sets of Descendants and Sets of Normal Forms
Thomas Genet
RTA1