Boolean functional synthesis is the process of constructing a Boolean function from a Boolean specification that relates input and output variables. Despite recent developments in synthesis algorithms, Boolean functional synthesis remains a challenging problem even when state-of-the-art techniques are used for decomposing the specification. In this work, we present a new decomposition approach that decomposes the specification into separate input and output components. To begin with, we adapt the notion of “sequential decomposition” and present a framework that allows the input and output components to be independently synthesized and then re-composed to yield an implementation of the overall specification. Although theoretically appealing, this approach suffers from some practical drawbacks, as evidenced by our experiments. This motivates us to propose a relaxed approach to synthesis by decomposition. In the relaxed approach, we start with a specification given as a conjunctive normal form (CNF) formula, and obtain a decomposition of the specification by alternatingly analyzing the input and output components repeatedly. We also exploit specific properties of these components to ultimately implement the overall specification. We prove that if the input component of the CNF specification has specific structural properties, our approach can achieve synthesis in polynomial time. We also show by experimental evaluations that our algorithm performs well in practice on instances that are challenging for existing state-of-the-art tools. Thus, our decomposition-based synthesis approach serves as a good complement to other state-of-the-art techniques in a portfolio approach to Boolean functional synthesis.
הערה ביבליוגרפיתPublisher Copyright:
© 2023, The Author(s), under exclusive licence to Springer Science+Business Media, LLC, part of Springer Nature.