{"title":"惰性符号求值及其路径约束解","authors":"Mengxiang Lin, Yin-li Chen, Kai Yu, Guo-shi Wu","doi":"10.1109/IWAST.2009.5069044","DOIUrl":null,"url":null,"abstract":"Some program structures in modern programming languages can not be reasoned about symbolically. Lazy symbolic evaluation as proposed in this paper introduces a lazy evaluation strategy into traditional symbolic execution in order to address the issue. Constraint variables in path constraints generated by lazy symbolic evaluation may be input or intermediate variables. To eliminate the latter, concrete values for related input variables are first obtained by constraints solving or searching processes. Then, the given path is executed again using concrete and symbolic values. The procedure is repeated until the resulting path constraint is on input variables alone. We have implemented a prototype tool and performed several experiments. Preliminary results show the feasibility of our approach.","PeriodicalId":401585,"journal":{"name":"2009 ICSE Workshop on Automation of Software Test","volume":"133 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2009-05-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"2","resultStr":"{\"title\":\"Lazy symbolic evaluation and its path constraints solution\",\"authors\":\"Mengxiang Lin, Yin-li Chen, Kai Yu, Guo-shi Wu\",\"doi\":\"10.1109/IWAST.2009.5069044\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Some program structures in modern programming languages can not be reasoned about symbolically. Lazy symbolic evaluation as proposed in this paper introduces a lazy evaluation strategy into traditional symbolic execution in order to address the issue. Constraint variables in path constraints generated by lazy symbolic evaluation may be input or intermediate variables. To eliminate the latter, concrete values for related input variables are first obtained by constraints solving or searching processes. Then, the given path is executed again using concrete and symbolic values. The procedure is repeated until the resulting path constraint is on input variables alone. We have implemented a prototype tool and performed several experiments. Preliminary results show the feasibility of our approach.\",\"PeriodicalId\":401585,\"journal\":{\"name\":\"2009 ICSE Workshop on Automation of Software Test\",\"volume\":\"133 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2009-05-18\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"2\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2009 ICSE Workshop on Automation of Software Test\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/IWAST.2009.5069044\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2009 ICSE Workshop on Automation of Software Test","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/IWAST.2009.5069044","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Lazy symbolic evaluation and its path constraints solution
Some program structures in modern programming languages can not be reasoned about symbolically. Lazy symbolic evaluation as proposed in this paper introduces a lazy evaluation strategy into traditional symbolic execution in order to address the issue. Constraint variables in path constraints generated by lazy symbolic evaluation may be input or intermediate variables. To eliminate the latter, concrete values for related input variables are first obtained by constraints solving or searching processes. Then, the given path is executed again using concrete and symbolic values. The procedure is repeated until the resulting path constraint is on input variables alone. We have implemented a prototype tool and performed several experiments. Preliminary results show the feasibility of our approach.