Four Flavors of Entailment ohle 1 , Roberto Sebastiani 2 , and Armin - - PowerPoint PPT Presentation

four flavors of entailment
SMART_READER_LITE
LIVE PREVIEW

Four Flavors of Entailment ohle 1 , Roberto Sebastiani 2 , and Armin - - PowerPoint PPT Presentation

Four Flavors of Entailment ohle 1 , Roberto Sebastiani 2 , and Armin Biere 1 Sibylle M 2 Department of Information Engineering 1 Institute for Formal Models and Verification LIT Secure and Correct Systems Lab and Computer Science The 23rd


slide-1
SLIDE 1

Four Flavors of Entailment

Sibylle M¨

  • hle1, Roberto Sebastiani 2, and Armin Biere1

1Institute for Formal Models and Verification

LIT Secure and Correct Systems Lab

2Department of Information Engineering

and Computer Science The 23rd International Conference on Theory and Applications of Satisfiability Testing (SAT 2020) 3 – 10 July 2020

slide-2
SLIDE 2

Motivation

We need. . .

. . . short (partial) models model shrinking (Tibebu and Fey, DDECS’18) dual reasoning (M¨

  • hle and Biere, ICTAI’18)

logical entailment (Sebastiani, arXiv.org, 2020) ➤ l

  • g

i c a l e n t a i l m e n t c h r

  • n
  • l
  • g

i c a l C D C L p r

  • j

e c t i

  • n

d u a l r e a s

  • n

i n g

2

slide-3
SLIDE 3

Motivation

We need. . .

. . . short (partial) models model shrinking (Tibebu and Fey, DDECS’18) dual reasoning (M¨

  • hle and Biere, ICTAI’18)

logical entailment (Sebastiani, arXiv.org, 2020) ➤ l

  • g

i c a l e n t a i l m e n t c h r

  • n
  • l
  • g

i c a l C D C L p r

  • j

e c t i

  • n

d u a l r e a s

  • n

i n g

2

slide-4
SLIDE 4

Motivation

We need. . .

. . . short (partial) models model shrinking (Tibebu and Fey, DDECS’18) dual reasoning (M¨

  • hle and Biere, ICTAI’18)

logical entailment (Sebastiani, arXiv.org, 2020) ➤ l

  • g

i c a l e n t a i l m e n t c h r

  • n
  • l
  • g

i c a l C D C L p r

  • j

e c t i

  • n

d u a l r e a s

  • n

i n g

2

slide-5
SLIDE 5

Motivation

We need. . .

. . . short (partial) models model shrinking (Tibebu and Fey, DDECS’18) dual reasoning (M¨

  • hle and Biere, ICTAI’18)

logical entailment (Sebastiani, arXiv.org, 2020) ➤ l

  • g

i c a l e n t a i l m e n t c h r

  • n
  • l
  • g

i c a l C D C L p r

  • j

e c t i

  • n

d u a l r e a s

  • n

i n g

2

slide-6
SLIDE 6

Motivation

We need. . .

. . . short (partial) models model shrinking (Tibebu and Fey, DDECS’18) dual reasoning (M¨

  • hle and Biere, ICTAI’18)

logical entailment (Sebastiani, arXiv.org, 2020) Example F = (x ∧ y) ∨ (x ∧ ¬y) F|x = y ∨ ¬y = 1 F|xy = F|x¬y = 1 = ⇒ x | = F ➤ l

  • g

i c a l e n t a i l m e n t c h r

  • n
  • l
  • g

i c a l C D C L p r

  • j

e c t i

  • n

d u a l r e a s

  • n

i n g

2

slide-7
SLIDE 7

Motivation

We need. . .

. . . short (partial) models model shrinking (Tibebu and Fey, DDECS’18) dual reasoning (M¨

  • hle and Biere, ICTAI’18)

