2005
DOI: 10.1007/s10817-005-6534-3
|View full text |Cite
|
Sign up to set email alerts
|

Verifying Termination and Reduction Properties about Higher-Order Logic Programs

Abstract: Abstract. We describe two checkers for verifying termination and reduction properties about higher-order logic programs. The reduction checker verifies that the result of a program execution is structurally smaller (or equal) than the inputs to the program. The termination checker guarantees that the inputs of the recursive calls are structurally smaller than the inputs of the original call taking into account reduction properties. At the heart of both checkers lies an inference system to reason about structur… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
14
0

Year Published

2007
2007
2010
2010

Publication Types

Select...
6
1

Relationship

3
4

Authors

Journals

citations
Cited by 16 publications
(14 citation statements)
references
References 35 publications
0
14
0
Order By: Relevance
“…We formulated an algorithm [1] to ensure that all cases are covered, and plan to implement it over the next few months. Verifying termination will follow ideas in Twelf [13,9] for checking that arguments in recursive calls are indeed smaller.…”
Section: Methodsmentioning
confidence: 99%
“…We formulated an algorithm [1] to ensure that all cases are covered, and plan to implement it over the next few months. Verifying termination will follow ideas in Twelf [13,9] for checking that arguments in recursive calls are indeed smaller.…”
Section: Methodsmentioning
confidence: 99%
“…Intuitively, pattern matching on a contextual object of type A[Ψ ] is exhaustive if we cover all constructors of type A plus the cases described by parameter variables, which cover the possibility that we have used an assumption from the context Ψ . For termination checking, we believe the ideas from [Pie05] can be easily adapted.…”
Section: Criteria For Comparisonmentioning
confidence: 99%
“…Determining whether a logic program defines a recursive relation is an orthogonal issue, but see, e.g. the termination analysis approach taken in the Twelf system [38]. Nevertheless, we do not believe completeness is necessary for our approach to be useful, even for systems with undecidable predicates such as first-order sequent calculi or undecidable typing or subtyping relations.…”
Section: It Is Not the Case Thatmentioning
confidence: 99%
“…Analyses for checking modes, coverage, termination, and other program properties can be used to verify program properties; this technique plays an important role in the Twelf system [37,38]. This approach is also possible (and seems likely to be helpful) in αProlog, but such analyses have not yet been adapted to the setting of nominal logic programming.…”
Section: Related Workmentioning
confidence: 99%