Interpolation Seminar Slides Albert-Ludwigs-Universitt Freiburg - - PowerPoint PPT Presentation

interpolation
SMART_READER_LITE
LIVE PREVIEW

Interpolation Seminar Slides Albert-Ludwigs-Universitt Freiburg - - PowerPoint PPT Presentation

Interpolation Seminar Slides Albert-Ludwigs-Universitt Freiburg Betim Musa 27 th June 2015 Motivation program add(int a, int b) { var x,i : int; 0 assume(b 0); 1 x := a; 2 i := 0; while(i < b) { 3 x := x + 1; 4


slide-1
SLIDE 1

Interpolation

Seminar Slides

Albert-Ludwigs-Universität Freiburg

Betim Musa

27th June 2015

slide-2
SLIDE 2

Motivation

program add(int a, int b) { var x,i : int; ℓ0 assume(b ≥ 0); ℓ1 x := a; ℓ2 i := 0; while(i < b) { ℓ3 x := x + 1; ℓ4 i := i + 1; } assert (x == a + b);

27th June 2015 Betim Musa – Interpolation 2 / 22

slide-3
SLIDE 3

Motivation

program add(int a, int b) { var x,i : int; ℓ0 assume(b ≥ 0); ℓ1 x := a; ℓ2 i := 0; while(i < b) { ℓ3 x := x + 1; ℓ4 i := i + 1; } ℓerr assert (x != a + b);

Prove correctness (CEGAR approach)

Idea: Show that all traces from ℓ0 to ℓerr are infeasible.

27th June 2015 Betim Musa – Interpolation 2 / 22

slide-4
SLIDE 4

Motivation

program add(int a, int b) { var x,i : int; ℓ0 assume(b ≥ 0); ℓ1 x := a; ℓ2 i := 0; while(i < b) { ℓ3 x := x + 1; ℓ4 i := i + 1; } ℓerr assert (x != a + b);

Prove correctness (CEGAR approach)

Idea: Show that all traces from ℓ0 to ℓerr are infeasible.

1 Choose an error trace τ. 2 Show that τ is infeasible. 3 Compute interpolants for τ.

27th June 2015 Betim Musa – Interpolation 2 / 22

slide-5
SLIDE 5

Contents

A bit of history Interpolation What is an interpolant? Interpolation in Propositional Logic Interpolation in First-Order Logic Conclusion References

27th June 2015 Betim Musa – Interpolation 3 / 22

slide-6
SLIDE 6

Bit of history

  • W. Craig (1957), Linear reasoning. A new form of the

Herbrand-Gentzen theorem

27th June 2015 Betim Musa – Interpolation 4 / 22

slide-7
SLIDE 7

Bit of history

  • W. Craig (1957), Linear reasoning. A new form of the

Herbrand-Gentzen theorem

  • K. L. McMillan (2003), Interpolation and SAT-Based Model

Checking

27th June 2015 Betim Musa – Interpolation 4 / 22

slide-8
SLIDE 8

Bit of history

  • W. Craig (1957), Linear reasoning. A new form of the

Herbrand-Gentzen theorem

  • K. L. McMillan (2003), Interpolation and SAT-Based Model

Checking

  • A. Cimatti et al. (2007), Efficient Interpolant Generation in

SMT

27th June 2015 Betim Musa – Interpolation 4 / 22

slide-9
SLIDE 9

Contents

A bit of history Interpolation What is an interpolant? Interpolation in Propositional Logic Interpolation in First-Order Logic Conclusion References

27th June 2015 Betim Musa – Interpolation 5 / 22

slide-10
SLIDE 10

Interpolant

An interpolant I for the unsatisfiable pair of formulae A,B has the following properties:

27th June 2015 Betim Musa – Interpolation 6 / 22

slide-11
SLIDE 11

Interpolant

An interpolant I for the unsatisfiable pair of formulae A,B has the following properties: A | = I

27th June 2015 Betim Musa – Interpolation 6 / 22

slide-12
SLIDE 12

Interpolant

An interpolant I for the unsatisfiable pair of formulae A,B has the following properties: A | = I I ∧B is unsatisfiable

27th June 2015 Betim Musa – Interpolation 6 / 22

slide-13
SLIDE 13

Interpolant

An interpolant I for the unsatisfiable pair of formulae A,B has the following properties: A | = I I ∧B is unsatisfiable I A and I B (symbol condition)

27th June 2015 Betim Musa – Interpolation 6 / 22

slide-14
SLIDE 14

Contents

A bit of history Interpolation What is an interpolant? Interpolation in Propositional Logic Interpolation in First-Order Logic Conclusion References

27th June 2015 Betim Musa – Interpolation 7 / 22

slide-15
SLIDE 15

Interpolation in Propositional Logic

Ingredients

1 a pair of unsatisfiable formulae A,B 2 a resolution proof of their unsatisfiability

27th June 2015 Betim Musa – Interpolation 8 / 22

slide-16
SLIDE 16

Interpolation in Propositional Logic

Resolution

Prove unsatisfiability of

A

  • P ∧(¬P ∨R)∧

B

  • ¬R

27th June 2015 Betim Musa – Interpolation 9 / 22

slide-17
SLIDE 17

Interpolation in Propositional Logic

Resolution

Prove unsatisfiability of

A

  • P ∧(¬P ∨R)∧

B

  • ¬R

P (¬P ∨R) ¬R

27th June 2015 Betim Musa – Interpolation 9 / 22

slide-18
SLIDE 18

Interpolation in Propositional Logic

Resolution

Prove unsatisfiability of

A

  • P ∧(¬P ∨R)∧

B

  • ¬R

P (¬P ∨R) ¬R R

27th June 2015 Betim Musa – Interpolation 9 / 22

slide-19
SLIDE 19

Interpolation in Propositional Logic

Resolution

Prove unsatisfiability of

A

  • P ∧(¬P ∨R)∧

B

  • ¬R

P (¬P ∨R) ¬R R false

27th June 2015 Betim Musa – Interpolation 9 / 22

slide-20
SLIDE 20

Interpolation in Propositional Logic

Given: unsatisfiable formulae A,B and a proof of unsatisfiability. C1 C2 ... Cn v ¬v false

27th June 2015 Betim Musa – Interpolation 10 / 22

slide-21
SLIDE 21

Interpolation in Propositional Logic

Given: unsatisfiable formulae A,B and a proof of unsatisfiability. For every vertex v of the proof define the interpolant ITP(v) as follows: C1 C2 ... Cn v ¬v false

27th June 2015 Betim Musa – Interpolation 10 / 22

slide-22
SLIDE 22

Interpolation in Propositional Logic

Given: unsatisfiable formulae A,B and a proof of unsatisfiability. For every vertex v of the proof define the interpolant ITP(v) as follows: if v is an input node C1 C2 ... Cn v ¬v false

27th June 2015 Betim Musa – Interpolation 10 / 22

slide-23
SLIDE 23

Interpolation in Propositional Logic

Given: unsatisfiable formulae A,B and a proof of unsatisfiability. For every vertex v of the proof define the interpolant ITP(v) as follows: if v is an input node

1 if v ∈ A then

ITP(v) = global_literals(v)

2 else ITP(v) = true

C1 C2 ... Cn v ¬v false

27th June 2015 Betim Musa – Interpolation 10 / 22

slide-24
SLIDE 24

Interpolation in Propositional Logic

Given: unsatisfiable formulae A,B and a proof of unsatisfiability. For every vertex v of the proof define the interpolant ITP(v) as follows: if v is an input node

1 if v ∈ A then

ITP(v) = global_literals(v)

2 else ITP(v) = true

else v must have two predecessors v1,v2 and pv is the pivot variable. C1 C2 ... Cn v ¬v false

27th June 2015 Betim Musa – Interpolation 10 / 22

slide-25
SLIDE 25

Interpolation in Propositional Logic

Given: unsatisfiable formulae A,B and a proof of unsatisfiability. For every vertex v of the proof define the interpolant ITP(v) as follows: if v is an input node

1 if v ∈ A then

ITP(v) = global_literals(v)

2 else ITP(v) = true

else v must have two predecessors v1,v2 and pv is the pivot variable.

1 if pv is local to A, then

ITP(v) = ITP(v1)∨ITP(v2)

2 else ITP(v) = ITP(v1)∧ITP(v2)

C1 C2 ... Cn v ¬v false

27th June 2015 Betim Musa – Interpolation 10 / 22

slide-26
SLIDE 26

Interpolation in Propositional Logic

Example

Formula:

A

  • P ∧(¬P ∨R)∧

B

  • ¬R

P (¬P ∨R) ¬R R false

27th June 2015 Betim Musa – Interpolation 11 / 22

slide-27
SLIDE 27

Interpolation in Propositional Logic

Example

Formula:

A

  • P ∧(¬P ∨R)∧

B

  • ¬R

P (¬P ∨R) ¬R R false ITP(P) = FALSE

27th June 2015 Betim Musa – Interpolation 11 / 22

slide-28
SLIDE 28

Interpolation in Propositional Logic

Example

Formula:

A

  • P ∧(¬P ∨R)∧

B

  • ¬R

P (¬P ∨R) ¬R R false ITP(P) = FALSE ITP(¬P ∨R) = R

27th June 2015 Betim Musa – Interpolation 11 / 22

slide-29
SLIDE 29

Interpolation in Propositional Logic

Example

Formula:

A

  • P ∧(¬P ∨R)∧

B

  • ¬R

P (¬P ∨R) ¬R R false ITP(P) = FALSE ITP(¬P ∨R) = R ITP(¬R) = TRUE

27th June 2015 Betim Musa – Interpolation 11 / 22

slide-30
SLIDE 30

Interpolation in Propositional Logic

Example

Formula:

A

  • P ∧(¬P ∨R)∧

B

  • ¬R

P (¬P ∨R) ¬R R false ITP(P) = FALSE ITP(¬P ∨R) = R ITP(¬R) = TRUE ITP(R) = ITP(P)∨ITP(¬P ∨R)

27th June 2015 Betim Musa – Interpolation 11 / 22

slide-31
SLIDE 31

Interpolation in Propositional Logic

Example

Formula:

A

  • P ∧(¬P ∨R)∧

B

  • ¬R

P (¬P ∨R) ¬R R false ITP(P) = FALSE ITP(¬P ∨R) = R ITP(¬R) = TRUE ITP(R) = ITP(P)∨ITP(¬P ∨R) ITP(false) = ITP(R)∧ITP(¬R)

27th June 2015 Betim Musa – Interpolation 11 / 22

slide-32
SLIDE 32

Interpolation in Propositional Logic

Example

Formula:

A

  • P ∧(¬P ∨R)∧

B

  • ¬R

P (¬P ∨R) ¬R R false ITP(P) = FALSE ITP(¬P ∨R) = R ITP(¬R) = TRUE ITP(R) = ITP(P)∨ITP(¬P ∨R) ITP(false) = ITP(R)∧ITP(¬R)

27th June 2015 Betim Musa – Interpolation 11 / 22

slide-33
SLIDE 33

Interpolation in Propositional Logic

Example

Formula:

A

  • P ∧(¬P ∨R)∧

B

  • ¬R

P (¬P ∨R) ¬R R false ITP(P) = FALSE ITP(¬P ∨R) = R ITP(¬R) = TRUE ITP(R) = ITP(P)∨ITP(¬P ∨R) ITP(false) = ITP(R)∧ITP(¬R) The resulting interpolant: ITP(false) = (FALSE ∨R)∧TRUE = R

27th June 2015 Betim Musa – Interpolation 11 / 22

slide-34
SLIDE 34

Contents

A bit of history Interpolation What is an interpolant? Interpolation in Propositional Logic Interpolation in First-Order Logic Conclusion References

27th June 2015 Betim Musa – Interpolation 12 / 22

slide-35
SLIDE 35

Interpolation in First-Order Logic

Overview

Interesting theories in practice

27th June 2015 Betim Musa – Interpolation 13 / 22

slide-36
SLIDE 36

Interpolation in First-Order Logic

Overview

Interesting theories in practice Linear Integer Arithmetic Presburger Arithmetic Equality Theory with Uninterpreted Functions Theory of Arrays Theory of Lists

27th June 2015 Betim Musa – Interpolation 13 / 22

slide-37
SLIDE 37

Interpolation in First-Order Logic

Overview

Interesting theories in practice Linear Integer Arithmetic Presburger Arithmetic Equality Theory with Uninterpreted Functions Theory of Arrays Theory of Lists

Requirements

SAT-Solver (lazy) a theory solver (T-Solver)

27th June 2015 Betim Musa – Interpolation 13 / 22

slide-38
SLIDE 38

SMT: Satisfiability Modulo Theory

Is a given FOL-formula φ satisfiable with respect to the theory T?

27th June 2015 Betim Musa – Interpolation 14 / 22

slide-39
SLIDE 39

SMT: Satisfiability Modulo Theory

Is a given FOL-formula φ satisfiable with respect to the theory T?

Procedure (lazy approach)

1 Encode as a boolean formula φ ′

27th June 2015 Betim Musa – Interpolation 14 / 22

slide-40
SLIDE 40

SMT: Satisfiability Modulo Theory

Is a given FOL-formula φ satisfiable with respect to the theory T?

Procedure (lazy approach)

1 Encode as a boolean formula φ ′ 2 Assign a truth value to some variable (SAT-Solver)

27th June 2015 Betim Musa – Interpolation 14 / 22

slide-41
SLIDE 41

SMT: Satisfiability Modulo Theory

Is a given FOL-formula φ satisfiable with respect to the theory T?

Procedure (lazy approach)

1 Encode as a boolean formula φ ′ 2 Assign a truth value to some variable (SAT-Solver) 3 Check the current assignment for consistency (T-solver)

27th June 2015 Betim Musa – Interpolation 14 / 22

slide-42
SLIDE 42

SMT: Satisfiability Modulo Theory

Is a given FOL-formula φ satisfiable with respect to the theory T?

Procedure (lazy approach)

1 Encode as a boolean formula φ ′ 2 Assign a truth value to some variable (SAT-Solver) 3 Check the current assignment for consistency (T-solver)

inconsistent, T-solver returns a conflict set η, add its negation as a T-lemma

27th June 2015 Betim Musa – Interpolation 14 / 22

slide-43
SLIDE 43

SMT: Satisfiability Modulo Theory

Is a given FOL-formula φ satisfiable with respect to the theory T?

Procedure (lazy approach)

1 Encode as a boolean formula φ ′ 2 Assign a truth value to some variable (SAT-Solver) 3 Check the current assignment for consistency (T-solver)

inconsistent, T-solver returns a conflict set η, add its negation as a T-lemma consistent, go on with assignment of next variable

27th June 2015 Betim Musa – Interpolation 14 / 22

slide-44
SLIDE 44

SMT: Satisfiability Modulo Theory

Is a given FOL-formula φ satisfiable with respect to the theory T?

Procedure (lazy approach)

1 Encode as a boolean formula φ ′ 2 Assign a truth value to some variable (SAT-Solver) 3 Check the current assignment for consistency (T-solver)

inconsistent, T-solver returns a conflict set η, add its negation as a T-lemma consistent, go on with assignment of next variable

4 If a truth value is assigned to all variables =

⇒ SAT

27th June 2015 Betim Musa – Interpolation 14 / 22

slide-45
SLIDE 45

SMT: Satisfiability Modulo Theory

Is a given FOL-formula φ satisfiable with respect to the theory T?

Procedure (lazy approach)

1 Encode as a boolean formula φ ′ 2 Assign a truth value to some variable (SAT-Solver) 3 Check the current assignment for consistency (T-solver)

inconsistent, T-solver returns a conflict set η, add its negation as a T-lemma consistent, go on with assignment of next variable

4 If a truth value is assigned to all variables =

⇒ SAT

5 If no assignment left =

⇒ UNSAT

27th June 2015 Betim Musa – Interpolation 14 / 22

slide-46
SLIDE 46

SMT-SAT (lazy approach)

Illustration φ

27th June 2015 Betim Musa – Interpolation 15 / 22

slide-47
SLIDE 47

SMT-SAT (lazy approach)

Illustration φ

φ ′

encode as boolean formula

27th June 2015 Betim Musa – Interpolation 15 / 22

slide-48
SLIDE 48

SMT-SAT (lazy approach)

Illustration φ

φ ′

SAT-Solver encode as boolean formula start new assign.

27th June 2015 Betim Musa – Interpolation 15 / 22

slide-49
SLIDE 49

SMT-SAT (lazy approach)

Illustration φ

φ ′

SAT-Solver encode as boolean formula start new assign. assign some var.

27th June 2015 Betim Musa – Interpolation 15 / 22

slide-50
SLIDE 50

SMT-SAT (lazy approach)

Illustration φ

φ ′

SAT-Solver T-Solver encode as boolean formula start new assign. assign some var. consistent?

27th June 2015 Betim Musa – Interpolation 15 / 22

slide-51
SLIDE 51

SMT-SAT (lazy approach)

Illustration φ

φ ′

SAT-Solver T-Solver encode as boolean formula start new assign. assign some var. consistent? consistent

27th June 2015 Betim Musa – Interpolation 15 / 22

slide-52
SLIDE 52

SMT-SAT (lazy approach)

Illustration φ

φ ′

SAT-Solver T-Solver encode as boolean formula start new assign. assign some var. consistent? consistent i n c

  • n

s i s t . ( s t

  • r

e c

  • n

fl i c t s e t )

27th June 2015 Betim Musa – Interpolation 15 / 22

slide-53
SLIDE 53

SMT-SAT (lazy approach)

Illustration φ

φ ′

SAT-Solver T-Solver SAT encode as boolean formula start new assign. assign some var. consistent? consistent i n c

  • n

s i s t . ( s t

  • r

e c

  • n

fl i c t s e t ) all vars. assigned

27th June 2015 Betim Musa – Interpolation 15 / 22

slide-54
SLIDE 54

SMT-SAT (lazy approach)

Illustration φ

φ ′

SAT-Solver T-Solver SAT UNSAT encode as boolean formula start new assign. assign some var. consistent? consistent i n c

  • n

s i s t . ( s t

  • r

e c

  • n

fl i c t s e t ) all vars. assigned no assignment left

27th June 2015 Betim Musa – Interpolation 15 / 22

slide-55
SLIDE 55

Interpolation in SMT

Setting

Given two formulae c1 = ¬x1 ∨x2 ∨¬x3 and c2 = x2 ∨x3 c1 ↓ c2 = x2 ∨¬x3

27th June 2015 Betim Musa – Interpolation 16 / 22

slide-56
SLIDE 56

Interpolation in SMT

Setting

Given two formulae c1 = ¬x1 ∨x2 ∨¬x3 and c2 = x2 ∨x3 c1 ↓ c2 = x2 ∨¬x3 c1 \c2 = ¬x1

27th June 2015 Betim Musa – Interpolation 16 / 22

slide-57
SLIDE 57

Interpolation in SMT

Generate an interpolant for the conjunction A∧B.

27th June 2015 Betim Musa – Interpolation 17 / 22

slide-58
SLIDE 58

Interpolation in SMT

Generate an interpolant for the conjunction A∧B. Compute a proof of unsatisfiability P for A∧B

27th June 2015 Betim Musa – Interpolation 17 / 22

slide-59
SLIDE 59

Interpolation in SMT

Generate an interpolant for the conjunction A∧B. Compute a proof of unsatisfiability P for A∧B For every T −lemma ¬η in P compute an interpolant I¬η for (η \B,η ↓ B)

27th June 2015 Betim Musa – Interpolation 17 / 22

slide-60
SLIDE 60

Interpolation in SMT

Generate an interpolant for the conjunction A∧B. Compute a proof of unsatisfiability P for A∧B For every T −lemma ¬η in P compute an interpolant I¬η for (η \B,η ↓ B) For every input clause C in P:

27th June 2015 Betim Musa – Interpolation 17 / 22

slide-61
SLIDE 61

Interpolation in SMT

Generate an interpolant for the conjunction A∧B. Compute a proof of unsatisfiability P for A∧B For every T −lemma ¬η in P compute an interpolant I¬η for (η \B,η ↓ B) For every input clause C in P:

if C ∈ A, then IC ≡ C ↓ B

27th June 2015 Betim Musa – Interpolation 17 / 22

slide-62
SLIDE 62

Interpolation in SMT

Generate an interpolant for the conjunction A∧B. Compute a proof of unsatisfiability P for A∧B For every T −lemma ¬η in P compute an interpolant I¬η for (η \B,η ↓ B) For every input clause C in P:

if C ∈ A, then IC ≡ C ↓ B if C ∈ B, then IC ≡ ⊤

27th June 2015 Betim Musa – Interpolation 17 / 22

slide-63
SLIDE 63

Interpolation in SMT

Generate an interpolant for the conjunction A∧B. Compute a proof of unsatisfiability P for A∧B For every T −lemma ¬η in P compute an interpolant I¬η for (η \B,η ↓ B) For every input clause C in P:

if C ∈ A, then IC ≡ C ↓ B if C ∈ B, then IC ≡ ⊤

For every inner node C of P obtained by resolution from C1 = p∨φ1,C2 = ¬p∨φ2,

27th June 2015 Betim Musa – Interpolation 17 / 22

slide-64
SLIDE 64

Interpolation in SMT

Generate an interpolant for the conjunction A∧B. Compute a proof of unsatisfiability P for A∧B For every T −lemma ¬η in P compute an interpolant I¬η for (η \B,η ↓ B) For every input clause C in P:

if C ∈ A, then IC ≡ C ↓ B if C ∈ B, then IC ≡ ⊤

For every inner node C of P obtained by resolution from C1 = p∨φ1,C2 = ¬p∨φ2,

if p / ∈ B, then IC ≡ IC1 ∨IC2

27th June 2015 Betim Musa – Interpolation 17 / 22

slide-65
SLIDE 65

Interpolation in SMT

Generate an interpolant for the conjunction A∧B. Compute a proof of unsatisfiability P for A∧B For every T −lemma ¬η in P compute an interpolant I¬η for (η \B,η ↓ B) For every input clause C in P:

if C ∈ A, then IC ≡ C ↓ B if C ∈ B, then IC ≡ ⊤

For every inner node C of P obtained by resolution from C1 = p∨φ1,C2 = ¬p∨φ2,

if p / ∈ B, then IC ≡ IC1 ∨IC2 else IC ≡ IC1 ∧IC2

27th June 2015 Betim Musa – Interpolation 17 / 22

slide-66
SLIDE 66

Interpolation in SMT

Generate an interpolant for the conjunction A∧B. Compute a proof of unsatisfiability P for A∧B For every T −lemma ¬η in P compute an interpolant I¬η for (η \B,η ↓ B) For every input clause C in P:

if C ∈ A, then IC ≡ C ↓ B if C ∈ B, then IC ≡ ⊤

For every inner node C of P obtained by resolution from C1 = p∨φ1,C2 = ¬p∨φ2,

if p / ∈ B, then IC ≡ IC1 ∨IC2 else IC ≡ IC1 ∧IC2

Output the interpolant at the root node, namely I⊥

27th June 2015 Betim Musa – Interpolation 17 / 22

slide-67
SLIDE 67

Conclusion

Interpolation

an important technique in software verification

27th June 2015 Betim Musa – Interpolation 18 / 22

slide-68
SLIDE 68

Conclusion

Interpolation

an important technique in software verification available for many relevant theories (e.g. LIA, Equality with UF, Arrays, Lists)

27th June 2015 Betim Musa – Interpolation 18 / 22

slide-69
SLIDE 69

Conclusion

Interpolation

an important technique in software verification available for many relevant theories (e.g. LIA, Equality with UF, Arrays, Lists) research in progress for other theories

27th June 2015 Betim Musa – Interpolation 18 / 22

slide-70
SLIDE 70

Summary

What is interpolation?

automatically generalize formulae and preserve relevant parts

27th June 2015 Betim Musa – Interpolation 19 / 22

slide-71
SLIDE 71

Summary

What is interpolation?

automatically generalize formulae and preserve relevant parts interpolant (Craig’s definition)

27th June 2015 Betim Musa – Interpolation 19 / 22

slide-72
SLIDE 72

Summary

What is interpolation?

automatically generalize formulae and preserve relevant parts interpolant (Craig’s definition)

27th June 2015 Betim Musa – Interpolation 19 / 22

slide-73
SLIDE 73

Summary

What is interpolation?

automatically generalize formulae and preserve relevant parts interpolant (Craig’s definition)

How does it work?

Propositional Logic: resolution proof

27th June 2015 Betim Musa – Interpolation 19 / 22

slide-74
SLIDE 74

Summary

What is interpolation?

automatically generalize formulae and preserve relevant parts interpolant (Craig’s definition)

How does it work?

Propositional Logic: resolution proof First-Order Logic: Resolution proof, Theory interpolation

27th June 2015 Betim Musa – Interpolation 19 / 22

slide-75
SLIDE 75

Future work

A theory where no efficient interpolation algorithm exists

theory of non-linear integer arithmetic (e.g. x2 +y2 = 1)

27th June 2015 Betim Musa – Interpolation 20 / 22

slide-76
SLIDE 76

References I

  • A. Cimatti, A. Griggio, R. Sebastiani.

Efficient Interpolant Generation in SMT. K.L.McMillan. Interpolation and SAT-based Model Checking. Philipp Rümmer Craig Interpolation in SAT and SMT http://satsmt2014.forsyte.at/files/2014/01/ interpolation_philipp.pdf

  • D. Kroening, G. Weissenbacher .

Lifting Propositional Interpolants to the Word-Level.

27th June 2015 Betim Musa – Interpolation 21 / 22

slide-77
SLIDE 77

References II

Wikipedia Satisfiability Modulo Theories. https://en.wikipedia.org/wiki/Satisfiability_ Modulo_Theories

27th June 2015 Betim Musa – Interpolation 22 / 22