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...

Celý popis

Uložené v:
Podrobná bibliografia
Vydané v:Proceedings of ACM on programming languages Ročník 7; číslo OOPSLA2; s. 1394 - 1417
Hlavní autori: Thakkar, Aalok, Sands, Nathaniel, Petrou, George, Alur, Rajeev, Naik, Mayur, Raghothaman, Mukund
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