Optimal divide and query

Algorithmic debugging is a semi-automatic debugging technique that allows the programmer to precisely identify the location of bugs without the need to inspect the source code. The technique has been successfully adapted to all paradigms and mature implementations have been released for languages su...

Descripción completa

Detalles Bibliográficos
Autores: Insa Cabrera, David, Silva, Josep|||0000-0001-5096-0008
Tipo de recurso: capítulo de libro
Fecha de publicación:2011
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/35537
Acceso en línea:https://riunet.upv.es/handle/10251/35537
Access Level:acceso abierto
Palabra clave:Algorithmic Debugging
Strategy
Divide &amp
Query
LENGUAJES Y SISTEMAS INFORMATICOS
Descripción
Sumario:Algorithmic debugging is a semi-automatic debugging technique that allows the programmer to precisely identify the location of bugs without the need to inspect the source code. The technique has been successfully adapted to all paradigms and mature implementations have been released for languages such as Haskell, Prolog or Java. During three decades, the algorithm introduced by Shapiro and later improved by Hirunkitti has been thought optimal. In this paper we first show that this algorithm is not optimal, and moreover, in some situations it is unable to find all possible solutions, thus it is incomplete. Then, we present a new version of the algorithm that is proven optimal, and we introduce some equations that allow the algorithm to identify all optimal solutions.