Michael Leuschel - Academia.edu (original) (raw)

Papers by Michael Leuschel

Research paper thumbnail of Fifty Years of Prolog and Beyond

Theory and Practice of Logic Programming

Both logic programming in general and Prolog in particular have a long and fascinating history, i... more Both logic programming in general and Prolog in particular have a long and fascinating history, intermingled with that of many disciplines they inherited from or catalyzed. A large body of research has been gathered over the last 50 years, supported by many Prolog implementations. Many implementations are still actively developed, while new ones keep appearing. Often, the features added by different systems were motivated by the interdisciplinary needs of programmers and implementors, yielding systems that, while sharing the “classic” core language, in particular, the main aspects of the ISO-Prolog standard, also depart from each other in other aspects. This obviously poses challenges for code portability. The field has also inspired many related, but quite different languages that have created their own communities. This article aims at integrating and applying the main lessons learned in the process of evolution of Prolog. It is structured into three major parts. First, we overvie...

Research paper thumbnail of Formal Methods for Components and Objects

Lecture Notes in Computer Science, 2008

... Poetzsch-Heffter, Jan Schäfer..... 313 Beyond Assertions: Advanced Specification and Verifica... more ... Poetzsch-Heffter, Jan Schäfer..... 313 Beyond Assertions: Advanced Specification and Verification with JML and ESC/Java2 Patrice Chalin, Joseph R. Kiniry, Gary T. Leavens, Erik Poll..... 342 Boogie: A Modular ...

Research paper thumbnail of Efficiently Generating Efficient Generating Extensions in Prolog

Selected Papers from the Internaltional Seminar on Partial Evaluation, Feb 12, 1996

The so called "cogen approach" to program specialisation, writing a compiler ge... more The so called "cogen approach" to program specialisation, writing a compiler generator instead of a specialiser, has been used with considerable success in partial evaluation of both functional and imper- ative languages. This paper demonstrates that this approach is also applicable to partial evaluation of logic programming languages, also called partial deduction. Self-application has not been as much in focus

Research paper thumbnail of Easy Graphical Animation and Formula Visualisation for Teaching B

ProB is being used for teaching the B-method. In this paper, we present two new features of ProB ... more ProB is being used for teaching the B-method. In this paper, we present two new features of ProB that we have introduced while teaching B. One feature allows a student (or an expert user) to graphically visualise any predicate as a tree. The underlying algorithm can deal with undefined subformulas and tries to provide useful feedback even for existentially quantified formulas which are false. This feature is especially useful to inspect unexpected invariant violations or operations which are unexpectedly enabled or disabled. The other feature enables a student or lecturer to easily and quickly write custom graphical state representations, to provide a better understanding of the model. With this method, one simply has to assemble a series of pictures and to write an animation function in B itself, which stipulates which pictures should be shown where depending on the current state of the model. As an additional side-benefit, writing the animation function in B itself is a good exercise for students.

Research paper thumbnail of Obtaining Specialised Update Procedures through Partial Deduction of the Ground Representation

Research paper thumbnail of Proceedings of the Workshop on Verification and Computational Logic VCL'2000

Research paper thumbnail of The ecce partial deduction system and the dppd library of benchmarks

Research paper thumbnail of Horn Logical Continuation Semantics

Research paper thumbnail of The ProB Animator and Model Checker for B

Research paper thumbnail of Logic Program Specialisation: How To Be More Specific

Standard partial deduction suffers from several drawbacks when compared to top-down abstract inte... more Standard partial deduction suffers from several drawbacks when compared to top-down abstract interpretation schemes. Conjunctive partial deduction, an extension of standard partial deduction, remedies one of those, namely the lack of side-ways information passing. But two other problems remain: the lack of success-propagation as well as the lack of inference of global success-information. We illustrate these drawbacks and show how they can be remedied by combining conjunctive partial deduction with an abstract interpretation technique known as more specific program construction. We present a simple, as well as a more refined integration of these methods. Finally we illustrate the practical relevance of this approach for some advanced applications, where it surpasses the precision of current abstract interpretation techniques. c © d d d ©

Research paper thumbnail of Tutorial on Program Specialisation (Abstract)

Research paper thumbnail of A Conceptual Embedding of Folding into Partial Deduction: Towards a Maximal Integration