logical entailment (Sebastiani, arXiv.org, 2020) Example F = (x ∧ y) ∨ (x ∧ ¬y) F|x = y ∨ ¬y = 1 F|xy = F|x¬y = 1 = ⇒ x | = F But determining logical entailment is harder than it seems! ➤ l

  • g

i c a l e n t a i l m e n t c h r

  • n
  • l
  • g

i c a l C D C L p r

  • j

e c t i

  • n

d u a l r e a s

  • n

i n g

2

slide-8
SLIDE 8

Motivation

We need. . .

. . . short (partial) models l

  • g

i c a l e n t a i l m e n t c h r

  • n
  • l
  • g

i c a l C D C L p r

  • j

e c t i

  • n

d u a l r e a s

  • n

i n g

2

slide-9
SLIDE 9

Motivation

We need. . .

. . . short (partial) models . . . pairwise disjoint models add the negated models as blocking clauses variant of conflict analysis (Toda and Soh, ACM J. Exp. Algorithmics, 2016) chronological CDCL (Nadel and Ryvchin, SAT’18; M¨

  • hle and Biere, SAT’19)

➤ l

  • g

i c a l e n t a i l m e n t c h r

  • n
  • l
  • g

i c a l C D C L p r

  • j

e c t i

  • n

d u a l r e a s

  • n

i n g

2

slide-10
SLIDE 10

Motivation

We need. . .

. . . short (partial) models . . . pairwise disjoint models add the negated models as blocking clauses variant of conflict analysis (Toda and Soh, ACM J. Exp. Algorithmics, 2016) chronological CDCL (Nadel and Ryvchin, SAT’18; M¨

  • hle and Biere, SAT’19)

➤ l

  • g

i c a l e n t a i l m e n t c h r

  • n
  • l
  • g

i c a l C D C L p r

  • j

e c t i

  • n

d u a l r e a s

  • n

i n g

2

slide-11
SLIDE 11

Motivation

We need. . .

. . . short (partial) models . . . pairwise disjoint models add the negated models as blocking clauses variant of conflict analysis (Toda and Soh, ACM J. Exp. Algorithmics, 2016) chronological CDCL (Nadel and Ryvchin, SAT’18; M¨

  • hle and Biere, SAT’19)

➤ l

  • g

i c a l e n t a i l m e n t c h r

  • n
  • l
  • g

i c a l C D C L p r

  • j

e c t i

  • n

d u a l r e a s

  • n

i n g

2

slide-12
SLIDE 12

Motivation

We need. . .

. . . short (partial) models . . . pairwise disjoint models add the negated models as blocking clauses variant of conflict analysis (Toda and Soh, ACM J. Exp. Algorithmics, 2016) chronological CDCL (Nadel and Ryvchin, SAT’18; M¨

  • hle and Biere, SAT’19)

➤ l

  • g

i c a l e n t a i l m e n t c h r

  • n
  • l
  • g

i c a l C D C L p r

  • j

e c t i

  • n

d u a l r e a s

  • n

i n g

2

slide-13
SLIDE 13

Motivation

We need. . .

. . . short (partial) models . . . pairwise disjoint models l

  • g

i c a l e n t a i l m e n t c h r

  • n
  • l
  • g

i c a l C D C L p r

  • j

e c t i

  • n

d u a l r e a s

  • n

i n g

2

slide-14
SLIDE 14

Motivation

We need. . .

. . . short (partial) models . . . pairwise disjoint models . . . projection F(X, Y ) where X ∩ Y = ∅ X relevant variables Y irrelevant variables ∃Y [ F(X, Y ) ] project F(X, Y ) onto X ➤ l

  • g

i c a l e n t a i l m e n t c h r

  • n
  • l
  • g

i c a l C D C L p r

  • j

e c t i

  • n

d u a l r e a s

  • n

i n g

2

slide-15
SLIDE 15

Motivation

We need. . .

. . . short (partial) models . . . pairwise disjoint models . . . projection l

  • g

i c a l e n t a i l m e n t c h r

  • n
  • l
  • g

