Browsing by Author "Chin, Wei-Ngan"
Now showing 1 - 3 of 3
- Results Per Page
- Sort Options
Item A Fast Algorithm to Compute Heap Memory Bounds of Java Card Applets(2008) Pham, Hung T.; Truong, Anh-Hoang; Truong, Ninh-Thuan; Chin, Wei-NganIn this paper, we present an approach to find upper bounds of heap space for Java Card applets. Our method first transforms an input bytecode stream into a control flow graph (CFG), and then collapses cycles of the CFG to produce a directed acyclic graph (DAG). Based on the DAG, we propose a linear-time algorithm to solve the problem of finding the single-source largest path in it. We also have implemented a prototype tool, tested it on several sample applications, and then compared the bounds found by our tool with the actual heap bounds of the programs. The experiment shows that our tool returns good estimation of heap bounds, runs fast, and has a small memory footprint.Item FixBag: A Fixpoint Calculator for Quantified Bag Constraints(2011) Pham, Hung T.; Trinh, Minh-Thai; Truong, Anh-Hoang; Chin, Wei-NganAbstract interpretation techniques have played a major role in advancing the state-of-the-art in program analysis. Traditionally, stand- alone tools for these techniques have been developed for the numerical domains which may be sucient for lower levels of program correctness. To analyze a wider range of programs, we have developed a tool to compute symbolic xpoints for quantied bag domain. This domain is useful for programs that deal with collections of values. Our tool is able to derive both loop invariants and method pre/post conditions via fixpoint analysis of recursive bag constraints. To support better precision, we have allowed disjunctive formulae to be inferred, where appropriate. As a stand-alone tool, we have tested it on a range of small but challenging examples with acceptable precision and performance.Item Test Case Generation for Adequacy of Floating-point to Fixed-point Conversion(2010) Pham, Hung T.; Truong, Anh-Hoang; Chin, Wei-Ngan; Aoshima, TakenobuPorting an application written for personal computer to embedded devices requires conversion of floating-point numbers and operations into fixed-point ones. Testing the conversion hence requires the latter be as close as possible to the former. The closeness is orthogonal to code coverage and requires different strategies to generate a test suite that reveals the gap between the two functions. We introduce a new test adequacy criterion and propose several metrics to quantify the closeness of two functions. After that we propose a method to generate a better test suite from a given one for the test adequacy criteria. We also show experimental results on some well-known mathematical functions.