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

Equivalence Checking of Static Affine Programs Using Widening to Handle Recurrences

Abstract: Designers often apply manual or semi-automatic loop and data transformations on array and loop intensive programs to improve performance. The transformations should preserve the functionality, however, and this paper presents an automatic method to proof equivalence for the class of static affine programs. The equivalence checking is performed on a dependence graph abstraction and uses a new approach based on widening to handle recurrences. In contrast to transitive closure based approaches, this widening appr… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

1
61
0

Year Published

2010
2010
2022
2022

Publication Types

Select...
5
2
2

Relationship

1
8

Authors

Journals

citations
Cited by 41 publications
(62 citation statements)
references
References 13 publications
1
61
0
Order By: Relevance
“…Verdoolaege et al [45] propose an algorithm to prove the equivalence of integer affine programs where loops are described as recurrences. The algorithm does not compute the closed-form solution for the recurrences, but instead uses widening to reach a fixed point.…”
Section: Related Workmentioning
confidence: 99%
“…Verdoolaege et al [45] propose an algorithm to prove the equivalence of integer affine programs where loops are described as recurrences. The algorithm does not compute the closed-form solution for the recurrences, but instead uses widening to reach a fixed point.…”
Section: Related Workmentioning
confidence: 99%
“…In earlier work [11], we presented an automated approach to regression verification based on invariant generation using Horn clauses. Many other approaches [2,16,31,32,39] exist to regression verification for imperative programming languages.…”
Section: Related Workmentioning
confidence: 99%
“…First, equivalence checking/testing [22], [23] can be used to check if a hardware (resp. software) product complies with the hardware (resp.…”
Section: A Applicationsmentioning
confidence: 99%