A Proof Complexity View of Pseudo-Boolean Solving Marc Vinyals Tata - - PowerPoint PPT Presentation

a proof complexity view of pseudo boolean solving
SMART_READER_LITE
LIVE PREVIEW

A Proof Complexity View of Pseudo-Boolean Solving Marc Vinyals Tata - - PowerPoint PPT Presentation

A Proof Complexity View of Pseudo-Boolean Solving Marc Vinyals Tata Institute of Fundamental Research Mumbai, India Joint work with Jan Elffers, Jess Girldez-Cru, Stephan Gocht, and Jakob Nordstrm Theory and Practice of Satisfiability


slide-1
SLIDE 1

A Proof Complexity View of Pseudo-Boolean Solving

Marc Vinyals

Tata Institute of Fundamental Research Mumbai, India

Joint work with Jan Elffers, Jesús Giráldez-Cru, Stephan Gocht, and Jakob Nordström Theory and Practice of Satisfiability Solving Workshop August 28 2018, Casa Matemática Oaxaca, Mexico

slide-2
SLIDE 2

Background Theory Experiments

The Power of CDCL Solvers

◮ Current SAT solvers use CDCL algorithm ◮ Replace heuristics by nondeterminism → CDCL proof system

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 1 / 30

slide-3
SLIDE 3

Background Theory Experiments

The Power of CDCL Solvers

◮ Current SAT solvers use CDCL algorithm ◮ Replace heuristics by nondeterminism → CDCL proof system ◮ All CDCL proofs are resolution proofs ◮ Lower bound for resolution length ⇒ lower bound for CDCL run time *(Ignoring preprocessing)

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 1 / 30

slide-4
SLIDE 4

Background Theory Experiments

The Power of CDCL Solvers

◮ Current SAT solvers use CDCL algorithm ◮ Replace heuristics by nondeterminism → CDCL proof system ◮ All CDCL proofs are resolution proofs ◮ Lower bound for resolution length ⇒ lower bound for CDCL run time *(Ignoring preprocessing)

And the opposite direction?

Theorem [Pipatsrisawat, Darwiche ’09; Atserias, Fichte, Thurley ’09]

CDCL ≡poly Resolution

◮ CDCL can simulate any resolution proof ◮ Not true for DPLL: limited to tree-like

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 1 / 30

slide-5
SLIDE 5

Background Theory Experiments

More Powerful Solvers

Resolution is a weak proof system

◮ e.g. cannot count ◮ x1 + ··· + xn = n/2 needs exponentially many clauses

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 2 / 30

slide-6
SLIDE 6

Background Theory Experiments

More Powerful Solvers

Resolution is a weak proof system

◮ e.g. cannot count ◮ x1 + ··· + xn = n/2 needs exponentially many clauses

Pseudo-Boolean constraints more expressive

x1 + ··· + xn ≥ n/2 x1 + ··· + xn ≥ n/2

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 2 / 30

slide-7
SLIDE 7

Background Theory Experiments

More Powerful Solvers

Resolution is a weak proof system

◮ e.g. cannot count ◮ x1 + ··· + xn = n/2 needs exponentially many clauses

Pseudo-Boolean constraints more expressive

x1 + ··· + xn ≥ n/2 x1 + ··· + xn ≥ n/2

Build solvers with native pseudo-Boolean constraints?

◮ Can generalize CDCL, even if tricky ◮ Not as successful as SAT solvers

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 2 / 30

slide-8
SLIDE 8

Background Theory Experiments

What do we do

Question

What limits pseudo-Boolean solvers?

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 3 / 30

slide-9
SLIDE 9

Background Theory Experiments

What do we do

Question

What limits pseudo-Boolean solvers? Theoretical Barriers

◮ Study proof systems arising from pseudo-Boolean solvers

Implementation

◮ Evaluate solvers on theoretically easy formulas

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 3 / 30

slide-10
SLIDE 10

Background Theory Experiments

What do we do

Question

What limits pseudo-Boolean solvers? Theoretical Barriers

◮ Study proof systems arising from pseudo-Boolean solvers

Implementation

◮ Evaluate solvers on theoretically easy formulas

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 3 / 30

