yakir vizel 1,2 and orna grumberg 1 1.computer science department, the technion, haifa, israel....

25
Yakir Vizel 1,2 and Orna Grumberg 1 1. Computer Science Department, The Technion, Haifa, Israel. 2. Architecture, System Level and Validation Solutions, Intel Development Center, Haifa, Israel Formal Methods in Computer Aided Design, Austin, Texas 2009 1

Upload: joshua-pendergast

Post on 02-Apr-2015

213 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Yakir Vizel 1,2 and Orna Grumberg 1 1.Computer Science Department, The Technion, Haifa, Israel. 2.Architecture, System Level and Validation Solutions,

Yakir Vizel1,2

andOrna Grumberg1

1. Computer Science Department, The Technion, Haifa, Israel.2. Architecture, System Level and Validation Solutions, Intel

Development Center, Haifa, Israel

Formal Methods in Computer Aided Design, Austin, Texas 2009 1

Page 2: Yakir Vizel 1,2 and Orna Grumberg 1 1.Computer Science Department, The Technion, Haifa, Israel. 2.Architecture, System Level and Validation Solutions,

Introduction Model checking Forward Reachability Analysis Bounded Model Checking

Interpolation Interpolation Interpolation-Sequence

Interpolation-Sequence Based Model Checking

Experimental Results

Formal Methods in Computer Aided Design, Austin, Texas 2009 2

Page 3: Yakir Vizel 1,2 and Orna Grumberg 1 1.Computer Science Department, The Technion, Haifa, Israel. 2.Architecture, System Level and Validation Solutions,

Formal Methods in Computer Aided Design, Austin, Texas 2009 3

Page 4: Yakir Vizel 1,2 and Orna Grumberg 1 1.Computer Science Department, The Technion, Haifa, Israel. 2.Architecture, System Level and Validation Solutions,

Given a system and a specification, does the system satisfy the specification.

Formal Methods in Computer Aided Design, Austin, Texas 2009 4

System AGq

MC

?

The specification is given in temporal logic – e.g. LTL. We deal with specifications of the form AGq.

Page 5: Yakir Vizel 1,2 and Orna Grumberg 1 1.Computer Science Department, The Technion, Haifa, Israel. 2.Architecture, System Level and Validation Solutions,

…… Sn

…… Sn

S2

S2S1

S1INIT

BAD

¬q

BAD

¬q

Formal Methods in Computer Aided Design, Austin, Texas 2009 5

Page 6: Yakir Vizel 1,2 and Orna Grumberg 1 1.Computer Science Department, The Technion, Haifa, Israel. 2.Architecture, System Level and Validation Solutions,

