Florent Avellaneda

dblp:22/10894 · DBLP profile ↗
← Back
18ranked-venue papers
9as first author
7since 2021 · last 2026
0000-0003-1030-5388ORCID · corroborated

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

Software engineering, systems software and programming languages · 10 · 3 first-author · 2 since 2021Artificial intelligence and machine learning · 4 · 4 first-author · 3 since 2021Graphics, computer vision, multimedia, augmented reality and games · 4 · 4 first-author · 3 since 2021Security and privacy · 2 · 2 since 2021Theory of computation · 2 · 2 first-authorDatabases, data management, data science and information retrieval · 1 · 1 since 2021
YearPublicationVenuePosition
2026 On RBAC Maintenance for Preserving Confidentiality
Franck Arnaud Fotso Kuate, Omer Nguena-Timo, Florent Avellaneda
ICISSP (2)3
2026 GLiSE: A Prompt-Driven and ML-Powered Tool for Automated Grey Literature Extraction in Software Engineering
abstract
Grey literature is essential to software engineering research as it captures practices and decisions that rarely appear in academic venues. However, collecting and assessing it at scale remains difficult because of their heterogeneous sources, formats, and APIs that impede reproducible, large-scale synthesis. To address this issue, we present GLiSE, a prompt-driven tool that turns a research topic prompt into platform-specific queries, gathers results from common software-engineering web sources (GitHub, Stack Overflow) and Google Search, and uses embedding-based semantic classifiers to filter and rank results according to their relevance. GLiSE is designed for reproducibility with all settings being configuration-based, and every generated query being accessible. In this paper, (i) we present the GLiSE tool, (ii) provide a curated dataset of software engineering grey-literature search results classified by semantic relevance to their originating search intent, and (iii) conduct an empirical study on the usability of our tool.
Brahim Mahmoudi, Zacharie Chenail-Larcher, Houcine Abdelkader Cherief, Quentin Stiévenart, Naouel Moha, Florent Avellaneda
MSR6
2025 Role Mining in RBAC for Preserving Confidentiality
Franck Arnaud Fotso Kuate, Omer Nguena-Timo, Florent Avellaneda
CRiSIS3
2025 Learning Optimal Oblique Decision Trees with (Max)SAT
abstract
Decision trees are widely used in machine learning for their interpretability and effectiveness in classification tasks. Traditional axis-parallel decision trees partition data using single-feature thresholds at each node, but they often struggle to represent complex, non-axis-aligned decision boundaries efficiently. This limitation can result in unnecessarily large and less interpretable trees. Oblique decision trees address this limitation by using linear combinations of features at each node, allowing a more natural representation of complex decision boundaries while maintaining interpretability through sparse linear combinations. However, learning optimal oblique decision trees poses a significant computational challenge, as existing methods predominantly rely on suboptimal greedy heuristics. In this paper, we propose a novel approach to learning globally optimal oblique decision trees by reformulating the problem as a (Max)SAT instance. By leveraging state-of-the-art (Max)SAT solvers, our method efficiently explores the solution space to identify optimal trees. Experiments on benchmark datasets demonstrate that our approach generates optimal oblique decision trees within reasonable computational time for small to medium-sized datasets.
Florent Avellaneda
IJCAI1
2024 Delegation-Relegation for Boolean Matrix Factorization
abstract
The Boolean Matrix Factorization (BMF) problem aims to represent a n×m Boolean matrix as the Boolean product of two matrices of small rank k, where the product is computed using Boolean algebra operations. However, finding a BMF of minimum rank is known to be NP-hard, posing challenges for heuristic algorithms and exact approaches in terms of rank found and computation time, particularly as matrix size or the number of entries equal to 1 grows. In this paper, we present a new approach to simplifying the matrix to be factorized by reducing the number of 1-entries, which allows to directly recover a Boolean factorization of the original matrix from its simplified version. We introduce two types of simplification: one that performs numerous simplifications without preserving the original rank and another that performs fewer simplifications but guarantees that an optimal BMF on the simplified matrix yields an optimal BMF on the original matrix. Furthermore, our experiments show that our approach outperforms existing exact BMF algorithms.
Florent Avellaneda, Roger Villemaire
AAAI1
2024 DynAMICS: A Tool-Based Method for the Specification and Dynamic Detection of Android Behavioral Code Smells
abstract
Code smells are the result of poor design choices within software systems that complexify source code and impede evolution and performance. Therefore, detecting code smells within software systems is an important priority to decrease technical debt. Furthermore, the emergence of mobile applications (apps) has brought new types of Android-specific code smells, which relate to limitations and constraints on resources like memory, performance and energy consumption. Among these Android-specific smells are those that describe inappropriate behaviour during the execution that may negatively impact software quality. Static analysis tools, however, show limitations for detecting these behavioural code smells and properly detecting behavioural code smells requires considering the dynamic behaviour of the apps. To dynamically detect behavioural code smells, we hence propose three contributions : (1) A method, the Dynamicsmethod, a step-by-step method for the specification and dynamic detection of Android behavioural code smells; (2) A tool, the Dynamicstool, implementing this method on seven code smells; and (3) A validation of our approach on 538 apps from F-Droidwith a comparison with the static analysis detection tools,aDoctorand Paprika, from the literature. Our method consists of four steps: (1) the specification of the code smells, (2) the instrumentation of the app, (3) the execution of the apps, and (4) the detection of the behavioural code smells. Our results show that many instances of code smells that cannot be detected with static detection tools are indeed detected with our dynamic approach with an average precision of 92.8% and an average recall of 53.4%.
Dimitri Prestat, Naouel Moha, Roger Villemaire, Florent Avellaneda
IEEE Trans. Software Eng.4
2022 Undercover Boolean Matrix Factorization with MaxSAT
abstract
The k-undercover Boolean matrix factorization problem aims to approximate a m×n Boolean matrix X as the Boolean product of an m×k and a k×n matrices A◦B such that X is a cover of A◦B, i.e., no representation error is allowed on the 0’s entries of the matrix X. To infer an optimal and “block-optimal” k-undercover, we propose two exact methods based on MaxSAT encodings. From a theoretical standpoint, we prove that our method of inferring “block-optimal” k-undercover is a (1 - 1/e) ≈ 0.632 approximation for the optimal k-undercover problem. From a practical standpoint, experimental results indicate that our “block-optimal” k-undercover algorithm outperforms the state-of-the-art even when compared with algorithms for the more general k-undercover Boolean Matrix Factorization problem for which only minimizing reconstruction error is required.
Florent Avellaneda, Roger Villemaire
AAAI1
2020 Efficient Inference of Optimal Decision Trees
abstract
Inferring a decision tree from a given dataset is a classic problem in machine learning. This problem consists of building, from a labelled dataset, a tree where each node corresponds to a class and a path between the tree root and a leaf corresponds to a conjunction of features to be satisfied in this class. Following the principle of parsimony, we want to infer a minimal tree consistent with the dataset. Unfortunately, inferring an optimal decision tree is NP-complete for several definitions of optimality. For this reason, the majority of existing approaches rely on heuristics, and the few existing exact approaches do not work on large datasets. In this paper, we propose a novel approach for inferring an optimal decision tree with a minimum depth based on the incremental generation of Boolean formulas. The experimental results indicate that it scales sufficiently well and the time it takes to run grows slowly with the size of datasets.
Florent Avellaneda
AAAI1
2019 Learning and Adaptive Testing of Nondeterministic State Machines
abstract
The paper addresses the problems of active learning and conformance testing of systems modeled by nondeterministic Mealy machines (NFSM). It presents a unified SAT-based approach originally proposed by the authors for deterministic FSMs and now generalized to partial nondeterministic machines and checking experiments. Learning a nondeterministic black box, the approach neither needs a Teacher nor uses it a conformance tester to approximate equivalence queries. The idea behind this approach is to infer from a current set of traces not one, but two inequivalent conjectures, use an input sequence distinguishing them in an output query, and update the current trace set with an observed trace to obtain a new pair of distinguishable conjectures, if possible. The classical active learning problem is further generalized by adding a nondeterministic specification FSM, which defines the solution space. The setup unifies the learning and adaptive testing problems and makes them equisolvable with the proposed approach.
Alexandre Petrenko, Florent Avellaneda
QRS2
2019 Fault Detection in Timed FSM with Timeouts by SAT-Solving
abstract
Faults in safety critical real-time systems are not only logical, but they can correspond to violations of timing constraints. They must be detected to avoid system failures with adverse consequences. Developing efficient fault detection techniques for varieties of system models is still challenging. In this paper, we deal with fault detection for timed finite state machines with timeouts (TFSMs-T). TFSM-T is an extension of FSM to model timing constraints in safety-critical real-time systems. We lift a fault detection approach developed for FSM to generate tests detecting both logical faults and violations of time constraints in TFSMs-T. The approach is based on constraint solving and uses mutation machines to represent domains of faulty implementations (mutants) of a specification TFSMs-T. It also avoids enumerating the implementations one by one. We develop a prototype tool and we conduct experiments to evaluate the scalability of the proposed methods.
Omer Nguena-Timo, Dimitri Prestat, Florent Avellaneda
QRS3
2019 Learning Minimal DFA: Taking Inspiration from RPNI to Improve SAT Approach
Florent Avellaneda, Alexandre Petrenko
SEFM1
2019 FSM inference and checking sequence construction are two sides of the same coin
Alexandre Petrenko, Florent Avellaneda, Roland Groz, Catherine Oriat
Softw. Qual. J.2
2018 FSM Inference from Long Traces
Florent Avellaneda, Alexandre Petrenko
FM1
2018 Conformance Testing and Inference of Embedded Components
Alexandre Petrenko, Florent Avellaneda
ICTSS2
2017 From Passive to Active FSM Inference via Checking Sequence Construction
Alexandre Petrenko, Florent Avellaneda, Roland Groz, Catherine Oriat
ICTSS2
2016 Solving Language Equations Using Flanked Automata
Florent Avellaneda, Silvano Dal-Zilio, Jean-Baptiste Raclet
ATVA1
2015 Catching a Structural Bug with a Flower
abstract
Checking the structural boundedness and the structural termination of vector addition systems with states boils down to detecting pathological cycles. As opposed to their non-structural variants which require exponential space, these properties need polynomial time only. The algorithm searches for a counter-example in the form of a multiset of arcs computed by means of linear programming. Yet the minimal length of a pathological cycle can be exponential in the size of the system which makes it difficult to visualize and to analyze the detected bug in details. We propose to describe pathological cycles in the form of particular cycles called flowers. The latter are made of petals which are iterated circuits connected by simple paths that form a calyx. We present an algorithm that builds in polynomial time a flower from the multiset of arcs that represents a pathological cycle. Interestingly the number of petals within a flower is at most equal to the dimension of vectors which helps to describe in a concise way the underlying bug and to analyse it.
Florent Avellaneda, Rémi Morin
Fundam. Informaticae1
2014 Exhibition of a Structural Bug with Wings
Florent Avellaneda, Rémi Morin
Petri Nets1