Filters








691 Hits in 4.4 sec

Removing Unnecessary Variables from Horn Clause Verification Conditions

Emanuele De Angelis, Fabio Fioravanti, Alberto Pettorossi, Maurizio Proietti
2016 Electronic Proceedings in Theoretical Computer Science  
In this paper we adapt to the CHC setting some of the techniques that were developed for removing unnecessary variables from logic programs, and we show that, in some cases, the application of these techniques  ...  Verification conditions (VCs) are logical formulas whose satisfiability guarantees program correctness.  ...  Program P1: Verification Conditions obtained by VCG Figure 1 : Program P1 is the set of Verification Conditions VCs obtained by applying the VCG strategy starting from the C program P, the initial condition  ... 
doi:10.4204/eptcs.219.5 fatcat:3zpyhdp5xfh4zjvnzywnf46jtq

From Big-Step to Small-Step Semantics and Back with Interpreter Specialisation

John P. Gallagher, Manuel Hermenegildo, Bishoksan Kafle, Maximiliano Klemen, Pedro López García, José Morales
2020 Electronic Proceedings in Theoretical Computer Science  
Starting from operational semantics transition rules, we proceed by writing interpreters as constrained Horn clause programs directly encoding the rules.  ...  We investigate representations of imperative programs as constrained Horn clauses.  ...  Acknowledgements Discussions on semantics and Horn clauses with Alberto Pettorossi, Maurizio Proietti, Fabio Fioravanti and Emanuele De Angelis are gratefully acknowledged.  ... 
doi:10.4204/eptcs.320.4 fatcat:4dry4azxwncnrojzddv6pcomay

Semantics-based generation of verification conditions via program specialization

E. De Angelis, F. Fioravanti, A. Pettorossi, M. Proietti
2017 Science of Computer Programming  
for a few hundreds of programs taken from various publicly available benchmarks, and by checking the satisfiability of these verification conditions by using state-of-the-art Horn clause solvers.  ...  Our method is parametric with respect to the semantics of the imperative programming language, as it generates the verification conditions by specializing, using unfold/fold transformation rules, a Horn  ...  Avoiding those unnecessary variables, and thus deriving predicates with smaller arity, can increase the effectiveness and the efficiency of applying Horn clause solvers.  ... 
doi:10.1016/j.scico.2016.11.002 fatcat:tbgcffa6vnhf5a7zpirzwh2cou

SMT-based verification of parameterized systems

Arie Gurfinkel, Sharon Shoham, Yuri Meshman
2016 Proceedings of the 2016 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering - FSE 2016  
It is well known that verification of safety properties of sequential programs is reducible to satisfiability modulo theory of a first-order logic formula, called a verification condition (VC).  ...  We show that deciding whether a parameterized system has a universally quantified inductive invariant is reducible to satisfiability of (non-linear) Constraint Horn Clauses (CHC).  ...  VERIFICATION CONDITIONS FOR PA-RAMETERIZED SYSTEMS In this section, we provide verification conditions for verifying the safety of a parameterized system in the form of sets of Constrained Horn Clauses  ... 
doi:10.1145/2950290.2950330 dblp:conf/sigsoft/GurfinkelSM16 fatcat:5wgwysestzcxvgqkguekrdigsa

Solving Horn Clauses on Inductive Data Types Without Induction

EMANUELE DE ANGELIS, FABIO FIORAVANTI, ALBERTO PETTOROSSI, MAURIZIO PROIETTI
2018 Theory and Practice of Logic Programming  
We propose a transformation technique whose objective is the removal of these data structures from CHCs, hence reducing their satisfiability to a satisfiability problem for CHCs on integers and booleans  ...  AbstractWe address the problem of verifying the satisfiability of Constrained Horn Clauses (CHCs) based on theories of inductively defined data structures, such as lists and trees.  ...  The algorithm is based on the fold/unfold strategy for eliminating unnecessary variables from logic programs (Proietti and Pettorossi 1995) .  ... 
doi:10.1017/s1471068418000157 fatcat:ovs527z7qjd45odoz2psaybax4

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

Emanuele De Angelis
2021 arXiv   pre-print
clauses (CHCs), a term that has become popular in the verification field to refer to CLP programs.  ...  We present specialisation-based techniques for translating verification problems for different programming languages, and in general software systems, into satisfiability problems for constrained Horn  ...  SeaHorn, a verification framework for C based on CHCs, uses a compiler front-end and then "takes as input the optimized LLVM bitcode and emits verification conditions as Constrained Horn Clauses (CHC)"  ... 
arXiv:2108.00739v1 fatcat:gevl2xlor5hrzentqc77irt6gu

The number system hidden inside the Boolean satisfiability problem [article]

Keum-Bae Cho
2018 arXiv   pre-print
In addition, I show that 2-SAT does not form the number system and Horn-SAT partially forms the number system according to the feasible value of the dominant variable.  ...  This exponential property is caused by the number system formed from the calculation of coefficients.  ...  However, 2-SAT does not form the number system and Horn-SAT forms the number system only when the feasible value of the dominant variable is '0'. Proof.  ... 
arXiv:1406.4426v3 fatcat:3oaz3xp5azfafo2kluc5lwxn2u

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  
clauses (CHCs), a term that has become popular in the verification field to refer to CLP programs.  ...  We present specialization-based techniques for translating verification problems for different programming languages, and in general software systems, into satisfiability problems for constrained Horn  ...  SeaHorn, a verification framework for C based on CHCs, uses a compiler front-end and then "takes as input the optimized LLVM bitcode and emits verification conditions as Constrained Horn Clauses (CHC)"  ... 
doi:10.1017/s1471068421000211 fatcat:zfzmqjuozzd5dlfgog7kfmxhce

