Impacto
Downloads
Downloads per month over past year
Blázquez Saborido, Jorge (2022) Verification of tree-like data structures with iterators in Dafny. [Trabajo Fin de Máster]
Preview |
PDF
Creative Commons Attribution Non-commercial Share Alike. 1MB |
Abstract
Tree-like data structures are a common way to implement important data types that are pervasively used in many programming languages. Specifically selfbalancing binary search trees can guarantee logarithmic cost for the main operations, making them the implementation choice of many container libraries.
In this work we give a specfication for sets, maps and multisets in the Dafny programming language. We also implement and verify in Dafny left-leaning red-black trees, a kind of self-balancing binary search tree, following the same methodology that we developed in our previous work. Lastly, we advance on the implementation and verification of iterators for binary search trees.
Resumen (otros idiomas)
Las estructuras de datos arborescentes son una forma común de implementar tipos de datos importantes que se usan de forma generalizada en muchos lenguajes de programación. Concretamente, los árboles de búsqueda autoequilibrados pueden garantizar coste logarítmico para las operaciones principales, haciéndolos la implementación elegida de muchas bibliotecas de contenedores de datos. En este trabajo damos una especificación de conjuntos, mapas y multiconjuntos en el lenguaje de programación Dafny. También implementamos y verificamos en Dafny los árboles rojinegros inclinados a la izquierda, un tipo de árbol autoequilibrado, siguiendo la metodología que desarrollamos en trabajo previo. Finalmente, avanzamos en la implementación y verificación de los iteradores para árboles binarios de búsqueda.
Item Type: | Trabajo Fin de Máster |
---|---|
Additional Information: | Trabajo de Fin de Master en Métodos Formales en Ingeniería Informática, Facultad de Informática UCM, Departamento de Sistemas Informáticos y Computación, Curso 2021/2022 |
Directors: | Directors Segura Díaz, Clara María Montenegro Montes, Manuel |
Uncontrolled Keywords: | Program verification, Data structures, Self-balancing trees, Dafny |
Palabras clave (otros idiomas): | verificación formal, Estructuras de datos, Árboles autoequilibrados, Dafny |
Subjects: | Sciences > Computer science |
Título del Máster: | Máster en Métodos Formales en Ingeniería Informática |
ID Code: | 75213 |
Deposited On: | 24 Oct 2022 15:53 |
Last Modified: | 07 Nov 2022 08:14 |
Origin of downloads
Repository Staff Only: item control page