×

字符串表达式的精确分析。 (英语) Zbl 1067.68541号

Cousot,Radhia(编辑),静态分析。2003年6月11日至13日,第十届国际研讨会,SAS 2003,美国加利福尼亚州圣地亚哥。诉讼程序。柏林:施普林格出版社(ISBN 3-540-40325-6/pbk)。莱克特。票据计算。科学。2694, 1-18 (2003).
摘要:我们对Java程序进行静态分析,以回答一个简单的问题:哪些值可能作为字符串表达式的结果出现?每个表达式的答案都由一种保证包含所有可能值的正则语言汇总。我们介绍了这种分析的几个应用程序,包括静态检查动态生成的表达式的语法,例如SQL查询。我们的分析从类文件构建流图,并为每个字符串表达式生成一个无上下文语法,其中包含一个非终结符。然后,通过之前用于语音识别的算法的变体,将此语法的语言扩展为常规语言。生成的正则语言集合被紧凑地表示为一种特殊的多级自动机,可以从中提取单个答案。如果检测到程序错误,将自动生成无效字符串的示例。我们提供了广泛的基准测试,证明分析是有效的,并产生了有用的精度结果。
关于整个系列,请参见[Zbl 1031.68001号].

MSC公司:

68号30 软件工程的数学方面(规范、验证、度量、需求等)
第68页第19页 其他编程范式(面向对象、顺序、并发、自动等)
2012年第68季度 语法和重写系统
65年第68季度 形式语言和自动机
PDF格式BibTeX公司 XML格式引用
全文: 链接