i c a l C D C L p r

  • j

e c t i

  • n

d u a l r e a s

  • n

i n g

2

slide-16
SLIDE 16

Motivation

We need. . .

. . . short (partial) models . . . pairwise disjoint models . . . projection l

  • g

i c a l e n t a i l m e n t c h r

  • n
  • l
  • g

i c a l C D C L p r

  • j

e c t i

  • n

d u a l r e a s

  • n

i n g

2

slide-17
SLIDE 17

Motivation

We need. . .

. . . short (partial) models . . . pairwise disjoint models . . . projection

We get. . .

. . . Disjoint Sum-of-Products (DSOP) ➤ l

  • g

i c a l e n t a i l m e n t c h r

  • n
  • l
  • g

i c a l C D C L p r

  • j

e c t i

  • n

d u a l r e a s

  • n

i n g DSOP

2

slide-18
SLIDE 18

Main Idea

Formula F SAT solver Check assignment DSOP M (Partial) Assignment I Next assignment

3

slide-19
SLIDE 19

Our Contribution

Formula F SAT solver Check assignment DSOP M (Partial) Assignment I Next assignment F|I = 1 F|I ≈ 1 F|I ≡ 1 ∀X∃Y [F|I ] = 1 ➤

3

slide-20
SLIDE 20

Logical Entailment Test under Projection

➤ Given F formula over variables in X ∪ Y I trail over variables in X ∪ Y

4

slide-21
SLIDE 21

Logical Entailment Test under Projection

Given

F formula over variables in X ∪ Y I trail over variables in X ∪ Y

Quantified entailment condition

In ϕ = ∀X∀Y [ F|I ] the unassigned variables in X ∪ Y are quantified ϕ = 1: all possible total extensions of I satisfy F

4

slide-22
SLIDE 22

Logical Entailment Test under Projection

Given

F formula over variables in X ∪ Y I trail over variables in X ∪ Y

Quantified entailment condition

In ϕ = ∀X∀Y [ F|I ] the unassigned variables in X ∪ Y are quantified ϕ = 1: all possible total extensions of I satisfy F

Entailment under projection onto the set of variables X

Does for each JX exist one JY such that F|I ′ = 1 where I ′ = I ∪ JX ∪ JY?

4

slide-23
SLIDE 23

Logical Entailment Test under Projection

Given

F formula over variables in X ∪ Y I trail over variables in X ∪ Y

Quantified entailment condition

In ϕ = ∀X∀Y [ F|I ] the unassigned variables in X ∪ Y are quantified ϕ = 1: all possible total extensions of I satisfy F

Entailment under projection onto the set of variables X

Does for each JX exist one JY such that F|I ′ = 1 where I ′ = I ∪ JX ∪ JY? QBF(ϕ) = 1 where ϕ = ∀X∃Y [F|I ] = 1?

4

slide-24
SLIDE 24

Four Flavors of Logical Entailment under Projection

➤ 1) F|I = 1 (syntactic check) F = (x1 ∨ y ∨ x2) X = {x1, x2} Y = {y} I = x1: F|I = 1 = ⇒ I | = F

5

slide-25
SLIDE 25

Four Flavors of Logical Entailment under Projection

➤ 1) F|I = 1 (syntactic check) 2) F|I ≈ 1 (incomplete check in P) F = x1y ∨ yx2 X = {x1, x2} Y = {y} I = x1x2: F|I = y ∨ y = 1 but is valid I = x1x2y: 0 ∈ BCP(¬F, I) = ⇒ x1x2 | = F

5

slide-26
SLIDE 26

Four Flavors of Logical Entailment under Projection

