The Book Embedding Problem from a SAT-Solving Perspective

The Book Embedding Problem from a SAT-Solving Perspective

The Book Embedding Problem from a SAT-Solving Perspective [GD 2015] Michalis Bekos, Michael Kaufmann, Christian Zielke Universit¨at Tubingen,¨ Germany The Book Embedding problem Vertices V ! ordered, on a spine Edges E ! assigned to p pages Pages ! half planes, delimited by spine planar The Book Embedding problem Vertices V ! ordered, on a spine Edges E ! assigned to p pages Pages ! half planes, delimited by spine planar goal: minimize p - book thickness The Book Embedding problem 1 Vertices V ! ordered, on a spine 8 9 3 4 5 6 7 Edges E ! assigned to p pages 10 11 Pages ! half planes, delimited by spine 2 planar goal: minimize p - book thickness The Book Embedding problem 1 Vertices V ! ordered, on a spine 8 9 3 4 5 6 7 Edges E ! assigned to p pages 10 11 Pages ! half planes, delimited by spine 2 planar goal: minimize p - book thickness 1 7 6 11 5 10 2 3 4 8 9 The Book Embedding problem 1 Vertices V ! ordered, on a spine 8 9 3 4 5 6 7 Edges E ! assigned to p pages 10 11 Pages ! half planes, delimited by spine 2 planar goal: minimize p - book thickness 1 7 6 11 5 10 2 3 4 8 9 Known results: [Bernhard & Kainen, 1979] bt(G) = 1 , G is outerplanar, bt(G) = 2 , G is subhamiltonian The Book Embedding problem 1 Vertices V ! ordered, on a spine 8 9 3 4 5 6 7 Edges E ! assigned to p pages 10 11 Pages ! half planes, delimited by spine 2 planar goal: minimize p - book thickness 1 7 6 11 5 10 2 3 4 8 9 Known results: [Bernhard & Kainen, 1979] bt(G) = 1 , G is outerplanar, bt(G) = 2 , G is subhamiltonian [Yannakakis, 1989] all planar graphs can be embedded on 4 pages (no graph needing 4 pages is known) The Book Embedding problem 1 Vertices V ! ordered, on a spine 8 9 3 4 5 6 7 Edges E ! assigned to p pages 10 11 Pages ! half planes, delimited by spine 2 planar goal: minimize p - book thickness 1 7 6 11 5 10 2 3 4 8 9 Known results: [Bernhard & Kainen, 1979] bt(G) = 1 , G is outerplanar, bt(G) = 2 , G is subhamiltonian [Yannakakis, 1989] all planar graphs can be embedded on 4 pages (no graph needing 4 pages is known) [Bekos et al., 2015] 1-planar graphs have constant book thickness (39) SAT solving Boolean variables "sun is shining", "road is wet", α, β, ... SAT solving Boolean variables "sun is shining", "road is wet", α, β, ... clauses conjunctive normal form (α _:β) ^ (... _ ... _ ...) ^ ... SAT solving Boolean variables "sun is shining", "road is wet", α, β, ... clauses conjunctive normal form (α _:β) ^ (... _ ... _ ...) ^ ... formula SAT solving Boolean variables "sun is shining", "road is wet", α, β, ... clauses conjunctive normal form (α _:β) ^ (... _ ... _ ...) ^ ... formula logical operations ! implications: "if ... then ..." $ equivalence: "if and only if" SAT solving Boolean variables "sun is shining", "road is wet", α, β, ... clauses conjunctive normal form (α _:β) ^ (... _ ... _ ...) ^ ... formula logical operations ! implications: "if ... then ..." $ equivalence: "if and only if" "forbid"particular settings (α _:β) forbids :α, β SAT solving Boolean variables "sun is shining", "road is wet", α, β, ... clauses conjunctive normal form (α _:β) ^ (... _ ... _ ...) ^ ... formula logical operations ! implications: "if ... then ..." $ equivalence: "if and only if" "forbid"particular settings (α _:β) forbids :α, β SAT? assignment to variables that satisfies all clauses SAT solving Boolean variables "sun is shining", "road is wet", α, β, ... clauses conjunctive normal form (α _:β) ^ (... _ ... _ ...) ^ ... formula logical operations ! implications: "if ... then ..." $ equivalence: "if and only if" "forbid"particular settings (α _:β) forbids :α, β SAT? assignment to variables that satisfies all clauses use SAT solver as black box / oracle SAT solving Boolean variables "sun is shining", "road is wet", α, β, ... clauses conjunctive normal form (α _:β) ^ (... _ ... _ ...) ^ ... formula logical operations ! implications: "if ... then ..." $ equivalence: "if and only if" "forbid"particular settings (α _:β) forbids :α, β Applications of SAT: [Zeranski & Chimani, 2012] Upward planarity via SAT SAT solving Boolean variables "sun is shining", "road is wet", α, β, ... clauses conjunctive normal form (α _:β) ^ (... _ ... _ ...) ^ ... formula logical operations ! implications: "if ... then ..." $ equivalence: "if and only if" "forbid"particular settings (α _:β) forbids :α, β Applications of SAT: [Zeranski & Chimani, 2012] Upward planarity via SAT [Biedl et al, 2013] SAT for grid-based graph problems (pathwidth, vis. representation, ...) SAT formulation General idea: build formula F(G, p) via 1. ensure a proper order of the vertices on the spine SAT formulation General idea: build formula F(G, p) via 1. ensure a proper order of the vertices on the spine vi SAT formulation General idea: build formula F(G, p) via 1. ensure a proper order of the vertices on the spine vi vj Variables: σ(vi , vj ): vi is left of vj on spine SAT formulation General idea: build formula F(G, p) via 1. ensure a proper order of the vertices on the spine vi vj Variables: σ(vi , vj ): vi is left of vj on spine Rules: SAT formulation General idea: build formula F(G, p) via 1. ensure a proper order of the vertices on the spine vi vj Variables: σ(vi , vj ): vi is left of vj on spine Rules: Antisymmetry: σ(vi , vj ) $ :σ(vj , vi ) SAT formulation General idea: build formula F(G, p) via 1. ensure a proper order of the vertices on the spine vj vi vj Variables: σ(vi , vj ): vi is left of vj on spine Rules: Antisymmetry: σ(vi , vj ) $ :σ(vj , vi ) SAT formulation General idea: build formula F(G, p) via 1. ensure a proper order of the vertices on the spine vi vj Variables: σ(vi , vj ): vi is left of vj on spine Rules: Antisymmetry: σ(vi , vj ) $ :σ(vj , vi ) Transitivity: σ(vi , vj ) ^ σ(vj , vk ) ! σ(vi , vk ) SAT formulation General idea: build formula F(G, p) via 1. ensure a proper order of the vertices on the spine vi vj vk Variables: σ(vi , vj ): vi is left of vj on spine Rules: Antisymmetry: σ(vi , vj ) $ :σ(vj , vi ) Transitivity: σ(vi , vj ) ^ σ(vj , vk ) ! σ(vi , vk ) SAT formulation General idea: build formula F(G, p) via 1. ensure a proper order of the vertices on the spine X σ(vi , vj ) vi vj SAT formulation General idea: build formula F(G, p) via 1. ensure a proper order of the vertices on the spine X σ(vi , vj ) vi vj 2. assure that every edge is assigned to one of p pages Variables: φp(ei ): edge ei is assigned to page p SAT formulation General idea: build formula F(G, p) via 1. ensure a proper order of the vertices on the spine X σ(vi , vj ) vi vj 2. assure that every edge is assigned to one of p pages Variables: φp(ei ): edge ei is assigned to page p Rules: SAT formulation General idea: build formula F(G, p) via 1. ensure a proper order of the vertices on the spine X σ(vi , vj ) vi vj 2. assure that every edge is assigned to one of p pages Variables: φp(ei ): edge ei is assigned to page p Rules: ≥ 1 page: φ1(ei ) _ φ2(ei ) _ ::: _ φp(ei ) SAT formulation General idea: build formula F(G, p) via 1. ensure a proper order of the vertices on the spine X σ(vi , vj ) vi vj 2. assure that every edge is assigned to one of p pages Variables: φp(ei ): edge ei is assigned to page p χ(ei , ej ): edges ei and ej are assigned to same page Rules: ≥ 1 page: φ1(ei ) _ φ2(ei ) _ ::: _ φp(ei ) SAT formulation General idea: build formula F(G, p) via 1. ensure a proper order of the vertices on the spine X σ(vi , vj ) vi vj 2. assure that every edge is assigned to one of p pages Variables: φp(ei ): edge ei is assigned to page p χ(ei , ej ): edges ei and ej are assigned to same page Rules: ≥ 1 page: φ1(ei ) _ φ2(ei ) _ ::: _ φp(ei ) same page:( φk (ei ) ^ φk (ej )) ! χ(ei , ej ) SAT formulation General idea: build formula F(G, p) via 1. ensure a proper order of the vertices on the spine X σ(vi , vj ) vi vj 2. assure that every edge is assigned to one of p pages X ei ej χ(ei , ej ) SAT formulation General idea: build formula F(G, p) via 1. ensure a proper order of the vertices on the spine X σ(vi , vj ) vi vj 2. assure that every edge is assigned to one of p pages X ei ej χ(ei , ej ) 3. forbid crossings on each page SAT formulation General idea: build formula F(G, p) via 1. ensure a proper order of the vertices on the spine X σ(vi , vj ) vi vj 2. assure that every edge is assigned to one of p pages X ei ej χ(ei , ej ) 3. forbid crossings on each page ei ej forbid χ(ei , ej ) together with SAT formulation General idea: build formula F(G, p) via 1. ensure a proper order of the vertices on the spine X σ(vi , vj ) vi vj 2. assure that every edge is assigned to one of p pages X ei ej χ(ei , ej ) 3.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    111 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us