Abstract
This paper intends to give an efficient way of implementing abstract interpretations. The idea is to use a good symbolic representation of boolean functions, TDGs, a refinement of Binary Decision Diagrams. A general way of using this representation in abstract interpretation is given, in particular we examine the possibility of encoding higher order functions into TDGs. Moreover, this representation is used to design a widening operator based on the size of the objects represented, so that abstract interpretations will not fail due to insufficient memory. This approach is illustrated on strictness analysis of higher-order functions, showing a great increase of efficiency.
Preview
Unable to display preview. Download preview PDF.
References
C. E. Shannon. A symbolic analysis of relay and switching circuits. Transactions AIEE, 57:305–316. 1938.
P. Cousot & R. Cousot. Static determination of dynamic properties of recursive procedures. IFIP Conference on Formal Description of Programming Concepts, St-Adrews, N. B., Canada, pp. 237–277. 1977.
S. B. Akers. Binary decision diagrams. IEEE Transactions on computers. 1978.
P. Cousot & R. Cousot. Constructive version of Tarki's fixed point theorems. Pacific Journal of Mathematics. 1979.
R. E. Bryant. Graph based algorithms for boolean function manipulation. IEEE Trans. Comput. C-35, pp. 677–691. 1986.
G. L. Burn, C. Hankin & S. Abramsky. Strictness analysis for higher-order functions. Science of computer programming 7, pp. 249–278. 1986.
P. Hudak & J. Young. Higher order strictness analysis in untyped lambda calculus. ACM. 1986.
J. P. Billon. Perfect normal forms for discrete programs. Technical report 87039 BULL. 1987.
J. C. Madre & J. P. Billon. Proving circuit correctness using formal comparison between expected and extracted behavior. Proc. of the 25th DAC. 1988
A. R. Brayton, B. Lin & H. J. Touati. Don't care minimization of multi-level sequential logic network. Proc. of ICCAD'90. 1990.
J. C. Madre, C. Berthet & O. Coudert. New ideas in symbolic manipulation of finite state machines. Proc. of ICCAD'90. 1990.
J. Schwable & K. L. McMillan. Formal verification of the encore gigamax cache. International Symposium on Shared Memory Multiprocessor. 1991.
D. Taubner, E. Enders & T. Filkorn. Generating BDDs for symbolic model checking in ccs. Proc. of CAV'91, pp. 203–213. 1991.
H. J. Touati, H. Savoj & R. K. Brayton. Extracting local don't care for network optimization. Proc. of ICCAD'91. 1991.
R. E. Bryant. Symbolic Boolean Manipulation with Ordered Binary-Decision Diagrams. ACM Computing Surveys, Vol. 24 pp. 293–318. 1992.
P. Cousot & R. Cousot. Abstract interpretation framework. Journal of logic and computation, pp. 511–547. 1992.
Corsini, Musumbu, Rauzy & Le Charlier Efficient Bottom-up Abstract Interpretation of Logic Programs by means of Constraint Solving. PLILP '93. 1993.
C. Ratel. Définition et réalisation d'un outil de vérification formelle de programmes LUSTRE. These de l'université de Grenoble 1, chap 11. 1992.
G. Baraki. Abstract Interpretation of Polymorphic Higher-Order Functions. Computing Science research report of the University of Glasgow. 1993.
A. Ferguson & J. Hughes. Fast Abstract Interpretation Using Sequential Algorithms. Proc. of WSA '93, pp. 45–59. 1993.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1994 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Mauborgne, L. (1994). Abstract interpretation using TDGs. In: Le Charlier, B. (eds) Static Analysis. SAS 1994. Lecture Notes in Computer Science, vol 864. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-58485-4_52
Download citation
DOI: https://doi.org/10.1007/3-540-58485-4_52
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-58485-8
Online ISBN: 978-3-540-49005-0
eBook Packages: Springer Book Archive