Proving and disproving confluence of context-sensitive rewriting

[EN] Context-sensitive rewriting is a restriction of term rewriting where reductions are allowed on specific arguments of function symbols only, and then in particular positions of terms. Confluence is an abstract property of reduction relations guaranteeing that two diverging reduction sequences ca...

Descripción completa

Detalles Bibliográficos
Autores: Lucas Alba, Salvador|||0000-0001-9923-2108, Gutiérrez Gil, Raúl|||0000-0002-3984-2868, Vítores-Vicente, Miguel
Tipo de recurso: artículo
Fecha de publicación:2022
País:España
Institución:Universitat Politècnica de València (UPV)
Repositorio:RiuNet. Repositorio Institucional de la Universitat Politécnica de Valéncia
Idioma:inglés
OAI Identifier:oai:riunet.upv.es:10251/194829
Acceso en línea:https://riunet.upv.es/handle/10251/194829
Access Level:acceso abierto
Palabra clave:Confluence
Context-sensitive rewriting
Program analysis
LENGUAJES Y SISTEMAS INFORMATICOS
Descripción
Sumario:[EN] Context-sensitive rewriting is a restriction of term rewriting where reductions are allowed on specific arguments of function symbols only, and then in particular positions of terms. Confluence is an abstract property of reduction relations guaranteeing that two diverging reduction sequences can always be joined into a common reduct. In this paper we investigate confluence of context-sensitive rewriting and present some novel results. In particular, a characterization of local confluence of context-sensitive rewriting as the joinability of an extended class of critical pairs which we introduce here. We also show that the treatment of joinability of critical pairs using theorem proving and solving feasibility problems is useful to automatically prove and disprove confluence of context-sensitive rewriting. Our techniques have been implemented in a new tool, CONFident. We show by means of benchmarks the impact of the new techniques discussed in the paper.