liu.seSearch for publications in DiVA
Change search
Link to record
Permanent link

Direct link
Drabent, WlodzimierzORCID iD iconorcid.org/0000-0002-4700-7272
Alternative names
Publications (10 of 29) Show all publications
Drabent, W. (2022). On Correctness and Completeness of an n Queens Program. Theory and Practice of Logic Programming, 22(1), 37-50
Open this publication in new window or tab >>On Correctness and Completeness of an n Queens Program
2022 (English)In: Theory and Practice of Logic Programming, ISSN 1471-0684, E-ISSN 1475-3081, Vol. 22, no 1, p. 37-50Article in journal (Refereed) Published
Abstract [en]

Thom Fruhwirth presented a short, elegant, and efficient Prolog program for the n queens problem. However, the program may be seen as rather tricky and one may not be convinced about its correctness. This paper explains the program in a declarative way and provides proofs of its correctness and completeness. The specification and the proofs are declarative, that is they abstract from any operational semantics. The specification is approximate, it is unnecessary to describe the programs semantics exactly. Despite the program works on non-ground terms, this work employs the standard semantics, based on logical consequence and Herbrand interpretations. Another purpose of the paper is to present an example of precise declarative reasoning about the semantics of a logic program.

Place, publisher, year, edition, pages
Cambridge University Press, 2022
Keywords
logic programming; declarative programming; program completeness; program correctness; specification; nonground answers
National Category
Computer Sciences
Identifiers
urn:nbn:se:liu:diva-190500 (URN)10.1017/S1471068421000223 (DOI)000889151500002 ()
Available from: 2022-12-13 Created: 2022-12-13 Last updated: 2023-01-10
Drabent, W. (2020). The Prolog Debugger and Declarative Programming. In: Maurizio Gabbrielli (Ed.), Logic-Based Program Synthesis and Transformation: LOPSTR 2019. Paper presented at 29th International Symposium, LOPSTR 2019, Porto, Portugal, October 8–10, 2019 (pp. 193-208). Cham: Springer, 12042
Open this publication in new window or tab >>The Prolog Debugger and Declarative Programming
2020 (English)In: Logic-Based Program Synthesis and Transformation: LOPSTR 2019 / [ed] Maurizio Gabbrielli, Cham: Springer, 2020, Vol. 12042, p. 193-208Conference paper, Published paper (Refereed)
Abstract [en]

Logic programming is a declarative programming paradigm. Programming language Prolog makes logic programming possible, at least to a substantial extent. However the Prolog debugger works solely in terms of the operational semantics. So it is incompatible with declarative programming. This report discusses this issue and tries to find how the debugger may be used from the declarative point of view. The results are rather not encouraging. Also, the box model of Byrd, used by the debugger, is explained in terms of SLD-resolution.

Place, publisher, year, edition, pages
Cham: Springer, 2020
Series
Lecture Notes in Computer Science, ISSN 0302-9743, E-ISSN 1611-3349 ; 12042
Keywords
Declarative diagnosis/Algorithmic debugging; Prolog; Declarative programming; Program correctness; Program completeness
National Category
Computer Sciences
Identifiers
urn:nbn:se:liu:diva-170723 (URN)10.1007/978-3-030-45260-5_12 (DOI)001340672600014 ()2-s2.0-85084189673 (Scopus ID)978-3-030-45259-9 (ISBN)978-3-030-45260-5 (ISBN)
Conference
29th International Symposium, LOPSTR 2019, Porto, Portugal, October 8–10, 2019
Available from: 2020-10-19 Created: 2020-10-19 Last updated: 2025-10-10
Drabent, W. (2016). Correctness and Completeness of Logic Programs. ACM Transactions on Computational Logic, 17(3), Article ID 18.
Open this publication in new window or tab >>Correctness and Completeness of Logic Programs
2016 (English)In: ACM Transactions on Computational Logic, ISSN 1529-3785, E-ISSN 1557-945X, Vol. 17, no 3, article id 18Article in journal (Refereed) Published
Abstract [en]

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 show how to prove completeness and correctness in the presence of SLD-tree pruning, and point out that approximate specifications simplify specifications and proofs.

