{rfName}
Ch

Licencia y uso

Icono OpenAccess

Citaciones

2

Altmetrics

Investigadores/as Institucionales

Morales, Jose FAutor o CoautorHermenegildo, Manuel, VAutor o Coautor

Compartir

28 de agosto de 2025
Publicaciones
>
Artículo

Checkification: A Practical Approach for Testing Static Analysis Truths

Publicado en: THEORY AND PRACTICE OF LOGIC PROGRAMMING. - 2025-07-22 (), DOI: 10.1017/S1471068425100069

Autores:

Ferreiro; D; Casso; I; Morales; JF; López-García; P; Hermenegildo; MV
[+]

Afiliaciones

IMDEA Software Inst, Madrid, Spain - Autor o Coautor
Spanish Council Sci Res CSIC, Madrid, Spain - Autor o Coautor
Univ Politecn Madrid UPM, Madrid, Spain - Autor o Coautor
Ver más

Resumen

Static analysis is an essential component of many modern software development tools. Unfortunately, the ever-increasing complexity of static analyzers makes their coding error-prone. Even analysis tools based on rigorous mathematical techniques, such as abstract interpretation, are not immune to bugs. Ensuring the correctness and reliability of software analyzers is critical if they are to be inserted in production compilers and development environments. While compiler validation has seen notable success, formal validation of static analysis tools remains relatively unexplored. In this paper we present checkification, a simple, automatic method for testing static analyzers. Broadly, it consists in checking, over a suite of benchmarks, that the properties inferred statically are satisfied dynamically. The main advantage of our approach lies in its simplicity, which stems directly from framing it within the Ciao assertion-based validation framework, and its blended static/dynamic assertion checking approach. We demonstrate that in this setting, the analysis can be tested with little effort by combining the following components already present in the framework: 1) the static analyzer, which outputs its results as the original program source with assertions interspersed; 2) the assertion run-time checking mechanism, which instruments a program to ensure that no assertion is violated at run time; 3) the random test case generator, which generates random test cases satisfying the properties present in assertion preconditions; and 4) the unit-test framework, which executes those test cases. We have applied our approach to the CiaoPP static analyzer, resulting in the identification of many bugs with reasonable overhead. Most of these bugs have been either fixed or confirmed, helping us detect a range of errors not only related to analysis soundness but also within other aspects of the framework.
[+]

Palabras clave

Abstract interpretationAssertionsCiaoCompiler bugsConstraint logic programinConstraint logic programingLogicLogic programingNon-failure analysisRun-time checkingRun-time checksStatic analysisSystemTestingVerificatio

Indicios de calidad

Impacto bibliométrico. Análisis de la aportación y canal de difusión

El trabajo ha sido publicado en la revista THEORY AND PRACTICE OF LOGIC PROGRAMMING debido a la progresión y el buen impacto que ha alcanzado en los últimos años, según la agencia WoS (JCR), se ha convertido en una referencia en su campo. En el año de publicación del trabajo, 2025, se encontraba en la posición 2/27, consiguiendo con ello situarse como revista Q1 (Primer Cuartil), en la categoría Logic.

Independientemente del impacto esperado determinado por el canal de difusión, es importante destacar el impacto real observado de la propia aportación.

Según las diferentes agencias de indexación, el número de citas acumuladas por esta publicación hasta la fecha 2026-04-25:

  • Scopus: 1
[+]

Impacto y visibilidad social

Desde la dimensión de Influencia o adopción social, y tomando como base las métricas asociadas a las menciones e interacciones proporcionadas por agencias especializadas en el cálculo de las denominadas “Métricas Alternativas o Sociales”, podemos destacar a fecha 2026-04-25:

  • La utilización de esta aportación en marcadores, bifurcaciones de código, añadidos a listas de favoritos para una lectura recurrente, así como visualizaciones generales, indica que alguien está usando la publicación como base de su trabajo actual. Esto puede ser un indicador destacado de futuras citas más formales y académicas. Tal afirmación es avalada por el resultado del indicador “Capture” que arroja un total de: 4 (PlumX).

Es fundamental presentar evidencias que respalden la plena alineación con los principios y directrices institucionales en torno a la Ciencia Abierta y la Conservación y Difusión del Patrimonio Intelectual. Un claro ejemplo de ello es:

  • El trabajo se ha enviado a una revista cuya política editorial permite la publicación en abierto Open Access.
  • Asignación de un Handle/URN como identificador dentro del Depósito en el Repositorio Institucional: https://oa.upm.es/94032/

Como resultado de la publicación del trabajo en el repositorio institucional, se han obtenido datos estadísticos de uso que reflejan su impacto. En términos de difusión, podemos afirmar que, hasta la fecha

  • Visualizaciones: 19
  • Descargas: 7
[+]

Análisis de liderazgo de los autores institucionales

Existe un liderazgo significativo ya que algunos de los autores pertenecientes a la institución aparecen como primer o último firmante, se puede apreciar en el detalle: Primer Autor (Ferreiro, Daniela) y Último Autor (HERMENEGILDO SALINAS, MANUEL DE).

el autor responsable de establecer las labores de correspondencia ha sido Ferreiro, Daniela.

[+]

Reconocimientos ligados al ítem

Partially funded by MICINN projects PID2019-108528RB-C21 ProCode, TED2021-132464B-I00 PRODIGY, and FJC2021-047102-I, and by the Tezos foundation. We would also like to thank the anonymous reviewers for their very useful feedback. This paper is an extended version of our previous work published in LOPSTR'20.
[+]