Variable and clause elimination for LTL satisfiability checking - - PowerPoint PPT Presentation

variable and clause elimination for ltl satisfiability
SMART_READER_LITE
LIVE PREVIEW

Variable and clause elimination for LTL satisfiability checking - - PowerPoint PPT Presentation

Variable and clause elimination for LTL satisfiability checking Martin Suda Max Planck Institut fr Informatik MACIS-2013 Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion Linear temporal logic


slide-1
SLIDE 1

Variable and clause elimination for LTL satisfiability checking

Martin Suda

Max Planck Institut für Informatik

MACIS-2013

slide-2
SLIDE 2

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Linear temporal logic (LTL)

modal logic for specifying temporal relations time modeled as a linear discrete sequence of time moments analysis of natural language expressibility (Kamp, 1968) specification language for systems with non-terminating computations (Pnueli, 1977) – model checking

Satisfiability checking of LTL formulas

proving LTL theorems ensure quality of specifications LTL model checking reducible to LTL satisfiability

MACIS-2013 1/18

slide-3
SLIDE 3

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Linear temporal logic (LTL)

modal logic for specifying temporal relations time modeled as a linear discrete sequence of time moments analysis of natural language expressibility (Kamp, 1968) specification language for systems with non-terminating computations (Pnueli, 1977) – model checking

Satisfiability checking of LTL formulas

proving LTL theorems ensure quality of specifications LTL model checking reducible to LTL satisfiability

MACIS-2013 1/18

slide-4
SLIDE 4

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Linear temporal logic (LTL)

modal logic for specifying temporal relations time modeled as a linear discrete sequence of time moments analysis of natural language expressibility (Kamp, 1968) specification language for systems with non-terminating computations (Pnueli, 1977) – model checking

Satisfiability checking of LTL formulas

proving LTL theorems ensure quality of specifications LTL model checking reducible to LTL satisfiability

MACIS-2013 1/18

slide-5
SLIDE 5

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Linear temporal logic (LTL)

modal logic for specifying temporal relations time modeled as a linear discrete sequence of time moments analysis of natural language expressibility (Kamp, 1968) specification language for systems with non-terminating computations (Pnueli, 1977) – model checking

Satisfiability checking of LTL formulas

proving LTL theorems ensure quality of specifications LTL model checking reducible to LTL satisfiability

MACIS-2013 1/18

slide-6
SLIDE 6

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Linear temporal logic (LTL)

modal logic for specifying temporal relations time modeled as a linear discrete sequence of time moments analysis of natural language expressibility (Kamp, 1968) specification language for systems with non-terminating computations (Pnueli, 1977) – model checking

Satisfiability checking of LTL formulas

proving LTL theorems ensure quality of specifications LTL model checking reducible to LTL satisfiability

MACIS-2013 1/18

slide-7
SLIDE 7

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

General resolution-based approach to satisfiability

take the given formula ϕ translate it into a clausal normal form – clause: a disjunction of literals – literal: a variable or its negation derive new clauses by the resolution inference C ∨ p D ∨ ¬p C ∨ D until the empty clause ⊥ is derived − → UNSAT

  • r it is obvious this will not happen −

→ SAT – either by finding a model, – or by saturating the clause set

MACIS-2013 2/18

slide-8
SLIDE 8

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

General resolution-based approach to satisfiability

take the given formula ϕ translate it into a clausal normal form – clause: a disjunction of literals – literal: a variable or its negation derive new clauses by the resolution inference C ∨ p D ∨ ¬p C ∨ D until the empty clause ⊥ is derived − → UNSAT

  • r it is obvious this will not happen −

→ SAT – either by finding a model, – or by saturating the clause set

MACIS-2013 2/18

slide-9
SLIDE 9

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

General resolution-based approach to satisfiability

take the given formula ϕ translate it into a clausal normal form – clause: a disjunction of literals – literal: a variable or its negation derive new clauses by the resolution inference C ∨ p D ∨ ¬p C ∨ D until the empty clause ⊥ is derived − → UNSAT

  • r it is obvious this will not happen −

→ SAT – either by finding a model, – or by saturating the clause set

MACIS-2013 2/18

slide-10
SLIDE 10

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

General resolution-based approach to satisfiability

take the given formula ϕ translate it into a clausal normal form – clause: a disjunction of literals – literal: a variable or its negation derive new clauses by the resolution inference C ∨ p D ∨ ¬p C ∨ D until the empty clause ⊥ is derived − → UNSAT

  • r it is obvious this will not happen −

