The DOI matches its Crossref record; 44 of the 46 references it cites were found in a registry or an index.
Program synthesis using conflict-driven learning
Open accessAbstract
We propose a new conflict-driven program synthesis technique that is capable of learning from past mistakes. Given a spurious program that violates the desired specification, our synthesis algorithm identifies the root cause of the conflict and learns new lemmas that can prevent similar mistakes in the future. Specifically, we introduce the notion of equivalence modulo conflict and show how this idea can be used to learn useful lemmas that allow the synthesizer to prune large parts of the search space. We have implemented a general-purpose CDCL-style program synthesizer called Neo and evaluate it in two different application domains, namely data wrangling in R and functional programming over lists. Our experiments demonstrate the substantial benefits of conflict-driven learning and show that Neo outperforms two state-of-the-art synthesis tools, Morpheus and Deepcoder, that target these respective domains.
Overview
The claims and statistics of this paper haven’t been checked yet.
Run the check — free, no account needed. It reads the open-access text and checks the sources it cites.
Integrity signals
Registry
Cites
Statistics
Verification
Claims the paper makes
The claims and statistics of this paper haven’t been checked yet.
Run the check — free, no account needed. It reads the open-access text and checks the sources it cites.
Claims other papers make about this one
Each is checked against this paper’s own text: does it say what the citing paper says it does?
The cited source says what the claim attributes to it.
In the citing paper
“Neo inherently requires SMT encoded properties for domain specific functions (i.e. its background knowledge).”
From Learning programs by learning from failures (2021) · cites this paper as Feng et al. 2018
The cited source says what the claim attributes to it.
In the citing paper
“Neo (Feng et al. 2018) synthesises non-recursive programs using SMT encoded properties and a three staged loop.”
From Learning programs by learning from failures (2021) · cites this paper as Feng et al. 2018
The cited source says what the claim attributes to it.
In the citing paper
“Neo cannot synthesise recursive programs, nor is it guaranteed to synthesise optimal (textually minimal) programs.”
From Learning programs by learning from failures (2021) · cites this paper as Feng et al. 2018
The cited source says what the claim attributes to it.
In the citing paper
“As it typically uses over-approximate properties, Neo can fail to detect inconsistency with the examples, in which case no programs get pruned.”
From Learning programs by learning from failures (2021) · cites this paper as Feng et al. 2018
The cited source says what the claim attributes to it.
In the citing paper
“Neo cannot synthesise recursive programs, nor is it guaranteed to synthesise optimal (textually minimal) programs.”
From Learning programs by learning from failures (2021) · cites this paper as Feng et al. 2018
Self-check
Percentages, sums and reported differences re-computed from the paper’s own numbers.
The self-check needs the paper’s full text.
Citations
Cites
Sequence to Sequence Learning with Neural Networks
Sutskever, I., Vinyals, O., & Le, Q. V. (2014) · arXiv · doi:10.48550/arxiv.1409.3215 · Cited by 17,766
de Moura, L., & Bjørner, N. (2008) · Lecture Notes in Computer Science · doi:10.1007/978-3-540-78800-3_24 · Cited by 6,595
GRASP: a search algorithm for propositional satisfiability
Marques-Silva, J. P., & Sakallah, K. A. (1999) · IEEE Transactions on Computers · doi:10.1109/12.769433 · Cited by 1,378
Automating string processing in spreadsheets using input-output examples
Gulwani, S. (2011) · ACM-SIGACT Symposium on Principles of Programming Languages · doi:10.1145/1926385.1926423 · Cited by 1,039
Combinatorial sketching for finite programs
Solar-Lezama, A., Tancau, L., Bodík, R., Seshia, S., & Saraswat, V. (2006) · ASPLOS XII · doi:10.1145/1168857.1168907 · Cited by 922
Frontiers in Artificial Intelligence and Applications
To, W., Tryfonas, T., & FARTHING, D. W. (2009) · IOS Press eBooks · Cited by 706
Efficient Conflict Driven Learning in a Boolean Satisfiability Solver
Zhang, L., Madigan, C. F., Moskewicz, M. H., & Malik, S. (2001) · Cited by 682
Alur, R., Bodik, R., Juniwal, G., Martin, M. M. K., Raghothaman, M., Seshia, S. A., Singh, R., Solar-Lezama, A., Torlak, E., & Udupa, A. (2013) · 2013 Formal Methods in Computer-Aided Design · doi:10.1109/fmcad.2013.6679385 · Cited by 656
DeepCoder: Learning to Write ProgramsPreprint
Balog, M., Gaunt, A. L., Brockschmidt, M., Nowozin, S., & Tarlow, D. (2016) · International Conference on Learning Representations · doi:10.48550/arxiv.1611.01989 · Cited by 641
Automating string processing in spreadsheets using input-output examples
Gulwani, S. (2011) · ACM SIGPLAN Notices · doi:10.1145/1925844.1926423 · Cited by 581
Research works printed but not linked: 2
- Arvind Neelakantan , Quoc V Le , Martin Abadi , Andrew McCallum , and Dario Amodei . 2017 . Learning a natural language interface with neural programmer . In Proc. International Conference on Learning Representations . OpenReview. Arvind Neelakantan, Quoc V Le, Martin Abadi, Andrew McCallum, and Dario Amodei. 2017. Learning a natural language interface with neural programmer. In Proc. International Conference on Learning Representations . OpenReview.
- Arvind Neelakantan , Quoc V Le , and Ilya Sutskever . 2016 . Neural programmer: Inducing latent programs with gradient descent . In Proc. International Conference on Learning Representations . OpenReview. Arvind Neelakantan, Quoc V Le, and Ilya Sutskever. 2016. Neural programmer: Inducing latent programs with gradient descent. In Proc. International Conference on Learning Representations . OpenReview.
Cited by
Sorted by citations
In-IDE Code Generation from Natural Language: Promise and Challenges
Xu, F. F., Vasilescu, B., & Neubig, G. (2022) · ACM Transactions on Software Engineering and Methodology · doi:10.1145/3487569 · Cited by 154
“Besides visual no-code or low-code programming interfaces, there has also been much progress on program synthesis [12, 29, 31, 108], which uses input-output examples, logic sketches, etc.”
Background(2021) · doi:10.1145/3510003.3510203 · Cited by 139
Fuzz testing based data augmentation to improve robustness of deep neural networks
Gao, X. Y., Saha, R. K., Prasad, M. R., & Roychoudhury, A. (2020) · ACM/IEEE International Conference on Software Engineering: Companion Proceedings (ICSE-Companion) · doi:10.1145/3377811.3380415 · Cited by 129
Learning programs by learning from failures
Cropper, A., & Morel, R. (2021) · Machine Learning · doi:10.1007/s10994-020-05934-z · Cited by 86
“Indeed, PL approaches rarely evaluate the ability of their systems to synthesise solutions that generalise, i.e. they do not measure predictive accuracy (Feser et al. 2015; Polikarpova et al. 2016; Albarghouthi et al. 2017; Feng et al. 2018; Raghothaman et al. 2020).”
BackgroundMethodGenerative Code Modeling with GraphsPreprint
Brockschmidt, M., Allamanis, M., Gaunt, A. L., & Polozov, O. (2018) · arXiv (Cornell University) · doi:10.48550/arxiv.1805.08490 · Cited by 103
Multi-modal synthesis of regular expressions
Chen, Q., Wang, X., Ye, X., Durrett, G., & Dillig, I. (2020) · ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI) · doi:10.1145/3385412.3385988 · Cited by 81
Self-citationAutoPandas: neural-backed generators for program synthesis
Bavishi, R., Lemieux, C., Fox, R., Sen, K., & Stoica, I. (2019) · Proceedings of the ACM on Programming Languages · doi:10.1145/3360594 · Cited by 73
Deep Learning Based Program Generation From Requirements Text: Are We There Yet?
Liu, H., Shen, M., Zhu, J., Niu, N., Li, G., & Zhang, L. (2020) · IEEE Transactions on Software Engineering · doi:10.1109/tse.2020.3018481 · Cited by 60
Reconciling enumerative and deductive program synthesis
Huang, K., Qiu, X., Shen, P., & Wang, Y. (2020) · ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI) · doi:10.1145/3385412.3386027 · Cited by 46
Synthesizing database programs for schema refactoring
Wang, Y., Dong, J., Shah, R., & Dillig, I. (2019) · ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI) · doi:10.1145/3314221.3314588 · Cited by 45
Self-citationMartins, R., Chen, J., Chen, Y., Feng, Y., & Dillig, I. (2019) · Proceedings of the VLDB Endowment · doi:10.14778/3352063.3352098 · Cited by 40
Self-citationResource-guided program synthesis
Knoth, T., Wang, D., Polikarpova, N., & Hoffmann, J. (2019) · ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI) · doi:10.1145/3314221.3314602 · Cited by 38
Wang, C., Feng, Y., Bodík, R., Cheung, A., & Dillig, I. (2019) · Proceedings of the ACM on Programming Languages · doi:10.1145/3371117 · Cited by 37
Self-citationCombining the top-down propagation and bottom-up enumeration for inductive program synthesis
Lee, W. (2021) · Proceedings of the ACM on Programming Languages · doi:10.1145/3434335 · Cited by 34
Question selection for interactive program synthesis
Ji, R., Liang, J., Xiong, Y., Zhang, L., & Hu, Z. (2020) · ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI) · doi:10.1145/3385412.3386025 · Cited by 33
Program Synthesis Using Deduction-Guided Reinforcement Learning
Chen, Y., Wang, C., Bastani, O., Dillig, I., & Feng, Y. (2020) · Lecture notes in computer science · doi:10.1007/978-3-030-53291-8_30 · Cited by 33
Self-citationMaximal multi-layer specification synthesis
Chen, Y., Martins, R., & Feng, Y. (2019) · ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE) · doi:10.1145/3338906.3338951 · Cited by 29
Self-citationData Extraction via Semantic Regular Expression Synthesis
Chen, Q., Banerjee, A., Demiralp, Ç., Durrett, G., & Dillig, I. (2023) · Proceedings of the ACM on Programming Languages · doi:10.1145/3622863 · Cited by 27
Self-citationInterpretable Program Synthesis
Zhang, T., Chen, Z., Zhu, Y., Vaithilingam, P., Wang, X., & Glassman, E. L. (2021) · CHI Conference on Human Factors in Computing Systems · doi:10.1145/3411764.3445646 · Cited by 26
Sketch-Driven Regular Expression Generation from Natural Language and Examples
Ye, X., Chen, Q., Wang, X., Dillig, I., & Durrett, G. (2020) · Transactions of the Association for Computational Linguistics · doi:10.1162/tacl_a_00339 · Cited by 26
Self-citationDemystifying loops in smart contracts
Mariano, B., Chen, Y., Feng, Y., Lahiri, S. K., & Dillig, I. (2020) · IEEE/ACM International Conference on Automated Software Engineering (ASE) · doi:10.1145/3324884.3416626 · Cited by 21
Self-citationUsing active learning to synthesize models of applications that access databases
Shen, J., & Rinard, M. (2019) · ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI) · doi:10.1145/3314221.3314591 · Cited by 19
On the Impact of Machine Learning: Architecture without Architects?
Belém, C., Santos, L., & Leitão, A. (2019) · Cited by 19
Relational verification using reinforcement learning
Chen, J., Wei, J., Feng, Y., Bastani, O., & Dillig, I. (2019) · Proceedings of the ACM on Programming Languages · doi:10.1145/3360567 · Cited by 20
Self-citationLooPy: interactive program synthesis with control structures
Ferdowsifard, K., Barke, S., Peleg, H., Lerner, S., & Polikarpova, N. (2021) · Proceedings of the ACM on Programming Languages · doi:10.1145/3485530 · Cited by 18
Ardeshiricham, A., Takashima, Y., Gao, S., & Kastner, R. (2019) · ACM SIGSAC Conference on Computer and Communications Security (CCS) · doi:10.1145/3319535.3354246 · Cited by 17
Optimal Neural Program Synthesis from Multimodal Specifications
Ye, X., Chen, Q., Dillig, I., & Durrett, G. (2021) · Findings of the Association for Computational Linguistics: EMNLP (Findings of EMNLP) · doi:10.18653/v1/2021.findings-emnlp.146 · Cited by 19
Self-citationSynthesis-powered optimization of smart contracts via data type refactoring
Chen, Y., Wang, Y., Goyal, M., Dong, J., Feng, Y., & Dillig, I. (2022) · Proceedings of the ACM on Programming Languages · doi:10.1145/3563308 · Cited by 14
Self-citationBenchmarking Multimodal Regex Synthesis with Complex Structures
Ye, X., Chen, Q., Dillig, I., & Durrett, G. (2020) · Proceedings of the conference - Association for Computational Linguistics. Meeting · doi:10.18653/v1/2020.acl-main.541 · Cited by 14
Self-citationFORAY: Towards Effective Attack Synthesis against Deep Logical Vulnerabilities in DeFi Protocols
Wen, H., Liu, H., Song, J., Chen, Y., Guo, W., & Feng, Y. (2024) · ACM SIGSAC Conference on Computer and Communications Security (CCS) · doi:10.1145/3658644.3690293 · Cited by 13
Self-citationExplainable Program Synthesis by Localizing Specifications
Nazari, A., Huang, Y., Samanta, R., Radhakrishna, A., & Raghothaman, M. (2023) · Proceedings of the ACM on Programming Languages · doi:10.1145/3622874 · Cited by 13
Saha, R. K., Ura, A., Mahajan, S., Zhu, C., Li, L., Yang, H., Yoshida, H., Sarfraz Khurshid, D., & Prasad, M. R. (2022) · ACM/IEEE International Conference on Software Engineering: Companion Proceedings (ICSE-Companion) · doi:10.1145/3510003.3510226 · Cited by 12
Kim, J., D’Antoni, L., & Reps, T. (2023) · Proceedings of the ACM on Programming Languages · doi:10.1145/3571216 · Cited by 12
Modeling black-box components with probabilistic synthesis
Collie, B., Woodruff, J., & O’boyle, M. F. P. (2020) · ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences (GPCE) · doi:10.1145/3425898.3426952 · Cited by 12
Programming-by-Demonstration for Long-Horizon Robot Tasks
Patton, N., Rahmani, K., Missula, M., Biswas, J., & Dillig, I. (2024) · Proceedings of the ACM on Programming Languages · doi:10.1145/3632860 · Cited by 12
Self-citationSynthesizing analytical SQL queries from computation demonstration
Zhou, X., Bodík, R., Cheung, A., & Wang, C. (2022) · ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI) · doi:10.1145/3519939.3523712 · Cited by 11
Encodings for Enumeration-Based Program Synthesis
Orvalho, P., Terra-Neves, M., Ventura, M., Martins, R., & Manquinho, V. M. (2019) · Lecture notes in computer science · doi:10.1007/978-3-030-30048-7_34 · Cited by 11
Self-citationTesting for Race Conditions in Distributed Systems via SMT Solving
Pereira, J. C., Machado, N., & Pinto, J. S. (2020) · Lecture notes in computer science · doi:10.1007/978-3-030-50995-8_7 · Cited by 11
Enhanced Enumeration Techniques for Syntax-Guided Synthesis of Bit-Vector Manipulations
Ding, Y., & Qiu, X. (2024) · Proceedings of the ACM on Programming Languages · doi:10.1145/3632913 · Cited by 10
Trials and Tribulations in Synthesizing Operating Systems
Hu, J., Lu, E., Holland, D. A., Kawaguchi, M., Chong, S., & Seltzer, M. (2019) · Workshop on Programming Languages and Operating Systems (PLOS) · doi:10.1145/3365137.3365401 · Cited by 10
Synthesizing data structure refinements from integrity constraints
Pailoor, S., Wang, Y., Wang, X., & Dillig, I. (2021) · ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI) · doi:10.1145/3453483.3454063 · Cited by 10
Self-citationThe wonderful wizard of LoC: paying attention to the man behind the curtain of lines-of-code metrics
Alpernas, K., Feldman, Y. M. Y., & Peleg, H. (2020) · ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software (Onward!) · doi:10.1145/3426428.3426921 · Cited by 9
Scaling Neural Program Synthesis with Distribution-Based Search
Fijalkow, N., Lagarde, G., Matricon, T., Ellis, K., Ohlmann, P., & Potta, A. N. (2022) · Proceedings of the AAAI Conference on Artificial Intelligence · doi:10.1609/aaai.v36i6.20616 · Cited by 8
Algebra-Based Reasoning for Loop Synthesis
Humenberger, A., Amrollahi, D., Bjørner, N., & Kovács, L. (2022) · Formal Aspects of Computing · doi:10.1145/3527458 · Cited by 8
RbSyn: type- and effect-guided program synthesis
Guria, S. N., Foster, J. S., & Horn, D. V. (2021) · ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI) · doi:10.1145/3453483.3454048 · Cited by 12
FOREST: An Interactive Multi-tree Synthesizer for Regular Expressions
Ferreira, M. A., Terra-Neves, M., Ventura, M., Lynce, I., & Martins, R. (2021) · Lecture notes in computer science · doi:10.1007/978-3-030-72016-2_9 · Cited by 8
Self-citationSpecification-guided component-based synthesis from effectful libraries
Mishra, A., & Jagannathan, S. (2022) · Proceedings of the ACM on Programming Languages · doi:10.1145/3563310 · Cited by 7
Active learning for inference and regeneration of computer programs that store and retrieve data
Rinard, M., Shen, J., & Mangalick, V. (2018) · ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software (Onward!) · doi:10.1145/3276954.3276959 · Cited by 7
DeeperCoder: Code Generation Using Machine Learning
Shim, S. S. Y., Patil, P., Yadav, R. R., Shinde, A., & Devale, V. (2020) · IEEE Annual Computing and Communication Workshop and Conference (CCWC) · doi:10.1109/ccwc47524.2020.9031149 · Cited by 7
Counterfeiting Congestion Control Algorithms
Ferreira, M., Narayan, A., Lynce, I., Martins, R., & Sherry, J. (2021) · ACM Workshop on Hot Topics in Networks (HotNets) · doi:10.1145/3484266.3487381 · Cited by 7
Self-citationInductive Program Synthesis Guided by Observational Program Similarity
Feser, J., Dillig, I., & Solar-Lezama, A. (2023) · Proceedings of the ACM on Programming Languages · doi:10.1145/3622830 · Cited by 6
Self-citationReverse-Engineering Congestion Control Algorithm Behavior
Ferreira, M., Ware, R., Kothari, Y., Lynce, I., Martins, R., Narayan, A., & Sherry, J. (2024) · ACM Internet Measurement Conference (IMC) · doi:10.1145/3646547.3688443 · Cited by 6
Self-citationRamos, D., Pereira, J., Lynce, I., Manquinho, V. M., & Martins, R. (2020) · IEEE/ACM International Conference on Automated Software Engineering (ASE) · doi:10.1145/3324884.3416613 · Cited by 6
Self-citationAbsynthe: Abstract Interpretation-Guided Synthesis
Guria, S. N., Foster, J. S., & Horn, D. V. (2023) · Proceedings of the ACM on Programming Languages · doi:10.1145/3591285 · Cited by 6
Fast and Reliable Program Synthesis via User Interaction
Chen, Y., Wang, C., Wang, X., Bastani, O., & Feng, Y. (2023) · IEEE/ACM International Conference on Automated Software Engineering (ASE) · doi:10.1109/ase56229.2023.00129 · Cited by 6
Self-citationProgram Synthesis Guided Reinforcement Learning for Partially Observed EnvironmentsPreprint
Yang, Y., Inala, J. P., Bastani, O., Pu, Y., Solar-Lezama, A., & Rinard, M. (2021) · arXiv (Cornell University) · doi:10.48550/arxiv.2102.11137 · Cited by 10
Self-citationBrauckmann, A., Jaulmes, L., Magalhães, J. W. D. S., Polgreen, E., & O’boyle, M. F. P. (2025) · Proceedings of the CGO/Proceedings of the ... CGO · doi:10.1145/3696443.3708956 · Cited by 5
A Concurrent Approach to String Transformation Synthesis
Ding, Y., & Qiu, X. (2025) · Proceedings of the ACM on Programming Languages · doi:10.1145/3729336 · Cited by 5
Mobius: Synthesizing Relational Queries with Recursive and Invented Predicates
Thakkar, A., Sands, N., Petrou, G., Rajeev Alur, A., Naik, M., & Raghothaman, M. (2023) · Proceedings of the ACM on Programming Languages · doi:10.1145/3622847 · Cited by 5
Conflict-Driven Synthesis for Layout Engines
Liu, J., Chen, Y., Atkinson, E., Feng, Y., & Bodík, R. (2023) · Proceedings of the ACM on Programming Languages · doi:10.1145/3591246 · Cited by 5
Self-citationActive Learning for Inference and Regeneration of Applications that Access Databases
Shen, J., & Rinard, M. (2020) · ACM Transactions on Programming Languages and Systems · doi:10.1145/3430952 · Cited by 5
Tree traversal synthesis using domain-specific symbolic compilation
Chen, Y., Liu, J., Feng, Y., & Bodík, R. (2022) · International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS) · doi:10.1145/3503222.3507751 · Cited by 5
Self-citationRepairing serializability bugs in distributed database programs via automated schema refactoring
Rahmani, K., Nagar, K., Delaware, B., & Jagannathan, S. (2021) · ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI) · doi:10.1145/3453483.3454028 · Cited by 5
Data Generation for Neural Programming by ExamplePreprint
Clymo, J., Manukian, H., Fijalkow, N., Gascón, A., & Paige, B. (2019) · arXiv (Cornell University) · doi:10.48550/arxiv.1911.02624 · Cited by 5
Learning logic programs by explaining their failures
Morel, R., & Cropper, A. (2023) · Machine Learning · doi:10.1007/s10994-023-06358-1 · Cited by 4
Reinforcement Learning and Data-Generation for Syntax-Guided Synthesis
Parsert, J., & Polgreen, E. (2024) · Proceedings of the AAAI Conference on Artificial Intelligence · doi:10.1609/aaai.v38i9.28938 · Cited by 4
Solving System Problems with Machine Learning
Stoica, I. G. (2019) · Studies in Informatics and Control · doi:10.24846/v28i2y201901 · Cited by 5
Gauss: program synthesis by reasoning over graphs
Bavishi, R., Lemieux, C., Sen, K., & Stoica, I. G. (2021) · Proceedings of the ACM on Programming Languages · doi:10.1145/3485511 · Cited by 4
Knowledge Graph Programming with a Human-in-the-Loop
Lou, Y., Uddin, M., Brown, N., & Cafarella, M. (2019) · Workshop on Human-In-the-Loop Data Analytics (HILDA) · doi:10.1145/3328519.3329132 · Cited by 4
Using human-in-the-loop synthesis to author functional reactive programsPreprint
Newcomb, J. L., & Bodík, R. (2019) · arXiv (Cornell University) · doi:10.48550/arxiv.1909.11206 · Cited by 4
Robot Action Selection Learning via Layered Dimension Informed Program SynthesisPreprint
Holtz, J., Guha, A., & Biswas, J. (2020) · arXiv (Cornell University) · doi:10.48550/arxiv.2008.04133 · Cited by 4
Learning Fitness Functions for Machine ProgrammingPreprint
Mandal, S., Anderson, T. A., Turek, J. S., Gottschlich, J., Zhou, S., & Muzahid, A. (2019) · arXiv (Cornell University) · doi:10.48550/arxiv.1908.08783 · Cited by 6
Lubin, J. P., Ziegler, P., & Chasins, S. (2025) · Proceedings of the ACM on Programming Languages · doi:10.1145/3729264 · Cited by 3
Synthesizing MILP Constraints for Efficient and Robust Optimization
Wang, J., Gupta, A., & Wang, C. (2023) · Proceedings of the ACM on Programming Languages · doi:10.1145/3591298 · Cited by 3
Synthesizing Mutable Configurations: Setting up Systems for Success
Nelson, T., Danas, N., Giannakopoulos, T., & Krishnamurthi, S. (2019) · IEEE/ACM International Conference on Automated Software Engineering Workshops (ASEW) · doi:10.1109/asew.2019.00034 · Cited by 3
Reward-Guided Synthesis of Intelligent Agents with Control Structures
Cui, G., Wang, Y., Qiu, W., & Zhu, H. (2024) · Proceedings of the ACM on Programming Languages · doi:10.1145/3656447 · Cited by 3
General Program Synthesis Using Guided Corpus Generation and Automatic Refactoring
Wild, A., & Porter, B. (2019) · Lecture notes in computer science · doi:10.1007/978-3-030-27455-9_7 · Cited by 3
Algebra-Based Synthesis of Loops and Their Invariants (Invited Paper)
Humenberger, A., & Kovács, L. (2021) · Lecture notes in computer science · doi:10.1007/978-3-030-67067-2_2 · Cited by 3
SynFuzz: Efficient Concolic Execution via Branch Condition SynthesisPreprint
Han, W., Rahman, M. L., Chen, Y., Song, C., Lee, B., & Shin, I. (2019) · arXiv (Cornell University) · doi:10.48550/arxiv.1905.09532 · Cited by 3
Generating Function Names to Improve Comprehension of Synthesized Programs
Nazari, A., Swayamdipta, S., Chattopadhyay, S., & Raghothaman, M. (2024) · IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC) · doi:10.1109/vl/hcc60511.2024.00035 · Cited by 2
Refinement Types for Visualization
Xia, J., Liu, J., Brown, N., Chen, Y., & Feng, Y. (2024) · IEEE/ACM International Conference on Automated Software Engineering (ASE) · doi:10.1145/3691620.3695550 · Cited by 2
Self-citationAn evolutionary framework for automatic and guided discovery of algorithms
Sasanka, R., & Krommydas, K. F. (2020) · ACM International Conference on Computing Frontiers (CF) · doi:10.1145/3387902.3394033 · Cited by 2
Synthesizing Queries via Interactive SketchingPreprint
Bastani, O., Zhang, X., & Solar-Lezama, A. (2019) · arXiv (Cornell University) · doi:10.48550/arxiv.1912.12659 · Cited by 2
Self-citationCreating Synthetic Datasets via Evolution for Neural Program SynthesisPreprint
Suh, A., & Timen, Y. (2020) · arXiv (Cornell University) · doi:10.48550/arxiv.2003.10485 · Cited by 2
G enesys : A Novel Evolutionary Program Synthesis Tool with Continuous Optimization
Mandal, S., Anderson, T. A., Turek, J. S., Gottschlich, J., & Muzahid, A. (2025) · ACM transactions on probabilistic machine learning. · doi:10.1145/3776736 · Cited by 8
Automated Repair of OpenID Connect Programs
Rahat, T. A., Chen, Y., Feng, Y., & Tian, Y. (2025) · IEEE/ACM International Conference on Automated Software Engineering (ASE) · doi:10.1109/ase63991.2025.00187 · Cited by 1
Self-citationDefining behaviorizeable relations to enable inference in semi-automatic program synthesis
Krasanakis, E., & Symeonidis, A. L. (2021) · Journal of Logical and Algebraic Methods in Programming · doi:10.1016/j.jlamp.2021.100714 · Cited by 1
Wang, Y., & Li, X. (2021) · IEEE Access · doi:10.1109/access.2021.3079351 · Cited by 1
Type-driven Neural Programming by ExamplePreprint
Grouwstra, K. (2020) · arXiv (Cornell University) · doi:10.48550/arxiv.2008.12613 · Cited by 4
FOREST: An Interactive Multi-tree Synthesizer for Regular Expressions
Ferreira, M. (2021) · doi:10.26226/morressier.604907f41a80aac83ca25cef · Cited by 1
Optimal Neural Program Synthesis from Multimodal SpecificationsPreprint
Ye, X., Chen, Q., Dillig, I., & Durrett, G. (2020) · arXiv (Cornell University) · doi:10.48550/arxiv.2010.01678 · Cited by 10
Self-citationSupported Programming for Beginning Developers
Gilbert, A. (2019) · doi:10.15368/theses.2019.9
Comparison of Syntactic and Semantic Representations of Programs in Neural EmbeddingsPreprint
Wright, A. P., & Wiklicky, H. (2020) · arXiv (Cornell University) · doi:10.48550/arxiv.2001.09201
Enhancing Web App Execution with Automated Reengineering
An, K. (2020) · International World Wide Web Conference (WWW) · doi:10.1145/3366424.3382087
Vasudevan, A., Maniatis, P., & Martins, R. (2020) · ACM SIGOPS Operating Systems Review · doi:10.1145/3421473.3421476
Self-citationLearning Logic Programs by Explaining Failures.Preprint
Morel, R., & Cropper, A. (2021) · arXiv (Cornell University)
Constraint-Driven Learning of Logic Programs
Morel, R. (2021) · Proceedings of the AAAI Conference on Artificial Intelligence · doi:10.1609/aaai.v35i18.17860
Visualization question answering using introspective program synthesis
Chen, Y., Yan, X., & Feng, Y. (2022) · ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI) · doi:10.1145/3519939.3523709
Self-citationDeepQRE: A QRE System Based on Deep Learning
Zhang, S., & Dou, Q. (2023) · International Conference on Mechatronics and Robotics Engineering (ICMRE) · doi:10.1109/icmre56789.2023.10106580
LGEQRE: Learning Guided Enumerative Synthesis for Query Reverse EngineeringPreprint
Wang, H., Dou, Q., Tang, H., Pan, H., & Zhang, S. (2023) · Research Square · doi:10.21203/rs.3.rs-3320857/v1
Metadata
- Authors
- Feng, Y., Martins, R., Bastani, O., & Dillig, I.
- Affiliations
- The University of Texas at Austin (US)
- Carnegie Mellon University (US)
- Massachusetts Institute of Technology (US)
- University of Texas at Austin, USA
- Venue
- Proceedings of the 39th ACM SIGPLAN Conference on Programming Language Design and Implementation
- Publisher
- ACM
- Published
- 2018-06-11
- Pages
- 420-435
- ISSN
- 1531-7102 (ISSN-L)
- OpenAlex
- W2964240296
- Cited by
- 111
- References
- 46
- Citations by year
- 2026: 3 · 2025: 11 · 2024: 8 · 2023: 13 · 2022: 10 · 2021: 18 · 2020: 23 · 2019: 22 · 2018: 3
- FWCI
- 6.71
- Type
- conference paper
- Language
- en
- Open access
- bronze
- doi.org
- Locations
- ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI) (publishedVersion)
- Funders
- National Science Foundation (1453386)
- Defense Advanced Research Projects Agency (8750-14-2-0270)
- Topics
- Physical Sciences › Computer Science › Artificial Intelligence › Evolutionary Algorithms and Applications
- Physical Sciences › Computer Science › Software › Logic, programming, and type systems
- Physical Sciences › Computer Science › Computer Science Applications › Teaching and Learning Programming
- Keywords
- program synthesis, CDCL, learning from mistakes, search space pruning, data wrangling, functional programming
About these checks
Registry, retraction, Cites and statistics results are computed, not judged, with one exception: a printed reference that no index lists is read once by a model before it counts as a citation error. Claims are extracted by a model and kept only when their quote appears verbatim in the text; each cited source is then checked, with a model’s help, for whether it says what the claim relies on. Those verdicts can be wrong — read the claim’s quote and the cited source before relying on one.
Statistics and arithmetic are recomputed, not judged.
Confidence bands are shown only for fields calibrated on our annotated test set. None is calibrated yet, so no band is shown.
What counts as a claim ›How we measure confidence ›How we check this ›
Are you an author, or do you see a problem with this page? Request a review