Abstract
The tree width of a graph G measures how close G is to being a tree or a series-parallel graph. Many well-known problems that are otherwise NP-complete can be solved efficiently if the underlying graph structure is restricted to one of fixed tree width.
In this paper we prove that the tree width of goto-free Ada programs without labeled loops is ≤6. In addition we show that both the use of gotos and the use of labeled loops can result in unbounded tree widths of Ada programs.
The latter result suggested to study the tree width of actual Ada programs. We implemented a tool capable of calculating tight upper bounds of the tree width of a given Ada program efficiently. The results show that most existing Ada code has small tree width and thus allows efficient automatic static analysis for many well-known problems and – as a by-product – most Ada programs are very close to series-parallel programs.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Arnborg, S., Corneil, D.G., Proskurowski, A.: Complexity of finding embeddings in a k-tree. SIAM J. Alg. Disc. Meth. 8(2), 277–284 (1987)
Arnborg, S., Lagergren, J., Seese, D.: Easy problems for treedecomposable graphs. Journal of Algorithms 12, 308–340 (1991)
Aho, A.V., Sethi, R., Ullman, J.D.: Compilers, Principles, Techniques and Tools. Series in Computer Science. Addison-Wesley, Reading (1988)
Bodlaender, H.L.: A tourist guide through treewidth. Acta Cybernetica 11, 1–21 (1993)
Gellerich, W., Kosiol, M., Ploedereder, E.: Where does GOTO go to? In: Strohmeier, A. (ed.) Ada-Europe 1996. LNCS, vol. 1088, pp. 385–395. Springer, Heidelberg (1996)
Gustedt, J., Mæhle, O.A., Telle, J.A.: The treewidth of Java programs. In: Mount, D.M., Stein, C. (eds.) ALENEX 2002. LNCS, vol. 2409, pp. 42–51. Springer, Heidelberg (2002)
Kannan, S., Proebsting, T.A.: Register allocation in structured programs. Journal of Algorithms 29, 223–237 (1998)
Puschner, P., Koza, C.: Calculating the maximum execution time of real-time programs. The Journal of Real-Time Systems 1, 159–176 (1989)
Robertson, N., Seymour, P.D.: Graph minors. I. Excluding a forest. J. Comb. Theory Series B 35, 39–61 (1983)
Thorup, M.: All structured programs have small tree width and good register allocation. Information and Computation 142(2), 159–181 (1998)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2004 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Burgstaller, B., Blieberger, J., Scholz, B. (2004). On the Tree Width of Ada Programs. In: Llamosí, A., Strohmeier, A. (eds) Reliable Software Technologies - Ada-Europe 2004. Ada-Europe 2004. Lecture Notes in Computer Science, vol 3063. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-24841-5_6
Download citation
DOI: https://doi.org/10.1007/978-3-540-24841-5_6
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-22011-4
Online ISBN: 978-3-540-24841-5
eBook Packages: Springer Book Archive