liu.seSearch for publications in DiVA
Endre søk
RefereraExporteraLink to record
Permanent link

Direct link
Referera
Referensformat
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • oxford
  • Annet format
Fler format
Språk
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Annet språk
Fler språk
Utmatningsformat
  • html
  • text
  • asciidoc
  • rtf
A type-based framework for locating errors in constraint logic programs
Linköpings universitet, Institutionen för datavetenskap. Linköpings universitet, Tekniska högskolan.
2002 (engelsk)Doktoravhandling, med artikler (Annet vitenskapelig)
Abstract [en]

This thesis presents a method for automatic location of type errors in constraint logic programs (CLP) and a prototype debugging tool. The appriach is based on techniques of verification and static analysis iriginating from logic programming, which are substantially extended in the thesis. The main idea is to verify partial correctness of a program with respect to a given specification which is intended to describe (an approximation of) the call-success semantics of the program. This kind of specification, describing calls and successes for every predicate of a program is known as descriptive directional type. For specifying types for CLP programs the thesis extends the formalism of regular discriminative types with constraint-domain-specific base types and with parametric polymorphism.

Errors are located by identifying program points that violate verification conditions for a given type specification. The Specifications may be developed interactively taking into account the results of static analysis.

The main contributions of the thesis are:

  • a verification method for proving partial correctness of CLP programs with respect to polymorphic spicifications of the call-success semantics,
  • a specification language for defining parametric regular types,
  • a verification-based method for locating errors in CLP programs,
  • a static analysis method for CLP which is an adaptation and generalization of techniques previously devised for logic programming; its implementation is used in our diagnosis tool for synthesizing draft specifications,
  • an implementation of the prototype diagnosis tool (called TELL).

sted, utgiver, år, opplag, sider
Linköping: Linköpings universitet , 2002. , s. 22
Serie
Linköping Studies in Science and Technology. Dissertations, ISSN 0345-7524 ; 772
HSV kategori
Identifikatorer
URN: urn:nbn:se:liu:diva-35577Lokal ID: 27725ISBN: 91-7373-422-5 (tryckt)OAI: oai:DiVA.org:liu-35577DiVA, id: diva2:256425
Disputas
2002-09-13, Estraden seminarierum, Hus E, Linköpings universitet, Linköping, 13:15 (svensk)
Tilgjengelig fra: 2009-10-10 Laget: 2009-10-10 Sist oppdatert: 2018-01-13
Delarbeid
1. Inferring call and success types for CLP programs
Åpne denne publikasjonen i ny fane eller vindu >>Inferring call and success types for CLP programs
1998 (engelsk)Annet (Fagfellevurdert)
Abstract [en]

This paper proposes a tool to support reasoning about (partial) correctness of constraint logic programs. The tool infers a specification that approximates the semantics of a given program. The main intended application is program debugging. We deal with a "callsuccess "semantics of CLP. We consider a restricted class of specifications, which are regular types of constrained atoms. The call-success semantics of a CLP program is characterized by the declarative semantics of another CLP program ("magic transformation"). Then bottom-up abstract interpretation is used to approximate the latter. We study the theoretical background of this approach.

We are mainly interested in applying it to CLP over finite domains. Our prototype program analyzer works for the programming language CHIP. 1 Introduction and motivation The work reported addresses the problem of correctness of CLP programs. Intuitively, a program is correct if it behaves as expected by the user. But user expectations are seldo.

HSV kategori
Identifikatorer
urn:nbn:se:liu:diva-87992 (URN)
Merknad

EPSRIT DiSCiPl deliverable, September 1998

Tilgjengelig fra: 2013-01-28 Laget: 2013-01-28 Sist oppdatert: 2013-01-31bibliografisk kontrollert
2. Locating type errors in untyped CLP programs
Åpne denne publikasjonen i ny fane eller vindu >>Locating type errors in untyped CLP programs
2000 (engelsk)Inngår i: Analysis and Visualization Tools for Constraint Programming: Constraint Debugging / [ed] Pierre Deransart, Manuel V. Hermenegildo, Jan Małuszynski, Springer Berlin/Heidelberg, 2000, Vol. 1870, s. 121-150Kapittel i bok, del av antologi (Fagfellevurdert)
Abstract [en]

This chapter presents a static diagnosis tool that locates type errors in untyped CLP programs without executing them. The exciting prototype is specialised for the programming language CHIP [4.10], but the idea applies to any CLP language. The tool works with approximated specifications which describe types of procedure calls and successes. The specifications ar expressed as a certain kind of term grammars. The tool automatically locates at compile time all the errors (with respect to a given specification) in a program. The located erroneous program fragments ar (prefixes of ) clauses. The tool aids the user in constructing specifications incrementally; often a fragment of the specification is already sufficient to locate an error. The presentation is informal. The focus is on the motivation of this work and on the functionality of the tool. Some related formal aspects ar discussed in [4.15, 4.29].

