Engineering an Efficient Boolean Functional Synthesis Engine

08/12/2021
by   Priyanka Golia, et al.
0

Given a Boolean specification between a set of inputs and outputs, the problem of Boolean functional synthesis is to synthesise each output as a function of inputs such that the specification is met. Although the past few years have witnessed intense algorithmic development, accomplishing scalability remains the holy grail. The state-of-the-art approach combines machine learning and automated reasoning to efficiently synthesise Boolean functions. In this paper, we propose four algorithmic improvements for a data-driven framework for functional synthesis: using a dependency-driven multi-classifier to learn candidate function, extracting uniquely defined functions by interpolation, variables retention, and using lexicographic MaxSAT to repair candidates. We implement these improvements in the state-of-the-art framework, called Manthan. The proposed framework is called Manthan2. Manthan2 shows significantly improved runtime performance compared to Manthan. In an extensive experimental evaluation on 609 benchmarks, Manthan2 is able to synthesise a Boolean function vector for 509 instances compared to 356 instances solved by Manthan— an increment of 153 instances over the state-of-the-art. To put this into perspective, Manthan improved on the prior state-of-the-art by only 76 instances.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
05/14/2020

Manthan: A Data Driven Approach for Boolean Function Synthesis

Boolean functional synthesis is a fundamental problem in computer scienc...
research
04/16/2018

What's hard about Boolean Functional Synthesis

Given a relational specification between Boolean inputs and outputs, the...
research
08/24/2018

Functional Synthesis via Input-Output Separation

Boolean functional synthesis is the process of constructing a Boolean fu...
research
08/17/2019

Knowledge Compilation for Boolean Functional Synthesis

Given a Boolean formula F(X,Y), where X is a vector of outputs and Y is ...
research
04/29/2021

A Normal Form Characterization for Efficient Boolean Skolem Function Synthesis

Boolean Skolem function synthesis concerns synthesizing outputs as Boole...
research
12/15/2022

BNSynth: Bounded Boolean Functional Synthesis

The automated synthesis of correct-by-construction Boolean functions fro...
research
03/14/2023

Gamora: Graph Learning based Symbolic Reasoning for Large-Scale Boolean Networks

Reasoning high-level abstractions from bit-blasted Boolean networks (BNs...

Please sign up or login with your details

Forgot password? Click here to reset