Several logic-based languages, such as Prolog II and its successors, SICStus Prolog and Oz, offer a computation domain including rational trees. Infinite rational trees allow fo...
Roberto Bagnara, Enea Zaffanella, Roberta Gori, Pa...
Concurrent programming errors arise when threads share data incorrectly. Programmers often avoid these errors by using synchronization to enforce a simple ownership policy: data i...
Jean-Phillipe Martin, Michael Hicks, Manuel Costa,...
The Automatic Authentication Protocol Analyzer, 2nd Version AAPA2 is a fast, completely automatic tool for formally analyzing cryptographic protocols. It correctly identi es vulne...
This paper shows how to construct static analyzers using tree automata and rewriting techniques. Starting from a term rewriting system representing the operational semantics of the...
Yohan Boichut, Thomas Genet, Thomas P. Jensen, Luk...
Early phases of software development are known to be problematic, difficult to manage and errors occurring during these phases are expensive to correct. Many systems have been deve...