We compare the proof methods to declarative diagnosis (algorithmic debugging), showing that approximate specifications eliminate a major drawback of the latter.  We argue that our proof methods reflect natural declarative thinking about programs, and that they can be used, formally or informally, in every-day programming.

Place, publisher, year, edition, pages
ACM Special Interest Group on Computer Science Education, 2016
Keywords
logic programming, declarative programming, program completeness, program correctness, specifications, declarative diagnosis/algorithmic debugging
National Category
Computer Systems
Identifiers
urn:nbn:se:liu:diva-130237 (URN)10.1145/2898434 (DOI)000380019200004 ()
Available from: 2016-07-23 Created: 2016-07-23 Last updated: 2017-11-28Bibliographically approved
Drabent, W. (2016). On definite program answers and least Herbrand models. Theory and Practice of Logic Programming, 16(4), 498-508
Open this publication in new window or tab >>On definite program answers and least Herbrand models
2016 (English)In: Theory and Practice of Logic Programming, ISSN 1471-0684, E-ISSN 1475-3081, Vol. 16, no 4, p. 498-508Article in journal (Refereed) Published
Abstract [en]

A sufficient and necessary condition is given under which least Herbrand models exactlycharacterize the answers of definite clause programs.

Place, publisher, year, edition, pages
Cambridge University Press, 2016
Keywords
logic programming, least Herbrand model, declarative semantics, function symbols
National Category
Computer Systems
Identifiers
urn:nbn:se:liu:diva-130238 (URN)10.1017/S1471068416000089 (DOI)000386588500004 ()
Available from: 2016-07-23 Created: 2016-07-23 Last updated: 2020-10-19Bibliographically approved
Drabent, W. (2015). On completeness of logic programs. In: Logic-Based Program Synthesis and Transformation - 24th International Symposium, (LOPSTR-2014): . Paper presented at Logic-Based Program Synthesis and Transformation - 24th International Symposium, (LOPSTR-2014) (pp. 261-278). , 8981
Open this publication in new window or tab >>On completeness of logic programs
2015 (English)In: Logic-Based Program Synthesis and Transformation - 24th International Symposium, (LOPSTR-2014), 2015, Vol. 8981, p. 261-278Conference paper, Published paper (Refereed)
Abstract [en]

Program correctness (in imperative and functional programming) splits in logic programming into correctness and completeness. Completeness means that a program produces all the answers required by its specification. Little work has been devoted to reasoning about completeness. This paper presents a few sufficient conditions for completeness of definite programs. We also study preserving completeness under some cases of pruning of SLD-trees (e.g. due to using the cut). We treat logic programming as a declarative paradigm, abstracting from any operational semantics as far as possible. We argue that the proposed methods are simple enough to be applied, possibly at an informal level, in practical Prolog programming. We point out importance of approximate specifications.

Series
Lecture Notes in Computer Science, ISSN 0302-9743
National Category
Computer Sciences
Identifiers
urn:nbn:se:liu:diva-118717 (URN)10.1007/978-3-319-17822-6_15 (DOI)000361842100017 ()978-3-319-17821-9 (ISBN)
Conference
Logic-Based Program Synthesis and Transformation - 24th International Symposium, (LOPSTR-2014)
Available from: 2015-06-03 Created: 2015-06-03 Last updated: 2020-10-19
Drabent, W. (2012). A simple correctness proof for magic transformation. Theory and Practice of Logic Programming, 12(6), 929-936
Open this publication in new window or tab >>A simple correctness proof for magic transformation
2012 (English)In: Theory and Practice of Logic Programming, ISSN 1471-0684, E-ISSN 1475-3081, Vol. 12, no 6, p. 929-936Article in journal (Refereed) Published
Abstract [en]

The paper presents a simple and concise proof of correctness of the magic transformation. We believe that it may provide a useful example of formal reasoning about logic programs. The correctness property concerns the declarative semantics. The proof, however, refers to the operational semantics (LD-resolution) of the source programs. Its conciseness is due to applying a suitable proof method.

