Filters








631 Hits in 5.7 sec

Removing Algebraic Data Types from Constrained Horn Clauses Using Difference Predicates [article]

Emanuele De Angelis
2020 arXiv   pre-print
We address the problem of proving the satisfiability of Constrained Horn Clauses (CHCs) with Algebraic Data Types (ADTs), such as lists and trees.  ...  The main extension over previous techniques for ADT removal is a new transformation rule, called differential replacement, which allows us to introduce auxiliary predicates corresponding to the lemmas  ...  We assume that all non-basic types are specified by suitable data-type declarations (such as the declare-datatypes declarations adopted by SMT solvers), and are collectively called algebraic data types  ... 
arXiv:2004.07749v1 fatcat:hrk6t3la3be67ftgcqi224dsu4

Removing Algebraic Data Types from Constrained Horn Clauses Using Difference Predicates [chapter]

Emanuele De Angelis, Fabio Fioravanti, Alberto Pettorossi, Maurizio Proietti
2020 Lecture Notes in Computer Science  
We address the problem of proving the satisfiability of Constrained Horn Clauses (CHCs) with Algebraic Data Types (ADTs), such as lists and trees.  ...  The main extension over previous techniques for ADT removal is a new transformation rule, called differential replacement, which allows us to introduce auxiliary predicates corresponding to the lemmas  ...  We assume that all non-basic types are specified by suitable data-type declarations (such as the declare-datatypes declarations adopted by SMT solvers), and are collectively called algebraic data types  ... 
doi:10.1007/978-3-030-51074-9_6 fatcat:q67crx2venc4hofmm64mr63lcm

Horn Clause Solvers for Program Verification [chapter]

Nikolaj Bjørner, Arie Gurfinkel, Ken McMillan, Andrey Rybalchenko
2015 Lecture Notes in Computer Science  
This paper complements these strides as we summarize main useful properties of Horn clauses, illustrate encodings of procedural program verification into Horn clauses and then highlight a number of useful  ...  Horn Clause verification flow 1 Note that we don't need the clause s(x, y) → q(y) ∨ r(z) to preserve satisfiability because the sub-formula that s(x, y) summarizes is only used in negative scope.  ...  Rybalchenko et al. use a symbolic version of Barvinok's algorithm [7] to solve cardinality constraints.  ... 
doi:10.1007/978-3-319-23534-9_2 fatcat:hsmmbrr35nfsveszovx67isifq

Towards String Support in JayHorn (Competition Contribution) [chapter]

Ali Shamakhi, Hossein Hojjat, Philipp Rümmer
2021 Lecture Notes in Computer Science  
Since current Horn solvers do not support strings natively, we consider a representation of (unbounded) strings using algebraic data-types, more precisely as lists.  ...  This paper discusses Horn clause encodings of different string operations, and presents preliminary results.  ...  We therefore use recursive algebraic data types to model strings, and follow the approach proposed in [4] : strings are represented using lists, with a binary constructor cons and the constant nil.  ... 
doi:10.1007/978-3-030-72013-1_29 fatcat:zbccjbo6mjayli2v4dobkcnery

Combining algebraic and predicative specifications in Larch [chapter]

J. J. Horning
1985 Lecture Notes in Computer Science  
Each Larch specification has two parts, written in different languages. Larch interface languages are used to specify program units (e.g., procedures, modules, types).  ...  Their semantics is given by translation to predicate calculus. Abstractions appearing in interface specifications are themselves specified algebraically, using the Larch Shared Language.  ...  Induction over the procedures of a data type is distinct from induction over the generating operators of a sort, and is used to prove theorems about values in a different space.  ... 
doi:10.1007/3-540-15199-0_2 fatcat:wsolmy54nrh5rleljkputji6uy

Unified algebras and modules

P. D. Mosses
1989 Proceedings of the 16th ACM SIGPLAN-SIGACT symposium on Principles of programming languages - POPL '89  
This paper concerns the algebraic specification of abstract data types.  ...  It also compares unified algebras with the well-known framework of order-sorted algebras, which underlies the OBJ specification language.  ...  Inspiration for unified algebras came from the work. of Goguen and Meseguer, Smolka, Ai't-Kaci, and Wadge.  ... 
doi:10.1145/75277.75306 dblp:conf/popl/Mosses89 fatcat:tjopvlu3pnfkbbone6mgolnwki

Design and implementation of a generic, logic and functional programming language [chapter]

Didier Bert, Rachid Echahed
1986 Lecture Notes in Computer Science  
In this language one may specify different modules which can represent either particular algebras (ADTs), families of algebras (genetic data types and enrichments) or Y~-structures (theories).  ...  This language is based on Horn clause logic with equality which permits logic and functional programming to be combined.  ...  The semantics of this generic data type is the set of models F_seq$(Mod(Ftype)), and from the theory point of view, we shall be able to speak about the theory Seq constrained by F_Seq, as it is defined  ... 
doi:10.1007/3-540-16442-1_9 fatcat:uj5eq2shyzd6vncv5u3m7uxjgm

CoALP-Ty'16 [article]

