Synthesizing regular expressions from examples for introductory automata assignments

Mina Lee, Sunbeom So, Hakjoo Oh

    Research output: Chapter in Book/Report/Conference proceedingConference contribution

    41 Citations (Scopus)

    Abstract

    We present a method for synthesizing regular expressions for introductory automata assignments. Given a set of positive and negative examples, the method automatically synthesizes the simplest possible regular expression that accepts all the positive examples while rejecting all the negative examples. The key novelty is the search-based synthesis algorithm that leverages ideas from over-And under-Approximations to effectively prune out a large search space. We have implemented our technique in a tool and evaluated it with nontrivial benchmark problems that students often struggle with. The results show that our system can synthesize desired regular expressions in 6.7 seconds on the average, so that it can be interactively used by students to enhance their understanding of regular expressions.

    Original languageEnglish
    Title of host publicationGPCE 2016 - Proceedings of the 2016 ACM SIGPLAN International Conference on Generative Programming
    Subtitle of host publicationConcepts and Experiences, co-located with SPLASH 2016
    EditorsIna Schaefer, Bernd Fischer
    PublisherAssociation for Computing Machinery, Inc
    Pages70-80
    Number of pages11
    ISBN (Electronic)9781450344463
    DOIs
    Publication statusPublished - 2016 Oct 20
    Event15th ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences, GPCE 2016 - Amsterdam, Netherlands
    Duration: 2016 Oct 312016 Nov 1

    Publication series

    NameGPCE 2016 - Proceedings of the 2016 ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences, co-located with SPLASH 2016

    Conference

    Conference15th ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences, GPCE 2016
    Country/TerritoryNetherlands
    CityAmsterdam
    Period16/10/3116/11/1

    Keywords

    • Program synthesis
    • Programming
    • Regular expression

    ASJC Scopus subject areas

    • Computer Science Applications
    • Information Systems
    • Software

    Fingerprint

    Dive into the research topics of 'Synthesizing regular expressions from examples for introductory automata assignments'. Together they form a unique fingerprint.

    Cite this