Place, publisher, year, edition, pages
Cambridge University Press (CUP), 2012
Keywords
program correctness, logic programming, magic transformation, declarative semantics, LD-resolution, operational semantics
National Category
Engineering and Technology
Identifiers
urn:nbn:se:liu:diva-86115 (URN)10.1017/S1471068411000032 (DOI)000310854200004 ()
Available from: 2012-12-07 Created: 2012-12-07 Last updated: 2020-10-19
Drabent, W. (2012). Logic + Control: An Example. In: Agostino Dovier and Vítor Santos Costa (Ed.), Technical Communications of the 28th International Conference on Logic Programming (ICLP'12): . Paper presented at 28th International Conference on Logic Programming (ICLP-2012), 4-8 September, Budapest, Hungary (pp. 301-311). Dagstuhl Publishing
Open this publication in new window or tab >>Logic + Control: An Example
2012 (English)In: Technical Communications of the 28th International Conference on Logic Programming (ICLP'12) / [ed] Agostino Dovier and Vítor Santos Costa, Dagstuhl Publishing , 2012, p. 301-311Conference paper, Published paper (Refereed)
Abstract [en]

We present a Prolog program (the SAT solver of Howe and King) as a logic program with added control. The control consists of a selection rule (delays of Prolog) and pruning the search space. We construct the logic program together with proofs of its correctness and completeness, with respect to a formal specication. This is augmented by a proof of termination under any selection rule. Correctness and termination are inherited by the Prolog program, the change of selection rule preserves completeness. We prove that completeness is also preserved by one case of pruning; for the other an informal justication is presented.

For proving correctness we use a method, which should be well known but is often neglected. A contribution of this paper is a method for proving completeness. In particular we introduce a notion of semi-completeness, for which a local sucient condition exists.

We compare the proof methods with declarative diagnosis (algorithmic debugging). We introduce a method of proving that a certain kind of pruning preserves completeness. We argue that the proof methods correspond to natural declarative thinking about programs, and that they can be used, formally or informally, in every-day programming.

Place, publisher, year, edition, pages
Dagstuhl Publishing, 2012
Series
LIPICS, Leibnitz International Proceedings in Informatics, ISSN 1868-8969 ; 17
Keywords
Logic programming, program correctness, program completeness, specication, declarative programming, declarative diagnosis
National Category
Computer Sciences
Identifiers
urn:nbn:se:liu:diva-79508 (URN)10.4230/LIPIcs.ICLP.2012.301 (DOI)978-3-939897-43-9 (ISBN)
Conference
28th International Conference on Logic Programming (ICLP-2012), 4-8 September, Budapest, Hungary
Available from: 2012-08-06 Created: 2012-08-06 Last updated: 2020-10-19Bibliographically approved
Drabent, W. (2010). Hybrid reasoning with non-monotonic rules. In: Uwe Aßmann, Andreas Bartho, Christian Wende (Ed.), Reasoning web: semantic technologies for software engineering (pp. 28-61). Berlin, Germany: Springer Berlin/Heidelberg
Open this publication in new window or tab >>Hybrid reasoning with non-monotonic rules
2010 (English)In: Reasoning web: semantic technologies for software engineering / [ed] Uwe Aßmann, Andreas Bartho, Christian Wende, Berlin, Germany: Springer Berlin/Heidelberg, 2010, p. 28-61Chapter in book (Refereed)
Abstract [en]

This is an introduction to integrating logic programs with first order theories. The main motivation are the needs of Semantic Web to combine reasoning based on rule systems with that based on Description Logics (DL). We focus on approaches which are able to re-use existing reasoners (for DL and for rule systems). A central issue of this paper is non-monotonic reasoning, which is possibly the main feature of rule based reasoning absent in DL. We discuss the main approaches to non-monotonic reasoning in logic programming. Then we show and classify various ways of integrating them with first order theories. We argue that for practical purposes none of the approaches seems sufficient, and an approach combining the features of so-called tight and loose coupling is needed.

Place, publisher, year, edition, pages
Berlin, Germany: Springer Berlin/Heidelberg, 2010
Series
Lecture Notes in Computer Science, ISSN 0302-9743, E-ISSN 1611-3349 ; 6325
National Category
Computer Sciences
Identifiers
urn:nbn:se:liu:diva-63676 (URN)10.1007/978-3-642-15543-7_2 (DOI)000286780300002 ()9783642155420 (ISBN)9783642155437 (ISBN)
Note

Konferens: 6th International Summer School 2010, Dresden, Germany, August 30 - September 3, 2010. Tutorial Lectures

Available from: 2010-12-29 Created: 2010-12-29 Last updated: 2021-08-10Bibliographically approved
Drabent, W. & Maluszynski, J. (2010). Hybrid Rules with Well-Founded Semantics. Knowledge and Information Systems, 25(1), 137-168
Open this publication in new window or tab >>Hybrid Rules with Well-Founded Semantics
2010 (English)In: Knowledge and Information Systems, ISSN 0219-1377, E-ISSN 0219-3116, Vol. 25, no 1, p. 137-168Article in journal (Refereed) Published
Abstract [en]

A general framework is proposed for integration of rules and external first-order theories. It is based on the well-founded semantics of normal logic programs and inspired by ideas of Constraint Logic Programming (CLP) and constructive negation for logic programs. Hybrid rules are normal clauses extended with constraints in the bodies; constraints are certain formulae in the language of the external theory. A hybrid program consists of a set of hybrid rules and an external theory. Instances of the framework are obtained by specifying the class of external theories and the class of constraints. An example instance is integration of (non-disjunctive) Datalog with ontologies formalized in description logics. The paper defines a declarative semantics of hybrid programs and a goal-driven formal operational semantics. The latter can be seen as a generalization of SLS-resolution. It provides a basis for hybrid implementations combining Prolog with constraint solvers (such as ontology reasoners). Soundness of the operational semantics is proven. Sufficient conditions for decidability of the declarative semantics and for completeness of the operational semantics are given.

Place, publisher, year, edition, pages
Berlin: Springer, 2010
Keywords
Integration of rules and ontologies, Semantic web reasoning, Knowledge representation, Well-founded semantics, Constructive negation, Constraint logic programming
National Category
Computer Sciences
Identifiers
urn:nbn:se:liu:diva-63677 (URN)10.1007/s10115-010-0300-5 (DOI)000282514300007 ()
Note

The original publication is available at www.springerlink.com: Wlodzimierz Drabent and Jan Maluszynski, Hybrid Rules with Well-Founded Semantics, 2010, Knowledge and Information Systems, (25), 1, 137-168. http://dx.doi.org/10.1007/s10115-010-0300-5 Copyright: Springer Science Business Media http://www.springerlink.com/

Available from: 2010-12-29 Created: 2010-12-29 Last updated: 2020-10-19Bibliographically approved
Drabent, W., Eiter, T., Ianni, G., Krennwallner, T., Lukasiewicz, T. & Maluszynski, J. (2009). Hybrid Reasoning with Rules and Ontologies. In: Bry & Maluszynski (Ed.), Semantic Techniques for the Web, The REWERSE Perspective: (pp. 1-49). Berlin: pringer
Open this publication in new window or tab >>Hybrid Reasoning with Rules and Ontologies
Show others...
2009 (English)In: Semantic Techniques for the Web, The REWERSE Perspective / [ed] Bry & Maluszynski, Berlin: pringer , 2009, p. 1-49Chapter in book (Other (popular science, discussion, etc.))
Abstract [en]

The purpose of this chapter is to report on work that has been done in the REWERSE project concerning hybrid reasoning with rules and ontologies. Two major streams of work have been pursued within REWERSE. They start from the predominant semantics of non-monotonic rules in logic programming. The one stream was an extension of non-monotonic logic programs under answer set semantics, with query interfaces to external knowledge sources. The other stream, in the spirit of the -log approach of enhanced deductive databases, was an extension of Datalog (with the well-founded semantics, which is predominant in the database area). The former stream led to so-called non-monotonic dl-programs and hex-programs, and the latter stream to hybrid well-founded semantics. Further variants and derivations of the formalisms (like a well-founded semantics for dl-programs, respecting probabilistic knowledge, priorities, etc.) have been conceived.

Place, publisher, year, edition, pages
Berlin: pringer, 2009
Series
Lecture Notes in Computer Science ; 5500
National Category
Computer Sciences
Identifiers
urn:nbn:se:liu:diva-52634 (URN)10.1007/978-3-642-04581-3_1 (DOI)978-3-642-04580-6 (ISBN)
Available from: 2010-01-06 Created: 2010-01-06 Last updated: 2020-10-19
Organisations
Identifiers
ORCID iD: ORCID iD iconorcid.org/0000-0002-4700-7272

Search in DiVA

Show all publications