approximate dnf counting
play

Approximate DNF-Counting Kuldeep S. Meel 1 , Aditya A. Shrotri 2 , - PowerPoint PPT Presentation

On Hashing-Based Approaches to Approximate DNF-Counting Kuldeep S. Meel 1 , Aditya A. Shrotri 2 , Moshe Y. Vardi 2 1 School of Computing, 2 Department of Computer Science, National University of Singapore Rice University


  1. On Hashing-Based Approaches to Approximate DNF-Counting Kuldeep S. Meel 1 , Aditya A. Shrotri 2 , Moshe Y. Vardi 2 1 School of Computing, 2 Department of Computer Science, National University of Singapore Rice University On Hashing-Based Approaches to Approximate DNF Counting Kuldeep S. Meel, Aditya A. Shrotri , Moshe Y. Vardi 9/5/2018 1

  2. At a glance Boolean formulas • Variables take values T/F • Logical Operations AND, OR, NOT, XOR … • Formula encodings: • Conjunctive Normal Form (CNF) • • 1 ∨ ¬X 2 ∨ ¬X 3 ) ∧ (¬X 1 ∨ X 4 ) ∧ .. (X Disjunctive Normal Form (DNF) • • (X 1 ∧ ¬X 2 ∧ ¬X 3 ) ∨ (¬X 1 ∧ X 4 ) ∨ .. On Hashing-Based Approaches to Approximate DNF Counting Kuldeep S. Meel, Aditya A. Shrotri, Moshe Y. Vardi 9/5/2018 2

  3. At a glance • Counting Problem • number of satisfying assignments? • DNF-Counting Applications • Probabilistic Databases • Network Reliability • CNF-Counting Applications • Probabilistic Inference • Information Leakage On Hashing-Based Approaches to Approximate DNF Counting Kuldeep S. Meel, Aditya A. Shrotri, Moshe Y. Vardi 9/5/2018 3

  4. At a glance • Counting problem is hard [Valiant,’79] • “#P - Complete” • Relaxation: Approximate Counting • Challenge: Efficiently find an approximate answer that is guaranteed to be close On Hashing-Based Approaches to Approximate DNF Counting Kuldeep S. Meel, Aditya A. Shrotri, Moshe Y. Vardi 9/5/2018 4

  5. At a glance Hash functions show promise! • Hashing -based Approximate CNF-Counting • Improvements over 5+ years • • [Chakraborty et al. ’13,’14,’16] Scales to large formulas • Hashing -based Approximate DNF-Counting [Chakraborty et al. ‘16] • On Hashing-Based Approaches to Approximate DNF Counting Kuldeep S. Meel, Aditya A. Shrotri, Moshe Y. Vardi 9/5/2018 5

  6. At a glance • Hash functions show promise! • Hashing-based Approximate CNF-Counting • Improvements over 5+ years • [Chakraborty et al. ’13,’14,’16] • Scales to large formulas • Hashing-based Approximate DNF-Counting [Chakraborty et al. ‘16] • Poor time complexity On Hashing-Based Approaches to Approximate DNF Counting Kuldeep S. Meel, Aditya A. Shrotri, Moshe Y. Vardi 9/5/2018 6

  7. At a glance Problem : • Approximate DNF-Counting • Our Solution Strategy : • Design efficient hashing techniques • Contributions • 3 algorithmic improvements to the hashing framework • Result • Reduction in complexity from cubic to linear • Significance • Power and versatility of hashing • On Hashing-Based Approaches to Approximate DNF Counting Kuldeep S. Meel, Aditya A. Shrotri, Moshe Y. Vardi 9/5/2018 7

  8. Boolean Formulas and the Counting problem On Hashing-Based Approaches to Approximate DNF Counting Kuldeep S. Meel, Aditya A. Shrotri, Moshe Y. Vardi 9/5/2018 8

  9. Disjunctive Normal Form  = ¬𝑌 1 ∧ 𝑌 2 ∨ 𝑌 2 ∧ 𝑌 3 ∨ (𝑌 1 ∧ 𝑌 3 ) On Hashing-Based Approaches to Approximate DNF Counting Kuldeep S. Meel, Aditya A. Shrotri, Moshe Y. Vardi 9/5/2018 9

  10. Disjunctive Normal Form  = ¬𝑌 1 ∧ 𝑌 2 ∨ 𝑌 2 ∧ 𝑌 3 ∨ (𝑌 1 ∧ 𝑌 3 ) # variables n = 3 • On Hashing-Based Approaches to Approximate DNF Counting Kuldeep S. Meel, Aditya A. Shrotri, Moshe Y. Vardi 9/5/2018 10

  11. Disjunctive Normal Form  = ¬𝑌 1 ∧ 𝑌 2 ∨ 𝑌 2 ∧ 𝑌 3 ∨ (𝑌 1 ∧ 𝑌 3 ) Cubes: C 1 C 2 C 3 On Hashing-Based Approaches to Approximate DNF Counting Kuldeep S. Meel, Aditya A. Shrotri, Moshe Y. Vardi 9/5/2018 11

  12. Disjunctive Normal Form  = ¬𝑌 1 ∧ 𝑌 2 ∨ 𝑌 2 ∧ 𝑌 3 ∨ (𝑌 1 ∧ 𝑌 3 ) Cubes: C 1 C 2 C 3 # cubes m = 3 • On Hashing-Based Approaches to Approximate DNF Counting Kuldeep S. Meel, Aditya A. Shrotri, Moshe Y. Vardi 9/5/2018 12

  13. Disjunctive Normal Form  = ¬𝑌 1 ∧ 𝑌 2 ∨ 𝑌 2 ∧ 𝑌 3 ∨ (𝑌 1 ∧ 𝑌 3 ) • Assignment: X 1 = F , X 2 = T , X 3 = T On Hashing-Based Approaches to Approximate DNF Counting Kuldeep S. Meel, Aditya A. Shrotri, Moshe Y. Vardi 9/5/2018 13

  14. Disjunctive Normal Form  = ¬𝑌 1 ∧ 𝑌 2 ∨ 𝑌 2 ∧ 𝑌 3 ∨ (𝑌 1 ∧ 𝑌 3 ) • Assignment: X 1 = F , X 2 = T , X 3 = T (¬F ∧ T ) ∨ (T ∧ T ) ∨ (F ∧ T ) = T ∨ T ∨ F = T On Hashing-Based Approaches to Approximate DNF Counting Kuldeep S. Meel, Aditya A. Shrotri, Moshe Y. Vardi 9/5/2018 14

  15. Disjunctive Normal Form  = ¬𝑌 1 ∧ 𝑌 2 ∨ 𝑌 2 ∧ 𝑌 3 ∨ (𝑌 1 ∧ 𝑌 3 ) Assignment: X 1 = F , X 2 = T , X 3 = T • σ = < 0, 1, 1> • 2 ⇒ σ satisfies  σ satisfies C • • σ ⊨ C 2 ⊨  • σ On Hashing-Based Approaches to Approximate DNF Counting Kuldeep S. Meel, Aditya A. Shrotri, Moshe Y. Vardi 9/5/2018 15

  16. Disjunctive Normal Form  = ¬𝑌 1 ∧ 𝑌 2 ∨ 𝑌 2 ∧ 𝑌 3 ∨ (𝑌 1 ∧ 𝑌 3 ) • Assignment: X 1 = F , X 2 = T , X 3 = T • σ = <0, 1, 1> • σ satisfies C 2 ⇒ σ satisfies  • σ ⊨ C 2 • σ ⊨  • Checking σ ⊨  takes linear time On Hashing-Based Approaches to Approximate DNF Counting Kuldeep S. Meel, Aditya A. Shrotri, Moshe Y. Vardi 9/5/2018 16

  17. Disjunctive Normal Form  = ¬𝑌 1 ∧ 𝑌 2 ∨ 𝑌 2 ∧ 𝑌 3 ∨ (𝑌 1 ∧ 𝑌 3 ) 0,1} n Universe of assignments U = { • On Hashing-Based Approaches to Approximate DNF Counting Kuldeep S. Meel, Aditya A. Shrotri, Moshe Y. Vardi 9/5/2018 17

  18. Disjunctive Normal Form  = ¬𝑌 1 ∧ 𝑌 2 ∨ 𝑌 2 ∧ 𝑌 3 ∨ (𝑌 1 ∧ 𝑌 3 ) 0,1} n Universe of assignments U = { •  = { σ ∈ U : σ ⊨  } Set of solutions S • On Hashing-Based Approaches to Approximate DNF Counting Kuldeep S. Meel, Aditya A. Shrotri, Moshe Y. Vardi 9/5/2018 18

  19. Disjunctive Normal Form  = ¬𝑌 1 ∧ 𝑌 2 ∨ 𝑌 2 ∧ 𝑌 3 ∨ (𝑌 1 ∧ 𝑌 3 ) 0,1} n Universe of assignments U = { •  = { σ ∈ U : σ ⊨  } Set of solutions S • -Counting: Determine |S  | “Count of  ” DNF • On Hashing-Based Approaches to Approximate DNF Counting Kuldeep S. Meel, Aditya A. Shrotri, Moshe Y. Vardi 9/5/2018 19

  20. DNF Counting Problem  = ¬𝑌 1 ∧ 𝑌 2 ∨ 𝑌 2 ∧ 𝑌 3 ∨ (𝑌 1 ∧ 𝑌 3 ) • |U| = 2 3 = 8 • S  = { <0, 1, 0> , <0, 1, 1> , <1,0,1>, <1, 1, 1> } • |S  | = 4 On Hashing-Based Approaches to Approximate DNF Counting Kuldeep S. Meel, Aditya A. Shrotri, Moshe Y. Vardi 9/5/2018 20

  21. Hardness of DNF-Counting • Checking satisfiability • UNSAT: .. ∨ ( .. ∧ X i ∧ ¬X i ∧ .. ) ∨ .. On Hashing-Based Approaches to Approximate DNF Counting Kuldeep S. Meel, Aditya A. Shrotri, Moshe Y. Vardi 9/5/2018 21

  22. Hardness of DNF-Counting Enumerating satisfying assignments • •  = (X 1 ∧ ¬X 2 ) ∨ (X 3 ∧ X 4 ) ∨ … • <1 , 0, 0, 0> • <1 , 0, 0, 1> • <1 , 0, 1, 0> • <1 , 0, 1, 1> • 𝑇 𝑑 1 = {<1 , 0, 0, 0>, <1 , 0, 0, 1>, <1 , 0, 1, 0>, <1 , 0, 1, 1>} On Hashing-Based Approaches to Approximate DNF Counting Kuldeep S. Meel, Aditya A. Shrotri, Moshe Y. Vardi 9/5/2018 22

  23. Hardness of DNF-Counting • Enumerating satisfying assignments •  = (X 1 ∧ ¬X 2 ) ∨ (X 3 ∧ X 4 ) ∨ … • <1 , 0, 0, 0> • <1 , 0, 0, 1> • <1 , 0, 1, 0> • <1 , 0, 1, 1> • 𝑇 𝑑 1 = {<1 , 0, 0, 0>, <1 , 0, 0, 1>, <1 , 0, 1, 0>, <1 , 0, 1, 1>} • 𝑇 𝑑 1 ∩ 𝑇 𝑑 2 is not empty On Hashing-Based Approaches to Approximate DNF Counting Kuldeep S. Meel, Aditya A. Shrotri, Moshe Y. Vardi 9/5/2018 23

  24. Hardness of DNF-Counting Enumerating satisfying assignments • •  = (X 1 ∧ ¬X 2 ) ∨ (X 3 ∧ X 4 ) ∨ … • <1 , 0, 0, 0> • <1 , 0, 0, 1> • <1 , 0, 1, 0> • <1 , 0, 1, 1> • 𝑇 𝑑 1 = {<1 , 0, 0, 0>, <1 , 0, 0, 1>, <1 , 0, 1, 0>, <1 , 0, 1, 1>} • 𝑇 𝑑 1 ∩ 𝑇 𝑑 2 is not empty ⇒ |S  | = |𝑇 𝑑 1 ∪ 𝑇 𝑑 2 ∪ 𝑇 𝑑 3 … ∪ 𝑇 𝑑 𝑛 | On Hashing-Based Approaches to Approximate DNF Counting Kuldeep S. Meel, Aditya A. Shrotri, Moshe Y. Vardi 9/5/2018 24

  25. Hardness of DNF-Counting DNF -Counting is #P-Complete [Valiant,’79] • Class contains entire Polynomial Hierarchy! • Need to Approximate! • On Hashing-Based Approaches to Approximate DNF Counting Kuldeep S. Meel, Aditya A. Shrotri, Moshe Y. Vardi 9/5/2018 25

  26. Approximate DNF-Counting Input: DNF Formula  Tolerance ε 0 < ε < 1 Confidence δ 0 < δ < 1 Output: Approximate Count C s.t. Pr [|S  | ⋅ (1-ε) < C < |S  | ⋅ (1+ε) ] > 1-δ On Hashing-Based Approaches to Approximate DNF Counting Kuldeep S. Meel, Aditya A. Shrotri, Moshe Y. Vardi 9/5/2018 26

  27. Approximate DNF-Counting Input: DNF Formula  Tolerance ε 0 < ε < 1 Confidence δ 0 < δ < 1 Output: Approximate Count C s.t. Pr [|S  | ⋅ (1- ε) < C < |S  | ⋅ (1+ε) ] > 1 - δ Challenge: Design a poly(m, n, 1 𝜗 , log( 1 𝜀 ) ) time algorithm “ FPRAS ” where m = #cubes n = #vars On Hashing-Based Approaches to Approximate DNF Counting Kuldeep S. Meel, Aditya A. Shrotri, Moshe Y. Vardi 9/5/2018 27

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend