| G. C. Gannod & H. C. Cheng, "Using Informal and Formal Techniques for Reverse Engineering of C Programs," in Proceedings of the Third Working Conference on Reverse Engineering, 8--10th November, IEEE Computer Spciety, Monteray, California, 1996, 249--258. 27 |
.... is, however, still incomplete and calculations are too lengthy see e.g. the algebra and calculations on selective updating presented in [22] 6 Related Work Most work in the literature refers to formal reverse engineering of algorithmic code, in particular resorting to wp calculi, see e.g. [7, 9]. A clever use of type inference techniques to decompile (that is, reverse engineer) C programs from target machine code is described in [17] Type reconstruction is based on Milner s algorithm and includes the process of data structure reconstruction. As happens in our approach, this provides ....
G.C. Gannod and B.H.C. Cheng. Using informal and formal techniques for the reverse engineering of C programs. Technical report, DCS, Michigan State University, 1996.
....Loop invariants, or the total number of iterations, must be found by the user and the symbolic execution tool then produces the path conditions and functional definition of each execution path. These are analyzed by hand to simplify them and find an abstract description. Finally, AUTOSPEC [5] is a tool being developed to automate the generation of (low level) formal specifications directly from C source code. The tool is based on the definition of the strongest postcondition semantics of each C language construct and the specifications are expressed as Hoare triples, with evaluation ....
G. C. Gannod and B. H. Cheng. Using informal and formal techniques for the reverse engineering of C programs. In Proc. 3rd Working Conference on Reverse Engineering, Monterey, CA, 1996, 1996. 16
....one that is better structured and easier to comprehend [Ben98] In many cases, a large library of transformations is required to capture the many di erent possible code constructions and styles. Examples of program transformation tools include the Maintainer s Assistant [BBY92, WB93] AutoSpec[GC96] Semantic Designs the Design Maintenance System [Bax97] Reasoning Systems Refine[BKM90] which has evolved into the Reasoning5 Code base Management System [Rea99] and Software Migrations FermaT [War99] Similarly to plan recognition tools, program transformation tools are generally con ....
Gerald C. Gannod and Betty H. C. Cheng. Using Informal and Formal Techniques for the Reverse Engineering of C Programs. In Proceedings of the 3rd Working Conference on Reverse Engineering (WCRE), pages 249-258. IEEE CS Press, November 1996.
.... (Cifuentes [1] is a good example) On the other hand, the formal methods community has tended to see reverse engineering as reconstructing invariants and speci cations (e.g. by Hoare or Dijkstra style weakest precondition or strongest postcondition techniques see for example Gannod and Cheng [5]) from legacy code so that it may be further manipulated. It is claimed that a type based approach can be used for gross level structuring automatically (possibly with a GUI driver for major choice resolution) whereas exact formal methods techniques are more limited in the size of acceptable ....
Gannod, G.C. and Cheng, B.H.C. Using Informal and Formal Techniques for the Reverse Engineering of C Programs. Proc. IEEE International Conference on Software Maintenance, 1996.
.... provide many benefits in the forward engineering aspect of software development [16, 17, 27, 31, 43] Although formal methods have being used in reverse engineering, the application of the formal methods is mainly on the formalisation of the recovered design in order to facilitate further analysis [6, 8, 14, 15, 28, 38, 41, 44]. There is little attempt on applying formal methods to specify the recovery specification of design recovery process. Design recovery is a subset of reverse engineering in which the usual aim is to construct high level description of the software system from existing source code [9, 39] This ....
....informal design specifications and to represent the knowledge as executable formal specifications. The formalism, which is based on the framework of algebraic specification, allows a reverse engineer to perform simulations and reasoning when observing the behavior of the system. Gannod and Cheng [15] propose an approach that incorporates the use of semi formal analysis and formal program semantics to reverse engineering C programs. The formal approach is based on the formal semantics of the strongest postcondition predicate transformer, and the partial correctness model of program semantics. ....
Gannod, G.C. and Cheng, H.C. (1996). Using Informal and Formal Techniques for Reverse Engineering of C Programs. Proc. of the 3 rd Working Conference on Reverse Engineering, Monterey, California, Nov 8-10, pp. 249-258.
No context found.
G. C. Gannod & H. C. Cheng, "Using Informal and Formal Techniques for Reverse Engineering of C Programs," in Proceedings of the Third Working Conference on Reverse Engineering, 8--10th November, IEEE Computer Spciety, Monteray, California, 1996, 249--258. 27
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC