Abstract
We show how to combine program slicing and constraint solving in order to obtain better slice accuracy. The method is used in a program analysis tool for the validation of computer-controlled measurement systems. It will be used by the Physikalisch-Technische Bundesanstalt for verification of legally required calibration standards. The paper describes how to generate and simplify path conditions based on program slices. An example shows that the technique can indeed increase slice precision and reveal manipulations of the so-called calibration path.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
H. Agrawal, R. DeMillo, E. Spafford: Dynamic slicing in the presence of unconstrained pointers. Proc. 4th Symposium on Testing, Analysis, and Verification. ACM 1991, pp. 60–73.
F. Benhamou, A. Colmerauer (Ed.): Constraint Logic Programming: Selected Research. MIT Press 1993.
J. Choi, M. Burke, P. Carini: Efficient flow-sensitive interprocedural computation of pointer-induced aliases and side effects. Proc. 20th Principles of Programming Languages, ACM 1993, pp. 232–245.
J. Choi, J. Ferrante: Static slicing in the presence of GOTO statements. ACM TOPLAS 16(1994), pp. 1087–1113.
F. Benhamou, W. Older: Applying Interval Arithmetic to Real, Integer and Bolean Constraints. To appear in Journal of Logic Programming (1995).
D. Denning, P. Denning: Certification of programs for secure information flow. Communications of the ACM 20(7), S. 504–513, Juli 1977.
J. Field, G. Ramalingam, F. Tip: Parametric program slicing. Proc. 21th Symposium on Principles of Programming Languages, ACM 1995, S. 379–392.
S. Horwitz, P. Pfeiffer, T. Reps: Dependence analysis for pointer variables. Proc. SIGPLAN Programming Language Design and Implementation, ACM 1989, pp. 28–40.
S. Horwitz, T. Reps: The use of program dependence graphs in software engineering. Proc. 14th Int. Conference on Software Engineering, IEEE 1992, pp. 392–411.
J. Jaffar, S. Michaylow, P. Stuckey, R. Yap: The CLP(R) language and system. ACM TOPLAS 14(3), pp. 339–395 (Juli 1992).
J. Jaffar, M. Maher: Constraint logic programming: a survey. To appear in Journal of Logic Programming (1995).
W. Landi, B. Ryder: A safe approximation algorithm for interprocedural pointer aliasing. Proc. SIGPLAN Programming Language Design and Implementation, ACM 1992, pp. 93–103.
T. Reps, S. Horwitz, M. Sagiv, G. Rosay: Speeding up Slicing. Proc. 2nd SIGSOFT Foundations of Software Engineering, ACM 1994, pp. 11–20.
G. Smolka, M. Henz, J. Würz: Object-Oriented Concurrent Constraint Programming in Oz. DFKI Research Report 93-16.
F. Tip: A survey of program slicing techniques. Journal of Programming Languages 3 (1995), pp. 121–189.
M. Weiser: Program Slicing. IEEE Transactions on Software Engineering, 10(4), pp. 352–357, Juli 1984.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1996 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Snelting, G. (1996). Combining slicing and constraint solving for validation of measurement software. In: Cousot, R., Schmidt, D.A. (eds) Static Analysis. SAS 1996. Lecture Notes in Computer Science, vol 1145. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-61739-6_51
Download citation
DOI: https://doi.org/10.1007/3-540-61739-6_51
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-61739-6
Online ISBN: 978-3-540-70674-8
eBook Packages: Springer Book Archive