slide-11
SLIDE 11

Background Theory Experiments

Cutting Planes

All pseudo-Boolean proofs are cutting planes proofs

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 4 / 30

slide-12
SLIDE 12

Background Theory Experiments

Cutting Planes

All pseudo-Boolean proofs are cutting planes proofs Work with linear pseudo-Boolean inequalities

x ∨ y → x + y ≥ 1 ≡ x + (1 − y) ≥ 1 y = 1 − y

degree

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 4 / 30

slide-13
SLIDE 13

Background Theory Experiments

Cutting Planes

All pseudo-Boolean proofs are cutting planes proofs Work with linear pseudo-Boolean inequalities

x ∨ y → x + y ≥ 1 ≡ x + (1 − y) ≥ 1 y = 1 − y

degree Rules Variable axioms

x ≥ 0 −x ≥ −1

Addition

  • aixi ≥ a
  • bixi ≥ b
  • (αai + βbi)xi ≥ αa + βb

Division

  • aixi ≥ a
  • (ai/k)xi ≥ ⌈a/k⌉

Goal: derive 0 ≥ 1

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 4 / 30

slide-14
SLIDE 14

Background Theory Experiments

Addition in Practice

Addition

  • aixi ≥ a
  • bixi ≥ b
  • (αai + βbi)xi ≥ αa + βb

◮ Unbounded choices ◮ Need a reason to add inequalities

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 5 / 30

slide-15
SLIDE 15

Background Theory Experiments

Division in Practice

Division

  • aixi ≥ a
  • (ai/k)xi ≥ ⌈a/k⌉

◮ Too expensive

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 6 / 30

slide-16
SLIDE 16

Background Theory Experiments

Weaker Rules

What is the bare minimum to simulate resolution?

x ∨ y ∨ z x ∨ y y ∨ z

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 7 / 30

slide-17
SLIDE 17

Background Theory Experiments

Weaker Rules

What is the bare minimum to simulate resolution?

x ∨ y ∨ z x ∨ y y ∨ z x + y + z ≥ 1 x + y ≥ 1 x + x + 2y + z ≥ 2

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 7 / 30

slide-18
SLIDE 18

Background Theory Experiments

Weaker Rules

What is the bare minimum to simulate resolution?

x ∨ y ∨ z x ∨ y y ∨ z x + y + z ≥ 1 x + y ≥ 1 ▲ + 2y + z ≥ 1

◮ Addition only if some variable cancels

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 7 / 30

slide-19
SLIDE 19

Background Theory Experiments

Weaker Rules

What is the bare minimum to simulate resolution?

x ∨ y ∨ z x ∨ y y ∨ z x + y + z ≥ 1 x + y ≥ 1 2y + z ≥ 1 y + z ≥ 1

◮ Addition only if some variable cancels ◮ Division brings coefficients down to degree

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 7 / 30

slide-20
SLIDE 20

Background Theory Experiments

Addition in Practice

Addition

  • aixi ≥ a
  • bixi ≥ b
  • (αai + βbi)xi ≥ αa + βb

◮ Unbounded choices ◮ Need a reason to add inequalities

Cancelling Addition

◮ Some variable cancels: αai + βbi = 0 ◮ aka. Generalized Resolution

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 8 / 30

slide-21
SLIDE 21

Background Theory Experiments

Division in Practice

Division

  • aixi ≥ a
  • (ai/k)xi ≥ ⌈a/k⌉

◮ Too expensive

Saturation

  • aixi ≥ a
  • min(a,ai)xi ≥ a

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 9 / 30

slide-22
SLIDE 22

Background Theory Experiments

Proof Systems

Resolution CP saturation cancelling addition CP division cancelling addition CP saturation general addition CP division general addition Power of subsystems of CP?

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 10 / 30

slide-23
SLIDE 23

Background Theory Experiments

Proof Systems

Resolution CP saturation cancelling addition CP division cancelling addition CP saturation general addition CP division general addition

A B: B simulates A (with only polynomial loss)

Cancelling addition is a particular case of addition

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 11 / 30

slide-24
SLIDE 24

Background Theory Experiments

Proof Systems