sted, utgiver, år, opplag, sider
Springer Berlin/Heidelberg, 2000
Serie
Lecture Notes in Computer Science, ISSN 0302-9743, E-ISSN 1611-3349 ; 1870
HSV kategori
Identifikatorer
urn:nbn:se:liu:diva-48164 (URN)10.1007/10722311_5 (DOI)9783540411376 (ISBN)9783540400165 (ISBN)3540411372 (ISBN)
Tilgjengelig fra: 2009-10-11 Laget: 2009-10-11 Sist oppdatert: 2020-11-05bibliografisk kontrollert
3. Using parametric set constraints for locating errors in CLP programs
Åpne denne publikasjonen i ny fane eller vindu >>Using parametric set constraints for locating errors in CLP programs
2002 (engelsk)Inngår i: Theory and Practice of Logic Programming, ISSN 1471-0684, E-ISSN 1475-3081, Vol. 2, nr 4-5, s. 549-610Artikkel i tidsskrift (Fagfellevurdert) Published
Abstract [en]

This paper introduces a framework of parametric descriptive directional types for Constraint Logic Programming (CLP). It proposes a method for locating type errors in CLP programs, and presents a prototype debugging tool. The main technique used is checking correctness of programs w.r.t. type specifications. The approach is based on a generalization of known methods for proving the correctness of logic programs to the case of parametric specifications. Set constraint techniques are used for formulating and checking verification conditions for (parametric) polymorphic type specifications. The specifications are expressed in a parametric extension of the formalism of term grammars. The soundness of the method is proved, and the prototype debugging tool supporting the proposed approach is illustrated on examples. The paper is a substantial extension of the previous work by the same authors concerning monomorphic directional types.

Emneord
Constraint logic programming, Debugging, Descriptive types, Parametric types, Program correctness, Set constraints, Term grammars
HSV kategori
Identifikatorer
urn:nbn:se:liu:diva-46959 (URN)10.1017/S1471068402001473 (DOI)
Tilgjengelig fra: 2009-10-11 Laget: 2009-10-11 Sist oppdatert: 2017-12-13
4. Improving goal directed bottom-up evaluation of logic programs
Åpne denne publikasjonen i ny fane eller vindu >>Improving goal directed bottom-up evaluation of logic programs
(engelsk)Manuskript (preprint) (Annet vitenskapelig)
Abstract [en]

This paper introduces a new strategy for goal directed bottom-up evaluation of logic programs. The strategy is based on a combination of two known techniques: dividing a program into strongly connected components (SCC) and Induced Magic-sets.

In our approach no magic transformation is needed (as in Induced Magic-sets). We introduce a notion of a call-success dependency graph that constructed directly from the original program. Its SCCs are used to optimize a fixpoint computation (i.e. they coincide with SCCs of a corresponding magic program). The new graph contains substantially fewer edges than standard dependency graph of a magic program, and thus its SCCs are computed faster. We also show how to incorporate SCC-based optimization into the Unduced Magic-sets technique. This is achived by modifying the basic Induced Magic method, so that the fixpoints are computed locally for every SCC.

The impact of our method is illustrated by experimental results.

Emneord
magic-sets, bottom-up evaluation
HSV kategori
Identifikatorer
urn:nbn:se:liu:diva-87997 (URN)
Tilgjengelig fra: 2013-01-28 Laget: 2013-01-28 Sist oppdatert: 2013-01-28
5. The TELL diagnosis tool
Åpne denne publikasjonen i ny fane eller vindu >>The TELL diagnosis tool
(engelsk)Manuskript (preprint) (Annet vitenskapelig)
Abstract [en]

No abstract available.

HSV kategori
Identifikatorer
urn:nbn:se:liu:diva-87999 (URN)
Tilgjengelig fra: 2013-01-28 Laget: 2013-01-28 Sist oppdatert: 2013-01-28

Open Access i DiVA

Fulltekst mangler i DiVA

Person

Pietrzak, Pawel

Søk i DiVA

Av forfatter/redaktør
Pietrzak, Pawel
Av organisasjonen

Søk utenfor DiVA

GoogleGoogle Scholar

isbn
urn-nbn

Altmetric

isbn
urn-nbn
Totalt: 174 treff
RefereraExporteraLink to record
Permanent link

Direct link
Referera
Referensformat
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • oxford
  • Annet format
Fler format
Språk
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Annet språk
Fler språk
Utmatningsformat
  • html
  • text
  • asciidoc
  • rtf