→ SAT – either by finding a model, – or by saturating the clause set

MACIS-2013 2/18

slide-11
SLIDE 11

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Preprocessing

simplify the the normal form before starting the main algorithm

  • 1. removes redundancies of the original formula
  • 2. compensates for a potentially suboptimal NF-translation

inspired by the SAT community:

Variable and clause elimination (Eén and Biere 2005)

eliminate a variable by clause distribution remove tautologies (e.g., C ∨ p ∨ ¬p) and subsumed clauses (C ⊆ D) repeat while improving

MACIS-2013 3/18

slide-12
SLIDE 12

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Preprocessing

simplify the the normal form before starting the main algorithm

  • 1. removes redundancies of the original formula
  • 2. compensates for a potentially suboptimal NF-translation

inspired by the SAT community:

Variable and clause elimination (Eén and Biere 2005)

eliminate a variable by clause distribution remove tautologies (e.g., C ∨ p ∨ ¬p) and subsumed clauses (C ⊆ D) repeat while improving

MACIS-2013 3/18

slide-13
SLIDE 13

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Preprocessing

simplify the the normal form before starting the main algorithm

  • 1. removes redundancies of the original formula
  • 2. compensates for a potentially suboptimal NF-translation

inspired by the SAT community:

Variable and clause elimination (Eén and Biere 2005)

eliminate a variable by clause distribution remove tautologies (e.g., C ∨ p ∨ ¬p) and subsumed clauses (C ⊆ D) repeat while improving

MACIS-2013 3/18

slide-14
SLIDE 14

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Propositional variable elimination (by clause distribution)

“Rule for Eliminating Atomic Formulas” (Davis and Putnam 1960) given a variable p, separate clause set N based on p N = Np ˙ ∪ N¬p ˙ ∪ N0 distribute over p Np ⊗ N¬p = {(C ∨ D) | (C ∨ p) ∈ Np, (D ∨ ¬p) ∈ N¬p} replace Np and N¬p in N by the result N = (Np ⊗ N¬p) ∪ N0 p no longer occurs; the set is equisatisfiable

MACIS-2013 4/18

slide-15
SLIDE 15

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Propositional variable elimination (by clause distribution)

“Rule for Eliminating Atomic Formulas” (Davis and Putnam 1960) given a variable p, separate clause set N based on p N = Np ˙ ∪ N¬p ˙ ∪ N0 distribute over p Np ⊗ N¬p = {(C ∨ D) | (C ∨ p) ∈ Np, (D ∨ ¬p) ∈ N¬p} replace Np and N¬p in N by the result N = (Np ⊗ N¬p) ∪ N0 p no longer occurs; the set is equisatisfiable

MACIS-2013 4/18

slide-16
SLIDE 16

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Propositional variable elimination (by clause distribution)

“Rule for Eliminating Atomic Formulas” (Davis and Putnam 1960) given a variable p, separate clause set N based on p N = Np ˙ ∪ N¬p ˙ ∪ N0 distribute over p Np ⊗ N¬p = {(C ∨ D) | (C ∨ p) ∈ Np, (D ∨ ¬p) ∈ N¬p} replace Np and N¬p in N by the result N = (Np ⊗ N¬p) ∪ N0 p no longer occurs; the set is equisatisfiable

MACIS-2013 4/18

slide-17
SLIDE 17

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Propositional variable elimination (by clause distribution)

“Rule for Eliminating Atomic Formulas” (Davis and Putnam 1960) given a variable p, separate clause set N based on p N = Np ˙ ∪ N¬p ˙ ∪ N0 distribute over p Np ⊗ N¬p = {(C ∨ D) | (C ∨ p) ∈ Np, (D ∨ ¬p) ∈ N¬p} replace Np and N¬p in N by the result N = (Np ⊗ N¬p) ∪ N0 p no longer occurs; the set is equisatisfiable

MACIS-2013 4/18

slide-18
SLIDE 18

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Propositional variable elimination (by clause distribution)

“Rule for Eliminating Atomic Formulas” (Davis and Putnam 1960) given a variable p, separate clause set N based on p N = Np ˙ ∪ N¬p ˙ ∪ N0 distribute over p Np ⊗ N¬p = {(C ∨ D) | (C ∨ p) ∈ Np, (D ∨ ¬p) ∈ N¬p} replace Np and N¬p in N by the result N = (Np ⊗ N¬p) ∪ N0 p no longer occurs; the set is equisatisfiable

