Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

Applications of BDDs in Image Computation and Reachability Analysis for FSMs, Study notes of Electrical and Electronics Engineering

A lecture note from a university course, ece 510 oce, on boolean decision diagrams (bdds) and their applications in image computation and reachability analysis for finite state machines (fsms). The fundamental representation of discrete phenomena using relations, image computation for relations, representing fsms using relations, reachability analysis as an exploration of the state space of fsms using the transition relation, and applications of reachability analysis such as computing the transitive closure of relations and equivalence checking of fsms.

Typology: Study notes

Pre 2010

Uploaded on 08/18/2009

koofers-user-d89
koofers-user-d89 🇺🇸

10 documents

1 / 7

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
1
ECE 510 OCE
BDDs and Their Applications
Lecture 8. Image Computation and
Reachability Analysis
April 20, 2000
Alan Mishchenko
April 20, 2000 ECE 510 OCE: BDDs and Their Applications 2
Overview
Relations as the most fundamental(?)
representation of discrete phenomena
Image computation for relations
Representing FSMs using relations
Reachability analysis as an exploration of the state
space of FSMs using the transition relation
Applications of reachability analysis
Computing the transitive closure of relations
Equivalence checking of FSMs
April 20, 2000 ECE 510 OCE: BDDs and Their Applications 3
Boolean Functions and Relations
Function is a mapping Bn B, B = {0,1}
Function with DCs is a mapping Bn {0,1,-}
Relation is a mapping Bn Bm, n > 0, m > 0.
Example: F( x1,x2, y1,y2,y3 ), n = 2, m = 3
-1011 11101 -1010 0-100 y3
y2
y1
x2
x1B2B3
00
01
10
11
000
001
010
011
100
101
110
111
pf3
pf4
pf5

Partial preview of the text

Download Applications of BDDs in Image Computation and Reachability Analysis for FSMs and more Study notes Electrical and Electronics Engineering in PDF only on Docsity!

ECE 510 OCE

BDDs and Their Applications

Lecture 8. Image Computation and

Reachability Analysis

April 20, 2000

Alan Mishchenko

April 20, 2000 ECE 510 OCE: BDDs and Their Applications 2

Overview

  • Relations as the most fundamental(?) representation of discrete phenomena
  • Image computation for relations
  • Representing FSMs using relations
  • Reachability analysis as an exploration of the state space of FSMs using the transition relation
  • Applications of reachability analysis
    • Computing the transitive closure of relations
    • Equivalence checking of FSMs

April 20, 2000 ECE 510 OCE: BDDs and Their Applications 3

Boolean Functions and Relations

• Function is a mapping Bn^ → B, B = {0,1}

• Function with DCs is a mapping B n^ → {0,1,-}

• Relation is a mapping Bn^ → Bm, n > 0, m > 0.

• Example: F( x 1 ,x 2 , y 1 ,y 2 ,y 3 ), n = 2, m = 3

x 1 x 2 y 1 y 2 y 3 B 2 B

00 01 10 11

000 001 010 011 100 101 110 111

April 20, 2000 ECE 510 OCE: BDDs and Their Applications 4

Example

y (^1)

x 1 x 2 x 3 y (^2)

x

x

x 3

y

y

B^3

B^2

00 01 10 11

000 001 010 011 100 101 110 111

April 20, 2000 ECE 510 OCE: BDDs and Their Applications 5

Definition of Image

  • Definitions. Given the relation R: B n^ → Bm^ , the set of all vertices in Bn^ is the input domain while the set of all vertices in Bm^ is the output domain. The domain of the relation is the subset of the input domain, for which the relation is defined. The range of the relation is the subset of the output domain which, under some inputs, may be the value of the relation
  • Definition. Given subset X of the relation’s domain (X∈Bn^ ), the image of X w.r.t. the relation R is the subset Y of the range (Y∈B m) composed of values the relation can take if its input values belong to X. Y = ImR(X)

April 20, 2000 ECE 510 OCE: BDDs and Their Applications 6

Graphical Interpretation of Image

Bn

X

Bm

Y

R: Bn^ → Bm

April 20, 2000 ECE 510 OCE: BDDs and Their Applications 10

Example (continued)

y (^2)

y (^1)

x 1 x 2 x 3 F

other

x (^1)

x

x

y

y

0 1

April 20, 2000 ECE 510 OCE: BDDs and Their Applications 11

FSM Transition Relation

  • FSM is { I, O, S, δ, λ). Suppose r is the number of inputs I, m is the number of states S, and n is the number of outputs O; δk (i,s) and λk(i,s) are vectors of next-state and output functions
  • Transition relation is a boolean function T: {0,1}r^ x {0,1}m^ x {0,1} m^ → {0,1} such that T( i, s, n ) = 1 iff state n can be reached in exactly one transition from state s when input i is applied

April 20, 2000 ECE 510 OCE: BDDs and Their Applications 12

FSM Output Relation

  • Output relation is a boolean function O: {0,1} r^ x {0,1}m^ x {0,1} n^ → {0,1} such that O( i, x, o) = 1 iff output o can be produced when the FSM is in state x and input i is applied

April 20, 2000 ECE 510 OCE: BDDs and Their Applications 13

Deriving Transition and Output Relations from NS/Output Functions

  • If the FSM is given as { I, O, S, δ, λ), where δk (i,s) and λk(i,s) are vectors of next-state and output functions, it is possible to compute the transition and output relations as follows: T( i,s,n ) = Πk ( nk = δk (i,s) ); O( i,s,o ) = Πk ( ok = λk (i,s) )
  • Given the transition and output relations, it is possible to derive the next state and output functions

δk(i,s) = ∃∃∃∃nx (T( i,s,n ) & nk), x ≠ k

April 20, 2000 ECE 510 OCE: BDDs and Their Applications 14

Reachability Analysis for FSMs

  • Reachability analysis is the use of image computation to derive the set of all reachable states by traversing the STG of the FSM, starting from the set of initial(reset) states
  • The set of reachable states can be used:
    • to simplify the initial transition and output relations
    • to re-encode the FSM
    • to check whether a property is true for these states
      • in equivalence checking
      • in symbolic model checking

April 20, 2000 ECE 510 OCE: BDDs and Their Applications 15

Computing Reachable State Set

Reached = ResetStates; do { ReachedBefore = Reached; Reached += Image(Reached); } while (ReachedBefore != Reached);

(the state sets in this procedure are given by

characteristic functions represented using BDDs)

April 20, 2000 ECE 510 OCE: BDDs and Their Applications 19

Product Machine

M

M

EXOR

a b

a b c

O 1

c O (^2)

  • Given FSM { I, O, S, δ, λ}, the product machine is { I, {0,1}, SxS, δ^2 , λ^2 } (r inputs, 2m states, 1 output)

April 20, 2000 ECE 510 OCE: BDDs and Their Applications 20

Equivalence Checking Formulas

  • Machines M1 and M2 are equivalent iff ∀∀∀∀i, x, y [ AR(x,y) => O(i,x,y) ] = 1 where AR (x,y) is the characteristic function of the set of reachable states of product machine and O(i,x,y) is the output relation of product machine
  • Alternatively, machines M1 and M2 are not equivalent iff ∃∃∃∃i, x, y [ AR(x,y) & O’(i,x,y) ] = 0