14 views

Uploaded by Habib Cse

reduced order bdd

- 2011 3NMaths C05DT2
- Models of Computation Solution Manual
- SurdsExamQuestions.pdf
- 528218
- Efficiency of Analytical Methodologies in Uncertainity Analysis of Seismic Core Damage Frequency
- Excel Solver
- MTAP
- Power Flow Example.xls
- Untitled
- antc
- Sugeno-Style Fuzzy Inference
- Simplex Method
- Hellotrolkdid
- HW7 Sol 50395
- Complexity Classes
- 07-minterm_maxterm.pdf
- ZR_08_01.pdf
- Mat Hans
- ejercicio 1.docx
- 1.2 Function Notation

You are on page 1of 49

Manas Thakur

Motivating Example

Motivating Example

Motivating Example

Motivating Example

Motivating Example

Motivating Example

Motivating Example

Motivating Example

We got an ROBDD!!

Introduction

Overview

1 Motivating Example

2 Introduction

3 Constructing ROBDDs

4 Applications

5 Conclusion

Introduction

Definition

A Binary Decision Diagram is a rooted DAG with

One or two terminal nodes of out-degree zero labeled 0 or 1

A set of variable nodes of out-degree two

Introduction

respect a given linear order.

b1 < b2 < ... < bn

Introduction

respect a given linear order.

b1 < b2 < ... < bn

An unordered BDD

Introduction

NP-Complete

Introduction

Definition

An OBDD is reduced if it satisfies the following properties:

Uniqueness

low (u) = low (v ) and high(u) = high(v ) implies u = v

Non-redundant tests

low (u) 6= high(u)

Introduction

Properties of ROBDDs

Insight: As the relation gets larger, the number of dont-care bits

increases, leading to fewer necessary nodes (usually)

representing it

Hence, satisfiability, tautology-check, and equivalence can be tested in

deterministic time

For Boolean expressions, this problem is NP-Complete

Constructing ROBDDs

(a1 a2 ... an ) ... (a1 a2 ... an )

Satisfiability: easy; Tautology check: hard

Constructing ROBDDs

(a1 a2 ... an ) ... (a1 a2 ... an )

Satisfiability: easy; Tautology check: hard

(a1 a2 ... an ) ... (a1 a2 ... an )

Tautology check: easy; Satisfiability: hard

Constructing ROBDDs

(a1 a2 ... an ) ... (a1 a2 ... an )

Satisfiability: easy; Tautology check: hard

(a1 a2 ... an ) ... (a1 a2 ... an )

Tautology check: easy; Satisfiability: hard

Reduction?

Constructing ROBDDs

(a1 a2 ... an ) ... (a1 a2 ... an )

Satisfiability: easy; Tautology check: hard

(a1 a2 ... an ) ... (a1 a2 ... an )

Tautology check: easy; Satisfiability: hard

Reduction?

No hopes since conversion between CNF and DNF is exponential

Constructing ROBDDs

the if-then-else operator and the constants 0 and 1, such that all tests

are performed only on variables.

x y0 , y1 = (x y0 ) (x y1 )

Constructing ROBDDs

the if-then-else operator and the constants 0 and 1, such that all tests

are performed only on variables.

x y0 , y1 = (x y0 ) (x y1 )

More examples

x = x (1, 0)

Constructing ROBDDs

the if-then-else operator and the constants 0 and 1, such that all tests

are performed only on variables.

x y0 , y1 = (x y0 ) (x y1 )

More examples

x = x (1, 0)

x = (x 0, 1)

Constructing ROBDDs

the if-then-else operator and the constants 0 and 1, such that all tests

are performed only on variables.

x y0 , y1 = (x y0 ) (x y1 )

More examples

x = x (1, 0)

x = (x 0, 1)

x y = (x 1, y )

Constructing ROBDDs

the if-then-else operator and the constants 0 and 1, such that all tests

are performed only on variables.

x y0 , y1 = (x y0 ) (x y1 )

More examples

x = x (1, 0)

x = (x 0, 1)

x y = (x 1, y )

x y = (x y , 1)

Constructing ROBDDs

the if-then-else operator and the constants 0 and 1, such that all tests

are performed only on variables.

x y0 , y1 = (x y0 ) (x y1 )

More examples

x = x (1, 0)

x = (x 0, 1)

x y = (x 1, y )

x y = (x y , 1)

x y = x (y 1, 0), (y 0, 1)

Constructing ROBDDs

t = x1 t1 , t0

Constructing ROBDDs

t = x1 t1 , t0

t0 = y1 0, t00

Constructing ROBDDs

t = x1 t1 , t0

t0 = y1 0, t00