MACIS-2013 4/18

slide-19
SLIDE 19

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

The main challenge of preprocessing in LTL

the normal form consists of temporal clauses – bound to a specific temporal context – interactions need to be controlled

  • ne variable may refer to more than one time point

Solution proposed by this work

further refine the traditional normal form assign labels to clauses to track their temporal relations enables us to “lift” resolution-based reasoning from SAT to LTL and, in particular, to lift variable and clause elimination

MACIS-2013 5/18

slide-20
SLIDE 20

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

The main challenge of preprocessing in LTL

the normal form consists of temporal clauses – bound to a specific temporal context – interactions need to be controlled

  • ne variable may refer to more than one time point

Solution proposed by this work

further refine the traditional normal form assign labels to clauses to track their temporal relations enables us to “lift” resolution-based reasoning from SAT to LTL and, in particular, to lift variable and clause elimination

MACIS-2013 5/18

slide-21
SLIDE 21

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

The main challenge of preprocessing in LTL

the normal form consists of temporal clauses – bound to a specific temporal context – interactions need to be controlled

  • ne variable may refer to more than one time point

Solution proposed by this work

further refine the traditional normal form assign labels to clauses to track their temporal relations enables us to “lift” resolution-based reasoning from SAT to LTL and, in particular, to lift variable and clause elimination

MACIS-2013 5/18

slide-22
SLIDE 22

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

The main challenge of preprocessing in LTL

the normal form consists of temporal clauses – bound to a specific temporal context – interactions need to be controlled

  • ne variable may refer to more than one time point

Solution proposed by this work

further refine the traditional normal form assign labels to clauses to track their temporal relations enables us to “lift” resolution-based reasoning from SAT to LTL and, in particular, to lift variable and clause elimination

MACIS-2013 5/18

slide-23
SLIDE 23

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

LTL primer

basic signature: Σ = {p, q, . . .}

  • prop. logic syntax plus: next , always , sometime , . . .
  • prop. valuation a.k.a. state: W : Σ → {0, 1}

LTL interpretation – a sequence of states: W = (Wi)i∈N

Semantics

W, i | = p iff Wi | = p, W, i | = ¬ϕ iff not W, i | = ϕ, W, i | = ϕ ∧ (∨)ψ iff W, i | = ϕ and (or) W, i | = ψ, W, i | = ϕ iff W, i + 1 | = ϕ, W, i | = ϕ iff for every j ≥ i, W, j | = ϕ, W, i | = ϕ iff for some j ≥ i, W, j | = ϕ, . . .

MACIS-2013 6/18

slide-24
SLIDE 24

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

LTL primer

basic signature: Σ = {p, q, . . .}

  • prop. logic syntax plus: next , always , sometime , . . .
  • prop. valuation a.k.a. state: W : Σ → {0, 1}

LTL interpretation – a sequence of states: W = (Wi)i∈N

Semantics

W, i | = p iff Wi | = p, W, i | = ¬ϕ iff not W, i | = ϕ, W, i | = ϕ ∧ (∨)ψ iff W, i | = ϕ and (or) W, i | = ψ, W, i | = ϕ iff W, i + 1 | = ϕ, W, i | = ϕ iff for every j ≥ i, W, j | = ϕ, W, i | = ϕ iff for some j ≥ i, W, j | = ϕ, . . .

MACIS-2013 6/18

slide-25
SLIDE 25

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Separated Normal Form (Fisher 1991) for an LTL formula

ϕ − → i ∧ τ[(¬i ∨ ϕ)], τ[(¬x ∨ l)] − → (¬x ∨ l), if l is a literal, τ[(¬x ∨ (ϕ ∧ ψ))] − → τ[(¬x ∨ ϕ)] ∧ τ[(¬x ∨ ψ)], τ[(¬x ∨ (ϕ ∨ ψ))] − → (¬x ∨ u ∨ v) ∧ τ[(¬u ∨ ϕ)] ∧ τ[(¬v ∨ ψ)], τ[(¬x ∨ ϕ)] − → (¬x ∨ u) ∧ τ[(¬u ∨ ϕ)], τ[(¬x ∨ ϕ)] − → (¬x ∨ u), ∧ (¬u ∨ u) ∧ τ[(¬u ∨ ϕ)], τ[(¬x ∨ ϕ)] − → (¬x ∨ u) ∧ τ[(¬u ∨ ϕ)], . . .

