English
Related papers

Related papers: SLD-resolution without occur-check, an example

200 papers

We weaken the notion of "not subject to occur-check" (NSTO), on which most known results on avoiding the occur-check in logic programming are based. NSTO means that unification is performed only on such pairs of atoms for which the…

Logic in Computer Science · Computer Science 2025-08-25 Włodzimierz Drabent

Concolic testing is a popular dynamic validation technique that can be used for both model checking and automatic test case generation. We have recently introduced concolic testing in the context of logic programming. In contrast to…

Logic in Computer Science · Computer Science 2016-08-11 Fred Mesnard , Etienne Payet , German Vidal

Proving failure of queries for definite logic programs can be done by constructing a finite model of the program in which the query is false. A general purpose model generator for first order logic can be used for this. A recent paper…

Logic in Computer Science · Computer Science 2007-05-23 Nikolay Pelov , Maurice Bruynooghe

Several practical tools for automatically verifying functional programs (e.g., Liquid Haskell and Leon for Scala programs) rely on a heuristic based on unrolling recursive function definitions followed by quantifier-free reasoning using SMT…

Logic in Computer Science · Computer Science 2026-05-25 Adithya Murali , Lucas Peña , Ranjit Jhala , P. Madhusudan

We discuss proving correctness and completeness of definite clause logic programs. We propose a method for proving completeness, while for proving correctness we employ a method which should be well known but is often neglected. Also, we…

Logic in Computer Science · Computer Science 2017-01-31 Włodzimierz Drabent

In solving a query, the SLD proof procedure for definite programs sometimes searches an infinite space for a non existing solution. For example, querying a planner for an unreachable goal state. Such programs motivate the development of…

Logic in Computer Science · Computer Science 2007-05-23 Maurice Bruynooghe , Henk Vandecasteele , D. Andre de Waal , Marc Denecker

We introduce a method of verifying termination of logic programs with respect to concrete queries (instead of abstract query patterns). A necessary and sufficient condition is established and an algorithm for automatic verification is…

Artificial Intelligence · Computer Science 2007-05-23 Yi-Dong Shen , Li-Yan Yuan , Jia-Huai You

We study the problem of completely automatically verifying uninterpreted programs---programs that work over arbitrary data models that provide an interpretation for the constants, functions and relations the program uses. The verification…

Programming Languages · Computer Science 2020-08-27 Umang Mathur , P. Madhusudan , Mahesh Viswanathan

Benefits of static type systems are well-known: they offer guarantees that no type error will occur during runtime and, inherently, inferred types serve as documentation on how functions are called. On the other hand, many type systems have…

Programming Languages · Computer Science 2020-08-31 Isabel Wingen , Philipp Körner

We present a novel and well automatable approach to formal verification of C programs with underspecified semantics, i.e., a language semantics that leaves open the order of certain evaluations. First, we reduce this problem to…

Programming Languages · Computer Science 2022-08-10 Eduard Kamburjan , Nathan Wasser

We present a first-order theorem proving framework for establishing the correctness of functional programs implementing sorting algorithms with recursive data structures. We formalize the semantics of recursive programs in many-sorted…

Logic in Computer Science · Computer Science 2024-03-07 Pamina Georgiou , Márton Hajdu , Laura Kovács

Unintended failures during a computation are painful but frequent during software development. Failures due to external reasons (e.g., missing files, no permissions) can be caught by exception handlers. Programming failures, such as calling…

Programming Languages · Computer Science 2024-02-21 Michael Hanus

In the past years, analyzers have been introduced to detect classes of non-terminating queries for definite logic programs. Although these non-termination analyzers have shown to be rather precise, their applicability on real-life Prolog…

Programming Languages · Computer Science 2011-09-16 Dean Voets , Danny De Schreye

We introduce SMProbLog, a generalization of the probabilistic logic programming language ProbLog. A ProbLog program defines a distribution over logic programs by specifying for each clause the probability that it belongs to a randomly…

Artificial Intelligence · Computer Science 2021-10-08 Pietro Totis , Angelika Kimmig , Luc De Raedt

We show that SCL(FOL) can simulate the derivation of non-redundant clauses by superposition for first-order logic without equality. Superposition-based reasoning is performed with respect to a fixed reduction ordering. The completeness…

Logic in Computer Science · Computer Science 2023-05-23 Martin Bromberger , Chaahat Jain , Christoph Weidenbach

We study the model-checking problem for recursion schemes: does the tree generated by a given higher-order recursion scheme satisfy a given logical sentence. The problem is known to be decidable for sentences of the MSO logic. We prove…

Logic in Computer Science · Computer Science 2023-06-22 Paweł Parys

The No Free Lunch theorems prove that under a uniform distribution over induction problems (search problems or learning problems), all induction algorithms perform equally. As I discuss in this chapter, the importance of the theorems arises…

Machine Learning · Computer Science 2020-07-22 David H. Wolpert

In this paper, we revisit the verification of strong K-step opacity (K-SSO) for partially-observed discrete-event systems modeled as nondeterministic finite-state automata. As a stronger version of the standard K-step opacity, K-SSO…

Cryptography and Security · Computer Science 2022-04-12 Xiaoguang Han , Kuize Zhang , Zhiwu Li

This paper presents an up-to-date and refined version of the SCL calculus for first-order logic without equality. The refinement mainly consists of the following two parts: First, we incorporate a stronger notion of regularity into…

Logic in Computer Science · Computer Science 2024-03-20 Martin Bromberger , Simon Schwarz , Christoph Weidenbach

We present verification methods for logic programs with delay declarations. The verified properties are termination and freedom from errors related to built-ins. Concerning termination, we present two approaches. The first approach tries to…

Logic in Computer Science · Computer Science 2009-09-25 Jan-Georg Smaus , Patricia M. Hill , Andy King
‹ Prev 1 2 3 10 Next ›