PropR: property-based automatic program repair.

Saved in:
Bibliographic Details
Title: PropR: property-based automatic program repair.
Authors: Gissurarson, Matthías Páll1 pallm@chalmers.se, Applis, Leonhard2 L.H.Applis@Tudelft.nl, Panichella, Annibale2 A.Panichella@Tudelft.nl, van Deursen, Arie2 Arie.vanDeursen@Tudelft.nl, Sands, David1 dave@chalmers.se
Source: ICSE: International Conference on Software Engineering. 2022, p1768-1780. 13p.
Subjects: Automatic programming (Computer science), Quality control, Localization theory, Software engineering, Computer software
Abstract: Automatic program repair (APR) regularly faces the challenge of overfitting patches --- patches that pass the test suite, but do not actually address the problems when evaluated manually. Currently, overfit detection requires manual inspection or an oracle making quality control of APR an expensive task. With this work, we want to introduce properties in addition to unit tests for APR to address the problem of overfitting. To that end, we design and implement PropR, a program repair tool for Haskell that leverages both property-based testing (via QuickCheck) and the rich type system and synthesis offered by the Haskell compiler. We compare the repair-ratio, time-to-first-patch and overfitting-ratio when using unit tests, property-based tests, and their combination. Our results show that properties lead to quicker results and have a lower overfit ratio than unit tests. The created overfit patches provide valuable insight into the underlying problems of the program to repair (e.g., in terms of fault localization or test quality). We consider this step towards fitter, or at least insightful, patches a critical contribution to bring APR into developer workflows. [ABSTRACT FROM AUTHOR]
Copyright of ICSE: International Conference on Software Engineering is the property of Association for Computing Machinery and its content may not be copied or emailed to multiple sites without the copyright holder's express written permission. Additionally, content may not be used with any artificial intelligence tools or machine learning technologies. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)
Database: Engineering Source
Full text is not displayed to guests.
FullText Links:
  – Type: pdflink
Text:
  Availability: 1
Header DbId: egs
DbLabel: Engineering Source
An: 185195876
AccessLevel: 6
PubType: Conference
PubTypeId: conference
PreciseRelevancyScore: 0
IllustrationInfo
Items – Name: Title
  Label: Title
  Group: Ti
  Data: PropR: property-based automatic program repair.
– Name: Author
  Label: Authors
  Group: Au
  Data: <searchLink fieldCode="AR" term="%22Gissurarson%2C+Matthías+Páll%22">Gissurarson, Matthías Páll</searchLink><relatesTo>1</relatesTo><i> pallm@chalmers.se</i><br /><searchLink fieldCode="AR" term="%22Applis%2C+Leonhard%22">Applis, Leonhard</searchLink><relatesTo>2</relatesTo><i> L.H.Applis@Tudelft.nl</i><br /><searchLink fieldCode="AR" term="%22Panichella%2C+Annibale%22">Panichella, Annibale</searchLink><relatesTo>2</relatesTo><i> A.Panichella@Tudelft.nl</i><br /><searchLink fieldCode="AR" term="%22van+Deursen%2C+Arie%22">van Deursen, Arie</searchLink><relatesTo>2</relatesTo><i> Arie.vanDeursen@Tudelft.nl</i><br /><searchLink fieldCode="AR" term="%22Sands%2C+David%22">Sands, David</searchLink><relatesTo>1</relatesTo><i> dave@chalmers.se</i>
– Name: TitleSource
  Label: Source
  Group: Src
  Data: <searchLink fieldCode="JN" term="%22ICSE%3A+International+Conference+on+Software+Engineering%22">ICSE: International Conference on Software Engineering</searchLink>. 2022, p1768-1780. 13p.
– Name: Subject
  Label: Subjects
  Group: Su
  Data: <searchLink fieldCode="DE" term="%22Automatic+programming+%28Computer+science%29%22">Automatic programming (Computer science)</searchLink><br /><searchLink fieldCode="DE" term="%22Quality+control%22">Quality control</searchLink><br /><searchLink fieldCode="DE" term="%22Localization+theory%22">Localization theory</searchLink><br /><searchLink fieldCode="DE" term="%22Software+engineering%22">Software engineering</searchLink><br /><searchLink fieldCode="DE" term="%22Computer+software%22">Computer software</searchLink>
– Name: Abstract
  Label: Abstract
  Group: Ab
  Data: Automatic program repair (APR) regularly faces the challenge of overfitting patches --- patches that pass the test suite, but do not actually address the problems when evaluated manually. Currently, overfit detection requires manual inspection or an oracle making quality control of APR an expensive task. With this work, we want to introduce properties in addition to unit tests for APR to address the problem of overfitting. To that end, we design and implement PropR, a program repair tool for Haskell that leverages both property-based testing (via QuickCheck) and the rich type system and synthesis offered by the Haskell compiler. We compare the repair-ratio, time-to-first-patch and overfitting-ratio when using unit tests, property-based tests, and their combination. Our results show that properties lead to quicker results and have a lower overfit ratio than unit tests. The created overfit patches provide valuable insight into the underlying problems of the program to repair (e.g., in terms of fault localization or test quality). We consider this step towards fitter, or at least insightful, patches a critical contribution to bring APR into developer workflows. [ABSTRACT FROM AUTHOR]
– Name: AbstractSuppliedCopyright
  Label:
  Group: Ab
  Data: <i>Copyright of ICSE: International Conference on Software Engineering is the property of Association for Computing Machinery and its content may not be copied or emailed to multiple sites without the copyright holder's express written permission. Additionally, content may not be used with any artificial intelligence tools or machine learning technologies. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract.</i> (Copyright applies to all Abstracts.)
PLink https://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=egs&AN=185195876
RecordInfo BibRecord:
  BibEntity:
    Identifiers:
      – Type: doi
        Value: 10.1145/3510003.3510620
    Languages:
      – Code: eng
        Text: English
    PhysicalDescription:
      Pagination:
        PageCount: 13
        StartPage: 1768
    Subjects:
      – SubjectFull: Automatic programming (Computer science)
        Type: general
      – SubjectFull: Quality control
        Type: general
      – SubjectFull: Localization theory
        Type: general
      – SubjectFull: Software engineering
        Type: general
      – SubjectFull: Computer software
        Type: general
    Titles:
      – TitleFull: PropR: property-based automatic program repair.
        Type: main
  BibRelationships:
    HasContributorRelationships:
      – PersonEntity:
          Name:
            NameFull: Gissurarson, Matthías Páll
      – PersonEntity:
          Name:
            NameFull: Applis, Leonhard
      – PersonEntity:
          Name:
            NameFull: Panichella, Annibale
      – PersonEntity:
          Name:
            NameFull: van Deursen, Arie
      – PersonEntity:
          Name:
            NameFull: Sands, David
    IsPartOfRelationships:
      – BibEntity:
          Dates:
            – D: 01
              M: 05
              Text: 2022
              Type: published
              Y: 2022
          Titles:
            – TitleFull: ICSE: International Conference on Software Engineering
              Type: main
ResultId 1