SLIDE 1
Generation of oriented matroids using satisfiability solvers
Lars Schewe
TU Darmstadt
ICMS 2006
SLIDE 2 Application
Triangulations of surfaces
[ . . . ] It is well known [ . . . ] that every closed,
- rientable, topological 2-manifold M without
boundary is imbeddable in R3. In analogy to Steinitz’s theorem, one may ask whether every abstract 2-complex C homeomorphic to such a 2-manifold M is realizable by a 2-complex in R3, or in any Euclidean space. [ . . . ] If C is simplicial, it is trivially realizable by a 2-complex in R5; however, no example is known to contradict the conjecture that each simplicial C is realizable by a 2-complex in R3. (Grünbaum, 1967; Exercise 13.2.3)
SLIDE 3
A counterexample
Genus 6, 12 vertices Bokowski and Guedes de Oliveira, 2000 (Model: J. Bokowski, Photograph: N. Hähn)
SLIDE 4 Results
- 1. No triangulation of a surface of genus 6 using only
12 vertices admits a polyhedral embedding in R3.
- 2. There exist at least three triangulations of a surface
- f genus 5 using only 12 vertices that do not admit
a polyhedral embedding.
- 3. For every g ≥ 5 we can construct an infinite family
- f triangulations of a surface of genus g such that
none of these admit a polyhedral embedding in R3.
SLIDE 5 How to prove non-embeddability
Oriented matroid approach
7 3 4 7 2 1 7 4 3 7 1 2 5 6
SLIDE 6 How to prove non-embeddability
Oriented matroid approach
7 3 4 7 2 1 7 4 3 7 1 2 5 6
−→ Oriented Matroids −→
SLIDE 7 How to prove non-embeddability
Other approaches
◮ T
- pological obstructions (refined for the PL-case,
e.g. van-Kampen-Flores theorem)
◮ Geometric obstructions (further refinement of the
criteria above, see Novik)
◮ Geometric arguments (e.g. linking number applied
by Brehm) A hybrid strategy is described by Timmreck (to appear).
However . . .
None of the methods above was sucessfully applied to decide a genus 6, 12 vertex example.
SLIDE 8
Triangulations
7 3 4 7 2 1 7 4 3 7 1 2 5 6
SLIDE 9
Triangulations
7 3 4 7 2 1 7 4 3 7 1 2 5 6
◮ every edge is contained in
two triangles
SLIDE 10
Triangulations
7 3 4 7 2 1 7 4 3 7 1 2 5 6
◮ every edge is contained in
two triangles
◮ every link of a vertex is a
cycle
SLIDE 11 Bounds for combinatorial triangulations
Theorem (Jungerman and Ringel, 1980)
Let S be a surface of genus g (g = 2). Then there exists a triangulation of S with n vertices, if and only if: n − 3 2
That means that with n vertices one can triangulate a surface of genus O(n2).
SLIDE 12
Number of combinatorial triangulations
g nmin # 4 1 1 7 1 2 10 865
(Lutz, 2003)
3 10 20
(Lutz, 2003)
4 11 821
(Lutz, 2005)
5 12 751 593
(Sulanke, 2005)
6 12 59
(Altshuler et al., 1996)
SLIDE 13
Polyhedral Embeddings
General construction
Theorem (McMullen, Schulz, Wills, 1983)
There exist triangulations using n vertices of surfaces of genus O (n logn), which admit a polyhedral embedding.
SLIDE 14
Polyhedral Embeddings
Current knowledge for g ≤ 5
g = 0 all triangulations are realizable (Steinitz) 1 ≤ g ≤ 4 all minimal vertex triangulations are realizable (genus 1, Cszásár, 1949; genus 2, Lutz and Bokowski, 2005; genus 3, 4: Hougardy, Lutz, Zelke, 2005) g = 5 Some minimal vertex triangulations are realizable (Hougardy, Lutz, Zelke, 2005)
SLIDE 15
Polyhedral Embeddings
Methods
Methods for small cases
◮ direct construction (Bokowski, Brehm) ◮ random coordinates (Lutz, 2005) ◮ small coordinates (Hougardy, Lutz, Zelke, 2005) ◮ local search (Hougardy, Lutz, Zelke, 2005)
SLIDE 16
Oriented matroids
Definition
Let p1, · · · , pn ∈ Rd and pi = (1, pi) ∈ Rd+1. Then we call χ(i1, · · · , id+1) := sgndet( pi1, · · · , pid+1) the chirotope of the point set. A chirotope is called uniform, if χ(i1, · · · , id+1) = 0, where the ij are pairwise disjoint.
SLIDE 17
Oriented matroids
1 2 3 4 5
Example: d = 2
◮ pi, pj, pk collinear
⇔ sgndet( pi, pj, pk) = 0
◮ pi, pj, pk ccw
⇔ sgndet( pi, pj, pk) = +
SLIDE 18
Oriented matroids
1 2 3 4 5
not part of the convex hull
SLIDE 19
Oriented matroids
1 2 3 4 5
part of the convex hull
SLIDE 20 Oriented matroids
For a combinatorial model we use a combinatorial version of the Grassmann-Plücker relations :
r+1
(−1)j det(x1, · · · , xj−1, xj+1, · · · , xr+1) det(xj, y1, · · · , yr−1) = 0
SLIDE 21
Oriented matroids
For a combinatorial model we use a combinatorial version of the Grassmann-Plücker relations (r = 2):
det(x2, x3) det(x1, y1) − det(x1, x3) det(x2, y1) + det(x1, x2) det(x3, y1) = 0
SLIDE 22
Oriented matroids
For a combinatorial model we use a combinatorial version of the Grassmann-Plücker relations (r = 2):
χ(b, c) χ(a, d) −χ(a, c) χ(b, d) +χ(a, b) χ(c, d)
SLIDE 23
Oriented matroids
For a combinatorial model we use a combinatorial version of the Grassmann-Plücker relations (r = 2):
χ(b, c) χ(a, d) = 0 −χ(a, c) χ(b, d) = 0 +χ(a, b) χ(c, d) = 0
SLIDE 24
Oriented matroids
For a combinatorial model we use a combinatorial version of the Grassmann-Plücker relations (r = 2):
χ(b, c) χ(a, d) = + −χ(a, c) χ(b, d) = − +χ(a, b) χ(c, d)
SLIDE 25
Oriented matroids
For a combinatorial model we use a combinatorial version of the Grassmann-Plücker relations (r = 2):
χ(b, c) χ(a, d) −χ(a, c) χ(b, d) = + +χ(a, b) χ(c, d) = −
SLIDE 26
Oriented matroids
For a combinatorial model we use a combinatorial version of the Grassmann-Plücker relations (r = 2):
χ(b, c) χ(a, d) −χ(a, c) χ(b, d) +χ(a, b) χ(c, d)
The higher-dimensional case can be reduced to the linear situation via contraction
SLIDE 27
Definition
Let E be a finite set, r ∈ N and χ : Er → {+, 0, −}. We call M = (E, χ) an oriented matroid, if: (B1) The mapping χ is alternating.
SLIDE 28
Definition
Let E be a finite set, r ∈ N and χ : Er → {+, 0, −}. We call M = (E, χ) an oriented matroid, if: (B1) The mapping χ is alternating. (B2) The set B = {{x1, · · · , xr} | χ(x1, · · · , xr) = 0} is the set of bases of a matroid.
SLIDE 29 Definition
Let E be a finite set, r ∈ N and χ : Er → {+, 0, −}. We call M = (E, χ) an oriented matroid, if: (B1) The mapping χ is alternating. (B2) The set B = {{x1, · · · , xr} | χ(x1, · · · , xr) = 0} is the set of bases of a matroid. (B3) For all σ ∈ E
r−2
and all subsets {x1, . . . , x4} ⊆ E \ σ
- ne of the two following conditions holds:
◮ s1 = s2 = s3 = 0 ◮ {s1, s2, s3} ⊇ {−, +}
Here we set: s1 = χ(σ, x1, x2)χ(σ, x3, x4) s2 = −χ(σ, x1, x3)χ(σ, x2, x4) s3 = χ(σ, x1, x4)χ(σ, x2, x3)
SLIDE 30
Generating oriented matroids
◮ Hyperline sequences (Bokowski, Guedes de
Oliveira, 2000)
◮ Cocircuit graphs (Finschi and Fukuda, 2002) ◮ Chirotope (Bremner, 2004)
SLIDE 31
Satisfiability: CNF
◮ Variables
x1 x2 x3
SLIDE 32
Satisfiability: CNF
◮ Literals
x1 x2 x3 ¬ x1 ¬ x2 ¬ x3
SLIDE 33
Satisfiability: CNF
◮ Clauses
x1 ∨ x2 ∨ x3 ¬ x1 ∨ ¬ x2 ∨ ¬ x3 ¬ x1 ∨ x2 x2 ∨ ¬ x3 x1 ∨ ¬ x2 ∨ ¬ x3 x1 ∨ ¬ x2 ∨ x3
SLIDE 34 Satisfiability: CNF
◮ CNF
x1 ∨ x2 ∨ x3
¬ x1 ∨ ¬ x2 ∨ ¬ x3
¬ x1 ∨ x2
x2 ∨ ¬ x3
x1 ∨ ¬ x2 ∨ ¬ x3
x1 ∨ ¬ x2 ∨ x3
SLIDE 35 First steps towards the model
Theorem (Peirce)
Given: f : {0, 1}n → {0, 1}. Then: f(x) =
xi ∨
¬xi
SLIDE 36
First steps towards the model
χ(a)χ(b) = + ⇒ χ(c)χ(d) = −
SLIDE 37
First steps towards the model
χ(a)χ(b) = + ⇒ χ(c)χ(d) = − ¬xa ¬xb ¬xc ¬xd
SLIDE 38
First steps towards the model
χ(a)χ(b) = + ⇒ χ(c)χ(d) = − ¬xa ¬xb ¬xc ¬xd ¬xa ¬xb xc xd
SLIDE 39
Size of the model
In general (and before preprocessing)
◮ 1 variable per basis ◮ 16 clauses per Grassmann-Plücker relation ◮ 2 clauses per intersection condition
Genus 6 (after preprocessing)
◮ 494 variables ◮ between 225021 and 225148 clauses
SLIDE 40
SAT solvers
Solvers
◮ ZChaff (Fu, Mahajan, Malik, 2004) ◮ MiniSat (Eén and Sörensson, 2003–)
Preprocessor
◮ SatELite (Eèn and Biere, 2005)
SLIDE 41
Running times
Oriented matroids do not exist
Brehm’s triangulation of the Möbius’ strip ≈ 2s Genus 6, 12 vertices between 1h and 2h Genus 5, 12 vertices between 1h and 2h
Oriented matroids exist
Genus 1, 7 vertices ≈ 18s (2772 oriented matroids) Genus 5, 12 vertices ≈ 86s (until the first solution); ≈ 40min (for all)
SLIDE 42 Results
- 1. No triangulation of a surface of genus 6 using only
12 vertices admits a polyhedral embedding in R3.
- 2. There exist at least three triangulations of a surface
- f genus 5 using only 12 vertices that do not admit
a polyhedral embedding.
- 3. For every g ≥ 5 we can construct an infinite family
- f triangulations of a surface of genus g such that
none of these admit a polyhedral embedding in R3.
SLIDE 43
Open Questions
◮ Is there a geometric proof for non-embeddability? ◮ How can these results be transformed in a succinct
formal proof?
SLIDE 44
Thank you!