Skip to Main Content (Press Enter)

Logo UNICH
  • ×
  • Home
  • Corsi
  • Insegnamenti
  • Professioni
  • Persone
  • Pubblicazioni
  • Strutture
  • Terza Missione
  • Attività
  • Competenze

UNI-FIND
Logo UNICH

|

UNI-FIND

unich.it
  • ×
  • Home
  • Corsi
  • Insegnamenti
  • Professioni
  • Persone
  • Pubblicazioni
  • Strutture
  • Terza Missione
  • Attività
  • Competenze
  1. Pubblicazioni

Catamorphic Abstractions for Constrained Horn Clause Satisfiability

Articolo
Data di Pubblicazione:
2024
Abstract:
Catamorphisms are functions that are recursively defined on list and trees and, in general, on algebraic data types (ADTs), and are often used to compute suitable abstractions of programs that manipulate ADTs. Examples of catamorphisms include functions that compute size of lists, orderedness of lists, and height of trees. It is well known that program properties specified through catamorphisms can be proved by showing the satisfiability of suitable sets of constrained Horn clauses (CHCs). We address the problem of checking the satisfiability of those sets of CHCs, and we propose a method for transforming sets of CHCs into equisatisfiable sets where catamorphisms are no longer present. As a consequence, clauses with catamorphisms can be handled without extending the satisfiability algorithms used by existing CHC solvers. Through an experimental evaluation on a nontrivial benchmark consisting of many list and tree processing algorithms expressed as sets of CHCs, we show that our technique is indeed effective and significantly enhances the performance of state-of-the-art CHC solvers.
Tipologia CRIS:
1.1 Articolo in rivista
Keywords:
catamorphisms; constrained Horn clauses; contracts; program verification
Elenco autori:
De Angelis, E.; Fioravanti, F. A. B. I. O.; Pettorossi, A.; Proietti, M.
Autori di Ateneo:
FIORAVANTI Fabio
Link alla scheda completa:
https://ricerca.unich.it/handle/11564/846116
Pubblicato in:
THEORY AND PRACTICE OF LOGIC PROGRAMMING
Journal
  • Utilizzo dei cookie

Realizzato con VIVO | Designed by Cineca | 25.11.5.0