Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.5555/2819009.2819127acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article

Bixie: finding and understanding inconsistent code

Published: 16 May 2015 Publication History

Abstract

We present Bixie, a tool to detect inconsistencies in Java code. Bixie detects inconsistent code at a higher precision than previous tools and provides novel fault localization techniques to explain why code is inconsistent. We demonstrate the usefulness of Bixie on over one million lines of code, show that it can detect inconsistencies at a low false alarm rate, and fix a number of inconsistencies in popular open-source projects. Watch our Demo at http://youtu.be/QpsoUBJMxhk.

References

[1]
M. Schäf, D. Schwartz-Narbonne, and T. Wies, "Explaining inconsistent code," in FSE. New York, NY, USA: ACM, 2013, pp. 521--531.
[2]
A. Tomb and C. Flanagan, "Detecting inconsistencies via universal reachability analysis," in ISSTA, 2012, pp. 287--297.
[3]
S. Arlt, P. Rümmer, and M. Schäf, "A theory for control-flow graph exploration," in ATVA, ser. LNCS. Springer, 2013, pp. 506--515.
[4]
S. Arlt and M. Schäf, "Joogie: Infeasible code detection for Java," in CAV, ser. LNCS. Springer, 2012, pp. 767--773.
[5]
K. R. M. Leino and P. Rümmer, "A polymorphic intermediate verification language: design and logical encoding," in TACAS, ser. LNCS, vol. 6015. Springer, 2010, pp. 312--327.
[6]
R. Vallée-Rai, L. Hendren, V. Sundaresan, P. Lam, E. Gagnon, and P. Co, "Soot - a Java optimization framework," in CASCON, 1999, pp. 125--135.
[7]
J. Hoenicke, K. R. Leino, A. Podelski, M. Schäf, and T. Wies, "Doomed program points," Formal Methods in System Design, vol. 37, no. 2-3, pp. 171--199, 2010.
[8]
S. Arlt, P. Rümmer, and M. Schäf, "Joogie: from Java through Jimple to Boogie," in SOAP. ACM, 2013.
[9]
P. Rümmer, "A constraint sequent calculus for first-order logic with linear integer arithmetic," in LPAR, ser. LNCS, vol. 5330. Springer, 2008, pp. 274--289.
[10]
M. Jose and R. Majumdar, "Bug-Assist: Assisting fault localization in ANSI-C programs," in CAV, ser. LNCS, vol. 6806. Springer, 2011, pp. 504--509.
[11]
S. Arlt, C. Rubio-González, P. Rümmer, M. Schäf, and N. Shankar, "The gradual verifier," in NASA Formal Methods, ser. LNCS. Springer, 2014, vol. 8430, pp. 313--327.
[12]
V. Murali, N. Sinha, E. Torlak, and S. Chandra, "What gives? a hybrid algorithm for error trace explanation," in VSTTE. Springer, 2014, pp. 270--286.

Cited By

View all
  • (2015)Finding Inconsistencies in Programs with LoopsProceedings of the 20th International Conference on Logic for Programming, Artificial Intelligence, and Reasoning - Volume 945010.1007/978-3-662-48899-7_35(499-514)Online publication date: 24-Nov-2015

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ICSE '15: Proceedings of the 37th International Conference on Software Engineering - Volume 2
May 2015
1058 pages

Sponsors

Publisher

IEEE Press

Publication History

Published: 16 May 2015

Check for updates

Qualifiers

  • Research-article

Conference

ICSE '15
Sponsor:

Acceptance Rates

Overall Acceptance Rate 276 of 1,856 submissions, 15%

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)1
  • Downloads (Last 6 weeks)0
Reflects downloads up to 12 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2015)Finding Inconsistencies in Programs with LoopsProceedings of the 20th International Conference on Logic for Programming, Artificial Intelligence, and Reasoning - Volume 945010.1007/978-3-662-48899-7_35(499-514)Online publication date: 24-Nov-2015

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media