Horn clauses as an intermediate representation for program analysis and transformation

GRAEME GANGE, JORGE A. NAVAS, PETER SCHACHTE, HARALD SØNDERGAARD, PETER J. STUCKEY
2015 Theory and Practice of Logic Programming  
However, the neededness analysis described in Section 5 allows the removal of unnecessary variable threading, and a simple inlining heuristic can remove unnecessary procedures.  ...  Dead code elimination is a transformation to remove unnecessary code.  ... 
doi:10.1017/s1471068415000204 fatcat:h3j4du3p4zel7n46ztv34zd3p4

Common equivalence and size after forgetting [article]

Paolo Liberatore
2021 arXiv   pre-print
Forgetting variables from a propositional formula may increase its size. Introducing new variables is a way to shorten it.  ...  An algorithm for forgetting and checking common equivalence in polynomial space is given for the Horn case; it is polynomial-time for the subclass of single-head formulae.  ...  If some clauses of B are not involved in any such an entailment, they are unnecessary and can be removed from B without affecting common equivalence.  ... 
arXiv:2006.11152v2 fatcat:uuwlko7iejavtp25zm6c6iuzv4

From Search to Computation: Redundancy Criteria and Simplification at Work [chapter]

Thomas Hillenbrand, Ruzica Piskac, Uwe Waldmann, Christoph Weidenbach
2013 Lecture Notes in Computer Science  
The concept of redundancy and simplification has been an ongoing theme in Harald Ganzinger's work from his first contributions to equational completion to the various variants of the superposition calculus  ...  rewriting to decide a subclass of Euclidean geometry, ordered chaining techniques for Church-Rosser and priority queue proofs, contextual rewriting and history-dependent complexities for the completion of conditional  ...  . ∨ E n are equality or non-equality atoms and no more positive atoms are in C transforms a non-Horn clause into Horn clauses.  ... 
doi:10.1007/978-3-642-37651-1_7 fatcat:fr4uqtwvubbtvgjepamaamojeu

Encoding First Order Proofs in SMT

Jeremy Bongio, Cyrus Katrak, Hai Lin, Christopher Lynch, Ralph Eric McGregor
2008 Electronical Notes in Theoretical Computer Science  
This work is being supported by the European Project Mobius within the frame of IST 6th Framework, national grants from the Science Foundation Ireland and Enterprise Ireland and by the Irish Research Council  ...  Encoding for Non-Horn Clauses For non-Horn problems we use a different set of variables and generate a different set of clauses.  ...  We also aggressively remove fixed variables from the basis. These rules can miss some implied equalities.  ... 
doi:10.1016/j.entcs.2008.04.081 fatcat:novtlmaifzexdkag5pnamte3qy

Typical case complexity of Satisfiability Algorithms and the threshold phenomenon

John Franco
2005 Discrete Applied Mathematics  
For p = ln(n) 4, 10 call a set of p clauses a c-cycle if all but two literals are removed from each of p − 2 clauses, all but three literals are removed from two clauses, the variables can be renamed,  ...  or its complement are removed from .  ... 
doi:10.1016/j.dam.2005.05.008 fatcat:jwcbrivnnzdtxjjyhyz3ixmvj4

Increasing the efficiency of Prolog Lexical databases with N-gram Boolean cubes

Richard Rankin
1988 Proceedings of the 1988 ACM SIGSMALL/PC symposium on ACTES - SIGSMALL '88  
As a class, these problems deal with the manipulation of lexical databases as Horn clauses.  ...  PROLOG has been shown to be an effective tool for expressing the logic of many problems dealing with parsing, natural language processing, and spelling verification [1, 7, 8, 9, 12] .  ...  Therefore, we decided to remove the exhaustive searches from within PROLOG, and institute a filtering procedure to eliminate unnecessary database lookups.  ... 
doi:10.1145/62453.62488 dblp:conf/sigsmall/Rankin88 fatcat:3u3ewoj5pbcijapo225jpn67ty

Defunctionalization of Higher-Order Constrained Horn Clauses [article]

Long Pham, Steven J. Ramsay, C.-H. Luke Ong
2019 arXiv   pre-print
Given a well-sorted higher-order constrained Horn clause (HoCHC) problem instance, the defunctionalization algorithm constructs a first-order well-sorted constrained Horn clause problem.  ...  To our knowledge, this defunctionalization algorithm is the first sound and complete reduction from systems of higher-order Horn constraints to systems of first-order Horn constraints.  ...  Since G ′ does not contain any top-level relational variable symbols from ∆, Γ can be removed from the typing judgement. This results in ∆ ′ ⊢ G ′ : o.  ... 
arXiv:1810.03598v2 fatcat:llahqems3nea3mti4ewq6xhpde
« Previous Showing results 1 — 15 out of 691 results