Resolution CP saturation cancelling addition CP division cancelling addition CP saturation general addition CP division general addition

A B: B simulates A (with only polynomial loss)

All subsystems simulate resolution

◮ Trivial over CNF inputs ◮ Also holds over linear

pseudo-Boolean inputs

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 11 / 30

slide-25
SLIDE 25

Background Theory Experiments

Proof Systems

Resolution CP saturation cancelling addition CP division cancelling addition CP saturation general addition CP division general addition

A B: B simulates A (with only polynomial loss) †: known only for polynomial-size coefficients

Repeated divisions simulate saturation

◮ Polynomial simulation

  • nly if polynomial

coefficients

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 11 / 30

slide-26
SLIDE 26

Background Theory Experiments

Proof Systems

Resolution CP saturation cancelling addition CP division cancelling addition CP saturation general addition CP division general addition

A B: B simulates A (with only polynomial loss) A B: B cannot simulate A (separation) †: known only for polynomial-size coefficients

CP stronger than resolution

◮ Pigeonhole principle ◮ Subset cardinality

have proofs of size

◮ polynomial in CP ◮ exponential in resolution

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 11 / 30

slide-27
SLIDE 27

Background Theory Experiments

Bad News

Theorem

On CNF inputs all subsystems as weak as resolution

◮ No subsystem is implicationally complete ◮ Solvers very sensitive to input encoding

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 12 / 30

slide-28
SLIDE 28

Background Theory Experiments

Cancelling Addition ≡ Resolution

Observation [Hooker ’88]

Over CNF inputs CP with cancelling addition ≡ resolution.

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 13 / 30

slide-29
SLIDE 29

Background Theory Experiments

Cancelling Addition ≡ Resolution

Observation [Hooker ’88]

Over CNF inputs CP with cancelling addition ≡ resolution. Proof Sketch

◮ Start with clauses (degree 1) ◮ Add two clauses → a clause

x +

  • yi ≥ 1

x +

  • yi ≥ 1

▲ + 1 +

  • yi ≥ 1 + 1

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 13 / 30

slide-30
SLIDE 30

Background Theory Experiments

Cancelling Addition ≡ Resolution

Observation [Hooker ’88]

Over CNF inputs CP with cancelling addition ≡ resolution. Proof Sketch

◮ Start with clauses (degree 1) ◮ Add two clauses → a clause

x +

  • yi ≥ 1

x +

  • yi ≥ 1
  • yi ≥ 1

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 13 / 30

slide-31
SLIDE 31

Background Theory Experiments

Cancelling Addition ≡ Resolution

Observation [Hooker ’88]

Over CNF inputs CP with cancelling addition ≡ resolution. Proof Sketch

◮ Start with clauses (degree 1) ◮ Add two clauses → a clause

x +

  • yi ≥ 1

x +

  • yi ≥ 1
  • yi ≥ 1

≡ x ∨ C x ∨ D C ∨ D

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 13 / 30

slide-32
SLIDE 32

Background Theory Experiments

Proof Systems

Resolution CP saturation cancelling addition CP division cancelling addition CP saturation general addition CP division general addition

A B: B simulates A (with only polynomial loss) A B: B cannot simulate A (separation) †: known only for polynomial-size coefficients

Cancellation ≡ Resolution

◮ Over CNF inputs [Hooker ’88] ◮ Pigeonhole principle ◮ Subset cardinality

have proofs of size

◮ polynomial in CP ◮ exponential in resolution

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 14 / 30

slide-33
SLIDE 33

Background Theory Experiments

Proof Systems

Resolution CP saturation cancelling addition CP division cancelling addition CP saturation general addition CP division general addition

A B: B simulates A (with only polynomial loss) A B: B cannot simulate A (separation) †: known only for polynomial-size coefficients

Cancellation ≡ Resolution

◮ Over CNF inputs [Hooker ’88] ◮ Pigeonhole principle ◮ Subset cardinality

have proofs of size

◮ polynomial in CP ◮ exponential in CP

with cancelling addition and any rounding

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 14 / 30

slide-34
SLIDE 34

Background Theory Experiments

Saturation: General Addition ≡ Cancelling Addition

