Tractable representations for Boolean functional synthesis
Given a Boolean relational specification F ( X , Y ) , where X is a vector of inputs and Y is a vector of outputs, Boolean functional synthesis requires us to compute a vector of (Skolem) functions Ψ ( X ) , one for each output in Y , such that F ( X , Ψ ( X ) ) ↔ ∃ Y F ( X , Y ) holds. This problem...
Saved in:
Published in | Annals of mathematics and artificial intelligence Vol. 92; no. 5; pp. 1051 - 1096 |
---|---|
Main Authors | , , |
Format | Journal Article |
Language | English |
Published |
Cham
Springer International Publishing
01.10.2024
Springer Nature B.V |
Subjects | |
Online Access | Get full text |
Cover
Loading…
Summary: | Given a Boolean relational specification
F
(
X
,
Y
)
, where
X
is a vector of inputs and
Y
is a vector of outputs, Boolean functional synthesis requires us to compute a vector of (Skolem) functions
Ψ
(
X
)
, one for each output in
Y
, such that
F
(
X
,
Ψ
(
X
)
)
↔
∃
Y
F
(
X
,
Y
)
holds. This problem lies at the heart of many applications and has received significant attention in recent years. In this paper, we investigate the role of representation of
F
(
X
,
Y
)
and of
Ψ
(
X
)
in determining the computational hardness of Boolean functional synthesis. We start by showing that an efficient way of existentially quantifying variables from a Boolean formula in a given order yields an efficient solution to Boolean functional synthesis and vice versa. We then propose a semantic normal form, called SynNNF, that guarantees polynomial-time synthesis and characterizes polynomial-time existential quantification for a given order of quantification of variables. We show that several syntactic and other semantic normal forms for Boolean formulas studied in the knowledge compilation literature are subsumed by SynNNF, and that SynNNF is exponentially more succinct than most of them. We also investigate how the representation of the synthesized (Skolem) functions
Ψ
(
X
)
affects the complexity of Boolean functional synthesis, and present a map of complexity based on the representations of
F
(
X
,
Y
)
and
Ψ
(
X
)
. Finally, we propose an algorithm to compile a specification represented as a NNF (including CNF) circuit to SynNNF. We present results of an extensive set of experiments conducted using an implementation of the above algorithm, and two other tools available in the public domain. |
---|---|
ISSN: | 1012-2443 1573-7470 |
DOI: | 10.1007/s10472-023-09907-5 |