Ekaterina Komendantskaya, František Farka
2016 arXiv   pre-print
This volume constitutes the pre-proceedings of the Workshop on Coalgebra, Horn Clause Logic Programming and Types (CoALP-Ty'16), held on 28--29 November 2016 in Edinburgh as a mark of the end of the EPSRC  ...  Clause Logic for Type Inference in Functional Languages and Beyond After discussion at the workshop authors of the extended abstracts will be invited to submit a full paper to go through a second round  ...  This allows us to prove weak completeness of the fixed point model with respect to standard models.  ... 
arXiv:1612.03032v1 fatcat:d6gug5imufgwbcslntnyts4nim

Analysis and Transformation of Constrained Horn Clauses for Program Verification [article]

Emanuele De Angelis
2021 arXiv   pre-print
We present specialisation-based techniques for translating verification problems for different programming languages, and in general software systems, into satisfiability problems for constrained Horn  ...  clauses (CHCs), a term that has become popular in the verification field to refer to CLP programs.  ...  general, algebraic data types (ADTs).  ... 
arXiv:2108.00739v1 fatcat:gevl2xlor5hrzentqc77irt6gu

Satisfiability of Constrained Horn Clauses on Algebraic Data Types: A Transformation-based Approach [article]

Emanuele De Angelis
2021 arXiv   pre-print
We address the problem of checking the satisfiability of Constrained Horn Clauses (CHCs) defined on Algebraic Data Types (ADTs), such as lists and trees.  ...  The main extension over previous techniques for ADT removal is a new transformation rule, called differential replacement, which allows us to introduce auxiliary predicates, whose definitions correspond  ...  Acknowledgements We warmly thank Francesco Calimeri, Simona Perri, and Ester Zumpano for inviting us to submit this improved, extended version of the paper we presented at the 35th Italian Conference on  ... 
arXiv:2111.11819v1 fatcat:hoh3yc5udvaf3oiwjscc56rbhq

Analysis and Transformation of Constrained Horn Clauses for Program Verification

EMANUELE DE ANGELIS, FABIO FIORAVANTI, JOHN P. GALLAGHER, MANUEL V. HERMENEGILDO, ALBERTO PETTOROSSI, MAURIZIO PROIETTI
2021 Theory and Practice of Logic Programming  
We present specialization-based techniques for translating verification problems for different programming languages, and in general software systems, into satisfiability problems for constrained Horn  ...  clauses (CHCs), a term that has become popular in the verification field to refer to CLP programs.  ...  general, algebraic data types (ADTs).  ... 
doi:10.1017/s1471068421000211 fatcat:zfzmqjuozzd5dlfgog7kfmxhce

Verification of Time-Aware Business Processes using Constrained Horn Clauses [article]

Emanuele De Angelis , Alberto Pettorossi DEC, University G. d'Annunzio, Pescara, Italy, DICII, University of Rome Tor Vergata, Rome, Italy,
2016 arXiv   pre-print
The definition of the operational semantics is given by a set OpSem of constrained Horn clauses (CHCs). Our verification method consists of two steps.  ...  (Step 2) We use state-of-the-art solvers for CHCs to check the satisfiability of such sets of clauses.  ...  Constrained Horn Clauses over Integers First we need the following notions about constraints, constrained Horn clauses, and constraint logic programming.  ... 
arXiv:1608.02807v1 fatcat:yozyqcav3rfypku64eejqkuo54

Property-Based Testing via Proof Reconstruction

Roberto Blanco, Dale Miller, Alberto Momigliano
2019 Proceedings of the 21st International Symposium on Principles and Practice of Programming Languages 2019 - PPDP '19  
After illustrating our techniques on simple, first-order (algebraic) data structures, we lift it to data structures containing bindings using λ-tree syntax.  ...  We do this by presenting certain kinds of "proof outlines" that can be used to describe various common generation strategies in the PBT literature, ranging from random to exhaustive, including their combination  ...  Since the third argument of the someE expert predicate can be of any type, we use the ad hoc polymorphism available in λProlog [46] to specify different clauses to use for this expert depending on the  ... 
doi:10.1145/3354166.3354170 dblp:conf/ppdp/Blanco0M19 fatcat:fgw6wfhpbvgajdhrwicidvxipm

Verifying Catamorphism-Based Contracts using Constrained Horn Clauses [article]

Emanuele De Angelis
2022 arXiv   pre-print
We follow an approach based on constrained Horn clauses (CHCs) by which the verification problem is reduced to the problem of checking satisfiability of a set of clauses derived from the given program  ...  We consider programs that manipulate algebraic data types (ADTs) and a class of contracts specified by catamorphisms, that is, functions defined by simple recursion schemata on the given ADTs.  ...  types, such as booleans, uninterpreted functions, linear integer or real arithmetic, bit vectors, arrays, strings, algebraic data types, and heaps.  ... 
arXiv:2205.06236v1 fatcat:2ma2sap3l5djxd4ux6a7aexu7q

Expander2: Program Verification Between Interaction and Automation

Peter Padawitz
2007 Electronical Notes in Theoretical Computer Science  
Swinging types are based on many-sorted predicate logic and combine constructor-based types with destructor-based (e.g. state-based) ones.  ...  Proofs and computations performed with Expander2 follow the rules and the semantics of swinging types.  ...  Co-Horn/Horn axioms for not P can be generated automatically from Horn/Co-Horn axioms for P . Removal of quantifiers. Unused bounded variables are removed. Successive quantifiers are merged.  ... 
doi:10.1016/j.entcs.2007.01.003 fatcat:ikg4osw2afcdzakypz4iinsxfi
« Previous Showing results 1 — 15 out of 631 results