MACIS-2013 7/18

slide-26
SLIDE 26

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Temporal Satisfiability Task (TST)

further refine SNF (Degtyarev et al. 2002) use priming notation to denote next (p − → p′) Initial clauses I, step clauses T, and goal clauses G  

Ci∈I

Ci   ∧  

  • Ct∨D′

t ∈T

(Ct ∨ Dt)   ∧  

Cg∈G

Cg  

Semantics in a picture

... Σ0 Σ1 Σ2 ...

MACIS-2013 8/18

slide-27
SLIDE 27

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Temporal Satisfiability Task (TST)

further refine SNF (Degtyarev et al. 2002) use priming notation to denote next (p − → p′) Initial clauses I, step clauses T, and goal clauses G  

Ci∈I

Ci   ∧  

  • Ct∨D′

t ∈T

(Ct ∨ Dt)   ∧  

Cg∈G

Cg  

Semantics in a picture

... Σ0 Σ1 Σ2 ...

MACIS-2013 8/18

slide-28
SLIDE 28

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Temporal Satisfiability Task (TST)

further refine SNF (Degtyarev et al. 2002) use priming notation to denote next (p − → p′) Initial clauses I, step clauses T, and goal clauses G  

Ci∈I

Ci   ∧  

  • Ct∨D′

t ∈T

(Ct ∨ Dt)   ∧  

Cg∈G

Cg  

Semantics in a picture

... Σ0 Σ1 Σ2 ...

MACIS-2013 8/18

slide-29
SLIDE 29

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Temporal Satisfiability Task (TST)

further refine SNF (Degtyarev et al. 2002) use priming notation to denote next (p − → p′) Initial clauses I, step clauses T, and goal clauses G  

Ci∈I

Ci   ∧  

  • Ct∨D′

t ∈T

(Ct ∨ Dt)   ∧  

Cg∈G

Cg  

Semantics in a picture

I ... Σ0 Σ1 Σ2 ...

MACIS-2013 8/18

slide-30
SLIDE 30

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Temporal Satisfiability Task (TST)

further refine SNF (Degtyarev et al. 2002) use priming notation to denote next (p − → p′) Initial clauses I, step clauses T, and goal clauses G  

Ci∈I

Ci   ∧  

  • Ct∨D′

t ∈T

(Ct ∨ Dt)   ∧  

Cg∈G

Cg  

Semantics in a picture

... Σ0 Σ1 Σ2 T ...

MACIS-2013 8/18

slide-31
SLIDE 31

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Temporal Satisfiability Task (TST)

further refine SNF (Degtyarev et al. 2002) use priming notation to denote next (p − → p′) Initial clauses I, step clauses T, and goal clauses G  

Ci∈I

Ci   ∧  

  • Ct∨D′

t ∈T

(Ct ∨ Dt)   ∧  

Cg∈G

Cg  

Semantics in a picture

... Σ0 Σ1 Σ2 T T T T T T T T T T T T T ...

MACIS-2013 8/18

slide-32
SLIDE 32

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Temporal Satisfiability Task (TST)

further refine SNF (Degtyarev et al. 2002) use priming notation to denote next (p − → p′) Initial clauses I, step clauses T, and goal clauses G  

Ci∈I

Ci   ∧  

  • Ct∨D′

t ∈T

(Ct ∨ Dt)   ∧  

Cg∈G

Cg  

Semantics in a picture

G ... Σ0 Σ1 Σ2 ... G G

MACIS-2013 8/18

slide-33
SLIDE 33

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

(K, L)-models

We can assume the time indexes of the G-states form an arithmetic progression j = K + i · L for some K ∈ N and L ∈ N+

Reducing to propositional logic

... Σ0 Σ1 Σ2 T ... G I ... T T T T T T T T T T T T G G K K + L K + 2L Once the placement of the G-states is fixed, we are left with an infinite set of standard clauses over an infinite signature. It is just copies of the original clauses shifted in time . . .

MACIS-2013 9/18

slide-34
SLIDE 34

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

(K, L)-models

We can assume the time indexes of the G-states form an arithmetic progression j = K + i · L for some K ∈ N and L ∈ N+

Reducing to propositional logic

... Σ0 Σ1 Σ2 T T T T T T T T T T T ... G G G I ... T T K K + L K + 2L Once the placement of the G-states is fixed, we are left with an infinite set of standard clauses over an infinite signature. It is just copies of the original clauses shifted in time . . .