t1 = y1 t11 , 0

Constructing ROBDDs

t = x1 t1 , t0

t0 = y1 0, t00

t1 = y1 t11 , 0

t00 = x2 t001 , t000

Constructing ROBDDs

t = x1 t1 , t0

t0 = y1 0, t00

t1 = y1 t11 , 0

t00 = x2 t001 , t000

t11 = x2 t111 , t110

Constructing ROBDDs

t = x1 t1 , t0

t0 = y1 0, t00

t1 = y1 t11 , 0

t00 = x2 t001 , t000

t11 = x2 t111 , t110

t000 = y2 0, 1

Constructing ROBDDs

t = x1 t1 , t0

t0 = y1 0, t00

t1 = y1 t11 , 0

t00 = x2 t001 , t000

t11 = x2 t111 , t110

t000 = y2 0, 1

t001 = y2 1, 0

Constructing ROBDDs

t = x1 t1 , t0

t0 = y1 0, t00

t1 = y1 t11 , 0

t00 = x2 t001 , t000

t11 = x2 t111 , t110

t000 = y2 0, 1

t001 = y2 1, 0

t110 = y2 0, 1

Constructing ROBDDs

t = x1 t1 , t0

t0 = y1 0, t00

t1 = y1 t11 , 0

t00 = x2 t001 , t000

t11 = x2 t111 , t110

t000 = y2 0, 1

t001 = y2 1, 0

t110 = y2 0, 1

t111 = y2 1, 0

Constructing ROBDDs

t = x1 t1 , t0

t0 = y1 0, t00

t1 = y1 t11 , 0

t00 = x2 t001 , t000

t11 = x2 t111 , t110

t000 = y2 0, 1

t001 = y2 1, 0

t110 = y2 0, 1

t111 = y2 1, 0

Constructing ROBDDs

t = x1 t1 , t0

t0 = y1 0, t00

t1 = y1 t11 , 0

t00 = x2 t001 , t000

t11 = x2 t111 , t110

t000 = y2 0, 1

t001 = y2 1, 0

t110 = y2 0, 1

t111 = y2 1, 0

Constructing ROBDDs

t = x1 t1 , t0

t0 = y1 0, t00

t = x1 t1 , t0

t1 = y1 t11 , 0

t0 = y1 0, t00

t00 = x2 t001 , t000

t1 = y1 t00 , 0

t11 = x2 t111 , t110

t00 = x2 t001 , t000

t000 = y2 0, 1

t000 = y2 0, 1

t001 = y2 1, 0

t001 = y2 1, 0

t110 = y2 0, 1

t111 = y2 1, 0

Applications

1 Motivating Example

2 Introduction

3 Constructing ROBDDs

4 Applications

5 Conclusion

Applications

Applications of BDDs

Model Checking

Applications

Let a,b,c be reference variables and A,B,C be object references.

The points-to relation (a,A),(a,B),(b,A),(b,B),(c,A),(c,B),(c,C) is

represented as:

Applications

Let a,b,c be reference variables and A,B,C be object references.

The points-to relation (a,A),(a,B),(b,A),(b,B),(c,A),(c,B),(c,C) is

represented as:

On the board.

Applications

bddbddb

Decision Diagrams. John Whaley and Monica S. Lam. PLDI04.

Applications

bddbddb

Decision Diagrams. John Whaley and Monica S. Lam. PLDI04.

On the Board

1 Represent program information using relations

Express relations as BDDs

Applications

bddbddb

Decision Diagrams. John Whaley and Monica S. Lam. PLDI04.

On the Board

1 Represent program information using relations

Express relations as BDDs

2 Write program analyses as Datalog queries

Express queries as BDD operations

Applications

bddbddb

Decision Diagrams. John Whaley and Monica S. Lam. PLDI04.

On the Board

1 Represent program information using relations

Express relations as BDDs

2 Write program analyses as Datalog queries

Express queries as BDD operations

3 Get solutions!

Perform operations on BDDs

Applications

Andersen.

PhD Thesis (2006).

John Whaleys PhD Thesis (2007).

Conclusion

Conclusion

Conclusion

Conclusion

useful!

