Matches in SemOpenAlex for { <https://semopenalex.org/work/W2072445029> ?p ?o ?g. }
- W2072445029 endingPage "673" @default.
- W2072445029 startingPage "650" @default.
- W2072445029 abstract "The transformation of a recursive program to an iterative equivalent is a fundamental operation in computer science. In the reverse direction, the task of reverse engineering (analysing a given program in order to determine its specification) can be greatly ameliorated if the program can be re-expressed in a suitable recursive form. However, the existing recursion removal transformations, such as the techniques discussed by Knuth [1] and Bird [2], can only be applied in the reverse direction if the source program happens to match the structure produced by a particular recursion removal operation. In this paper we describe a much more powerful recursion removal and introduction operation which describes its source and target in the form of an action system (a collection of labels and calls to labels). A simple, mechanical restructuring operation can be applied to a great many iterative programs, which will put them in a suitable form for recursion introduction. Our transformation generates strictly more iterative versions than the standard methods, including those of Knuth and Bird [1, 2]. With the aid of this theorem we prove a (somewhat counterintuitive) result for programs that contain sequences of two or more recursive calls: under a reasonable commutativity condition, ‘depth-first’ execution is more general than ‘breadth-first’ execution. In ‘depth-first’ execution, the execution of each recursive call is completed, including all sub-calls, before execution of the next call is started. In ‘breadth-first’ execution, each recursive call in the sequence is partially executed but any sub-calls are temporarily postponed. This result means that any breadth-first program can be reimplemented as a corresponding depth-first program, but the converse does not hold. We also treat the case of ‘random-first’ execution, where the execution order is implementation dependent. For the more restricted domain of tree searching we show that a ‘breadth-first’ search is the most general form. We also give two examples of recursion introduction as an aid to formal reverse engineering." @default.
- W2072445029 created "2016-06-24" @default.
- W2072445029 creator A5011804963 @default.
- W2072445029 creator A5076832221 @default.
- W2072445029 date "1999-08-01" @default.
- W2072445029 modified "2023-10-03" @default.
- W2072445029 title "Recursion Removal/Introduction by Formal Transformation: An Aid to Program Development and Program Comprehension" @default.
- W2072445029 cites W1511589634 @default.
- W2072445029 cites W1559314111 @default.
- W2072445029 cites W1575678657 @default.
- W2072445029 cites W1886137962 @default.
- W2072445029 cites W1917981004 @default.
- W2072445029 cites W1970495662 @default.
- W2072445029 cites W1982474533 @default.
- W2072445029 cites W2016211937 @default.
- W2072445029 cites W2016535383 @default.
- W2072445029 cites W2023299380 @default.
- W2072445029 cites W2038280905 @default.
- W2072445029 cites W2041643207 @default.
- W2072445029 cites W2045057107 @default.
- W2072445029 cites W2065302945 @default.
- W2072445029 cites W2068352960 @default.
- W2072445029 cites W2072030990 @default.
- W2072445029 cites W2075188242 @default.
- W2072445029 cites W2093397547 @default.
- W2072445029 cites W2103953153 @default.
- W2072445029 cites W2110846749 @default.
- W2072445029 cites W2115772852 @default.
- W2072445029 cites W2163477915 @default.
- W2072445029 cites W2177002043 @default.
- W2072445029 cites W2205673826 @default.
- W2072445029 cites W300550493 @default.
- W2072445029 cites W644252553 @default.
- W2072445029 doi "https://doi.org/10.1093/comjnl/42.8.650" @default.
- W2072445029 hasPublicationYear "1999" @default.
- W2072445029 type Work @default.
- W2072445029 sameAs 2072445029 @default.
- W2072445029 citedByCount "11" @default.
- W2072445029 countsByYear W20724450292012 @default.
- W2072445029 countsByYear W20724450292014 @default.
- W2072445029 countsByYear W20724450292018 @default.
- W2072445029 countsByYear W20724450292021 @default.
- W2072445029 crossrefType "journal-article" @default.
- W2072445029 hasAuthorship W2072445029A5011804963 @default.
- W2072445029 hasAuthorship W2072445029A5076832221 @default.
- W2072445029 hasBestOaLocation W20724450292 @default.
- W2072445029 hasConcept C104317684 @default.
- W2072445029 hasConcept C111472728 @default.
- W2072445029 hasConcept C11413529 @default.
- W2072445029 hasConcept C124416688 @default.
- W2072445029 hasConcept C138885662 @default.
- W2072445029 hasConcept C168773036 @default.
- W2072445029 hasConcept C169590947 @default.
- W2072445029 hasConcept C185592680 @default.
- W2072445029 hasConcept C199360897 @default.
- W2072445029 hasConcept C204241405 @default.
- W2072445029 hasConcept C207850805 @default.
- W2072445029 hasConcept C2778112365 @default.
- W2072445029 hasConcept C2778361913 @default.
- W2072445029 hasConcept C2780586882 @default.
- W2072445029 hasConcept C41008148 @default.
- W2072445029 hasConcept C54355233 @default.
- W2072445029 hasConcept C55493867 @default.
- W2072445029 hasConcept C80444323 @default.
- W2072445029 hasConcept C86803240 @default.
- W2072445029 hasConceptScore W2072445029C104317684 @default.
- W2072445029 hasConceptScore W2072445029C111472728 @default.
- W2072445029 hasConceptScore W2072445029C11413529 @default.
- W2072445029 hasConceptScore W2072445029C124416688 @default.
- W2072445029 hasConceptScore W2072445029C138885662 @default.
- W2072445029 hasConceptScore W2072445029C168773036 @default.
- W2072445029 hasConceptScore W2072445029C169590947 @default.
- W2072445029 hasConceptScore W2072445029C185592680 @default.
- W2072445029 hasConceptScore W2072445029C199360897 @default.
- W2072445029 hasConceptScore W2072445029C204241405 @default.
- W2072445029 hasConceptScore W2072445029C207850805 @default.
- W2072445029 hasConceptScore W2072445029C2778112365 @default.
- W2072445029 hasConceptScore W2072445029C2778361913 @default.
- W2072445029 hasConceptScore W2072445029C2780586882 @default.
- W2072445029 hasConceptScore W2072445029C41008148 @default.
- W2072445029 hasConceptScore W2072445029C54355233 @default.
- W2072445029 hasConceptScore W2072445029C55493867 @default.
- W2072445029 hasConceptScore W2072445029C80444323 @default.
- W2072445029 hasConceptScore W2072445029C86803240 @default.
- W2072445029 hasIssue "8" @default.
- W2072445029 hasLocation W20724450291 @default.
- W2072445029 hasLocation W20724450292 @default.
- W2072445029 hasOpenAccess W2072445029 @default.
- W2072445029 hasPrimaryLocation W20724450291 @default.
- W2072445029 hasRelatedWork W1507167368 @default.
- W2072445029 hasRelatedWork W1606566200 @default.
- W2072445029 hasRelatedWork W1608659702 @default.
- W2072445029 hasRelatedWork W1814870153 @default.
- W2072445029 hasRelatedWork W2048706733 @default.
- W2072445029 hasRelatedWork W2072445029 @default.
- W2072445029 hasRelatedWork W2091813295 @default.
- W2072445029 hasRelatedWork W2247596074 @default.
- W2072445029 hasRelatedWork W2467097043 @default.