skip to main content
10.1145/3195970.3196006acmconferencesArticle/Chapter ViewAbstractPublication PagesdacConference Proceedingsconference-collections
research-article

Canonical computation without canonical representation

Published: 24 June 2018 Publication History

Abstract

A representation of a Boolean function is canonical if, given a variable order, only one instance of the representation is possible for the function. A computation is canonical if the result depends only on the Boolean function and a variable order, and does not depend on how the function is represented and how the computation is implemented.
In the context of Boolean satisfiability (SAT), canonicity of the computation implies that the result (a satisfying assignment for satisfiable instances and an abstraction of the unsat core for unsatisfiable instances) does not depend on the functional representation and the SAT solver used.
This paper shows that SAT-based computations can be made canonical, even though the SAT solver is not using a canonical data structure. This brings advantages in EDA applications, such as irredundant sum of product (ISOP) computation, counter-example minimization, etc, where the uniqueness of solutions and/or improved quality of results justify a runtime overhead.

References

[1]
G. Audemard and L. Simon, SAT solver Glucose 3.0 (2013), http://www.labri.fr/perso/lsimon/glucose/
[2]
Berkeley Logic Synthesis and Verification Group. ABC: A System for Sequential Synthesis and Verification. http://www-cad.eecs.berkeley.edu/~alanmi/abc
[3]
Hardware Model Checking Competitions. fmv.jku.at/hwmcc
[4]
A. Biere, A. Cimatti, E. M. Clarke, M. Fujita, and Y. Zhu, "Symbolic model checking using SAT procedures instead of BDDs", In Proc. DAC'99, pp. 317--320.
[5]
R. E. Bryant, "Graph-based algorithms for Boolean function manipulation". IEEE Trans. Computers, Vol. C-35 (8), August 1986, pp. 677--691.
[6]
O. Coudert, J. C. Madre, H. Fraisse, and H. Touati, "Implicit prime cover computation: An overview", In Proc. SASIMI '93.
[7]
N. Een and N. Sürensson, "An extensible SAT-solver", In Proc. SAT'03, LNCS 2919, pp. 502--518.
[8]
D. E. Knuth. Volume 4, Fascicle 6: Satisfiability, The Art of Computer Programming. Addison-Wesley, Reading, Mass., 2015.
[9]
C.-C. Lee, J.-H. R. Jiang, C.-Y. (R.) Huang, and A. Mishchenko, "Scalable exploration of functional dependency by interpolation and incremental SAT solving", In Proc. ICCAD'07.
[10]
R.-R. Lee, J.-H. R. Jiang, and W.-L. Hung, "Bi-decomposing large Boolean functions via interpolation and satisfiability solving", In Proc. DAC'08, pp. 636--641.
[11]
H.-P. Lin, J.-H. R. Jiang, and R.-R. Lee, "To SAT or not to SAT: Ashenhurst decomposition in a large scale", In Proc. ICCAD'08, pp. 32--37.
[12]
J. Marques-Silva, J. Argelich, A. Graca, and I. Lynce, "Boolean lexicographic optimization: algorithms and applications", Annals of Mathematics and Artificial Intelligence, Vol. 62(3), pp. 317--343, May 2011.
[13]
S. Minato, "Fast generation of irredundant sum-of-products forms from binary decision diagrams", In Proc. SASIMI'92, pp. 64--73.
[14]
S. Minato, "Zero-suppressed BDDs for set manipulation in combinatorial problems". In Proc. DAC '93, pp. 272--277.
[15]
S. Minato and G. DeMicheli. "Finding all simple disjunctive decompositions using irredundant sum-of-products forms", In Proc. ICCAD'98, pp. 111--117.
[16]
A. Mishchenko, N. Een, and R. Brayton, "A toolbox for counter-example analysis and optimization", In Proc. IWLS'13.
[17]
A. Nadel, "Generating diverse solutions in SAT", In Proc. SAT'11, pp. 287--301.
[18]
A. Nadel and V. Ryvchin, "Bit-vector optimization", In Proc. TACAS'16, pp. 851--67.
[19]
A. Petkovska, A. Mishchenko, M. Soeken, G. De Micheli, R. Brayton, and P. Ienne, "Fast generation of lexicographic satisfiable assignments: Enabling canonicity in SAT-based applications", In Proc. ICCAD'16.
[20]
A. Petkovska, A. Mishchenko, D. Novo, M. Owaida, and P. Ienne. "Progressive generation of canonical irredundant sums of products using a SAT solver". In: Advanced Logic Synthesis. Springer, 2018, pp. 169--188.
[21]
A. Petkovska, "Exploiting satisfiability solvers for efficient logic synthesis". Ph.D. Thesis, EPFL, 2017.
[22]
B.-H. Wu, C.-J. Yang, C.-Y. (R.) Huang, and J.-H. R. Jiang. "A robust functional ECO engine by SAT proof minimization and interpolation techniques". In Proc. ICCAD'10, pp. 729--734.
[23]
D. A. Quoc, M. P.-H. Lin, N.-Z. Lee, L.-C. Chen, J.-H. R. Jiang, A. Mishchenko, and R. Brayton, "Efficient computation of ECO patch functions", In Proc. DAC'18.

Cited By

View all
  • (2018)Efficient computation of ECO patch functionsProceedings of the 55th Annual Design Automation Conference10.1145/3195970.3196039(1-6)Online publication date: 24-Jun-2018

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
DAC '18: Proceedings of the 55th Annual Design Automation Conference
June 2018
1089 pages
ISBN:9781450357005
DOI:10.1145/3195970
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Sponsors

In-Cooperation

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 24 June 2018

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Research-article

Conference

DAC '18
Sponsor:
DAC '18: The 55th Annual Design Automation Conference 2018
June 24 - 29, 2018
California, San Francisco

Acceptance Rates

Overall Acceptance Rate 1,770 of 5,499 submissions, 32%

Upcoming Conference

DAC '25
62nd ACM/IEEE Design Automation Conference
June 22 - 26, 2025
San Francisco , CA , USA

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)6
  • Downloads (Last 6 weeks)0
Reflects downloads up to 14 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2018)Efficient computation of ECO patch functionsProceedings of the 55th Annual Design Automation Conference10.1145/3195970.3196039(1-6)Online publication date: 24-Jun-2018

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media