7 papers
Abstract Compilation as Abstraction of Operator Semantics, applied to Cost Analysis
Louis Rustenholz, Alessio Mansutti, Pedro López-García +3
Least fixpoints are fundamental to program semantics, but they abstract away the recursive structure that generated them. We introduce operator semantics: a semantic intermediate r…
Towards Relating Ciao Assertions and LPTP Theorems
Marco Pérez, Pedro López-GarcÃa, Jose F. Morales +2
Abstract interpretation-based verification is a central component of the Ciao Prolog system, enabling expressive specifications of properties of programs, predicates, and execution…
Big-step and small-step Horn clause derivations applied to operational semantics
John P. Gallagher, Manuel Hermenegildo, José Morales +2
The concepts of big-step and small-step derivations are familiar from the operational semantics of programming languages. These concepts are applicable in the more general setting…
Exploiting Multiple Abstract Call Patterns for Optimizing Run-Time Checks
Daniela Ferreiro, Daniel Jurjo-Rivas, Marco Ciccalè +3
In strongly-typed languages, types are verified at compile time, while dynamically typed languages, such as Prolog, perform type consistency checks entirely at run-time. Extending…
Hiord#: An Approach to the Specification and Verification of Higher-Order (C)LP Programs
Marco Ciccalè, Daniel Jurjo-Rivas, Jose F. Morales +2
Higher-order constructs enable more expressive and concise code by allowing procedures to be parameterized by other procedures. Assertions allow expressing partial program specific…
Abstractions of Sequences, Functions and Operators
Louis Rustenholz, Pedro Lopez-Garcia, Manuel V. Hermenegildo
We present theoretical and practical results on the order theory of lattices of functions, focusing on Galois connections that abstract (sets of) functions - a topic known as highe…