MACIS-2013 9/18

slide-35
SLIDE 35

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

“Lifting” with labels

We annotate the original clauses with labels in order to finitely represent the infinite set of clauses, reason about all possible G-state placements at once.

Starting label assignment

initial I − → Ci − → (0, ∗, 0)||Ci step T − → Ct − → (∗, ∗, 0)||Ct goal G − → Cg − → (∗, 0, 0)||Cg

MACIS-2013 10/18

slide-36
SLIDE 36

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

“Lifting” with labels

We annotate the original clauses with labels in order to finitely represent the infinite set of clauses, reason about all possible G-state placements at once.

Starting label assignment

initial I − → Ci − → (0, ∗, 0)||Ci step T − → Ct − → (∗, ∗, 0)||Ct goal G − → Cg − → (∗, 0, 0)||Cg

MACIS-2013 10/18

slide-37
SLIDE 37

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Labeled resolution

I (b1, k1, l1) || C1 ∨ p (b2, k2, l2) || C2 ∨ ¬p (b, k, l) || C ∨ D where (b, k, l) is the merge of labels (b1, k1, l1) and (b2, k2, l2) – intuitively captures intersection of the represented contexts up to infinitely many prop. resolutions correspond to one labeled inference

Temporal shift

need to align unprimed and primed symbols in labeled clauses we prefix resolution with a shift of one of the premises

MACIS-2013 11/18

slide-38
SLIDE 38

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Labeled resolution

I (b1, k1, l1) || C1 ∨ p (b2, k2, l2) || C2 ∨ ¬p (b, k, l) || C ∨ D where (b, k, l) is the merge of labels (b1, k1, l1) and (b2, k2, l2) – intuitively captures intersection of the represented contexts up to infinitely many prop. resolutions correspond to one labeled inference

Temporal shift

need to align unprimed and primed symbols in labeled clauses we prefix resolution with a shift of one of the premises

MACIS-2013 11/18

slide-39
SLIDE 39

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Example

N = Np ˙ ∪ N¬p ˙ ∪ N0 N = (Np ⊗ N¬p) ∪ N0

MACIS-2013 12/18

slide-40
SLIDE 40

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Example

N = Np ˙ ∪ N¬p ˙ ∪ N0 (0, ∗, 0) || p ∨ q ∨ r (∗, 0, 0) || ¬p ∨ q (∗, 0, 0) || p ∨ ¬q (0, ∗, 0) || ¬p ∨ ¬r (∗, ∗, 0) || r ∨ ¬p′ N = (Np ⊗ N¬p) ∪ N0

MACIS-2013 12/18

slide-41
SLIDE 41

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Example

N = Np ˙ ∪ N¬p ˙ ∪ N0 (0, ∗, 0) || p ∨ q ∨ r (∗, 0, 0) || ¬p ∨ q (0, 0, 0) || q ∨ r (∗, 0, 0) || p ∨ ¬q (0, ∗, 0) || ¬p ∨ ¬r (∗, ∗, 0) || r ∨ ¬p′ N = (Np ⊗ N¬p) ∪ N0

MACIS-2013 12/18

slide-42
SLIDE 42

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Example

N = Np ˙ ∪ N¬p ˙ ∪ N0 (0, ∗, 0) || p ∨ q ∨ r (∗, 0, 0) || ¬p ∨ q (∗, 0, 0) || p ∨ ¬q (0, ∗, 0) || ¬p ∨ ¬r (∗, ∗, 0) || r ∨ ¬p′ N = (Np ⊗ N¬p) ∪ N0 (0, 0, 0) || q ∨ r

MACIS-2013 12/18

slide-43
SLIDE 43

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Example

N = Np ˙ ∪ N¬p ˙ ∪ N0 (0, ∗, 0) || p ∨ q ∨ r (∗, 0, 0) || ¬p ∨ q (∗, 0, 0) || p ∨ ¬q (0, ∗, 0) || ¬p ∨ ¬r (0, ∗, 0) || q ∨ r ∨ ¬r (∗, ∗, 0) || r ∨ ¬p′ N = (Np ⊗ N¬p) ∪ N0 (0, 0, 0) || q ∨ r

MACIS-2013 12/18

slide-44
SLIDE 44

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Example