The relation between partial deduction and the unfold/fold approach has been a matter of intense ... more The relation between partial deduction and the unfold/fold approach has been a matter of intense discussion. In this paper we consolidate the advantages of the two approaches and provide an extended partial deduction framework in which most of the tupling and deforestation transformations of the fold/unfold approach, as well the current partial deduction transformations, can be achieved. Moreover, most of the advantages of partial deduction, e.g. lower complexity and a more detailed understanding of control issues, are preserved. We build on well-defined concepts in partial deduction and present a conceptual embedding of folding into partial deduction, called conjunctive partial deduction. Two minimal extensions to partial deduction are proposed: using conjunctions of atoms instead of atoms as the principle specialisation entity and also renaming conjunctions of atoms instead of individual atoms. Correctness results for the extended framework (with respect to computed answer semantics and finite failure semantics) are given. Experiments with a prototype implementation are presented, showing that, somewhat to our surprise, conjunctive partial deduction not only handles the removal of unnecessary variables, but also leads to substantial improvements in specialisation for standard partial deduction examples.

Research paper thumbnail of Logic Program Specialisation: How to Be More Specific (Abstract)

Standard partial deduction suffers from several drawbacks when compared to top-down abstract inte... more Standard partial deduction suffers from several drawbacks when compared to top-down abstract interpretation schemes. Conjunctive partial deduction, an extension of standard partial deduction, remedies one of those, namely the lack of side-ways information passing. But two other problems remain: the lack of success-propagation as well as the lack of inference of global success-information. We illustrate these drawbacks and show how they can be remedied by combining conjunctive partial deduction with an abstract interpretation technique known as more specific program construction. We present a simple, as well as a more refined integration of these methods. Finally we illustrate the practical relevance of this approach for some advanced applications, where it surpasses the precision of current abstract interpretation techniques. c © d d d ©

Research paper thumbnail of Advanced Techniques for Logic Program Specialisation

Ai Communications

... Apt, Hendrik Decker, Stefan Decker, W lodek Drabent, Robert Glück, Corin Gurr, Fergus Henders... more ... Apt, Hendrik Decker, Stefan Decker, W lodek Drabent, Robert Glück, Corin Gurr, Fergus Henderson, Manuel Hermenegildo, Jan Hric, Robert Kowalski, Laura Lafave, John Lloyd, Torben Mogensen, Ul-rich Neumerkel, Alberto Pettorossi, Maurizio Proietti, Dan Sahlin, Zoltan ...

Research paper thumbnail of Redundant Argument Filtering of Logic Programs

Abstract. This paper is concerned with the problem of removing redun-dant arguments from logic pr... more Abstract. This paper is concerned with the problem of removing redun-dant arguments from logic programs. Such arguments can be removed without affecting correctness, in a certain sense. Most program speciali-sation techniques, even though they filter arguments and ...

Research paper thumbnail of Program Specialisation and Abstract Interpretation Reconciled

We clarify the relationship between abstract interpretation and program specialisation in the con... more We clarify the relationship between abstract interpretation and program specialisation in the context of logic programming. We present a generic top-down abstract specialisation framework, along with a generic correctness result, into which a lot of the existing specialisation techniques can be cast. The framework also shows how these techniques can be further improved by moving to more refined abstract domains.

Research paper thumbnail of Controlling Generalisation and Polyvariance in Partial Deduction of Normal Logic Programs

Research paper thumbnail of Partial Deduction of the Ground Representation and its Application to Integrity Checking

... Include Citations | Advanced Search | Help. Disambiguated Search | Include Citations | Advanc... more ... Include Citations | Advanced Search | Help. Disambiguated Search | Include Citations | AdvancedSearch | Help. Help. ... Abstract: Integrity constraints are very useful in many contexts, such as, for example, deductive databases, abductive and inductive logic programming. ...

Research paper thumbnail of Erratum to: "Conjunctive Partial Deduction: Foundations, Control, Algorithms and Experiments

Belgium 0743-1066/00/$ -see front matter Ó 2000 Published by Elsevier Science Inc. All rights res... more Belgium 0743-1066/00/$ -see front matter Ó 2000 Published by Elsevier Science Inc. All rights reserved. PII: S 0 7 4 3 -1 0 6 6 ( 9 9 ) 0 0 0 7 0 -9

Research paper thumbnail of Homeomorphic Embedding for Online Termination

Well-quasi orders in general, and homeomorphic embedding in particular, have gained popularity to... more Well-quasi orders in general, and homeomorphic embedding in particular, have gained popularity to ensure the termination of tech- niques for program analysis, specialisation, transformation, and verica- tion. In this paper we survey and discuss this use of homeomorphic em- bedding and clarify the advantages of such an approach over one using well-founded orders. We also discuss various extensions of the

