2010
DOI: 10.1007/978-3-642-11957-6_24
|View full text |Cite
|
Sign up to set email alerts
|

A Grammar-Based Approach to Invertible Programs

Abstract: Abstract. Program inversion has many applications such as in the implementation of serialization/deserialization and in providing support for redo/undo, and has been studied by many researchers. However, little attention has been paid to two problems: how to characterize programs that are easy or hard to invert and whether, for each class of programs, efficient inverses can be obtained. In this paper, we propose an inversion framework that we call grammar-based inversion, where a program is associated with an … Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
31
0

Year Published

2010
2010
2023
2023

Publication Types

Select...
5
2
1

Relationship

5
3

Authors

Journals

citations
Cited by 18 publications
(31 citation statements)
references
References 28 publications
0
31
0
Order By: Relevance
“…Since now an accumulative function can be viewed as non-accumulative context-generating functions, we hope that we can extend usual range-analysis-based program-inversion methods [16,19,24] to those functions, and hope that a program-inversion method developed in this way would be a good alternative to the existing approaches [15,26,27]. Another future direction is to develop an inverse computation method that can handle more kinds of copying.…”
Section: Resultsmentioning
confidence: 99%
See 2 more Smart Citations
“…Since now an accumulative function can be viewed as non-accumulative context-generating functions, we hope that we can extend usual range-analysis-based program-inversion methods [16,19,24] to those functions, and hope that a program-inversion method developed in this way would be a good alternative to the existing approaches [15,26,27]. Another future direction is to develop an inverse computation method that can handle more kinds of copying.…”
Section: Resultsmentioning
confidence: 99%
“…Leftinverse computation [15-17, 19, 27] focuses on injective functions and tries to make an efficient inverse computation based on injectivity analysis, but it can only handle provably-injective functions. Right-inverse computation [1,24,32] including ours can handle more functions than left-inverse computation does-it works even for non-injective functions-but the yielded inverse-computation process is usually much slower than that of left-inverse computation. Another important difference is that left-inverse computation is compositional; if we have effective left-inverse computation methods for f and g, we have an effective left-inverse computation method for f • g. On the other hand, right-inverse computation may not be compositional; even if we have right-inverse computation methods for f and g, then right-inverse computation may happen to be undecidable for f • g. Left-inverse computation is suitable for applications in which efficiency is the biggest concern, such as in serialization/deserialization.…”
Section: Related Work 61 Inverse Computationmentioning
confidence: 99%
See 1 more Smart Citation
“…Matsuda et al [63] discussed right-inverse computation using grammar parsing. They construct a grammar from a program, so that the productions of the grammar abstract the evaluation of the program.…”
Section: Invertible Programmingmentioning
confidence: 99%
“…To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. PEPM'12, January [23][24]2012, Philadelphia, PA, USA. Copyright c 2012 ACM 978-1-4503-1118-2/12/01.…”
Section: Introductionmentioning
confidence: 99%