skip to main content
10.1145/277631.277642acmconferencesArticle/Chapter ViewAbstractPublication PagespasteConference Proceedingsconference-collections
Article
Free access

Efficient composite data flow analysis applied to concurrent programs

Published: 01 July 1998 Publication History

Abstract

FLAVERS, a tool for verifying properties of concurrent systems, uses composite data flow analysis to incrementally improve the precision of the results of its verifications. Although FLAVERS is one of the few static analysis techniques for concurrent systems that has the potential to handle large scale systems, it sometimes can still be very expensive to use. In this paper we experimentally compare the cost of two versions of this approach for solving composite data flow analysis problems. The first version, product-based, uses the more straightforward approach, and the second, tuple-based, is built around the idea of reducing analysis space requirements at the expense of analysis time. We demonstrate experimentally, by analyzing properties of actual concurrent programs, that the tuple-based version is comparable in time to the product-based version but for large composite data flow problems it requires several orders of magnitude less space.

References

[1]
R. Bodik, R. Gupta, and M. L. Soffa. Refining data flow information using infeasible paths. In Proceedings of the 6th European Sgfiware Engineering Conflrence and the 5th ACM SIGSOFTSymposium on Foundations of software Engineering, pages 361.--377, September 1991.
[2]
M Dwyer. Data Flow Analysis fbr Verifjiing Correctness Properties of Concurrent Programs. PhD thesis, University of Massachussetts, Amherst, 1995.
[3]
M. Dwyer and L. Clarke. Data flow analysis for verifying properties of concurrent programs. In Proceedings of the Second ACM SIGSOFT Symposium on Foundations of Software Engineering, pages 62-75, December 1994.
[4]
P. Godefroid and P. Wolper. Using partial orders for the efficient verification of deadlock freedom and safety properties. In Proceeding.s of the Third Workhop on Computer Aided Ver@ation, pages 417428, July 1991.
[5]
L. H. Halley and B. K. Rosen. Qualified data flow problems. IEEE Transactions on Software Engineering, SE-7( I ):60-78, January I98 1.
[6]
G. J. Holzmann, P. Godefroid, and D. Pirottin. Coverage preserving reduction strategies for reachability analysis. In Proceedins of 12th International Conjkrence on Protocol Specification. Testing, and Ver- $cation. INWG/IFIP, Orlando, FI., June 1992.
[7]
J. E. Hopcroft and J. D. Ullman. Formal Languages and their Relation to Automata. Addison-Wesley, 1969.
[8]
T. J. Marlowe and B. G. Ryder. Properties of data flow frameworks. Acta Informutica, (28):121-163, 1990.
[9]
S. P. Masticola, T. J. Marlowe, and B. G. Ryder. Lattice frameworks for multisource and bidirectional data flow problems. ACM Transactions on Programming Languages and Sy.stems, 17(5):777- 803, September 1995.
[10]
G. Naumovich, L. A. Clarke, and L. J. Osterweii. Verification of communication protocols using data flow analysis. In Proc. ofrhe Fourth ACMSlGSOFTSymposium on the Foundations of SofhYare Engineering, pages 9%05, Oct. 1996.
[11]
G. Naumovich, L. A. Clarke, and L. J. Osterweil. Comparing implementation strategies for composite data flow analysis problems. Technical Report UM-C&1997-043, University of Massachusetts, Amherst, August 1997.
[12]
K. M. Olender and L. J. Osterweil. Cecil: A Sequencing Constraint Language for Automatic Static Analysis Generation. IEEE Transactions on Software Engineering, 16(3):268-280, March 1990.
[13]
A. Valmari. A stubborn attack on state explosion. In E. M. Clarke and R. Kurshan, editors, Computer-Aided Verification, pages 25-41. American Mathematical Society, Providence RI, 1991. Number 3 in DIMACS Series in Discrete Mathematics and Theoretical Computer Science.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
PASTE '98: Proceedings of the 1998 ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
July 1998
90 pages
ISBN:1581130554
DOI:10.1145/277631
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 July 1998

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Conference

PASTE98

Acceptance Rates

PASTE '98 Paper Acceptance Rate 10 of 28 submissions, 36%;
Overall Acceptance Rate 57 of 159 submissions, 36%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)115
  • Downloads (Last 6 weeks)18
Reflects downloads up to 06 Jan 2025

Other Metrics

Citations

Cited By

View all

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media