Research paper thumbnail of Fifty Years of Prolog and Beyond

Theory and Practice of Logic Programming

Both logic programming in general and Prolog in particular have a long and fascinating history, i... more Both logic programming in general and Prolog in particular have a long and fascinating history, intermingled with that of many disciplines they inherited from or catalyzed. A large body of research has been gathered over the last 50 years, supported by many Prolog implementations. Many implementations are still actively developed, while new ones keep appearing. Often, the features added by different systems were motivated by the interdisciplinary needs of programmers and implementors, yielding systems that, while sharing the “classic” core language, in particular, the main aspects of the ISO-Prolog standard, also depart from each other in other aspects. This obviously poses challenges for code portability. The field has also inspired many related, but quite different languages that have created their own communities. This article aims at integrating and applying the main lessons learned in the process of evolution of Prolog. It is structured into three major parts. First, we overvie...

Research paper thumbnail of Formal Methods for Components and Objects

Lecture Notes in Computer Science, 2008

... Poetzsch-Heffter, Jan Schäfer..... 313 Beyond Assertions: Advanced Specification and Verifica... more ... Poetzsch-Heffter, Jan Schäfer..... 313 Beyond Assertions: Advanced Specification and Verification with JML and ESC/Java2 Patrice Chalin, Joseph R. Kiniry, Gary T. Leavens, Erik Poll..... 342 Boogie: A Modular ...

Research paper thumbnail of Efficiently Generating Efficient Generating Extensions in Prolog

Selected Papers from the Internaltional Seminar on Partial Evaluation, Feb 12, 1996

The so called "cogen approach" to program specialisation, writing a compiler ge... more The so called "cogen approach" to program specialisation, writing a compiler generator instead of a specialiser, has been used with considerable success in partial evaluation of both functional and imper- ative languages. This paper demonstrates that this approach is also applicable to partial evaluation of logic programming languages, also called partial deduction. Self-application has not been as much in focus

Research paper thumbnail of Easy Graphical Animation and Formula Visualisation for Teaching B

ProB is being used for teaching the B-method. In this paper, we present two new features of ProB ... more ProB is being used for teaching the B-method. In this paper, we present two new features of ProB that we have introduced while teaching B. One feature allows a student (or an expert user) to graphically visualise any predicate as a tree. The underlying algorithm can deal with undefined subformulas and tries to provide useful feedback even for existentially quantified formulas which are false. This feature is especially useful to inspect unexpected invariant violations or operations which are unexpectedly enabled or disabled. The other feature enables a student or lecturer to easily and quickly write custom graphical state representations, to provide a better understanding of the model. With this method, one simply has to assemble a series of pictures and to write an animation function in B itself, which stipulates which pictures should be shown where depending on the current state of the model. As an additional side-benefit, writing the animation function in B itself is a good exercise for students.

Research paper thumbnail of Obtaining Specialised Update Procedures through Partial Deduction of the Ground Representation

Research paper thumbnail of Proceedings of the Workshop on Verification and Computational Logic VCL'2000

Research paper thumbnail of The ecce partial deduction system and the dppd library of benchmarks

Research paper thumbnail of Horn Logical Continuation Semantics

Research paper thumbnail of The ProB Animator and Model Checker for B

Research paper thumbnail of Logic Program Specialisation: How To Be More Specific

Standard partial deduction suffers from several drawbacks when compared to top-down abstract inte... more Standard partial deduction suffers from several drawbacks when compared to top-down abstract interpretation schemes. Conjunctive partial deduction, an extension of standard partial deduction, remedies one of those, namely the lack of side-ways information passing. But two other problems remain: the lack of success-propagation as well as the lack of inference of global success-information. We illustrate these drawbacks and show how they can be remedied by combining conjunctive partial deduction with an abstract interpretation technique known as more specific program construction. We present a simple, as well as a more refined integration of these methods. Finally we illustrate the practical relevance of this approach for some advanced applications, where it surpasses the precision of current abstract interpretation techniques. c © d d d ©

Research paper thumbnail of Tutorial on Program Specialisation (Abstract)

Research paper thumbnail of A Conceptual Embedding of Folding into Partial Deduction: Towards a Maximal Integration