N = Np ˙ ∪ N¬p ˙ ∪ N0 (0, ∗, 0) || p ∨ q ∨ r (∗, 0, 0) || ¬p ∨ q (∗, 0, 0) || p ∨ ¬q (0, ∗, 0) || ¬p ∨ ¬r (∗, ∗, 0) || r ∨ ¬p′ N = (Np ⊗ N¬p) ∪ N0 (0, 0, 0) || q ∨ r

MACIS-2013 12/18

slide-45
SLIDE 45

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Example

N = Np ˙ ∪ N¬p ˙ ∪ N0 (0, ∗, 0) || p ∨ q ∨ r (∗, 0, 0) || ¬p ∨ q (∗, 0, 0) || p ∨ ¬q (0, ∗, 0) || ¬p ∨ ¬r (∗, ∗, 0) || r ∨ ¬p′ ⊥ N = (Np ⊗ N¬p) ∪ N0 (0, 0, 0) || q ∨ r

MACIS-2013 12/18

slide-46
SLIDE 46

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Example

N = Np ˙ ∪ N¬p ˙ ∪ N0 (0, ∗, 0) || p ∨ q ∨ r (∗, 0, 0) || ¬p ∨ q (∗, 0, 0) || p ∨ ¬q (0, ∗, 0) || ¬p ∨ ¬r (∗, ∗, 0) || r ∨ ¬p′ N = (Np ⊗ N¬p) ∪ N0 (0, 0, 0) || q ∨ r

MACIS-2013 12/18

slide-47
SLIDE 47

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Example

N = Np ˙ ∪ N¬p ˙ ∪ N0 (0, ∗, 0) || p ∨ q ∨ r (∗, 0, 0) || ¬p ∨ q (∗, 0, 0) || q ∨ ¬q (∗, 0, 0) || p ∨ ¬q (0, ∗, 0) || ¬p ∨ ¬r (∗, ∗, 0) || r ∨ ¬p′ N = (Np ⊗ N¬p) ∪ N0 (0, 0, 0) || q ∨ r

MACIS-2013 12/18

slide-48
SLIDE 48

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Example

N = Np ˙ ∪ N¬p ˙ ∪ N0 (0, ∗, 0) || p ∨ q ∨ r (∗, 0, 0) || ¬p ∨ q (∗, 0, 0) || p ∨ ¬q (0, ∗, 0) || ¬p ∨ ¬r (∗, ∗, 0) || r ∨ ¬p′ N = (Np ⊗ N¬p) ∪ N0 (0, 0, 0) || q ∨ r

MACIS-2013 12/18

slide-49
SLIDE 49

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Example

N = Np ˙ ∪ N¬p ˙ ∪ N0 (0, ∗, 0) || p ∨ q ∨ r (∗, 0, 0) || ¬p ∨ q (∗, 0, 0) || p ∨ ¬q (0, ∗, 0) || ¬p ∨ ¬r (0, 0, 0) || ¬q ∨ ¬r (∗, ∗, 0) || r ∨ ¬p′ N = (Np ⊗ N¬p) ∪ N0 (0, 0, 0) || q ∨ r

MACIS-2013 12/18

slide-50
SLIDE 50

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Example

N = Np ˙ ∪ N¬p ˙ ∪ N0 (0, ∗, 0) || p ∨ q ∨ r (∗, 0, 0) || ¬p ∨ q (∗, 0, 0) || p ∨ ¬q (0, ∗, 0) || ¬p ∨ ¬r (∗, ∗, 0) || r ∨ ¬p′ N = (Np ⊗ N¬p) ∪ N0 (0, 0, 0) || q ∨ r (0, 0, 0) || ¬q ∨ ¬r

MACIS-2013 12/18

slide-51
SLIDE 51

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Example

N = Np ˙ ∪ N¬p ˙ ∪ N0 (0, ∗, 0) || p ∨ q ∨ r (∗, 0, 0) || ¬p ∨ q (∗, 0, 0) || p ∨ ¬q (0, ∗, 0) || ¬p ∨ ¬r (∗, ∗, 0) || r ∨ ¬p′ N = (Np ⊗ N¬p) ∪ N0 (0, 0, 0) || q ∨ r (0, 0, 0) || ¬q ∨ ¬r

MACIS-2013 12/18

slide-52
SLIDE 52

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Example