➤ 1) F|I = 1 (syntactic check) 2) F|I ≈ 1 (incomplete check in P) 3) F|I ≡ 1 (semantic check in coNP) F = x1(x2 y ∨ x2y ∨ x2y ∨ x2y) X = {x1, x2} Y = {y} I = x1: I(F) = x2 y ∨ x2y ∨ x2y ∨ x2y = 1 but is valid P = CNF(F) N = CNF(¬F): P|I and N|I are non-constant and contain no units N|I = (x2 ∨ y)(x2 ∨ y)(x2 ∨ y)(x2 ∨ y): SAT(N ∧ I) = 0 = ⇒ I | = F

5

slide-27
SLIDE 27

Four Flavors of Logical Entailment under Projection

➤ 1) F|I = 1 (syntactic check) 2) F|I ≈ 1 (incomplete check in P) 3) F|I ≡ 1 (semantic check in coNP) 4) ∀X∃Y [F|I ] = 1 (check in ΠP

2 )

F = x1(x2 ↔ y2) X = {x1, x2} Y = {y2} P = CNF(F) and N = CNF(¬F): P = (x1)(s1 ∨ s2)(s1 ∨ x2)(s1 ∨ y2)(s2 ∨ x2)(s2 ∨ y2) where S = {s1, s2} N = (x1 ∨ t1 ∨ t2)(t1 ∨ x2)(t1 ∨ y2)(t2 ∨ x2)(t2 ∨ y2) where T = {t1, t2} I = x1: P|I and N|I are non-constant and contain no units I = x1t2t1y2 : N|I = 1 ϕ = ∀X∃Y [ x2y2 ∨ x2 y2 ]: QBF(ϕ) = 1 = ⇒ x1 | = F

5

slide-28
SLIDE 28

What I Did Not Talk About

Input: formula F(X, Y ) over variables X ∪ Y such that X ∩ Y = ∅, trail I, decision level function δ Output: DNF M consisting of models of F projected onto X

Enumerate( F )

1 I := ε; δ := ∞; M := 0 2 forever do 3

C := PropagateUnits( F, I, δ )

4

if C = 0 then

5

c := δ(C)

6

if c = 0 then return M

7

AnalyzeConflict( F, I, C, c )

8

else if all variables in X ∪ Y are assigned then

9

if V (decs(I)) ∩ X = ∅ then return M ∨ π(I, X)

10

M := M ∨ π(I, X)

11

b := δ(decs(π(I, X)))

12

Backtrack( I, b − 1 )

13

else if Entails( I, F ) then

14

if V (decs(I)) ∩ X = ∅ then return M ∨ π(I, X)

14

M := M ∨ π(I, X)

15

b := δ(decs(π(I, X)))

16

Backtrack( I, b − 1 )

17

else Decide( I, δ )

6

slide-29
SLIDE 29

What I Did Not Talk About

7

slide-30
SLIDE 30

Conclusion

Our Contribution

Method for computing partial assignments entailing the formula on-the-fly Inspired by the interaction of theory and SAT solvers in SMT Combines dual reasoning and chronological CDCL Algorithm (in the paper) Formalization (in the paper) Entailment test in four flavors of increasing strength F|I = 1 (syntactic check) F|I ≈ 1 (incomplete check in P) F|I ≡ 1 (semantic check in coNP) ∀X∃Y [F|I ] = 1 (check in ΠP

2 )

8

slide-31
SLIDE 31

Conclusion

Our Contribution

Method for computing partial assignments entailing the formula on-the-fly Inspired by the interaction of theory and SAT solvers in SMT Combines dual reasoning and chronological CDCL Algorithm (in the paper) Formalization (in the paper) Entailment test in four flavors of increasing strength F|I = 1 (syntactic check) F|I ≈ 1 (incomplete check in P) F|I ≡ 1 (semantic check in coNP) ∀X∃Y [F|I ] = 1 (check in ΠP

2 )

Further Research

Implement and validate our method Target weighted model integration and model counting with or without projection Investigate methods concerning the implementation of QBF oracles

Dependency schemes (Samer and Szeider, JAR, 2009) Incremental QBF (Lonsing and Egly, CP’14)

Combine with decomposition-based approaches and generate d-DNNF

8