Theorem

Over CNF inputs CP with saturation ≡ CP with cancelling addition.

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 15 / 30

slide-35
SLIDE 35

Background Theory Experiments

Saturation: General Addition ≡ Cancelling Addition

Theorem

Over CNF inputs CP with saturation ≡ CP with cancelling addition.

Corollary

Over CNF inputs CP with saturation ≡ resolution.

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 15 / 30

slide-36
SLIDE 36

Background Theory Experiments

Proof Systems

Resolution CP saturation cancelling addition CP division cancelling addition CP saturation general addition CP division general addition

A B: B simulates A (with only polynomial loss) A B: B cannot simulate A (separation) †: known only for polynomial-size coefficients

Saturation ≡ Resolution

◮ Over CNF inputs ◮ Pigeonhole principle ◮ Subset cardinality

have proofs of size

◮ polynomial in CP ◮ exponential in CP

with cancelling addition

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 16 / 30

slide-37
SLIDE 37

Background Theory Experiments

Proof Systems

Resolution CP saturation cancelling addition CP division cancelling addition CP saturation general addition CP division general addition

A B: B simulates A (with only polynomial loss) A B: B cannot simulate A (separation) †: known only for polynomial-size coefficients

Saturation ≡ Resolution

◮ Over CNF inputs ◮ Pigeonhole principle ◮ Subset cardinality

have proofs of size

◮ polynomial in CP ◮ exponential in CP

with cancelling addition

  • r saturation

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 16 / 30

slide-38
SLIDE 38

Background Theory Experiments

Linear Programming is Easy

Lemma

If a formula defines an empty polytope over then have polynomial size proof in CP with cancelling addition.

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 17 / 30

slide-39
SLIDE 39

Background Theory Experiments

Proof Systems

Resolution CP saturation cancelling addition CP division cancelling addition CP saturation general addition CP division general addition

A B: B simulates A (with only polynomial loss) A B: B cannot simulate A (separation) †: known only for polynomial-size coefficients

Pseudo-Boolean versions of

◮ Pigeonhole principle ◮ Subset cardinality

have proof of size

◮ polynomial in all CP

subsystems

◮ exponential in resolution

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 18 / 30

slide-40
SLIDE 40

Background Theory Experiments

Proof Systems

Resolution CP saturation cancelling addition CP division cancelling addition CP saturation general addition CP division general addition

A B: B simulates A (with only polynomial loss) A B: B cannot simulate A (separation) †: known only for polynomial-size coefficients

Pseudo-Boolean versions of

◮ Pigeonhole principle ◮ Subset cardinality

have proof of size

◮ polynomial in all CP

subsystems

◮ exponential in resolution

CNF version exponential ⇒ Cannot recover encoding ⇒ Subsystems are incomplete

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 18 / 30

slide-41
SLIDE 41

Background Theory Experiments

What do we do

Question

What limits pseudo-Boolean solvers? Theoretical Barriers

◮ Study proof systems arising from pseudo-Boolean solvers ◮ Cancelling addition and saturation not enough

Implementation

◮ Evaluate solvers on theoretically easy formulas

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 19 / 30

slide-42
SLIDE 42

Background Theory Experiments

What do we do

Question

What limits pseudo-Boolean solvers? Theoretical Barriers

◮ Study proof systems arising from pseudo-Boolean solvers ◮ Cancelling addition and saturation not enough

Implementation

◮ Evaluate solvers on theoretically easy formulas

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 20 / 30

slide-43
SLIDE 43

Background Theory Experiments

Easy Formulas

Craft combinatorial formulas easy for CP

◮ Build proofs in different subsystems ◮ Choice of parameters for different levels of hardness

1

Easy for resolution

2

Hard for resolution, infeasible LP

3

Feasible LP, easy for saturation

4

Require division?

◮ Easy for CP, even tree-like

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 21 / 30

slide-44
SLIDE 44

Background Theory Experiments

Solvers

Solvers from PB evaluation 2016 with different techniques

◮ Open-WBO

◮ Translate into CNF ◮ ≃ Resolution Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 22 / 30

slide-45
SLIDE 45

Background Theory Experiments

