{"title":"Symbolic backward simulation of Java bytecode program","authors":"Tetsuya Inafune, S. Miura, T. Taketa, Y. Hiranaka","doi":"10.1145/3177457.3177480","DOIUrl":null,"url":null,"abstract":"We present a new method, symbolic backward simulation, for detecting bugs in Java bytecode programs. In order to find bugs comprehensively, the method determines conditions on the input side by tracing back from the tail of the program while performing reverse execution for each bytecode. Generally, reverse execution is difficult, especially for instructions of two-input-one-output operations and branches. Our method solves the problem symbolically with essentially fewer simulation cases than numerical testing and forward symbolic analysis. We also show simulation results which detected a branch condition error and a real number processing error.","PeriodicalId":297531,"journal":{"name":"Proceedings of the 10th International Conference on Computer Modeling and Simulation","volume":"31 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2018-01-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 10th International Conference on Computer Modeling and Simulation","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3177457.3177480","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 1
Abstract
We present a new method, symbolic backward simulation, for detecting bugs in Java bytecode programs. In order to find bugs comprehensively, the method determines conditions on the input side by tracing back from the tail of the program while performing reverse execution for each bytecode. Generally, reverse execution is difficult, especially for instructions of two-input-one-output operations and branches. Our method solves the problem symbolically with essentially fewer simulation cases than numerical testing and forward symbolic analysis. We also show simulation results which detected a branch condition error and a real number processing error.