- 2011 3NMaths C05DT2Uploaded byTeo Bw
- Models of Computation Solution ManualUploaded byZed Lytle
- SurdsExamQuestions.pdfUploaded byNorzaifee Nizamudin
- 528218Uploaded byAvinashRai
- Efficiency of Analytical Methodologies in Uncertainity Analysis of Seismic Core Damage FrequencyUploaded bySami Syed
- Excel SolverUploaded byfdesdunes00
- MTAPUploaded byMichael John Binal
- Power Flow Example.xlsUploaded bySamsiah Cw
- UntitledUploaded byapi-162641823
- antcUploaded byRahil Andleeb
- Sugeno-Style Fuzzy InferenceUploaded byByron Xavier Lima Cedillo
- Simplex MethodUploaded byRj Rajasthan
- HellotrolkdidUploaded byMastermind
- HW7 Sol 50395Uploaded byjadest6
- Complexity ClassesUploaded byvinod Reddy
- 07-minterm_maxterm.pdfUploaded byIvandra Latumakulita
- ZR_08_01.pdfUploaded byDheybi Cervan
- Mat HansUploaded byJorge Bendahan
- ejercicio 1.docxUploaded byAnonymous OaEJ8L4Tf
- 1.2 Function NotationUploaded byBradley Singh
- lec2.pdfUploaded byarun
- Clase 13 Calculo Numerico IUploaded byenrique
- 09 Informed Search (1)Uploaded byhariprasathk
- EulerUploaded byNItin Raut
- Bit ManipulationUploaded byDipanker Singh
- Basic Properties of GroupsUploaded bySam Le
- Robotic Path Planning using Multi Neuron Heuristic SearchUploaded byRahul Kala
- Abhijit Java n VbscriptUploaded byBiki Singh
- 4.Divide and ConquerUploaded byMushan Bbbbar
- s_even_even_09_10Uploaded byAnkit Makol

- 2_H_Nily RanjanUploaded byHabib Cse
- 80-BAFA.pdfUploaded byHabib Cse
- Research Proposal on vanet securityUploaded byHabib Cse
- ch2Uploaded byHabib Cse
- Transport Layer StdUploaded byHabib Cse
- OpenGLUploaded byHabib Cse
- Basics of Data Communication and Computer Networking (262 KB)Uploaded bybhabani009
- AssemblerUploaded byindian01
- 20181001102014_ISSB_EXAM_DEO_2019_A_BATCH_14_17_28_31_October_2018Uploaded byHabib Cse
- CSEMCQ.pdfUploaded byHabib Cse
- lecture9animation-120317134228-phpapp01Uploaded byHabib Cse
- computer graphicsUploaded byKour Neetu
- 0509.pdfUploaded byHabib Cse
- Computer Graphics FractalsUploaded byHabib Cse
- IJCTT-V9P125Uploaded byHabib Cse
- Spline Representations Computer Graphics Lecture SlidesUploaded byHabib Cse
- OtsuUploaded byfamtalu
- OtsuUploaded byfamtalu
- AnimationUploaded byHabib Cse
- MTS Quality of Service ParametersUploaded byHabib Cse
- objectrepresentations.pdfUploaded byHabib Cse
- Lec2Uploaded byHabib Cse
- Chap9Notes.pdfUploaded byRahul Gupta

- Benjamin FlyerUploaded bySaher
- MCS-031Uploaded byBageesh M Bose
- ch1- real numbersUploaded byapi-286106888
- A3C5.pdfUploaded byMahaveer Suthar
- 01 4binomial TheoremUploaded byeamcetmaterials
- Complexity Space n TimeUploaded byapi-3814408
- Mediate Dominating Graph of a GraphUploaded byMia Amalia
- Notes on Public Key Cryptography and Primality TestingUploaded byWarren Smith QC (Quantum Cryptanalyst)
- Top CoderUploaded byABHISHEK ANAND
- chromatic0_1Uploaded byJavier Pedrosa
- midtermsol.pdfUploaded byAashish D
- Algorithms and Flowcharts 2Uploaded byManoj Mallakuntla
- Sec 64Uploaded byroufix
- Continued FractionsUploaded byLexi Rizzia
- Pie Chart ArticleUploaded byVictoria Yong Ler
- Notes Important Questions Answers of 11th Math Chapter 4 Exercise 4.7Uploaded byshahrukh
- math 080 final test reviewUploaded byapi-240157292
- Proof by InductionUploaded byWes Swinson
- Practice 7Uploaded bySaifudin Sajadi
- Q2 CorrectionUploaded byviktortodorov
- 8 Horner's AlgorithmUploaded byWiddaAyuiSilma
- RCS406Uploaded byDeepak Dahiya
- Zsigmondy Theorem Proof (1)Uploaded byBlitzkrieg_777
- Ural Championship - Day 1Uploaded bynabilshf
- comb[1].pdfUploaded byjhdmss
- PTTKGTUploaded bykhai
- ArithmeticUploaded byRoshan Raheja
- LevenshteinUploaded byDineshRaviKumar
- Pn-ESTIIUploaded byAnwar Ul Haq
- Mathematical Methods for PhysicistsUploaded byMuhammad HasSan