An approach to solving non-linear real constraints for symbolic execution

被引:1
|
作者
Amiri-Chimeh, Saeed [1 ]
Haghighi, Hassan [1 ]
机构
[1] Shahid Beheshti Univ, GC, Fac Comp Sci & Engn, Tehran, Iran
关键词
Constraint solving; Decision procedure; Non-linear arithmetic; Symbolic execution; Software testing; Test data generation;
D O I
10.1016/j.jss.2019.07.045
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Constraint solvers are well-known tools for solving many real-world problems such as theorem proving and real-time scheduling. One of the domains that strongly relies on constraint solvers is the technique of symbolic execution for automatic test data generation. Many researchers have tried to alleviate the shortcomings of the available constraint solvers to improve their applications in symbolic execution for test data generation. Despite many recent improvements, constraint solvers are still unable to efficiently deal with certain types of constraints. In particular, constraints that include non-linear real arithmetic are among the most challenging ones. In this paper, we propose a new approach to solving non-linear real constraints for symbolic execution. This approach emphasizes transforming constraints into functions with specific properties, which are named Satisfaction Functions. A satisfaction function is generated in a way that by maximizing it, values that satisfy the corresponding constraint are obtained. We compared the performance of our technique with three constraint solvers that were known to be able to solve non-linear real constraints. The comparison was made regarding the speed and correctness criteria. The results showed that our technique was comparable with other methods regarding the speed criterion and outperformed these methods regarding the correctness criterion. (C) 2019 Elsevier Inc. All rights reserved.
引用
收藏
页数:15
相关论文
共 50 条