{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/adapting-behaviors-via-reactive-synthesis","title":"Adapting Behaviors via Reactive Synthesis","arxiv_id":"2105.13837","date":"2021-05-28","proceeding":null,"authors":["Gal Amram","Suguman Bansal","Dror Fried","Lucas M. Tabajara","Moshe Y. Vardi","Gera Weiss"],"abstract":"In the \\emph{Adapter Design Pattern}, a programmer implements a \\emph{Target} interface by constructing an \\emph{Adapter} that accesses an existing \\emph{Adaptee} code. In this work, we present a reactive synthesis interpretation to the adapter design pattern, wherein an algorithm takes an \\emph{Adaptee} and a \\emph{Target} transducers, and the aim is to synthesize an \\emph{Adapter} transducer that, when composed with the {\\em Adaptee}, generates a behavior that is equivalent to the behavior of the {\\em Target}. One use of such an algorithm is to synthesize controllers that achieve similar goals on different hardware platforms. While this problem can be solved with existing synthesis algorithms, current state-of-the-art tools fail to scale. To cope with the computational complexity of the problem, we introduce a special form of specification format, called {\\em Separated GR($k$)}, which can be solved with a scalable synthesis algorithm but still allows for a large set of realistic specifications. We solve the realizability and the synthesis problems for Separated GR($k$), and show how to exploit the separated nature of our specification to construct better algorithms, in terms of time complexity, than known algorithms for GR($k$) synthesis. We then describe a tool, called SGR($k$), that we have implemented based on the above approach and show, by experimental evaluation, how our tool outperforms current state-of-the-art tools on various benchmarks and test-cases.","url_abs":"https://arxiv.org/abs/2105.13837v1","url_pdf":"https://arxiv.org/pdf/2105.13837v1.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"links_only","authors_date_abstract":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license), from the Kaggle arXiv metadata snapshot of 2026-09-12"},"code_links":[{"paper_slug":"adapting-behaviors-via-reactive-synthesis","repo_url":"https://github.com/lucasmt/separation-grk","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"none","reach":null}],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":null,"mcp":null,"developers":"https://syntology.ai/developers"},"arxiv_metadata":null,"syntology_extracted_results":null}