TY - GEN
T1 - The theory and practice of SALT
AU - Bauer, Andreas
AU - Leucker, Martin
PY - 2011
Y1 - 2011
N2 - Salt is a general purpose specification and assertion language developed for creating concise temporal specifications to be used in industrial verification environments. It incorporates ideas of existing approaches, such as PSL or Specification Patterns, in that it provides operators to express scopes and exceptions, as well as support for a subset of regular expressions. On the one hand side, Salt exceeds specific features of these approaches, for example, in that it allows the nesting of scopes and supports the specification of real-time properties. On the other hand, Salt is fully translatable to LTL, if no real-time operators are used, and to TLTL (also known as state-clock logic), if real-time operators appear in a specification. The latter is needed in particular for verification tasks to do with reactive systems imposing strict execution times and deadlines. Salt's semantics is defined in terms of a translation to temporal (real-time) logic, and a compiler is freely available from the project web site, including an interactive web interface to test drive the compiler. This tutorial paper details on the theoretical foundations of Salt as well as its practical use in applications such as model checking and runtime verification.
AB - Salt is a general purpose specification and assertion language developed for creating concise temporal specifications to be used in industrial verification environments. It incorporates ideas of existing approaches, such as PSL or Specification Patterns, in that it provides operators to express scopes and exceptions, as well as support for a subset of regular expressions. On the one hand side, Salt exceeds specific features of these approaches, for example, in that it allows the nesting of scopes and supports the specification of real-time properties. On the other hand, Salt is fully translatable to LTL, if no real-time operators are used, and to TLTL (also known as state-clock logic), if real-time operators appear in a specification. The latter is needed in particular for verification tasks to do with reactive systems imposing strict execution times and deadlines. Salt's semantics is defined in terms of a translation to temporal (real-time) logic, and a compiler is freely available from the project web site, including an interactive web interface to test drive the compiler. This tutorial paper details on the theoretical foundations of Salt as well as its practical use in applications such as model checking and runtime verification.
UR - http://www.scopus.com/inward/record.url?scp=79955041493&partnerID=8YFLogxK
U2 - 10.1007/978-3-642-20398-5_3
DO - 10.1007/978-3-642-20398-5_3
M3 - Conference contribution
SN - 9783642203978
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 13
EP - 40
BT - NASA Formal Methods - Third International Symposium, NFM 2011, Proceedings
T2 - 3rd NASA Formal Methods Symposium, NFM 2011
Y2 - 18 April 2011 through 20 April 2011
ER -