Implementation of Twinning automata and regular expressions for string static analysis, by Luca Negrini, Vincenzo Arceri, Pietro Ferrara and Agostino Cortesi.
This repo is obsolete and it is not currently maintained. However, the Tarsis abstract domain is implemented and mantained in LiSA (https://github.com/lisa-analyzer/lisa).
Links:
Class AutomatonString is the entry point for working with the domain. Use its parameterless constructor to build automaton representing a generic unknown string, and use the one accepting a string parameter to build an automaton recognizing the given string.
Tarsis comes as a gradle 6.0 project. For development with Eclipse, please install the Gradle IDE Pack plugin from the Eclipse marketplace, and make sure to import the project into the workspace as a Gradle project.