Does the system have a counterexample of length k?

)(),(),(),()( 121100 kkk VqVVTVVTVVTVINIT

Formal Methods in Computer Aided Design, Austin, Texas 2009 6

)()( 00 VqVINIT

)(),()( 1100 VqVVTVINIT

)(),(),()( 221100 VqVVTVVTVINIT

.

.

.

Page 7: Yakir Vizel 1,2 and Orna Grumberg 1 1.Computer Science Department, The Technion, Haifa, Israel. 2.Architecture, System Level and Validation Solutions,

Formal Methods in Computer Aided Design, Austin, Texas 2009

INIT

INIT I3I3

BAD

¬q

BAD

¬q

I1I1 I2I2

S1S1 S2

S2 S3S3

7

Page 8: Yakir Vizel 1,2 and Orna Grumberg 1 1.Computer Science Department, The Technion, Haifa, Israel. 2.Architecture, System Level and Validation Solutions,

Formal Methods in Computer Aided Design, Austin, Texas 2009 8

Page 9: Yakir Vizel 1,2 and Orna Grumberg 1 1.Computer Science Department, The Technion, Haifa, Israel. 2.Architecture, System Level and Validation Solutions,

),()( 100 VVTVINIT

Formal Methods in Computer Aided Design, Austin, Texas 2009 9

Given the following BMC formula.

)(),(),( 121 kkk VqVVTVVT

A B

I

1V i.e B, andA of iablescommon var over the is I

FBI

IA

Page 10: Yakir Vizel 1,2 and Orna Grumberg 1 1.Computer Science Department, The Technion, Haifa, Israel. 2.Architecture, System Level and Validation Solutions,

Formal Methods in Computer Aided Design, Austin, Texas 2009 10

),()( 100 VVTVINIT )(),(),(),( 13221 kkk VqVVTVVTVVT

A1A2 A3 Ak Ak+

1

I1 I2 I3 Ik-1 Ik

j1k1jj1j

1

10

V i.e ,A,,A and A,,A of iablescommon var over the is I

,

jjj

k

IAI

FITI

The same BMC formula partitioned in a different manner:

Page 11: Yakir Vizel 1,2 and Orna Grumberg 1 1.Computer Science Department, The Technion, Haifa, Israel. 2.Architecture, System Level and Validation Solutions,

Can easily be computed. For 1 ≤ j < n A = A1 … Aj

B = Aj+1 … An

Ij is the interpolant for the pair (A,B)

Formal Methods in Computer Aided Design, Austin, Texas 2009 11

Page 12: Yakir Vizel 1,2 and Orna Grumberg 1 1.Computer Science Department, The Technion, Haifa, Israel. 2.Architecture, System Level and Validation Solutions,

Formal Methods in Computer Aided Design, Austin, Texas 2009 12

Page 13: Yakir Vizel 1,2 and Orna Grumberg 1 1.Computer Science Department, The Technion, Haifa, Israel. 2.Architecture, System Level and Validation Solutions,

I1,1

Formal Methods in Computer Aided Design, Austin, Texas 2009

)(),(),()( 221100 VqVVTVVTVINIT

I1,2

I2,2

)(),()( 1100 VqVVTVINIT

I1I1

13

Page 14: Yakir Vizel 1,2 and Orna Grumberg 1 1.Computer Science Department, The Technion, Haifa, Israel. 2.Architecture, System Level and Validation Solutions,

A way to do reachability analysis using a SAT solver.

Uses the original BMC loop and adds an inclusion check for full verification.

Similar sets to those computed by Forward Reachability Analysis but over-approximated.

Formal Methods in Computer Aided Design, Austin, Texas 2009 14

Page 15: Yakir Vizel 1,2 and Orna Grumberg 1 1.Computer Science Department, The Technion, Haifa, Israel. 2.Architecture, System Level and Validation Solutions,

Use BMC to search for bugs. Partition the checked BMC formula and

extract the interpolation sequence

Formal Methods in Computer Aided Design, Austin, Texas 2009

)(),(),(),()( 121100 NNN VqTVTVVTVVTVINIT

I1,NI1,N IN-1,N

IN-1,NI2,NI2,N IN,N

IN,N

15

Page 16: Yakir Vizel 1,2 and Orna Grumberg 1 1.Computer Science Department, The Technion, Haifa, Israel. 2.Architecture, System Level and Validation Solutions,

Formal Methods in Computer Aided Design, Austin, Texas 2009

INIT S1S1

INIT

S2S2 S3

S3

I1I1 I2I2 I3I3

BAD

¬q

BAD

¬q

)(),(),(),()( 33221100 VqVVTVVTVVTVINIT )(),()( 1100 VqVVTVINIT

I1,1I1,1

)(),(),()( 221100 VqVVTVVTVINIT

I2,2I2,2I1,2

I1,2

I1I1 I2I2

I3,3I3,3

I2,3I2,3I1,3

I1,3

16

Page 17: Yakir Vizel 1,2 and Orna Grumberg 1 1.Computer Science Department, The Technion, Haifa, Israel. 2.Architecture, System Level and Validation Solutions,

The computation itself is different. Uses basic interpolation. Successive calls to BMC for the same bound. Not incremental.

The sets computed are different.

Formal Methods in Computer Aided Design, Austin, Texas 2009 17

S1S1 I1I1J1J1

Page 18: Yakir Vizel 1,2 and Orna Grumberg 1 1.Computer Science Department, The Technion, Haifa, Israel. 2.Architecture, System Level and Validation Solutions,

Formal Methods in Computer Aided Design, Austin, Texas 2009 18

Page 19: Yakir Vizel 1,2 and Orna Grumberg 1 1.Computer Science Department, The Technion, Haifa, Israel. 2.Architecture, System Level and Validation Solutions,

Experiments were conducted on two future CPU designs from Intel (two different architectures/tocks)

Formal Methods in Computer Aided Design, Austin, Texas 2009 19

Page 20: Yakir Vizel 1,2 and Orna Grumberg 1 1.Computer Science Department, The Technion, Haifa, Israel. 2.Architecture, System Level and Validation Solutions,

Formal Methods in Computer Aided Design, Austin, Texas 2009 20

Page 21: Yakir Vizel 1,2 and Orna Grumberg 1 1.Computer Science Department, The Technion, Haifa, Israel. 2.Architecture, System Level and Validation Solutions,

Formal Methods in Computer Aided Design, Austin, Texas 2009 21

Page 22: Yakir Vizel 1,2 and Orna Grumberg 1 1.Computer Science Department, The Technion, Haifa, Israel. 2.Architecture, System Level and Validation Solutions,

Formal Methods in Computer Aided Design, Austin, Texas 2009

Spec

#Vars

Bound

(Ours)

Bound

(M)

#Int(Our

s)

#Int

(M)

#BMC

(Ours)

#BMC

(M)

Time [s]

(Ours)

Time [s](M)

F1 3406 16 15 136 80 16 80 970 5518

F2 1753 9 8 45 40 9 40 91 388

F3 1753 16 15 136 94 16 94 473 1901

F4 3406 6 5 21 13 6 13 68 208

F5 1761 2 1 3 2 2 2 5 4

F6 3972 3 1 6 3 3 3 19 14

F7 2197 3 1 6 3 3 3 2544 1340

F8 4894 5 1 15 3 5 3 635 101

22

Page 23: Yakir Vizel 1,2 and Orna Grumberg 1 1.Computer Science Department, The Technion, Haifa, Israel. 2.Architecture, System Level and Validation Solutions,

False properties is always faster. True properties – results vary. Heavier

properties favor ISB where the easier favor IB.

Some properties cannot be verified by one method but can be verified by the other and vise-versa.

Formal Methods in Computer Aided Design, Austin, Texas 2009 23

Page 24: Yakir Vizel 1,2 and Orna Grumberg 1 1.Computer Science Department, The Technion, Haifa, Israel. 2.Architecture, System Level and Validation Solutions,

A new SAT-based method for unbounded model checking. BMC is used for falsification. Simulating forward reachability analysis

for verification.Method was successfully applied to

industrial sized systems.

Formal Methods in Computer Aided Design, Austin, Texas 2009 24

Page 25: Yakir Vizel 1,2 and Orna Grumberg 1 1.Computer Science Department, The Technion, Haifa, Israel. 2.Architecture, System Level and Validation Solutions,

Thank You!

Formal Methods in Computer Aided Design, Austin, Texas 2009 25