Filters








7 Hits in 0.91 sec

PrologCheck – Property-Based Testing in Prolog [chapter]

Cláudio Amaral, Mário Florido, Vítor Santos Costa
2014 Lecture Notes in Computer Science  
We present PrologCheck, an automatic tool for propertybased testing of programs in the logic programming language Prolog with randomised test data generation.  ...  PrologCheck expressiveness stems from describing properties as Prolog goals. It enables the definition of custom test data generators for random testing tailored for the property to be tested.  ...  Therefore, a property based approach to testing is intuitive for the logic programmer. In this paper we introduce PrologCheck 1 , a property-based testing framework for Prolog.  ... 
doi:10.1007/978-3-319-07151-0_1 fatcat:5izdpr2cfrda5dt2kkpiyiygja

CurryCheck: Checking Properties of Curry Programs [article]

Michael Hanus
2016 arXiv   pre-print
Hence, CurryCheck is a useful tool that contributes to the property- and specification-based development of reliable and well tested declarative programs.  ...  In the latter case, CurryCheck tests these properties by systematically enumerating test cases so that, for smaller finite domains, CurryCheck can actually prove properties.  ...  The same idea has also been transferred to other languages like PropEr [30] for Erlang and PrologCheck [1] for Prolog.  ... 
arXiv:1608.05617v1 fatcat:qhhamg5qrzemxlnp47zqyqewmm

Semantic Versioning Checking in a Declarative Package Manager

Michael Hanus, Marc Herbstritt
2018 International Conference on Logic Programming  
For this purpose, we combine CurryCheck, a tool for automated property testing, with program analysis techniques in order to ensure the termination of the checker even in case of possibly non-terminating  ...  As a result, we obtain a software package manager which checks semantic versioning and, thus, supports a reliable and also specification-based development of software packages.  ...  Hence, all kinds of languages with property testing tools are appropriate for this technique, e.g., Haskell with QuickCheck [12] , Prolog with PrologCheck [2] , or Erlang with PropEr [26] .  ... 
doi:10.4230/oasics.iclp.2017.6 dblp:conf/iclp/Hanus17 fatcat:pvseesywnje5pdu4vxal3uapby

Equivalence Checking of Non-deterministic Operations [article]

Sergio Antoy, Michael Hanus
2019 arXiv   pre-print
Our method is integrated in a property-based testing tool which is used in a software package manager to check the semantic versioning of software packages.  ...  For instance, regression testing is a routine task performed when software systems are developed and improved, and software package managers require the equivalence of operations in different versions  ...  This material is based in part upon work supported by the National Science Foundation under Grant No. 1317249.  ... 
arXiv:1909.09562v1 fatcat:53w7hqijtrhtfixyvypuygauru

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  ...  Then, we describe static analysis techniques for CHCs that may be used for inferring relevant program properties, such as loop invariants.  ...  We are also grateful to the Editor-in-Chief Miros law Truszczyński and the anonymous reviewers for their comments and suggestions, all of which have contributed to improving our manuscript.  ... 
doi:10.1017/s1471068421000211 fatcat:zfzmqjuozzd5dlfgog7kfmxhce

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  ...  Then, we describe static analysis techniques for CHCs that may be used for inferring relevant program properties, such as loop invariants.  ...  We are also grateful to the Editor-in-Chief Mirosław Truszczyński and the anonymous reviewers for their comments and suggestions, all of which have contributed to improving our manuscript.  ... 
arXiv:2108.00739v1 fatcat:gevl2xlor5hrzentqc77irt6gu

OASIcs, Volume 58, ICLP'17, Complete Volume [article]

Ricardo Rocha, Tran Cao Son, Christopher Mears, Neda Saeedloei
2018
This material is partially based on research sponsored by DARPA under agreement number AFRL FA8750-15-2-0092 and by NSF under CAREER grant 1350344.  ...  The proposed thesis was supervised by Stefan Woltran and is based on publications with significant contributions by Günther Charwat, Markus Hecher, Marius Moldovan and Michael Morak.  ...  Therefore, we propose to combine property-based testing with program analysis techniques in order to ensure the termination of property testing.  ... 
doi:10.4230/oasics.iclp.2017 fatcat:wfr3tw5pknfjfgsqzbfpzerqji