N = Np ˙ ∪ N¬p ˙ ∪ N0 (0, ∗, 0) || p ∨ q ∨ r (∗, 0, 0) || ¬p ∨ q (∗, 1, 0) || p′ ∨ ¬q′ (0, ∗, 0) || ¬p ∨ ¬r (∗, ∗, 0) || r ∨ ¬p′ N = (Np ⊗ N¬p) ∪ N0 (0, 0, 0) || q ∨ r (0, 0, 0) || ¬q ∨ ¬r

MACIS-2013 12/18

slide-53
SLIDE 53

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Example

N = Np ˙ ∪ N¬p ˙ ∪ N0 (0, ∗, 0) || p ∨ q ∨ r (∗, 0, 0) || ¬p ∨ q (∗, 1, 0) || p′ ∨ ¬q′ (0, ∗, 0) || ¬p ∨ ¬r (∗, ∗, 0) || r ∨ ¬p′ (∗, 1, 0) || r ∨ ¬q′ N = (Np ⊗ N¬p) ∪ N0 (0, 0, 0) || q ∨ r (0, 0, 0) || ¬q ∨ ¬r

MACIS-2013 12/18

slide-54
SLIDE 54

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Example

N = Np ˙ ∪ N¬p ˙ ∪ N0 (0, ∗, 0) || p ∨ q ∨ r (∗, 0, 0) || ¬p ∨ q (∗, 0, 0) || p ∨ ¬q (0, ∗, 0) || ¬p ∨ ¬r (∗, ∗, 0) || r ∨ ¬p′ N = (Np ⊗ N¬p) ∪ N0 (0, 0, 0) || q ∨ r (0, 0, 0) || ¬q ∨ ¬r (∗, 1, 0) || r ∨ ¬q′

MACIS-2013 12/18

slide-55
SLIDE 55

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Example

N = Np ˙ ∪ N¬p ˙ ∪ N0 (0, ∗, 0) || p ∨ q ∨ r (∗, 0, 0) || ¬p ∨ q (∗, 0, 0) || p ∨ ¬q (0, ∗, 0) || ¬p ∨ ¬r (∗, ∗, 0) || r ∨ ¬p′ N = (Np ⊗ N¬p) ∪ N0 (0, 0, 0) || q ∨ r (0, 0, 0) || ¬q ∨ ¬r (∗, 1, 0) || r ∨ ¬q′

MACIS-2013 12/18

slide-56
SLIDE 56

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Example

N = Np ˙ ∪ N¬p ˙ ∪ N0 (0, ∗, 0) || p ∨ q ∨ r (∗, 0, 0) || ¬p ∨ q (∗, 0, 0) || p ∨ ¬q (0, ∗, 0) || ¬p ∨ ¬r (∗, ∗, 0) || r ∨ ¬p′ N = (Np ⊗ N¬p) ∪ N0 (∗, 1, 0) || r ∨ ¬q′

MACIS-2013 12/18

slide-57
SLIDE 57

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Limitations

cannot eliminate variables occurring both primed and unprimed p ∨ q ∨ p′ ∨ ¬r ′ (the result may not be expressible in LTL) clauses with multiple primes are meaningful but obtrusive p ∨ r ′ ¬r ∨ ¬q′ p ∨ ¬q′′ (no problem if later shown redundant)

MACIS-2013 13/18

slide-58
SLIDE 58

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Limitations

cannot eliminate variables occurring both primed and unprimed p ∨ q ∨ p′ ∨ ¬r ′ (the result may not be expressible in LTL) clauses with multiple primes are meaningful but obtrusive p ∨ r ′ ¬r ∨ ¬q′ p ∨ ¬q′′ (no problem if later shown redundant)

MACIS-2013 13/18

slide-59
SLIDE 59

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Prototype implementation based on Minisat 2.2

reuse the SAT solver’s simplification loop emulate labels by marking literals

Input problems

3723 formulas collected by Schuppan and Darmawan (2011) several families, various flavors (application, crafted, random)

Two resolution LTL provers

LS4: an LTL prover with partial model guidance (Suda and Wiedenbach, 2012) trp++: saturation prover using CTR (Hustadt and Konev, 2003)

MACIS-2013 14/18

slide-60
SLIDE 60

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Prototype implementation based on Minisat 2.2

reuse the SAT solver’s simplification loop emulate labels by marking literals

Input problems

3723 formulas collected by Schuppan and Darmawan (2011) several families, various flavors (application, crafted, random)

Two resolution LTL provers

LS4: an LTL prover with partial model guidance (Suda and Wiedenbach, 2012) trp++: saturation prover using CTR (Hustadt and Konev, 2003)

MACIS-2013 14/18

