Debido al alto tráfico generado por robots, aplicamos límites en el número de peticiones permitidas por cliente y bloqueos por IP automáticos. Si haces un uso legítimo y estás teniendo problemas, avísanos para reevaluar nuestras políticas de bloqueo. Disculpa las molestias.

Resumen:
Verifying Graph Algorithms in Separation Logic: A Case for an Algebraic Approach

Cargando...
Miniatura

Editor

Sistedes

Publicado en

Actas de las XXV Jornadas de Programación y Lenguajes (PROLE 2026)

Licencia Creative Commons

Resumen

Verifying graph algorithms has long been considered challenging in separation logic, mainly due to structural sharing between graph subcomponents. We show that these challenges can be effectively addressed by representing graphs as a partial commutative monoid (PCM), and by leveraging structure-preserving functions (PCM morphisms), including higher-order combinators. PCM morphisms are important because they generalize separation logic’s principle of local reasoning. While traditional framing isolates relevant portions of the heap only at the top level of a specification, morphisms enable contextual localization: they distribute over monoid operations to isolate relevant subgraphs, even when nested deeply within a specification. We demonstrate the morphisms’ effectiveness with novel and concise verifications of two canonical graph benchmarks: the Schorr-Waite graph marking algorithm and the union-find data structure. This work has been published at the International Conference on Functional Programming (ICFP) 2025.

Descripción

Acerca de Grandury, Marcos

Palabras clave

Graphs, Separation Logic, Partial Commutative Monoids, Morphisms

Citación

Grandury, M., Nanevski, A., Gryzlov, A.: Verifying Graph Algorithms in Separation Logic: A Case for an Algebraic Approach. In: Sáenz-Pérez, F. (ed.) Actas de las XXV Jornadas de Programación y Lenguajes (PROLE 2026). Sistedes (2026). https://hdl.handle.net/11705/PROLE/2026/1