Programming-by-Example with Nested Examples

被引:0
|
作者
Katz, Tomer [1 ]
Peleg, Hila [1 ]
机构
[1] Technion, Haifa, Israel
关键词
D O I
10.1109/VL-HCC57772.2023.00053
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
As program synthesizers become integrated into IDEs, programmers combine synthesized code and manuallywritten code within the same project. When documenting the provenance of synthesized code, this can result in a larger segment of example-specified code encompassing a smaller one. In this state, the programmer can decide to re-run the synthesizer, either to refactor the code or to automatically correct manuallywritten code. State of the art Programming by Example synthesizers cannot handle this nested specification: synthesis will only consider the outer-most block, discarding any code or additional specification inside. Moreover, the outer-most scope contains less specifications, but describes more functionality, which can easily result in the synthesizer either timing out or overfitting. To address this information loss we propose a technique that can be used to re-synthesize code from previously documented nested specifications, preserving the information that the internal specifications contain. We then evaluated our implementation on 12 benchmarks based on SyGus competition benchmarks, and show that the technique allows the user to re-synthesize larger code segments while adding fewer examples compared to just using the specification from the outer-most block.
引用
收藏
页码:280 / 282
页数:3
相关论文
共 50 条
  • [1] FROM PROGRAMMING-BY-EXAMPLE TO PROVING-BY-EXAMPLE
    HAGIYA, M
    LECTURE NOTES IN COMPUTER SCIENCE, 1991, 526 : 387 - 419
  • [2] Foofah: A Programming-By-Example System for Synthesizing Data Transformation Programs
    Jin, Zhongjun
    Anderson, Michael R.
    Cafarella, Michael
    Jagadish, H., V
    SIGMOD'17: PROCEEDINGS OF THE 2017 ACM INTERNATIONAL CONFERENCE ON MANAGEMENT OF DATA, 2017, : 1607 - 1610
  • [3] Data-centric disambiguation for data transformation with programming-by-example
    Narita, Minori
    Maudet, Nolwenn
    Lu, Yi
    Igarashi, Takeo
    IUI '21 - 26TH INTERNATIONAL CONFERENCE ON INTELLIGENT USER INTERFACES, 2021, : 454 - 463
  • [4] Programming-by-Example for Data Transformation to Improve Machine Learning Performance
    Narita, Minori
    Igarashi, Takeo
    PROCEEDINGS OF THE 24TH INTERNATIONAL CONFERENCE ON INTELLIGENT USER INTERFACES: COMPANION (IUI 2019), 2019, : 113 - 114
  • [5] Automated Migration of Hierarchical Data to Relational Tables using Programming-by-Example
    Yaghmazadeh, Navid
    Wang, Xinyu
    Dillig, Isil
    PROCEEDINGS OF THE VLDB ENDOWMENT, 2018, 11 (05): : 580 - 593
  • [6] Object management in a programming-by-example, parametric, computer-aided-design system
    Loukipoudis, EN
    VISUAL COMPUTER, 1996, 12 (06): : 296 - 306
  • [7] Wrex: A Unified Programming-by-Example Interaction for Synthesizing Readable Code for Data Scientists
    Drosos, Ian
    Barik, Titus
    Guo, Philip J.
    DeLine, Robert
    Gulwani, Sumit
    PROCEEDINGS OF THE 2020 CHI CONFERENCE ON HUMAN FACTORS IN COMPUTING SYSTEMS (CHI'20), 2020,
  • [8] Programming by Examples
    Gulwani, Sumit
    DEPENDABLE SOFTWARE SYSTEMS ENGINEERING, 2016, 45 : 137 - 158
  • [9] PROGRAMMING BY EXAMPLES
    BAUER, MA
    ARTIFICIAL INTELLIGENCE, 1979, 12 (01) : 1 - 21
  • [10] Set the right example when teaching programming: Test Informed Learning with Examples (TILE)
    Doorn, Niels
    Vos, Tanja
    Marin, Beatriz
    Barendsen, Erik
    2023 IEEE CONFERENCE ON SOFTWARE TESTING, VERIFICATION AND VALIDATION, ICST, 2023, : 269 - 280