slide-61
SLIDE 61

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Prototype implementation based on Minisat 2.2

reuse the SAT solver’s simplification loop emulate labels by marking literals

Input problems

3723 formulas collected by Schuppan and Darmawan (2011) several families, various flavors (application, crafted, random)

Two resolution LTL provers

LS4: an LTL prover with partial model guidance (Suda and Wiedenbach, 2012) trp++: saturation prover using CTR (Hustadt and Konev, 2003)

MACIS-2013 14/18

slide-62
SLIDE 62

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Phase 1: translation

Of the original formulas (general LTL) . . . . . . to TST’s (accessible to both provers)

Phase 2: simplification

recording number of variables and clauses eliminated in total: 39 % of the variables (7% original, 32% auxiliary) and 32 % of clauses eliminated numbers vary across the individual families

Phase 3: effect of simplification on prover runtime

attempt solving original and simplified version of the problem 300 second time limit per problem

MACIS-2013 15/18

slide-63
SLIDE 63

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Phase 1: translation

Of the original formulas (general LTL) . . . . . . to TST’s (accessible to both provers)

Phase 2: simplification

recording number of variables and clauses eliminated in total: 39 % of the variables (7% original, 32% auxiliary) and 32 % of clauses eliminated numbers vary across the individual families

Phase 3: effect of simplification on prover runtime

attempt solving original and simplified version of the problem 300 second time limit per problem

MACIS-2013 15/18

slide-64
SLIDE 64

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Phase 1: translation

Of the original formulas (general LTL) . . . . . . to TST’s (accessible to both provers)

Phase 2: simplification

recording number of variables and clauses eliminated in total: 39 % of the variables (7% original, 32% auxiliary) and 32 % of clauses eliminated numbers vary across the individual families

Phase 3: effect of simplification on prover runtime

attempt solving original and simplified version of the problem 300 second time limit per problem

MACIS-2013 15/18

slide-65
SLIDE 65

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

family size LS4 trp++ solved time solved time ❛❝❛❝✐❛ 71

  • 71

7.1s 71 39.3s s 71 7.1s 71 11.3s ❛❧❛s❦❛ 140

  • 121

6607.0s 9 39423.2s s 139 882.0s 12 38717.5s ❛♥③✉ 111

  • 93

5754.2s 33300.0s s 94 5482.2s 33300.0s ❢♦r♦❜♦ts 39

  • 39

4.3s 39 1198.8s s 39 3.9s 39 194.2s r♦③✐❡r 2320

  • 2278

13312.9s 2063 96293.7s s 2278 13270.7s 2120 76921.1s s❝❤✉♣♣❛♥ 72

  • 41

9332.8s 36 11189.8s s 41 9320.9s 37 10741.0s tr♣ 970

  • 940

12327.5s 364 189045.2s s 934 11887.5s 359 190138.3s total 3723

  • 3583

47345.8s 2582 370490.0s s 3596 40854.3s 2638 350023.4s

MACIS-2013 16/18

slide-66
SLIDE 66

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

3490 3500 3510 3520 3530 3540 3550 3560 3570 3580 3590 3600 50 100 150 200 250 300 problems solved time (seconds) LS4 original LS4 simplified 2150 2200 2250 2300 2350 2400 2450 2500 2550 2600 2650 50 100 150 200 250 300 problems solved time (seconds) trp++ original trp++ simplified

MACIS-2013 17/18

slide-67
SLIDE 67

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Summary

a new preprocessing technique for LTL satisfiability mechanism of labeled clauses effectively “lifts” variable and clause elimination from SAT to LTL could other techniques be generalized as well? – e.g., blocked clause elimination (Järvisalo et al. 2010)?

MACIS-2013 18/18

slide-68
SLIDE 68

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Summary

a new preprocessing technique for LTL satisfiability mechanism of labeled clauses effectively “lifts” variable and clause elimination from SAT to LTL could other techniques be generalized as well? – e.g., blocked clause elimination (Järvisalo et al. 2010)?

MACIS-2013 18/18

slide-69
SLIDE 69

Introduction LTL preliminaries Labels Elimination in LTL Experimental evaluation Conclusion

Summary

a new preprocessing technique for LTL satisfiability mechanism of labeled clauses effectively “lifts” variable and clause elimination from SAT to LTL could other techniques be generalized as well? – e.g., blocked clause elimination (Järvisalo et al. 2010)?

MACIS-2013 18/18