Executing Assertions via Synthesized Logic Programs
Programming with assertions constitutes an effective tool to detect and correct programming errors. The ability of executing for- mal specifications is essential in order to test automatically an imple mentation against its assertions. However, formal assertions may de scribe recursive models which...
| Autores: | , |
|---|---|
| Tipo de recurso: | informe técnico |
| Estado: | Versión publicada |
| Fecha de publicación: | 2004 |
| País: | España |
| Institución: | Universidad de Sevilla (US) |
| Repositorio: | idUS. Depósito de Investigación de la Universidad de Sevilla |
| OAI Identifier: | oai:idus.us.es:11441/128738 |
| Acceso en línea: | https://hdl.handle.net/11441/128738 |
| Access Level: | acceso abierto |
| Palabra clave: | Assertion Automatic testing Correctness Definite logic program Formal specification Synthesis Transformation |
| Sumario: | Programming with assertions constitutes an effective tool to detect and correct programming errors. The ability of executing for- mal specifications is essential in order to test automatically an imple mentation against its assertions. However, formal assertions may de scribe recursive models which are di±cult to identify so current assertion checkers limit, in a considerable way, the expressivity of the assertion language. In this paper, we are interested in showing how transforma- tional synthesis can help to execute \expressive" assertions r of the form 8¹x(r(¹x) , Q¹yR(¹x; ¹y)) where Q is either an existential or universal quan- tifier and R a quantifier free formula in the language of a formal theory C we call assertion context. This sort of theories is interesting because it presents a balance between expressiveness for writing assertions and existence of effective methods for compiling and executing them. |
|---|