Mobius: Synthesizing Relational Queries with Recursive and Invented Predicates
Synthesizing relational queries from data is challenging in the presence of recursion and invented predicates. We propose a fully automated approach to synthesize such queries. Our approach comprises of two steps: it first synthesizes a non-recursive query consistent with the given data, and then id...
Uložené v:
| Vydané v: | Proceedings of ACM on programming languages Ročník 7; číslo OOPSLA2; s. 1394 - 1417 |
|---|---|
| Hlavní autori: | , , , , , |
| Médium: | Journal Article |
| Jazyk: | English |
| Vydavateľské údaje: |
New York, NY, USA
ACM
16.10.2023
|
| Predmet: | |
| ISSN: | 2475-1421, 2475-1421 |
| On-line prístup: | Získať plný text |
| Tagy: |
Pridať tag
Žiadne tagy, Buďte prvý, kto otaguje tento záznam!
|
| Abstract | Synthesizing relational queries from data is challenging in the presence of recursion and invented predicates. We propose a fully automated approach to synthesize such queries. Our approach comprises of two steps: it first synthesizes a non-recursive query consistent with the given data, and then identifies recursion schemes in it and thereby generalizes to arbitrary data. This generalization is achieved by an iterative predicate unification procedure which exploits the notion of data provenance to accelerate convergence. In each iteration of the procedure, a constraint solver proposes a candidate query, and a query evaluator checks if the proposed program is consistent with the given data. The data provenance for a failed query allows us to construct additional constraints for the constraint solver and refine the search. We have implemented our approach in a tool named Mobius. On a suite of 21 challenging recursive query synthesis tasks, Mobius outperforms three state-of-the-art baselines Gensynth, ILASP, and Popper, both in terms of runtime and accuracy. We also demonstrate that the synthesized queries generalize well to unseen data. |
|---|---|
| AbstractList | Synthesizing relational queries from data is challenging in the presence of recursion and invented predicates. We propose a fully automated approach to synthesize such queries. Our approach comprises of two steps: it first synthesizes a non-recursive query consistent with the given data, and then identifies recursion schemes in it and thereby generalizes to arbitrary data. This generalization is achieved by an iterative predicate unification procedure which exploits the notion of data provenance to accelerate convergence. In each iteration of the procedure, a constraint solver proposes a candidate query, and a query evaluator checks if the proposed program is consistent with the given data. The data provenance for a failed query allows us to construct additional constraints for the constraint solver and refine the search. We have implemented our approach in a tool named Mobius. On a suite of 21 challenging recursive query synthesis tasks, Mobius outperforms three state-of-the-art baselines Gensynth, ILASP, and Popper, both in terms of runtime and accuracy. We also demonstrate that the synthesized queries generalize well to unseen data. |
| ArticleNumber | 271 |
| Author | Petrou, George Naik, Mayur Raghothaman, Mukund Thakkar, Aalok Sands, Nathaniel Alur, Rajeev |
| Author_xml | – sequence: 1 givenname: Aalok orcidid: 0000-0002-3195-585X surname: Thakkar fullname: Thakkar, Aalok email: athakkar@seas.upenn.edu organization: University of Pennsylvania, Philadelphia, USA – sequence: 2 givenname: Nathaniel orcidid: 0009-0008-5900-0036 surname: Sands fullname: Sands, Nathaniel email: njsands@usc.edu organization: University of Southern California, Los Angeles, USA – sequence: 3 givenname: George orcidid: 0009-0009-9675-1602 surname: Petrou fullname: Petrou, George email: gpetrou@usc.edu organization: University of Southern California, Los Angeles, USA – sequence: 4 givenname: Rajeev orcidid: 0000-0003-1733-7083 surname: Alur fullname: Alur, Rajeev email: alur@cis.upenn.edu organization: University of Pennsylvania, Philadelphia, USA – sequence: 5 givenname: Mayur orcidid: 0000-0003-1348-8618 surname: Naik fullname: Naik, Mayur email: mhnaik@cis.upenn.edu organization: University of Pennsylvania, Philadelphia, USA – sequence: 6 givenname: Mukund orcidid: 0000-0003-2879-0932 surname: Raghothaman fullname: Raghothaman, Mukund email: raghotha@usc.edu organization: University of Southern California, Los Angeles, USA |
| BookMark | eNpt0EtLAzEQB_AgFay1ePeUm6fVvHbT9SbFR6G-9bykycRGtllJspX66V1tFRFPM8z8GP7MLur5xgNC-5QcUSryY14wNhJyC_WZkHlGBaO9X_0OGsb4QgihJRcjXvbR9VUzc208wQ8rn-YQ3bvzz_geapVc41WN71oIDiJ-c2nezXUbolsCVt7giV-CT2DwbQDjtEoQ99C2VXWE4aYO0NP52eP4MpveXEzGp9NMMSlTZkBSyW1RQCkFzJSCXBTW0lKyLqUhbEQZESoHagpLqJ4JyXPRAS600TbnA5St7-rQxBjAVtqlr8gpKFdXlFSf_6g2_-j84R__GtxChdU_8mAtlV78oO_lB0UxaS0 |
| CitedBy_id | crossref_primary_10_1109_ACCESS_2025_3577238 crossref_primary_10_1145_3720420 crossref_primary_10_1145_3729303 |
| Cites_doi | 10.24963/ijcai.2019/847 10.1145/2837614.2837671 10.1109/icse.2015.63 10.5555/3241691.3241692 10.1145/3371130 10.1145/3453483.3454087 10.1145/3340531.3411949 10.1007/s10994-020-05934-z 10.1145/3035918.3058738 10.1145/996841.996859 10.1007/978-3-642-39799-8_67 10.1145/3276520 10.1007/978-3-030-81685-8_39 10.1145/3385412.3386025 10.1109/ase.2013.6693082 10.1145/3485544 10.1145/1926385.1926390 10.1007/s10994-014-5471-y 10.1145/3192366.3192382 10.1145/1926385.1926423 10.1145/3236024.3236034 10.1145/3410307 10.1145/3296979.3192382 |
| ContentType | Journal Article |
| Copyright | Owner/Author |
| Copyright_xml | – notice: Owner/Author |
| DBID | AAYXX CITATION |
| DOI | 10.1145/3622847 |
| DatabaseName | CrossRef |
| DatabaseTitle | CrossRef |
| DatabaseTitleList | CrossRef |
| DeliveryMethod | fulltext_linktorsrc |
| Discipline | Computer Science |
| EISSN | 2475-1421 |
| EndPage | 1417 |
| ExternalDocumentID | 10_1145_3622847 3622847 |
| GrantInformation_xml | – fundername: National Science Foundation grantid: CCF #2146518, #2124431, and #2107261 funderid: https://doi.org/10.13039/100000001 |
| GroupedDBID | AAKMM AAYFX ACM ADPZR AIKLT ALMA_UNASSIGNED_HOLDINGS GUFHI LHSKQ M~E OK1 ROL AAYXX AEFXT AEJOY AKRVB CITATION |
| ID | FETCH-LOGICAL-a277t-de7173f66e974ebaae546ff1972421d0281204a5e1d6f01cb47354ff134cdcf53 |
| ISICitedReferencesCount | 4 |
| ISICitedReferencesURI | http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=001087279100051&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| ISSN | 2475-1421 |
| IngestDate | Sun Nov 09 14:46:52 EST 2025 Tue Nov 18 20:44:38 EST 2025 Fri Feb 21 01:29:13 EST 2025 |
| IsDoiOpenAccess | true |
| IsOpenAccess | true |
| IsPeerReviewed | true |
| IsScholarly | true |
| Issue | OOPSLA2 |
| Keywords | example-guided synthesis recursive program synthesis Programming by example |
| Language | English |
| License | This work is licensed under a Creative Commons Attribution 4.0 International License. |
| LinkModel | OpenURL |
| MergedId | FETCHMERGED-LOGICAL-a277t-de7173f66e974ebaae546ff1972421d0281204a5e1d6f01cb47354ff134cdcf53 |
| ORCID | 0000-0002-3195-585X 0009-0009-9675-1602 0000-0003-2879-0932 0009-0008-5900-0036 0000-0003-1348-8618 0000-0003-1733-7083 |
| OpenAccessLink | https://dl.acm.org/doi/10.1145/3622847 |
| PageCount | 24 |
| ParticipantIDs | crossref_citationtrail_10_1145_3622847 crossref_primary_10_1145_3622847 acm_primary_3622847 |
| PublicationCentury | 2000 |
| PublicationDate | 2023-10-16 |
| PublicationDateYYYYMMDD | 2023-10-16 |
| PublicationDate_xml | – month: 10 year: 2023 text: 2023-10-16 day: 16 |
| PublicationDecade | 2020 |
| PublicationPlace | New York, NY, USA |
| PublicationPlace_xml | – name: New York, NY, USA |
| PublicationTitle | Proceedings of ACM on programming languages |
| PublicationTitleAbbrev | ACM PACMPL |
| PublicationYear | 2023 |
| Publisher | ACM |
| Publisher_xml | – name: ACM |
| References | Stephen Muggleton, Dianhuan Lin, and Alireza Tamaddoni-Nezhad. 2015. Meta-interpretive Learning of Higher-order Dyadic Datalog: Predicate Invention Revisited. Machine Learning, 100, 1 (2015), 01 July, 49–73. issn:1573-0565 https://doi.org/10.1007/s10994-014-5471-y 10.1007/s10994-014-5471-y Yu Feng, Ruben Martins, Osbert Bastani, and Isil Dillig. 2018. Program Synthesis Using Conflict-Driven Learning. SIGPLAN Not., 53, 4 (2018), jun, 420–435. issn:0362-1340 https://doi.org/10.1145/3296979.3192382 10.1145/3296979.3192382 Honghua Dong, Jiayuan Mao, Tian Lin, Chong Wang, Lihong Li, and Denny Zhou. 2019. Neural Logic Machines. In Proceedings of the 7th International Conference on Learning Representations (ICLR). https://doi.org/10.1145/3340531.3411949 10.1145/3340531.3411949 Mark Law, Alessandra Russo, and Krysia Broda. 2020. The ILASP system for Inductive Learning of Answer Set Programs. CoRR, abs/2005.00904 (2020). Ruyi Ji, Jingtao Xia, Yingfei Xiong, and Zhenjiang Hu. 2021. Generalizable synthesis through unification. Proceedings of the ACM on Programming Languages, 5, OOPSLA (2021), Oct., 1–28. https://doi.org/10.1145/3485544 10.1145/3485544 Aws Albarghouthi, Paraschos Koutris, Mayur Naik, and Calvin Smith. 2017. Constraint-based synthesis of Datalog programs. In Proceedings of the International Conference on Principles and Practice of Constraint Programming (CP). James Cheney, Laura Chiticariu, and Wang-Chiew Tan. 2009. Provenance in Databases: Why, How, and Where. Foundations and Trends in Databases, 1, 4 (2009). Chenglong Wang, Alvin Cheung, and Rastislav Bodik. 2017. Synthesizing highly expressive SQL queries from input-output examples. In Proceedings of the Conference on Programming Language Design and Implementation (PLDI). Yannis Smaragdakis, Martin Bravenboer, and Ondrej Lhoták. 2011. Pick Your Contexts Well: Understanding Object-sensitivity. In Proceedings of the 38th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL 2011). ACM, 17–30. isbn:978-1-4503-0490-0 https://doi.org/10.1145/1926385.1926390 10.1145/1926385.1926390 Xujie Si, Woosuk Lee, Richard Zhang, Aws Albarghouthi, Paraschos Koutris, and Mayur Naik. 2018. Syntax-guided Synthesis of Datalog Programs. In Proceedings of the ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE). https://doi.org/10.1145/3236024.3236034 10.1145/3236024.3236034 Lars Ole Andersen. 1994. Program Analysis and Specialization for the C Programming Language. Ph. D. Dissertation. DIKU, University of Copenhagen. Richard Evans and Edward Grefenstette. 2018. Learning Explanatory Rules from Noisy Data. J. Artif. Int. Res., 61, 1 (2018), Jan., 1–64. issn:1076-9757 Michael Sipser. 2012. Introduction to the Theory of Computation. Cengage Learning. Saswat Padhi, Prateek Jain, Daniel Perelman, Oleksandr Polozov, Sumit Gulwani, and Todd Millstein. 2018. FlashProfile: a framework for synthesizing data profiles. Proceedings of the ACM on Programming Languages, 2, OOPSLA (2018), Oct., 1–28. https://doi.org/10.1145/3276520 10.1145/3276520 Serge Abiteboul, Richard Hull, and Victor Vianu. 1995. Foundations of Databases. Addison-Wesley. Aalok Thakkar, Aaditya Naik, Nathaniel Sands, Rajeev Alur, Mayur Naik, and Mukund Raghothaman. 2021. Example-guided synthesis of relational queries. In Proceedings of the ACM Conference on Programming Language Design and Implementation (PLDI). Ruyi Ji, Jingjing Liang, Yingfei Xiong, Lu Zhang, and Zhenjiang Hu. 2020. Question selection for interactive program synthesis. In Proceedings of the 41st ACM SIGPLAN Conference on Programming Language Design and Implementation. ACM. https://doi.org/10.1145/3385412.3386025 10.1145/3385412.3386025 Sergey Mechtaev, Jooyong Yi, and Abhik Roychoudhury. 2015. DirectFix: Looking for Simple Program Repairs. In 2015 IEEE/ACM 37th IEEE International Conference on Software Engineering. IEEE. https://doi.org/10.1109/icse.2015.63 10.1109/icse.2015.63 Daniel Conrad Halbert. 1984. Programming by Example. Ph. D. Dissertation. AAI8512843 Tim Rocktäschel and Sebastian Riedel. 2017. End-to-end Differentiable Proving. In Advances in Neural Information Processing Systems (NeurIPS). Sumit Gulwani. 2011. Automating string processing in spreadsheets using input-output examples. In Proceedings of the 38th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages - POPL ' 11. ACM Press. https://doi.org/10.1145/1926385.1926423 10.1145/1926385.1926423 Vu Le, Daniel Perelman, Oleksandr Polozov, Mohammad Raza, Abhishek Udupa, and Sumit Gulwani. 2017. Interactive Program Synthesis. ArXiv, abs/1703.03539 (2017). Tim Rocktäschel and Sebastian Riedel. 2017. End-to-end Differentiable Proving. In Advances in Neural Information Processing Systems, I. Guyon, U. V. Luxburg, S. Bengio, H. Wallach, R. Fergus, S. Vishwanathan, and R. Garnett (Eds.). 30, Curran Associates, Inc.. https://proceedings.neurips.cc/paper/2017/file/b2ab001909a8a6f04b51920306046ce5-Paper.pdf Shachar Itzhaky, Hila Peleg, Nadia Polikarpova, Reuben N. S. Rowe, and Ilya Sergey. 2021. Cyclic program synthesis. In Proceedings of the 42nd ACM SIGPLAN International Conference on Programming Language Design and Implementation. ACM. https://doi.org/10.1145/3453483.3454087 10.1145/3453483.3454087 Ana Milanova, Atanas Rountev, and Barbara Ryder. 2002. Parameterized Object Sensitivity for Points-to and Side-effect Analyses for Java. In Proceedings of the 2002 ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA 2002). ACM, 1–11. isbn:1-58113-562-9 David Zhao, Pavle Subotic, and Bernhard Scholz. 2020. Debugging Large-scale Datalog: A Scalable Provenance Evaluation Strategy. ACM Trans. Program. Lang. Syst., 42, 2 (2020). Chenglong Wang, Alvin Cheung, and Rastislav Bodik. 2017. Interactive Query Synthesis from Input-Output Examples. In Proceedings of the 2017 ACM International Conference on Management of Data. ACM. https://doi.org/10.1145/3035918.3058738 10.1145/3035918.3058738 Chenglong Wang, Alvin Cheung, and Rastislav Bodik. 2017. Interactive Query Synthesis from Input-Output Examples. In Proceedings of the ACM Conference on Management of Data (SIGMOD). Andrew Cropper, Sebastijan Dumancic, and Stephen H. Muggleton. 2020. Turning 30: New Ideas in Inductive Logic Programming. In Proceedings of the International Joint Conference on Artificial Intelligence (IJCAI). John Whaley and Monica Lam. 2004. Cloning-based Context-sensitive Pointer Alias Analysis Using Binary Decision Diagrams. In Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI 2004). ACM, 131–144. isbn:1-58113-807-5 https://doi.org/10.1145/996841.996859 10.1145/996841.996859 Mukund Raghothaman, Jonathan Mendelson, David Zhao, Mayur Naik, and Bernhard Scholz. 2020. Provenance-guided synthesis of Datalog programs. In Proceedings of the ACM Symposium on Principles of Programming Languages (POPL). Fan Yang, Zhilin Yang, and William Cohen. 2017. Differentiable learning of logical rules for knowledge base reasoning. In Advances in Neural Information Processing Systems (NeurIPS). Jonathan Mendelson, Aaditya Naik, Mukund Raghothaman, and Mayur Naik. 2021. GenSynth: Synthesizing Datalog Programs without Language Bias. In Proceedings of the Conference on Artificial Intelligence (AAAI). Aws Albarghouthi, Sumit Gulwani, and Zachary Kincaid. 2013. Recursive Program Synthesis. In Computer Aided Verification. Springer Berlin Heidelberg, 934–950. https://doi.org/10.1007/978-3-642-39799-8_67 10.1007/978-3-642-39799-8_67 Veselin Raychev, Pavol Bielik, Martin Vechev, and Andreas Krause. 2016. Learning programs from noisy data. In Proceedings of the 43rd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages. ACM. https://doi.org/10.1145/2837614.2837671 10.1145/2837614.2837671 Andrew Cropper and Rolf Morel. 2021. Learning Programs by Learning from Failures. Machine Learning, 110 (2021), 801–856. Azadeh Farzan and Victor Nicolet. 2021. Counterexample-Guided Partial Bounding for Recursive Function Synthesis. In Computer Aided Verification. Springer International Publishing, 832–855. https://doi.org/10.1007/978-3-030-81685-8_39 10.1007/978-3-030-81685-8_39 Yu Feng, Ruben Martins, Osbert Bastani, and Isil Dillig. 2018. Program Synthesis Using Conflict-Driven Learning. In Proceedings of the 39th ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI 2018). Association for Computing Machinery, New York, NY, USA. 420–435. isbn:9781450356985 https://doi.org/10.1145/3192366.3192382 10.1145/3192366.3192382 Sai Zhang and Yuyin Sun. 2013. Automatically synthesizing SQL queries from input-output examples. In 2013 28th IEEE/ACM International Conference on Automated Software Engineering (ASE). IEEE. https://doi.org/10.1109/ase.2013.6693082 10.1109/ase.2013.6693082 Xujie Si, Mukund Raghothaman, Kihong Heo, and Mayur Naik. 2019. Synthesizing Datalog programs using numerical relaxation. In Proceedings of the International Joint Conference on Artificial Intelligence (IJCAI). Rocktäschel Tim (e_1_2_1_28_1) 2017 Cheney James (e_1_2_1_5_1) 2009 Law Mark (e_1_2_1_18_1) 2020 Andersen Lars Ole (e_1_2_1_4_1) Cropper Andrew (e_1_2_1_6_1) Wang Chenglong (e_1_2_1_34_1) 2017 e_1_2_1_20_1 Zhao David (e_1_2_1_40_1) 2020; 42 e_1_2_1_23_1 Le Vu (e_1_2_1_19_1) 2017 e_1_2_1_24_1 e_1_2_1_27_1 Wang Chenglong (e_1_2_1_36_1) 2017 e_1_2_1_25_1 Abiteboul Serge (e_1_2_1_1_1) e_1_2_1_26_1 e_1_2_1_29_1 Milanova Ana (e_1_2_1_22_1) 2002 e_1_2_1_7_1 e_1_2_1_31_1 e_1_2_1_8_1 e_1_2_1_30_1 e_1_2_1_12_1 Mendelson Jonathan (e_1_2_1_21_1) 2021 e_1_2_1_35_1 e_1_2_1_13_1 e_1_2_1_10_1 e_1_2_1_33_1 e_1_2_1_2_1 e_1_2_1_11_1 e_1_2_1_32_1 e_1_2_1_16_1 e_1_2_1_39_1 e_1_2_1_17_1 e_1_2_1_38_1 e_1_2_1_14_1 e_1_2_1_37_1 e_1_2_1_15_1 Albarghouthi Aws (e_1_2_1_3_1) 2017 e_1_2_1_9_1 |
| References_xml | – reference: Xujie Si, Mukund Raghothaman, Kihong Heo, and Mayur Naik. 2019. Synthesizing Datalog programs using numerical relaxation. In Proceedings of the International Joint Conference on Artificial Intelligence (IJCAI). – reference: Aalok Thakkar, Aaditya Naik, Nathaniel Sands, Rajeev Alur, Mayur Naik, and Mukund Raghothaman. 2021. Example-guided synthesis of relational queries. In Proceedings of the ACM Conference on Programming Language Design and Implementation (PLDI). – reference: Chenglong Wang, Alvin Cheung, and Rastislav Bodik. 2017. Synthesizing highly expressive SQL queries from input-output examples. In Proceedings of the Conference on Programming Language Design and Implementation (PLDI). – reference: Lars Ole Andersen. 1994. Program Analysis and Specialization for the C Programming Language. Ph. D. Dissertation. DIKU, University of Copenhagen. – reference: Serge Abiteboul, Richard Hull, and Victor Vianu. 1995. Foundations of Databases. Addison-Wesley. – reference: Mark Law, Alessandra Russo, and Krysia Broda. 2020. The ILASP system for Inductive Learning of Answer Set Programs. CoRR, abs/2005.00904 (2020). – reference: Daniel Conrad Halbert. 1984. Programming by Example. Ph. D. Dissertation. AAI8512843 – reference: Andrew Cropper, Sebastijan Dumancic, and Stephen H. Muggleton. 2020. Turning 30: New Ideas in Inductive Logic Programming. In Proceedings of the International Joint Conference on Artificial Intelligence (IJCAI). – reference: Yu Feng, Ruben Martins, Osbert Bastani, and Isil Dillig. 2018. Program Synthesis Using Conflict-Driven Learning. SIGPLAN Not., 53, 4 (2018), jun, 420–435. issn:0362-1340 https://doi.org/10.1145/3296979.3192382 10.1145/3296979.3192382 – reference: Aws Albarghouthi, Sumit Gulwani, and Zachary Kincaid. 2013. Recursive Program Synthesis. In Computer Aided Verification. Springer Berlin Heidelberg, 934–950. https://doi.org/10.1007/978-3-642-39799-8_67 10.1007/978-3-642-39799-8_67 – reference: Sumit Gulwani. 2011. Automating string processing in spreadsheets using input-output examples. In Proceedings of the 38th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages - POPL ' 11. ACM Press. https://doi.org/10.1145/1926385.1926423 10.1145/1926385.1926423 – reference: Veselin Raychev, Pavol Bielik, Martin Vechev, and Andreas Krause. 2016. Learning programs from noisy data. In Proceedings of the 43rd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages. ACM. https://doi.org/10.1145/2837614.2837671 10.1145/2837614.2837671 – reference: Yu Feng, Ruben Martins, Osbert Bastani, and Isil Dillig. 2018. Program Synthesis Using Conflict-Driven Learning. In Proceedings of the 39th ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI 2018). Association for Computing Machinery, New York, NY, USA. 420–435. isbn:9781450356985 https://doi.org/10.1145/3192366.3192382 10.1145/3192366.3192382 – reference: Shachar Itzhaky, Hila Peleg, Nadia Polikarpova, Reuben N. S. Rowe, and Ilya Sergey. 2021. Cyclic program synthesis. In Proceedings of the 42nd ACM SIGPLAN International Conference on Programming Language Design and Implementation. ACM. https://doi.org/10.1145/3453483.3454087 10.1145/3453483.3454087 – reference: Chenglong Wang, Alvin Cheung, and Rastislav Bodik. 2017. Interactive Query Synthesis from Input-Output Examples. In Proceedings of the 2017 ACM International Conference on Management of Data. ACM. https://doi.org/10.1145/3035918.3058738 10.1145/3035918.3058738 – reference: Honghua Dong, Jiayuan Mao, Tian Lin, Chong Wang, Lihong Li, and Denny Zhou. 2019. Neural Logic Machines. In Proceedings of the 7th International Conference on Learning Representations (ICLR). https://doi.org/10.1145/3340531.3411949 10.1145/3340531.3411949 – reference: Chenglong Wang, Alvin Cheung, and Rastislav Bodik. 2017. Interactive Query Synthesis from Input-Output Examples. In Proceedings of the ACM Conference on Management of Data (SIGMOD). – reference: Sai Zhang and Yuyin Sun. 2013. Automatically synthesizing SQL queries from input-output examples. In 2013 28th IEEE/ACM International Conference on Automated Software Engineering (ASE). IEEE. https://doi.org/10.1109/ase.2013.6693082 10.1109/ase.2013.6693082 – reference: Vu Le, Daniel Perelman, Oleksandr Polozov, Mohammad Raza, Abhishek Udupa, and Sumit Gulwani. 2017. Interactive Program Synthesis. ArXiv, abs/1703.03539 (2017). – reference: Richard Evans and Edward Grefenstette. 2018. Learning Explanatory Rules from Noisy Data. J. Artif. Int. Res., 61, 1 (2018), Jan., 1–64. issn:1076-9757 – reference: Ana Milanova, Atanas Rountev, and Barbara Ryder. 2002. Parameterized Object Sensitivity for Points-to and Side-effect Analyses for Java. In Proceedings of the 2002 ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA 2002). ACM, 1–11. isbn:1-58113-562-9 – reference: James Cheney, Laura Chiticariu, and Wang-Chiew Tan. 2009. Provenance in Databases: Why, How, and Where. Foundations and Trends in Databases, 1, 4 (2009). – reference: Ruyi Ji, Jingtao Xia, Yingfei Xiong, and Zhenjiang Hu. 2021. Generalizable synthesis through unification. Proceedings of the ACM on Programming Languages, 5, OOPSLA (2021), Oct., 1–28. https://doi.org/10.1145/3485544 10.1145/3485544 – reference: John Whaley and Monica Lam. 2004. Cloning-based Context-sensitive Pointer Alias Analysis Using Binary Decision Diagrams. In Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI 2004). ACM, 131–144. isbn:1-58113-807-5 https://doi.org/10.1145/996841.996859 10.1145/996841.996859 – reference: Michael Sipser. 2012. Introduction to the Theory of Computation. Cengage Learning. – reference: Mukund Raghothaman, Jonathan Mendelson, David Zhao, Mayur Naik, and Bernhard Scholz. 2020. Provenance-guided synthesis of Datalog programs. In Proceedings of the ACM Symposium on Principles of Programming Languages (POPL). – reference: Jonathan Mendelson, Aaditya Naik, Mukund Raghothaman, and Mayur Naik. 2021. GenSynth: Synthesizing Datalog Programs without Language Bias. In Proceedings of the Conference on Artificial Intelligence (AAAI). – reference: Tim Rocktäschel and Sebastian Riedel. 2017. End-to-end Differentiable Proving. In Advances in Neural Information Processing Systems (NeurIPS). – reference: David Zhao, Pavle Subotic, and Bernhard Scholz. 2020. Debugging Large-scale Datalog: A Scalable Provenance Evaluation Strategy. ACM Trans. Program. Lang. Syst., 42, 2 (2020). – reference: Sergey Mechtaev, Jooyong Yi, and Abhik Roychoudhury. 2015. DirectFix: Looking for Simple Program Repairs. In 2015 IEEE/ACM 37th IEEE International Conference on Software Engineering. IEEE. https://doi.org/10.1109/icse.2015.63 10.1109/icse.2015.63 – reference: Xujie Si, Woosuk Lee, Richard Zhang, Aws Albarghouthi, Paraschos Koutris, and Mayur Naik. 2018. Syntax-guided Synthesis of Datalog Programs. In Proceedings of the ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE). https://doi.org/10.1145/3236024.3236034 10.1145/3236024.3236034 – reference: Andrew Cropper and Rolf Morel. 2021. Learning Programs by Learning from Failures. Machine Learning, 110 (2021), 801–856. – reference: Ruyi Ji, Jingjing Liang, Yingfei Xiong, Lu Zhang, and Zhenjiang Hu. 2020. Question selection for interactive program synthesis. In Proceedings of the 41st ACM SIGPLAN Conference on Programming Language Design and Implementation. ACM. https://doi.org/10.1145/3385412.3386025 10.1145/3385412.3386025 – reference: Yannis Smaragdakis, Martin Bravenboer, and Ondrej Lhoták. 2011. Pick Your Contexts Well: Understanding Object-sensitivity. In Proceedings of the 38th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL 2011). ACM, 17–30. isbn:978-1-4503-0490-0 https://doi.org/10.1145/1926385.1926390 10.1145/1926385.1926390 – reference: Fan Yang, Zhilin Yang, and William Cohen. 2017. Differentiable learning of logical rules for knowledge base reasoning. In Advances in Neural Information Processing Systems (NeurIPS). – reference: Azadeh Farzan and Victor Nicolet. 2021. Counterexample-Guided Partial Bounding for Recursive Function Synthesis. In Computer Aided Verification. Springer International Publishing, 832–855. https://doi.org/10.1007/978-3-030-81685-8_39 10.1007/978-3-030-81685-8_39 – reference: Aws Albarghouthi, Paraschos Koutris, Mayur Naik, and Calvin Smith. 2017. Constraint-based synthesis of Datalog programs. In Proceedings of the International Conference on Principles and Practice of Constraint Programming (CP). – reference: Stephen Muggleton, Dianhuan Lin, and Alireza Tamaddoni-Nezhad. 2015. Meta-interpretive Learning of Higher-order Dyadic Datalog: Predicate Invention Revisited. Machine Learning, 100, 1 (2015), 01 July, 49–73. issn:1573-0565 https://doi.org/10.1007/s10994-014-5471-y 10.1007/s10994-014-5471-y – reference: Saswat Padhi, Prateek Jain, Daniel Perelman, Oleksandr Polozov, Sumit Gulwani, and Todd Millstein. 2018. FlashProfile: a framework for synthesizing data profiles. Proceedings of the ACM on Programming Languages, 2, OOPSLA (2018), Oct., 1–28. https://doi.org/10.1145/3276520 10.1145/3276520 – reference: Tim Rocktäschel and Sebastian Riedel. 2017. End-to-end Differentiable Proving. In Advances in Neural Information Processing Systems, I. Guyon, U. V. Luxburg, S. Bengio, H. Wallach, R. Fergus, S. Vishwanathan, and R. Garnett (Eds.). 30, Curran Associates, Inc.. https://proceedings.neurips.cc/paper/2017/file/b2ab001909a8a6f04b51920306046ce5-Paper.pdf – volume-title: Proceedings of the Conference on Programming Language Design and Implementation (PLDI). year: 2017 ident: e_1_2_1_36_1 – ident: e_1_2_1_30_1 doi: 10.24963/ijcai.2019/847 – ident: e_1_2_1_38_1 – ident: e_1_2_1_26_1 doi: 10.1145/2837614.2837671 – ident: e_1_2_1_20_1 doi: 10.1109/icse.2015.63 – ident: e_1_2_1_27_1 – volume-title: Provenance in Databases: Why, How, and Where. Foundations and Trends in Databases, 1, 4 year: 2009 ident: e_1_2_1_5_1 – volume-title: Proceedings of the International Joint Conference on Artificial Intelligence (IJCAI). ident: e_1_2_1_6_1 – volume-title: Foundations of Databases ident: e_1_2_1_1_1 – ident: e_1_2_1_9_1 doi: 10.5555/3241691.3241692 – ident: e_1_2_1_25_1 doi: 10.1145/3371130 – ident: e_1_2_1_15_1 doi: 10.1145/3453483.3454087 – ident: e_1_2_1_8_1 doi: 10.1145/3340531.3411949 – ident: e_1_2_1_7_1 doi: 10.1007/s10994-020-05934-z – ident: e_1_2_1_35_1 doi: 10.1145/3035918.3058738 – ident: e_1_2_1_37_1 doi: 10.1145/996841.996859 – ident: e_1_2_1_2_1 doi: 10.1007/978-3-642-39799-8_67 – volume-title: Proceedings of the Conference on Artificial Intelligence (AAAI). year: 2021 ident: e_1_2_1_21_1 – ident: e_1_2_1_31_1 – volume-title: Program Analysis and Specialization for the C Programming Language. Ph. D. Dissertation. DIKU ident: e_1_2_1_4_1 – ident: e_1_2_1_24_1 doi: 10.1145/3276520 – ident: e_1_2_1_10_1 doi: 10.1007/978-3-030-81685-8_39 – ident: e_1_2_1_16_1 doi: 10.1145/3385412.3386025 – volume-title: The ILASP system for Inductive Learning of Answer Set Programs. CoRR, abs/2005.00904 year: 2020 ident: e_1_2_1_18_1 – ident: e_1_2_1_14_1 – ident: e_1_2_1_39_1 doi: 10.1109/ase.2013.6693082 – ident: e_1_2_1_17_1 doi: 10.1145/3485544 – ident: e_1_2_1_32_1 doi: 10.1145/1926385.1926390 – volume-title: Interactive Program Synthesis. ArXiv, abs/1703.03539 year: 2017 ident: e_1_2_1_19_1 – ident: e_1_2_1_23_1 doi: 10.1007/s10994-014-5471-y – ident: e_1_2_1_12_1 doi: 10.1145/3192366.3192382 – volume-title: Advances in Neural Information Processing Systems year: 2017 ident: e_1_2_1_28_1 – start-page: 562 volume-title: Proceedings of the 2002 ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA year: 2002 ident: e_1_2_1_22_1 – ident: e_1_2_1_13_1 doi: 10.1145/1926385.1926423 – volume-title: Proceedings of the International Conference on Principles and Practice of Constraint Programming (CP). year: 2017 ident: e_1_2_1_3_1 – volume: 42 year: 2020 ident: e_1_2_1_40_1 article-title: Debugging Large-scale Datalog: A Scalable Provenance Evaluation Strategy publication-title: ACM Trans. Program. Lang. Syst. – ident: e_1_2_1_29_1 doi: 10.1145/3236024.3236034 – ident: e_1_2_1_33_1 doi: 10.1145/3410307 – ident: e_1_2_1_11_1 doi: 10.1145/3296979.3192382 – volume-title: Proceedings of the ACM Conference on Management of Data (SIGMOD). year: 2017 ident: e_1_2_1_34_1 |
| SSID | ssj0001934839 |
| Score | 2.2628949 |
| Snippet | Synthesizing relational queries from data is challenging in the presence of recursion and invented predicates. We propose a fully automated approach to... |
| SourceID | crossref acm |
| SourceType | Enrichment Source Index Database Publisher |
| StartPage | 1394 |
| SubjectTerms | Automatic programming Constraint and logic programming Information systems Programming by example Relational database query languages Software and its engineering Theory of computation |
| SubjectTermsDisplay | Information systems -- Relational database query languages Software and its engineering -- Automatic programming Software and its engineering -- Programming by example Theory of computation -- Constraint and logic programming |
| Title | Mobius: Synthesizing Relational Queries with Recursive and Invented Predicates |
| URI | https://dl.acm.org/doi/10.1145/3622847 |
| Volume | 7 |
| WOSCitedRecordID | wos001087279100051&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: PRVHPJ databaseName: ROAD: Directory of Open Access Scholarly Resources customDbUrl: eissn: 2475-1421 dateEnd: 99991231 omitProxy: false ssIdentifier: ssj0001934839 issn: 2475-1421 databaseCode: M~E dateStart: 20170101 isFulltext: true titleUrlDefault: https://road.issn.org providerName: ISSN International Centre |
| link | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwtV1Nb9NAEF2FwoFLWwqIFIr2gLgZamfttblFFVUPJA0kSL1Fa-9ahLpOldpR4dCf0t_aGe-HrbQScOBiWdauI-9MZmZn35sh5J0vOctkHHp5miqPcSa8OAljDyudBMiilVI3m-DjcXx2lkx6vVvLhVkXvCzj6-vk8r-KGp6BsJE6-w_idi-FB3APQocriB2ufyX40TJd1A3QbfqrhPDuavFbQ-wKm_f7WmN1Y8Nr-4YJ9wbDrpHBiH9USCBoTnAqAzE04evEubsGATI8GuFhg8F4XeDP2PynC9VnP8T5uUZxD0WxdMSgKXKMtX3H7P1CFa2VrlbLuk3YO50sag0GFz-VWnfTFUEDfNNsSm3VAsZDz2eaFv1BPfDMmGXe0b7T08n0yzDoGFoIXFnHaftMM0DvOwSGtTPAS6Mbbn2ePeffcIUOoKjp2uHcTHxEHgc8TBAyOLrp5PCSAYubZnXuCzQvG-d-NHMx7MkuOmFPJ36Z7ZJts_GgQ60wz0hPlXtkxzb1oMbGPydjrT-faFd7aKs91GgPRe2hTnsoiJNa7aGt9rwg348_z45OPNN0wxMB55UnFeIy8ihSsNNUqRAqZFGeY3c6-DwJ4agfHDIRKl9G-aGfpdi7msGAAfznszwcvCRb5bJUrwhlKfeTGMsR5ZIpP05TFnAVCTlIJGzUkz7Zg5WZX-qyKnat--S9Xal5ZurUY7uUYr4hlD6hbqB9x8aQ_T8PeU2etmr6hmxVq1odkCfZulpcrd428r4Du_SAEw |
| linkProvider | ISSN International Centre |
| 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=Mobius%3A+Synthesizing+Relational+Queries+with+Recursive+and+Invented+Predicates&rft.jtitle=Proceedings+of+ACM+on+programming+languages&rft.au=Thakkar%2C+Aalok&rft.au=Sands%2C+Nathaniel&rft.au=Petrou%2C+George&rft.au=Alur%2C+Rajeev&rft.date=2023-10-16&rft.issn=2475-1421&rft.eissn=2475-1421&rft.volume=7&rft.issue=OOPSLA2&rft.spage=1394&rft.epage=1417&rft_id=info:doi/10.1145%2F3622847&rft.externalDBID=n%2Fa&rft.externalDocID=10_1145_3622847 |
| thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=2475-1421&client=summon |
| thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=2475-1421&client=summon |
| thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=2475-1421&client=summon |