Efficient Safety Enforcement for Maude Programs via Program Specialization in the ÁTAME system
[EN] Program specialization is mainly recognized as a powerful technique for optimizing software systems. Nonetheless, it can also be productively employed in other application areas. This paper presents an assertion-guided program specialization methodology for efficiently imposing safety propertie...
| Autores: | , , |
|---|---|
| Tipo de documento: | artigo |
| Data de publicação: | 2020 |
| País: | España |
| Recursos: | Universitat Politècnica de València (UPV) |
| Repositório: | RiuNet. Repositorio Institucional de la Universitat Politécnica de Valéncia |
| Idioma: | inglês |
| OAI Identifier: | oai:riunet.upv.es:10251/171423 |
| Acesso em linha: | https://riunet.upv.es/handle/10251/171423 |
| Access Level: | Acceso aberto |
| Palavra-chave: | Safety properties Assertions Program transformation Maude LENGUAJES Y SISTEMAS INFORMATICOS |
| Resumo: | [EN] Program specialization is mainly recognized as a powerful technique for optimizing software systems. Nonetheless, it can also be productively employed in other application areas. This paper presents an assertion-guided program specialization methodology for efficiently imposing safety properties on software systems. The program specializer takes as input a set A of logical assertions that specifies the expected system behavior plus a software system that is modeled as a Maude program R that may violate some of the assertions in A. The outcome is a safe refinement R of R in which every system computation is a good run of R, i.e., it satisfies the assertions in A. The specialization technique has been fully automated in the ATAME system and ensures that no good run of R is removed from R, while the number of bad runs is reduced to zero. The efficiency and scalability of our technique is empirically demonstrated by means of a thorough experimental evaluation of the ATAME system, which shows fast specialization times and good performance of the computed specializations, even for large assertion sets. |
|---|