Solvers

Solvers from PB evaluation 2016 with different techniques

◮ Open-WBO

◮ Translate into CNF ◮ ≃ Resolution

◮ Sat4j

◮ Linear inequalities ◮ ≃ CP saturation cancelling addition

◮ RoundingSat

◮ Linear inequalities ◮ CP division cancelling addition Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 22 / 30

slide-46
SLIDE 46

Background Theory Experiments

Experimental Results

Experimental Observation

PB solvers not good at proof search.

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 23 / 30

slide-47
SLIDE 47

Background Theory Experiments

Experimental Results

Experimental Observation

PB solvers not good at proof search.

◮ Sometimes exponentially faster than CDCL

◮ e.g. when LP close to infeasible Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 23 / 30

slide-48
SLIDE 48

Background Theory Experiments

Experiments: SC (subset cardinality), random graphs

0.01 0.1 1 10 100 1000 500 1000 1500 2000 2500 3000 3500 4000 Wall clock time (s) matrix dimension RoundingSat Open-WBO Sat4jCP ◮ No rational solutions ◮ Exponentially hard for resolution ⇒ Open-WBO times out ◮ Cutting planes solvers run fast

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 24 / 30

slide-49
SLIDE 49

Background Theory Experiments

Experimental Results

Experimental Observation

PB solvers not good at proof search.

◮ Sometimes exponentially faster than CDCL

◮ e.g. when LP close to infeasible

◮ Often not good at “truly Boolean” reasoning

◮ in particular when division useful Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 25 / 30

slide-50
SLIDE 50

Background Theory Experiments

Experiments: EC (even colouring), random graphs

0.01 0.1 1 10 100 1000 100 200 300 400 500 600 700 800 900 Wall clock time (s) #vertices RoundingSat Open-WBO Sat4jCP ◮ Provably hard for resolution ⇒ Open-WBO times out ◮ Conjecture hard for CP with saturation ⇒ Sat4j times out ◮ RoundingSat works best ⇒ division necessary?

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 26 / 30

slide-51
SLIDE 51

Background Theory Experiments

Experimental Results

Experimental Observation

PB solvers not good at proof search.

◮ Sometimes exponentially faster than CDCL

◮ e.g. when LP close to infeasible

◮ Often not good at “truly Boolean” reasoning

◮ in particular when division useful

◮ Sometimes even not good for infeasible LPs

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 27 / 30

slide-52
SLIDE 52

Background Theory Experiments

Experiments: VC (vertex cover), grid, no-rational

0.01 0.1 1 10 100 1000 50 100 150 200 Wall clock time (s) #columns RoundingSat Open-WBO Sat4jCP ◮ No rational solutions ◮ Open-WBO runs fast ◮ Cutting planes solvers fairly bad

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 28 / 30

slide-53
SLIDE 53

Background Theory Experiments

What do we do

Question

What limits pseudo-Boolean solvers? Theoretical Barriers

◮ Study proof systems arising from pseudo-Boolean solvers ◮ Cancelling addition and saturation not enough

Implementation

◮ Evaluate solvers on theoretically easy formulas ◮ Need to improve on proof search

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 29 / 30

slide-54
SLIDE 54

Take Home

Remarks

◮ Classified subsystems of Cutting Planes ◮ On CNF Subsystems ≡ Resolution → Sensitive to encoding ◮ Solvers not good at proof search

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 30 / 30

slide-55
SLIDE 55

Take Home

Remarks

◮ Classified subsystems of Cutting Planes ◮ On CNF Subsystems ≡ Resolution → Sensitive to encoding ◮ Solvers not good at proof search

Open problems

◮ Is division needed? Separation on PB inputs? ◮ Better search heuristics

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 30 / 30

slide-56
SLIDE 56

Take Home

Remarks

◮ Classified subsystems of Cutting Planes ◮ On CNF Subsystems ≡ Resolution → Sensitive to encoding ◮ Solvers not good at proof search

Open problems

◮ Is division needed? Separation on PB inputs? ◮ Better search heuristics

Thanks!

Marc Vinyals (TIFR) A Proof Complexity View of Pseudo-Boolean Solving 30 / 30