This paper presents a new compressed representation of Boolean functions, called CFLOBDDs (for Context-Free-Language Ordered Binary Decision Diagrams). They are essentially a plug-compatible alternative to BDDs (Binary Decision Diagrams), and hence useful for representing certain classes of functions, matrices, graphs, relations, etc. in a highly compressed fashion. CFLOBDDs share many of the good properties of BDDs, but--in the best case--the CFLOBDD for a Boolean function can be exponentially smaller than any BDD for that function. Compared with the size of the decision tree for a function, a CFLOBDD--again, in the best case--can give a double-exponential reduction in size. They have the potential to permit applications to (i) execute much faster, and (ii) handle much larger problem instances than has been possible heretofore. CFLOBDDs are a new kind of decision diagram that go beyond BDDs (and their many relatives). The key insight is a new way to reuse sub-decision-diagrams: components of CFLOBDDs are structured hierarchically, so that sub-decision-diagrams can be treated as standalone ''procedures'' and reused. We applied CFLOBDDs to the problem of simulating quantum circuits, and found that for several standard problems the improvement in scalability--compared to simulation using BDDs--is quite dramatic. In particular, the number of qubits that could be handled using CFLOBDDs was larger, compared to BDDs, by a factor of 128x for GHZ; 1,024x for BV; 8,192x for DJ; and 128x for Grover's algorithm. (With a 15-minute timeout, the number of qubits that CFLOBDDs can handle are 65,536 for GHZ, 524,288 for BV; 4,194,304 for DJ; and 4,096 for Grover's Algorithm.)
翻译:本文提出了一种名为CFLOBDDs(上下文无关语言有序二叉决策图)的新型布尔函数压缩表示方法。该方法本质上是BDDs(二叉决策图)的即插即用替代方案,因此适用于以高度压缩形式表示特定类别的函数、矩阵、图、关系等数据结构。CFLOBDDs继承了BDDs的诸多优良特性,但在最佳情况下,同一布尔函数的CFLOBDD规模可指数级小于其任何BDD表示。与函数的决策树规模相比,CFLOBDD在最佳情况下可实现双指数规模缩减。该技术有望使应用实现(i)更快执行与(ii)处理远超以往规模的问题实例。CFLOBDDs作为超越BDDs及其众多衍生变体的新型决策图,其核心创新在于子决策图的重用机制:通过分层结构化设计,将子决策图作为独立"过程"进行复用。我们在量子电路仿真中应用CFLOBDDs后发现,相较于BDDs仿真,多个标准问题的可扩展性提升极为显著。具体而言,与BDDs相比,CFLOBDDs可处理的量子比特数在GHZ问题上提升128倍,BV问题提升1024倍,DJ问题提升8192倍,Grover算法提升128倍。(在15分钟超时限制下,CFLOBDDs可处理的量子比特数分别为:GHZ问题65,536比特,BV问题524,288比特,DJ问题4,194,304比特,Grover算法4,096比特。)