Verification of tree-like data structures with iterators in Dafny
Verificación de estructuras de datos arborescentes con iteradores en Dafny

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]

[thumbnail of Jorge_Blazquez.pdf]
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