Nopol: Automatic Repair of Conditional Statement Bugs in Java Programs
We propose Nopol, an approach to automatic repair of buggy conditional statements (i.e., if-then-else statements). This approach takes a buggy program as well as a test suite as input and generates a patch with a conditional expression as output. The test suite is required to contain passing test ca...
Gespeichert in:
| Veröffentlicht in: | IEEE transactions on software engineering Jg. 43; H. 1; S. 34 - 55 |
|---|---|
| Hauptverfasser: | , , , , , , , |
| Format: | Journal Article |
| Sprache: | Englisch |
| Veröffentlicht: |
New York
IEEE
01.01.2017
IEEE Computer Society Institute of Electrical and Electronics Engineers |
| Schlagworte: | |
| ISSN: | 0098-5589, 1939-3520 |
| Online-Zugang: | Volltext |
| Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
| Abstract | We propose Nopol, an approach to automatic repair of buggy conditional statements (i.e., if-then-else statements). This approach takes a buggy program as well as a test suite as input and generates a patch with a conditional expression as output. The test suite is required to contain passing test cases to model the expected behavior of the program and at least one failing test case that reveals the bug to be repaired. The process of Nopol consists of three major phases. First, Nopol employs angelic fix localization to identify expected values of a condition during the test execution. Second, runtime trace collection is used to collect variables and their actual values, including primitive data types and objected-oriented features (e.g., nullness checks), to serve as building blocks for patch generation. Third, Nopol encodes these collected data into an instance of a Satisfiability Modulo Theory (SMT) problem; then a feasible solution to the SMT instance is translated back into a code patch. We evaluate Nopol on 22 real-world bugs (16 bugs with buggy if conditions and six bugs with missing preconditions) on two large open-source projects, namely Apache Commons Math and Apache Commons Lang. Empirical analysis on these bugs shows that our approach can effectively fix bugs with buggy if conditions and missing preconditions. We illustrate the capabilities and limitations of Nopol using case studies of real bug fixes. |
|---|---|
| AbstractList | We propose Nopol, an approach to automatic repair of buggy conditional statements (i.e., if-then-else statements). This approach takes a buggy program as well as a test suite as input and generates a patch with a conditional expression as output. The test suite is required to contain passing test cases to model the expected behavior of the program and at least one failing test case that reveals the bug to be repaired. The process of Nopol consists of three major phases. First, Nopol employs angelic fix localization to identify expected values of a condition during the test execution. Second, runtime trace collection is used to collect variables and their actual values, including primitive data types and objected-oriented features (e.g., nullness checks), to serve as building blocks for patch generation. Third, Nopol encodes these collected data into an instance of a Satisfiability Modulo Theory (SMT) problem; then a feasible solution to the SMT instance is translated back into a code patch. We evaluate Nopol on 22 real-world bugs (16 bugs with buggy if conditions and six bugs with missing preconditions) on two large open-source projects, namely Apache Commons Math and Apache Commons Lang. Empirical analysis on these bugs shows that our approach can effectively fix bugs with buggy if conditions and missing preconditions. We illustrate the capabilities and limitations of Nopol using case studies of real bug fixes. We propose NOPOL, an approach to automatic repair of buggy conditional statements (i.e., if-then-else statements). This approach takes a buggy program as well as a test suite as input and generates a patch with a conditional expression as output. The test suite is required to contain passing test cases to model the expected behavior of the program and at least one failing test case that reveals the bug to be repaired. The process of NOPOL consists of three major phases. First, NOPOL employs angelic fix localization to identify expected values of a condition during the test execution. Second, runtime trace collection is used to collect variables and their actual values, including primitive data types and objected-oriented features (e.g., nullness checks), to serve as building blocks for patch generation. Third, NOPOL encodes these collected data into an instance of a Satisfiability Modulo Theory (SMT) problem; then a feasible solution to the SMT instance is translated back into a code patch. We evaluate NOPOL on 22 real-world bugs (16 bugs with buggy IF conditions and 6 bugs with missing preconditions) on two large open-source projects, namely Apache Commons Math and Apache Commons Lang. Empirical analysis on these bugs shows that our approach can effectively fix bugs with buggy IF conditions and missing preconditions. We illustrate the capabilities and limitations of NOPOL using case studies of real bug fixes. |
| Author | Jifeng Xuan DeMarco, Favio Durieux, Thomas Martinez, Matias Lamelas Marcote, Sebastian Clement, Maxime Monperrus, Martin Le Berre, Daniel |
| Author_xml | – sequence: 1 surname: Jifeng Xuan fullname: Jifeng Xuan email: jxuan@whu.edu.cn organization: State Key Lab. of Software Eng., Wuhan Univ., Wuhan, China – sequence: 2 givenname: Matias surname: Martinez fullname: Martinez, Matias email: matias.sebastian.martinez@usi.ch organization: Fac. of Inf., Univ. of Lugano, Lugano, Switzerland – sequence: 3 givenname: Favio surname: DeMarco fullname: DeMarco, Favio email: faviod@gmail.com organization: Univ. of Buenos Aires, Buenos Aires, Argentina – sequence: 4 givenname: Maxime surname: Clement fullname: Clement, Maxime email: maxime.clement@etudiant.univ-lille1.fr organization: Dept. of Comput. Sci., Univ. of Lille, Lille, France – sequence: 5 givenname: Sebastian surname: Lamelas Marcote fullname: Lamelas Marcote, Sebastian email: srlm@gmx.com organization: Univ. of Buenos Aires, Buenos Aires, Argentina – sequence: 6 givenname: Thomas surname: Durieux fullname: Durieux, Thomas email: thomas.durieux@inria.fr organization: Dept. of Comput. Sci., Univ. of Lille, Lille, France – sequence: 7 givenname: Daniel surname: Le Berre fullname: Le Berre, Daniel email: leberre@cril.fr organization: Univ. of Artois, Lens, France – sequence: 8 givenname: Martin surname: Monperrus fullname: Monperrus, Martin email: martin.monperrus@univ-lille1.fr organization: INRIA, Univ. of Lille, Lille, France |
| BackLink | https://hal.science/hal-01285008$$DView record in HAL |
| BookMark | eNp9kE1LAzEQQIMoWKt3wUvAk4etk-zmy1strVWKih_nkN1ma2S7qUla8N-7pcWDB08D4b0M807QYetbi9A5gQEhoK7fXscDCoQPKOMgCTlAPaJyleWMwiHqASiZMSbVMTqJ8RMAmBCshyaPfuWbGzxcJ780yVX4xa6MC9jXeOTbuUvOt6bBr8kku7RtwrfrRcSuxQ9mY_Bz8ItglvEUHdWmifZsP_vofTJ-G02z2dPd_Wg4y6qCqJTNeUWpkTVjvFaUVqWaE2NJLUqmuKxKKzidM0EJYWXJhGGdAEWpqK3zXIHN--hq9--HafQquKUJ39obp6fDmd6-AaGSAcgN7djLHbsK_mttY9Kffh26Y6KmRBQFVUqq_ygimQQhgBUdBTuqCj7GYOvf5QT0tr_u-uttf73v3yn8j1K5LmKXMwXjmv_Ei53orLW_e0TBc-CQ_wC455FQ |
| CODEN | IESEDJ |
| CitedBy_id | crossref_primary_10_1016_j_infsof_2022_107027 crossref_primary_10_1109_ACCESS_2019_2901951 crossref_primary_10_1109_ACCESS_2019_2948366 crossref_primary_10_1016_j_cola_2025_101348 crossref_primary_10_1007_s10664_018_9619_4 crossref_primary_10_1145_3676958 crossref_primary_10_1186_s13638_023_02242_7 crossref_primary_10_1109_TSE_2021_3067156 crossref_primary_10_1145_3764584 crossref_primary_10_1145_3649850 crossref_primary_10_1007_s10664_017_9552_y crossref_primary_10_1145_3708519 crossref_primary_10_1109_TSE_2022_3209590 crossref_primary_10_1016_j_jss_2018_03_046 crossref_primary_10_3390_sym12091563 crossref_primary_10_1145_3688834 crossref_primary_10_1145_3720510 crossref_primary_10_1016_j_jss_2023_111918 crossref_primary_10_3390_app13148519 crossref_primary_10_1145_3744900 crossref_primary_10_1016_j_eswa_2020_114503 crossref_primary_10_1002_smr_2624 crossref_primary_10_1109_TSE_2018_2884955 crossref_primary_10_1145_3576043 crossref_primary_10_1016_j_jss_2024_112152 crossref_primary_10_1016_j_infsof_2018_11_009 crossref_primary_10_1145_3696450 crossref_primary_10_1002_smr_2586 crossref_primary_10_1016_j_eswa_2023_121689 crossref_primary_10_1007_s12204_022_2514_6 crossref_primary_10_1145_3360004 crossref_primary_10_1016_j_jss_2020_110817 crossref_primary_10_1002_smr_2181 crossref_primary_10_1007_s10515_025_00512_w crossref_primary_10_1109_TSE_2020_2998785 crossref_primary_10_1109_TSE_2024_3497798 crossref_primary_10_1109_TSE_2021_3071750 crossref_primary_10_1007_s10664_021_10003_7 crossref_primary_10_1109_ACCESS_2018_2872669 crossref_primary_10_3390_sym12122102 crossref_primary_10_3390_app14188550 crossref_primary_10_1145_3402450 crossref_primary_10_3233_JIFS_234037 crossref_primary_10_1007_s10664_017_9577_2 crossref_primary_10_1145_3511096 crossref_primary_10_1145_3705306 crossref_primary_10_1016_j_cola_2019_100927 crossref_primary_10_1109_TSE_2017_2755013 crossref_primary_10_1145_3505247 crossref_primary_10_1016_j_jss_2020_110769 crossref_primary_10_3390_app15073632 crossref_primary_10_1007_s11219_025_09709_4 crossref_primary_10_1051_wujns_2023286493 crossref_primary_10_1109_TSE_2019_2911283 crossref_primary_10_1016_j_jss_2019_110398 crossref_primary_10_1145_3718739 crossref_primary_10_3390_app122010414 crossref_primary_10_1109_ACCESS_2018_2875122 crossref_primary_10_1145_3561382 crossref_primary_10_1109_TSE_2023_3269899 crossref_primary_10_1145_3660828 crossref_primary_10_1007_s11432_015_0582_8 crossref_primary_10_1007_s00236_023_00438_4 crossref_primary_10_1007_s10664_021_10087_1 crossref_primary_10_1109_ACCESS_2022_3164780 crossref_primary_10_1145_3340544 crossref_primary_10_1145_3418461 crossref_primary_10_1109_TSE_2024_3368208 crossref_primary_10_1145_3548684 crossref_primary_10_1109_TSE_2021_3125203 crossref_primary_10_1145_3702972 crossref_primary_10_1145_3702971 crossref_primary_10_1145_3631974 crossref_primary_10_1109_TSE_2019_2944914 crossref_primary_10_1145_3241980 crossref_primary_10_1109_TSE_2022_3164662 crossref_primary_10_1145_3597617 crossref_primary_10_1109_TSE_2019_2948158 crossref_primary_10_1109_TSE_2024_3354969 crossref_primary_10_1007_s11432_023_4127_5 crossref_primary_10_1109_TSE_2020_2987862 crossref_primary_10_1016_j_jss_2018_11_004 crossref_primary_10_1145_3715004 crossref_primary_10_1016_j_jss_2025_112528 crossref_primary_10_1109_TR_2018_2873427 crossref_primary_10_1145_3290369 crossref_primary_10_1109_TCAD_2023_3341750 crossref_primary_10_1007_s10664_023_10415_7 crossref_primary_10_1109_ACCESS_2025_3541336 crossref_primary_10_1145_3579637 crossref_primary_10_1109_ACCESS_2022_3145983 crossref_primary_10_1007_s10664_021_10100_7 crossref_primary_10_1007_s10515_023_00398_6 crossref_primary_10_1016_j_jss_2022_111263 crossref_primary_10_1007_s11704_020_9263_1 crossref_primary_10_1007_s11432_016_0089_7 crossref_primary_10_1109_MCI_2017_2670460 crossref_primary_10_1016_j_scico_2025_103313 crossref_primary_10_1145_3349589 crossref_primary_10_3390_sym14081751 crossref_primary_10_4018_IJESMA_2019040103 crossref_primary_10_1007_s10515_022_00364_8 crossref_primary_10_1016_j_infsof_2016_04_016 crossref_primary_10_1007_s10664_019_09780_z crossref_primary_10_1016_j_ijcip_2022_100527 crossref_primary_10_1016_j_jss_2019_01_069 crossref_primary_10_1109_TSE_2025_3594673 crossref_primary_10_1145_3579640 crossref_primary_10_1109_ACCESS_2019_2934975 crossref_primary_10_3390_e27030294 crossref_primary_10_1002_smr_2173 crossref_primary_10_1016_j_jss_2022_111452 crossref_primary_10_1145_3672450 crossref_primary_10_1016_j_jss_2020_110825 crossref_primary_10_1016_j_scico_2024_103105 crossref_primary_10_1007_s10664_024_10503_2 crossref_primary_10_1109_TSE_2018_2874648 crossref_primary_10_1007_s10664_021_09989_x crossref_primary_10_1109_TSE_2022_3153522 crossref_primary_10_1109_TSE_2023_3255177 crossref_primary_10_1145_3641846 crossref_primary_10_1145_3487570 crossref_primary_10_1016_j_eswa_2024_124877 crossref_primary_10_1016_j_infsof_2022_106865 crossref_primary_10_1109_TSE_2021_3124323 crossref_primary_10_1016_j_jss_2019_06_076 crossref_primary_10_1145_3637229 crossref_primary_10_1109_TSE_2020_2970009 crossref_primary_10_1007_s11432_022_3803_9 crossref_primary_10_1016_j_procs_2019_12_042 crossref_primary_10_1109_TDSC_2019_2913862 crossref_primary_10_1016_j_jss_2025_112590 crossref_primary_10_1145_3715718 crossref_primary_10_3390_e25060888 crossref_primary_10_1002_smr_70001 crossref_primary_10_1109_TSE_2022_3177713 crossref_primary_10_1145_3714463 crossref_primary_10_1016_j_engappai_2024_109291 |
| Cites_doi | 10.1109/ICSE.2013.6606623 10.1145/1390630.1390652 10.1109/ICSE.2015.63 10.1007/s10664-013-9282-8 10.1007/978-3-642-20398-5_36 10.1145/581396.581397 10.1109/TSE.2011.104 10.1109/ICSE.2012.6227211 10.1016/j.infsof.2016.04.016 10.1145/2635868.2635873 10.1145/1993498.1993506 10.1145/1134285.1134324 10.1109/TSE.2014.2312918 10.1109/ASE.2009.15 10.1145/2610384.2628055 10.1145/2786805.2786811 10.1016/j.infsof.2012.08.006 10.1109/TSE.2015.2454513 10.1109/ICSE.2013.6606626 10.1145/2000791.2000795 10.1109/ASE.2013.6693094 10.1145/2652484 10.1007/s10664-008-9077-5 10.1109/ICSE.2013.6606624 10.1145/2568225.2568324 10.1145/2593735.2593740 10.1145/1882291.1882327 10.1145/1806799.1806833 10.1145/2786805.2786825 10.1109/ICSM.2013.29 10.1109/TSE.1976.233837 10.1145/2635868.2635906 10.1145/2338965.2336775 10.1145/2635868.2635898 10.1109/ICST.2010.66 10.1145/2591062.2591114 10.1109/ICSME.2014.41 10.1145/2483760.2483767 10.1145/1629575.1629585 10.1145/2351676.2351752 10.1145/2491509.2491513 10.1145/1985793.1985811 10.1109/TAIC.PART.2007.13 10.1145/2568225.2568254 |
| ContentType | Journal Article |
| Copyright | Copyright IEEE Computer Society Jan 1, 2017 Copyright IEEE Computer Society 2017 Distributed under a Creative Commons Attribution 4.0 International License |
| Copyright_xml | – notice: Copyright IEEE Computer Society Jan 1, 2017 – notice: Copyright IEEE Computer Society 2017 – notice: Distributed under a Creative Commons Attribution 4.0 International License |
| DBID | 97E RIA RIE AAYXX CITATION JQ2 K9. 1XC VOOES |
| DOI | 10.1109/TSE.2016.2560811 |
| DatabaseName | IEEE All-Society Periodicals Package (ASPP) 2005–Present IEEE All-Society Periodicals Package (ASPP) 1998–Present IEEE Electronic Library (IEL) CrossRef ProQuest Computer Science Collection ProQuest Health & Medical Complete (Alumni) Hyper Article en Ligne (HAL) Hyper Article en Ligne (HAL) (Open Access) |
| DatabaseTitle | CrossRef ProQuest Health & Medical Complete (Alumni) ProQuest Computer Science Collection |
| DatabaseTitleList | ProQuest Health & Medical Complete (Alumni) ProQuest Health & Medical Complete (Alumni) |
| Database_xml | – sequence: 1 dbid: RIE name: IEEE Electronic Library (IEL) url: https://ieeexplore.ieee.org/ sourceTypes: Publisher |
| DeliveryMethod | fulltext_linktorsrc |
| Discipline | Computer Science |
| EISSN | 1939-3520 |
| EndPage | 55 |
| ExternalDocumentID | oai:HAL:hal-01285008v2 4300384021 10_1109_TSE_2016_2560811 7463060 |
| Genre | orig-research Feature |
| GrantInformation_xml | – fundername: CNRS delegation program funderid: 10.13039/501100004794 – fundername: INRIA postdoctoral research fellowship – fundername: INRIA Internship program – fundername: National Natural Science Foundation of China grantid: 61502345 – fundername: Young Talent Development Program of the China Computer Federation |
| GroupedDBID | --Z -DZ -~X .DC 0R~ 29I 4.4 5GY 6IK 85S 8R4 8R5 97E AAJGR AARMG AASAJ AAWTH ABAZT ABPPZ ABQJQ ABVLG ACGFO ACGOD ACIWK ACNCT AENEX AGQYO AHBIQ AKJIK AKQYR ALMA_UNASSIGNED_HOLDINGS ASUFR ATWAV BEFXN BFFAM BGNUA BKEBE BKOMP BPEOZ CS3 DU5 EBS EDO EJD HZ~ I-F IEDLZ IFIPE IPLJI JAVBF LAI M43 MS~ O9- OCL P2P Q2X RIA RIE RNS RXW S10 TAE TN5 TWZ UHB UPT WH7 YZZ AAYXX CITATION JQ2 K9. .4S 1XC 3EH 5VS 7WY 7X7 88E 88I 8FE 8FG 8FI 8FJ 8FL 8G5 9M8 ABFSI ABJCF ABUWG ADBBV AETIX AFFHD AFKRA AGSQL AI. AIBXA ALLEH ARAPS ARCSS AZQEC BENPR BEZIV BGLVJ BPHCQ BVXVI CCPQU DWQXO E.L FRNLG FYUFA GNUQQ GROUPED_ABI_INFORM_RESEARCH GUQSH HCIFZ HMCUK H~9 IBMZZ ICLAB IFJZH ITG ITH K60 K6V K6~ K7- L6V M0C M1P M1Q M2O M2P M7S OHT P62 PHGZM PHGZT PJZUB PPXIY PQBIZ PQBZA PQGLB PQQKQ PROAC PSQYO PTHSS RNI RZB UKHRP UQL VH1 VOOES XOL YYP ZCG |
| ID | FETCH-LOGICAL-c419t-d6c22a8f556f922cb9d1ae1f7b5968cbe762d572115bb57a5d6c04b92ef3390e3 |
| IEDL.DBID | RIE |
| ISICitedReferencesCount | 285 |
| ISICitedReferencesURI | http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000393780300003&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| ISSN | 0098-5589 |
| IngestDate | Tue Oct 28 06:40:48 EDT 2025 Fri Oct 03 03:31:30 EDT 2025 Fri Oct 03 03:20:17 EDT 2025 Tue Nov 18 22:27:42 EST 2025 Sat Nov 29 03:10:23 EST 2025 Wed Aug 27 02:47:43 EDT 2025 |
| IsDoiOpenAccess | true |
| IsOpenAccess | true |
| IsPeerReviewed | true |
| IsScholarly | true |
| Issue | 1 |
| Language | English |
| License | https://ieeexplore.ieee.org/Xplorehelp/downloads/license-information/IEEE.html Distributed under a Creative Commons Attribution 4.0 International License: http://creativecommons.org/licenses/by/4.0 |
| LinkModel | DirectLink |
| MergedId | FETCHMERGED-LOGICAL-c419t-d6c22a8f556f922cb9d1ae1f7b5968cbe762d572115bb57a5d6c04b92ef3390e3 |
| Notes | SourceType-Scholarly Journals-1 ObjectType-Feature-1 content type line 14 ObjectType-Article-1 ObjectType-Feature-2 |
| ORCID | 0000-0002-2968-3496 0000-0003-3221-9923 0000-0002-2945-866X 0000-0003-3505-3383 |
| OpenAccessLink | https://hal.science/hal-01285008 |
| PQID | 1858077054 |
| PQPubID | 21418 |
| PageCount | 22 |
| ParticipantIDs | proquest_journals_2174429989 crossref_primary_10_1109_TSE_2016_2560811 proquest_journals_1858077054 ieee_primary_7463060 crossref_citationtrail_10_1109_TSE_2016_2560811 hal_primary_oai_HAL_hal_01285008v2 |
| PublicationCentury | 2000 |
| PublicationDate | 2017-Jan.-1 2017-1-1 20170101 2017 |
| PublicationDateYYYYMMDD | 2017-01-01 |
| PublicationDate_xml | – month: 01 year: 2017 text: 2017-Jan.-1 day: 01 |
| PublicationDecade | 2010 |
| PublicationPlace | New York |
| PublicationPlace_xml | – name: New York |
| PublicationTitle | IEEE transactions on software engineering |
| PublicationTitleAbbrev | TSE |
| PublicationYear | 2017 |
| Publisher | IEEE IEEE Computer Society Institute of Electrical and Electronics Engineers |
| Publisher_xml | – name: IEEE – name: IEEE Computer Society – name: Institute of Electrical and Electronics Engineers |
| References | ref56 ref12 ref14 ref53 ref52 ref55 ref11 moura (ref9) 0 martinez (ref54) 2015 ref10 ref17 ref16 qi (ref13) 0 ref19 ref18 jobstmann (ref15) 0 ref50 ref46 ref45 ref48 ref47 ref42 ref41 ref43 ref49 ref8 ref7 ref4 lamelas marcote (ref21) 2015 ref3 ref6 ref5 ref40 (ref27) 0 ref35 ref34 ref37 ref36 ref31 ref32 pawlak (ref30) 2015 ref2 ref1 ref39 ref38 (ref33) 0 ke (ref44) 0 falleri (ref26) 0 (ref28) 0 ref24 ref23 ref25 ref20 ref22 ref29 zhong (ref51) 0 |
| References_xml | – start-page: 295 year: 0 ident: ref44 article-title: Repairing programs with semantic code search publication-title: Proc 30th IEEE/ACM Int Conf Automated Softw Eng – start-page: 313 year: 0 ident: ref26 article-title: Fine-grained and accurate source code differencing publication-title: Proc 29th ACM/IEEE Int Conf Automated Softw Eng – ident: ref5 doi: 10.1109/ICSE.2013.6606623 – year: 0 ident: ref33 – ident: ref17 doi: 10.1145/1390630.1390652 – ident: ref35 doi: 10.1109/ICSE.2015.63 – ident: ref7 doi: 10.1007/s10664-013-9282-8 – ident: ref32 doi: 10.1007/978-3-642-20398-5_36 – ident: ref37 doi: 10.1145/581396.581397 – start-page: 913 year: 0 ident: ref51 article-title: An empirical study on fixing real bugs publication-title: Proc 37th Int Conf Softw Eng – ident: ref1 doi: 10.1109/TSE.2011.104 – ident: ref41 doi: 10.1109/ICSE.2012.6227211 – ident: ref34 doi: 10.1016/j.infsof.2016.04.016 – start-page: 226 year: 0 ident: ref15 article-title: Program repair as a game publication-title: Proc Comput Aided Verification – ident: ref48 doi: 10.1145/2635868.2635873 – ident: ref20 doi: 10.1145/1993498.1993506 – ident: ref18 doi: 10.1145/1134285.1134324 – ident: ref2 doi: 10.1109/TSE.2014.2312918 – ident: ref45 doi: 10.1109/ASE.2009.15 – ident: ref53 doi: 10.1145/2610384.2628055 – ident: ref14 doi: 10.1145/2786805.2786811 – year: 2015 ident: ref30 article-title: Spoon: A library for implementing analyses and transformations of Java source code publication-title: Softw Practice Exp – ident: ref39 doi: 10.1016/j.infsof.2012.08.006 – ident: ref52 doi: 10.1109/TSE.2015.2454513 – start-page: 24 year: 0 ident: ref13 article-title: An analysis of patch plausibility and correctness for generate-and-validate patch generation systems publication-title: Proc Int'l Symp on Softw Testing and Analysis – ident: ref6 doi: 10.1109/ICSE.2013.6606626 – ident: ref38 doi: 10.1145/2000791.2000795 – ident: ref42 doi: 10.1109/ASE.2013.6693094 – ident: ref36 doi: 10.1145/2652484 – ident: ref16 doi: 10.1007/s10664-008-9077-5 – ident: ref4 doi: 10.1109/ICSE.2013.6606624 – ident: ref11 doi: 10.1145/2568225.2568324 – ident: ref10 doi: 10.1145/2593735.2593740 – ident: ref46 doi: 10.1145/1882291.1882327 – ident: ref8 doi: 10.1145/1806799.1806833 – ident: ref40 doi: 10.1145/2786805.2786825 – ident: ref43 doi: 10.1109/ICSM.2013.29 – ident: ref29 doi: 10.1109/TSE.1976.233837 – ident: ref56 doi: 10.1145/2635868.2635906 – ident: ref47 doi: 10.1145/2338965.2336775 – ident: ref49 doi: 10.1145/2635868.2635898 – ident: ref25 doi: 10.1109/ICST.2010.66 – ident: ref50 doi: 10.1145/2591062.2591114 – year: 2015 ident: ref21 article-title: Automatic repair of infinite loops – ident: ref24 doi: 10.1109/ICSME.2014.41 – ident: ref23 doi: 10.1145/2483760.2483767 – ident: ref3 doi: 10.1145/1629575.1629585 – start-page: 337 year: 0 ident: ref9 article-title: Z3: An efficient SMT solver publication-title: Proc Theory Practice Softw 14th Int Conf Tools Algorithms Construction Anal Syst – year: 2015 ident: ref54 article-title: Automatic repair of real bugs: An experience report on the defects4J dataset – ident: ref31 doi: 10.1145/2351676.2351752 – year: 0 ident: ref28 – ident: ref55 doi: 10.1145/2491509.2491513 – year: 0 ident: ref27 – ident: ref19 doi: 10.1145/1985793.1985811 – ident: ref22 doi: 10.1109/TAIC.PART.2007.13 – ident: ref12 doi: 10.1145/2568225.2568254 |
| SSID | ssj0005775 ssib053395008 |
| Score | 2.6474788 |
| Snippet | We propose Nopol, an approach to automatic repair of buggy conditional statements (i.e., if-then-else statements). This approach takes a buggy program as well... We propose NOPOL, an approach to automatic repair of buggy conditional statements (i.e., if-then-else statements). This approach takes a buggy program as well... |
| SourceID | hal proquest crossref ieee |
| SourceType | Open Access Repository Aggregation Database Enrichment Source Index Database Publisher |
| StartPage | 34 |
| SubjectTerms | Automatic repair Computer bugs Computer Science Debugging Empirical analysis Encoding Expected values fault localization Indexes Java Maintenance engineering Model testing Object oriented programming Open source software patch generation Repair Runtime SMT Software Engineering Software packages Software testing Studies |
| Title | Nopol: Automatic Repair of Conditional Statement Bugs in Java Programs |
| URI | https://ieeexplore.ieee.org/document/7463060 https://www.proquest.com/docview/1858077054 https://www.proquest.com/docview/2174429989 https://hal.science/hal-01285008 |
| Volume | 43 |
| WOSCitedRecordID | wos000393780300003&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| hasFullText | 1 |
| inHoldings | 1 |
| isFullTextHit | |
| isPrint | |
| journalDatabaseRights | – providerCode: PRVIEE databaseName: IEEE Electronic Library (IEL) customDbUrl: eissn: 1939-3520 dateEnd: 99991231 omitProxy: false ssIdentifier: ssj0005775 issn: 0098-5589 databaseCode: RIE dateStart: 19750101 isFulltext: true titleUrlDefault: https://ieeexplore.ieee.org/ providerName: IEEE |
| link | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV3dS8MwEA86fPDF-YnTKUF8EaxL0yZpfJviEJEhqLC3kqSJDmSVff395rJ2Ig7Bt9Imbcivuftd7nKH0HnsMpI6bSJGjIpSWfBIK8EjapTx_FxYZ1QoNiH6_WwwkE9r6HJ5FsZaG4LP7BVcBl9-UZoZbJV1RMo9w_UG-roQYnFW6zucQwhW58dkLJO1S5LIzsvzHcRw8StQ71kc_1BB6-8QABkqq_wSx0HH9Jr_G9022qq4JO4uwN9Ba3a0i5p1nQZcLds91OtDJYRr3J1Ny5ChFXvarYZjXDp8W4LPOuwH4kA84SP4ZvY2wcMRflBzhZ8WIVyTffTau3u5vY-q-gmRSWM5jQpuKFWZY4w7SanRsoiVjZ3QTPLMaOsFYcHABGRaM6GY70BSLal1SSKJTQ5QY1SO7CHCngVQSww1nOuUeymXCE2SwiaFs9obRS3Uqac0N1Vycahx8ZEHI4PI3IOQAwh5BUILXSx7fC4Sa_zR9syjtGwGGbHvu4853AP9yjyPmfsh7AEmy1YVHC3UrkHNq-U5yT1JyYgQnq6ufAxmGujpTB6tfukx2qSg3sNWTBs1puOZPUEbZj4dTsan4cf8Aoz_3hA |
| linkProvider | IEEE |
| linkToHtml | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV3fb9MwED6NgQQv22BMdIxhIV6QyOo4sR3zVqZVBUo1iSLtzbIde6uEGtRffz8-NylCTEi8RYmdWP7iu-985zuAt3moaBmsyzh1JitVLTJrpMiYMy7yc-mDM6nYhJxMqpsbdb0H73dnYbz3KfjMX-Bl8uXXjVvjVllfliIy3GigP-RlyfLtaa3fAR1S8i5DJueV6pySVPWn364wiktcoIKv8vwPJfTgDkMgU22VvwRy0jLDw_8b3xEctGySDLbwP4U9P38Gh12lBtIu3GMYTrAWwgcyWK-alKOVROJtZgvSBHLZoNc67QiSRD3xI-Tj-nZJZnPy2WwMud4GcS2fw_fh1fRylLUVFDJX5mqV1cIxZqrAuQiKMWdVnRufB2m5EpWzPorCmqMRyK3l0vDYgZZWMR-KQlFfnMD-vJn7F0AiD2CeOuaEsKWIcq6Qlha1L-rgbTSLetDvplS7Nr04Vrn4oZOZQZWOIGgEQbcg9ODdrsfPbWqNf7R9E1HaNcOc2KPBWOM91LA8MplNHMIxYrJr1cLRg7MOVN0u0KWONKWiUkbCeu9jNNRQU1fq9P6XvobHo-nXsR5_mnx5CU8YKvu0MXMG-6vF2r-CR26zmi0X5-kn_QVDwOFX |
| openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=Nopol%3A+Automatic+Repair+of+Conditional+Statement+Bugs+in+Java+Programs&rft.jtitle=IEEE+transactions+on+software+engineering&rft.au=Xuan%2C+Jifeng&rft.au=Martinez%2C+Matias&rft.au=Demarco%2C+Favio&rft.au=Cl%C3%A9ment%2C+Maxime&rft.date=2017&rft.pub=Institute+of+Electrical+and+Electronics+Engineers&rft.issn=0098-5589&rft.volume=43&rft.issue=1&rft.spage=34&rft.epage=55&rft_id=info:doi/10.1109%2FTSE.2016.2560811&rft.externalDBID=HAS_PDF_LINK&rft.externalDocID=oai%3AHAL%3Ahal-01285008v2 |
| thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=0098-5589&client=summon |
| thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=0098-5589&client=summon |
| thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=0098-5589&client=summon |