The relation between partial deduction and the unfold/fold approach has been a matter of intense ... more The relation between partial deduction and the unfold/fold approach has been a matter of intense discussion. In this paper we consolidate the advantages of the two approaches and provide an extended partial deduction framework in which most of the tupling and deforestation transformations of the fold/unfold approach, as well the current partial deduction transformations, can be achieved. Moreover, most of the advantages of partial deduction, e.g. lower complexity and a more detailed understanding of control issues, are preserved. We build on well-defined concepts in partial deduction and present a conceptual embedding of folding into partial deduction, called conjunctive partial deduction. Two minimal extensions to partial deduction are proposed: using conjunctions of atoms instead of atoms as the principle specialisation entity and also renaming conjunctions of atoms instead of individual atoms. Correctness results for the extended framework (with respect to computed answer semantics and finite failure semantics) are given. Experiments with a prototype implementation are presented, showing that, somewhat to our surprise, conjunctive partial deduction not only handles the removal of unnecessary variables, but also leads to substantial improvements in specialisation for standard partial deduction examples.

Research paper thumbnail of Logic Program Specialisation: How to Be More Specific (Abstract)

Standard partial deduction suffers from several drawbacks when compared to top-down abstract inte... more Standard partial deduction suffers from several drawbacks when compared to top-down abstract interpretation schemes. Conjunctive partial deduction, an extension of standard partial deduction, remedies one of those, namely the lack of side-ways information passing. But two other problems remain: the lack of success-propagation as well as the lack of inference of global success-information. We illustrate these drawbacks and show how they can be remedied by combining conjunctive partial deduction with an abstract interpretation technique known as more specific program construction. We present a simple, as well as a more refined integration of these methods. Finally we illustrate the practical relevance of this approach for some advanced applications, where it surpasses the precision of current abstract interpretation techniques. c © d d d ©

Research paper thumbnail of Advanced Techniques for Logic Program Specialisation

Ai Communications

... Apt, Hendrik Decker, Stefan Decker, W lodek Drabent, Robert Glück, Corin Gurr, Fergus Henders... more ... Apt, Hendrik Decker, Stefan Decker, W lodek Drabent, Robert Glück, Corin Gurr, Fergus Henderson, Manuel Hermenegildo, Jan Hric, Robert Kowalski, Laura Lafave, John Lloyd, Torben Mogensen, Ul-rich Neumerkel, Alberto Pettorossi, Maurizio Proietti, Dan Sahlin, Zoltan ...

Research paper thumbnail of Redundant Argument Filtering of Logic Programs

Abstract. This paper is concerned with the problem of removing redun-dant arguments from logic pr... more Abstract. This paper is concerned with the problem of removing redun-dant arguments from logic programs. Such arguments can be removed without affecting correctness, in a certain sense. Most program speciali-sation techniques, even though they filter arguments and ...

Research paper thumbnail of Program Specialisation and Abstract Interpretation Reconciled

We clarify the relationship between abstract interpretation and program specialisation in the con... more We clarify the relationship between abstract interpretation and program specialisation in the context of logic programming. We present a generic top-down abstract specialisation framework, along with a generic correctness result, into which a lot of the existing specialisation techniques can be cast. The framework also shows how these techniques can be further improved by moving to more refined abstract domains.

Research paper thumbnail of Controlling Generalisation and Polyvariance in Partial Deduction of Normal Logic Programs

Research paper thumbnail of Partial Deduction of the Ground Representation and its Application to Integrity Checking

... Include Citations | Advanced Search | Help. Disambiguated Search | Include Citations | Advanc... more ... Include Citations | Advanced Search | Help. Disambiguated Search | Include Citations | AdvancedSearch | Help. Help. ... Abstract: Integrity constraints are very useful in many contexts, such as, for example, deductive databases, abductive and inductive logic programming. ...

Research paper thumbnail of Erratum to: "Conjunctive Partial Deduction: Foundations, Control, Algorithms and Experiments

Belgium 0743-1066/00/$ -see front matter Ó 2000 Published by Elsevier Science Inc. All rights res... more Belgium 0743-1066/00/$ -see front matter Ó 2000 Published by Elsevier Science Inc. All rights reserved. PII: S 0 7 4 3 -1 0 6 6 ( 9 9 ) 0 0 0 7 0 -9

Research paper thumbnail of Homeomorphic Embedding for Online Termination

Well-quasi orders in general, and homeomorphic embedding in particular, have gained popularity to... more Well-quasi orders in general, and homeomorphic embedding in particular, have gained popularity to ensure the termination of tech- niques for program analysis, specialisation, transformation, and verica- tion. In this paper we survey and discuss this use of homeomorphic em- bedding and clarify the advantages of such an approach over one using well-founded orders. We also discuss various extensions of the