Research Topics
I have worked in two distinct areas of research: the first (chronologically) involves theoretical computer science, logic and automata theory, and the second focuses on applications and development in computer music.
The link between both activities is the processing of tree structured data.
Computer Music and Music Notation Processing
Automated Music Transcription
Conversion of a performance into music notation.
We are developing an approach for the transcription of MIDI recordings of performances into digital music scores, based on an abstract intermediate representation of music notation as trees, and on advanced quantitative parsing algorithm. It is implemented into the
qparse library, and experiments have shown very good results on challenging datasets.
Read more
Tree-Structured Representations of Timed Data
An abstract hierarchical intermediate representation of music notation.
This abstract model of digital musical score is used as an intermediate representation in applications related to the processing of written music. Its principle is that, like in symbolic music notation, durations are defined hierarchically, be recursive division of time-spans.
Read more
Comparison of Digital Music Scores
diff-like procedures for XML digital music scores.
We consider the problem of computing the differences between two digital music scores, given in an XML encoding (
MusicXML or
MEI), and visualizing these differences side-to-side.
Read more
Pitch Spelling
Estimation of note names from their pitch in number of semitones.
We revisit the old problem of Pitch Spelling (PS), and local and global tonality guessing, with a new algorithm for their joint estimation. It searches for an optimal spelling based on current conventions for music notation, and musicological tools such as distances between tonalities.
Read more
Symbolic Weighted Automata
Quantitative language models computing over infinite alphabets.
A study of some classes of automata and transducers processing words and trees over infinite (or large) alphabet and returning a weight value in a semiring, and applications to quantitative parsing.
Read more
Test and Verification of Realtime Interactive Music Systems
Automated generation of test sets for functional reliability and temporal predictability.
Supervision of the development of a platform for conformance testing of the real-time Interactive Music System (IMS)
Antescofo, as part of Clément Poncelet’s PhD (2013-2015).
Read more
Formal Tree Languages, Automated Reasoning and Structured Data Processing
Constrained Tree Automata
Classes of Tree Automata that can check syntactic equalities and disequalities of subtrees.
We study automata formalisms computing on trees of finite rank, labeled by symbols from a finite alphabet, extended by constraints, and different applications of these formalisms.
Read more
Term Rewriting Systems
Decision problems in term rewriting, for automatic deduction and verification.
For a Turing-complete computational model such as term rewriting, it is natural to ask about the decidability (in the general case or in specific cases) of certain properties, such as the accessibility of a given term from another by rewriting, strong termination (all rewriting sequences terminate), or confluence (two divergent rewriting sequences can always converge to the same term).
Read more
Automation of Inductive Theorem Proving
Developing an ITP system for the certification of critical systems.
Inductive Theorem Proving (ITP) is used to establish the validity of conjectures in particular structures such as natural numbers, lists, and binary trees (referred to as initial models). This technique is widely used for the certification of critical applications in Computer Science and Artificial Intelligence. Inductive validity is undecidable in general, and the automation of ITP has been investigated by the automated reasoning community for decades,
facing major challenges.
Read more
Hedge Automata and Rewriting, Data Tree
Verification of XML transformations and navigation languages.
We study various automata formalisms for processing ranked trees labeled with data or unranked trees (hedges), and their use in methods such as Regular Model Checking and Type Verification.
Read more
Specification and verification of security protocols
former research topic (1999-2005)
Security protocols describe messages exchanged by agents in a hostile environment and composed using cryptographic primitives. They are sometimes described in scientific literature using a semi-formal notation known as Alice-Bob language, which specifies the content of messages between protocol actors (agents). This syntax can be seen as a textual representation of Message Sequence Charts used in RFCs, among other places. This language is simple and concise for describing the overall flow of a protocol, but it is nevertheless ambiguous and obscures the local operations of each agent.
Read more