2009
DOI: 10.1007/978-3-642-02348-4_3
|View full text |Cite
|
Sign up to set email alerts
|

Proving Termination of Integer Term Rewriting

Abstract: Abstract. When using rewrite techniques for termination analysis of programs, a main problem are pre-defined data types like integers. We extend term rewriting by built-in integers and adapt the dependency pair framework to prove termination of integer term rewriting automatically.

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
49
0

Year Published

2010
2010
2021
2021

Publication Types

Select...
8

Relationship

5
3

Authors

Journals

citations
Cited by 35 publications
(49 citation statements)
references
References 28 publications
0
49
0
Order By: Relevance
“…1, we regard TRSs where the integers and operations like "−", ">", " =" are built in [8] and we represent objects by terms. So essentially, for any class C with n fields we introduce an n-ary function symbol C whose arguments correspond to the fields of C. Hence, the object List(next = null) is represented by the term List(null).…”
Section: Definition 4 (Equality Refinementmentioning
confidence: 99%
See 1 more Smart Citation
“…1, we regard TRSs where the integers and operations like "−", ">", " =" are built in [8] and we represent objects by terms. So essentially, for any class C with n fields we introduce an n-ary function symbol C whose arguments correspond to the fields of C. Hence, the object List(next = null) is represented by the term List(null).…”
Section: Definition 4 (Equality Refinementmentioning
confidence: 99%
“…In this way, we can benefit from the fact that rewrite techniques can automatically generate suitable well-founded orders comparing arbitrary forms of terms. Moreover, by using TRSs with built-in integers [8], our approach is not only powerful for algorithms on user-defined data structures, but also for algorithms on pre-defined data types like integers.…”
Section: Introductionmentioning
confidence: 99%
“…This is also indicated by our experiments when comparing the implementation of our determinacy analysis in AProVE with the determinacy analysis implemented in CiaoPP [27]. 14 We again tested both tools on all 477 logic programs from the TPDB. On definite programs, CiaoPP was clearly more powerful (it proved determinacy for 132 out of 300 programs, whereas AProVE only succeeded for 19 programs).…”
Section: Theorem 28 (Soundness Of Determinacy Criterion)mentioning
confidence: 73%
“…12 However, our implementation currently does not treat built-in integer arithmetic, while [10,11,12,29] handle linear arithmetic constraints. But our approach could be extended by generating TRSs with built-in integers [14] from the evaluation graphs. This was also done in our approaches for termination analysis of Java via term rewriting [7,9].…”
Section: Theorem 27 (Soundness Of Complexity Analysis Ii)mentioning
confidence: 99%
“…From the termination graph, one can generate a TRS with built-in integers [17] that only terminates if the original program terminates. To this end, in [25] we showed how to encode each state of a termination graph as a term and each edge as a rewrite rule.…”
Section: Proving Termination Via Term Rewritingmentioning
confidence: 99%