algorithms for lattice transforms and
play

Algorithms for Lattice Transforms and 2348 2349 Lattice - PowerPoint PPT Presentation

Algorithms for Lattice Transforms and 2348 2349 Lattice Transforms for 234 248 239 Algorithms 23 39 24 Thore Husfeldt 2 Lund University and IT University of Copenhagen 3 This Talk in 60 Seconds In Prefix sum Out y i = x


  1. f ζ ( x ) = ∑ f ( y ) y ≤ x Need to argue: some gate handles this contribution only.

  2. f ζ ( x ) = ∑ f ( y ) y ≤ x Need to argue: some gate handles this contribution only. [Kennes, Computational aspects of the Möbius transform of graphs , IEEE Transactions on Systems, Man and Cybernetics, 22(2):201–223, 1992.]

  3. What we know v = |L| = # vertices in Hasse diagram Subset lattice in time O ( v ⋅ log v ) [Yates] Every lattice in time O ( v 2 ) [Brute force] Most lattices not in time o ( v 3/2 /log v ) [Count] e = # “edges” in Hasse diagram Subset lattice in time O ( e ) [Yates] No lattice in time o ( e ) [Kennes]

  4. What? Why? No, really: Why? How?

  5. Graph Colouring I 3 D B I 1 A C I 2 # colourings = # covers with independent sets artistic freedom; should say “partitions”

  6. Graph 3 -Colouring f 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 I 3 D 0 B I 1 A C g ( f ζ ) 3 µ 18 I 2 6 24 24 66 6 6 6 6 25 25 1 1 1 1 0

  7. Graph 3 -Colouring f 0 0 0 0 0 f ( S ) = 1 iff S is 0 0 0 0 1 1 independent 1 1 1 1 I 3 D 0 B I 1 A C g ( f ζ ) 3 µ 18 I 2 6 g ( S ) = # triplets of 24 24 66 6 6 6 6 25 25 independent subsets 1 1 1 1 covering S 0

  8. Graph 3 -Colouring f 0 0 0 0 0 f ( S ) = 1 iff S is f ζ 0 0 0 0 1 1 independent 1 1 1 1 I 3 D 0 B I 1 A C g ( f ζ ) 3 µ 18 I 2 6 g ( S ) = # triplets of 24 24 66 g ζ 6 6 6 6 25 25 independent subsets 1 1 1 1 covering S 0

  9. f f ζ 0 6 0 0 0 0 3 4 4 5 ζ 0 0 0 0 1 1 2 2 2 2 3 3 1 1 1 1 1 1 1 1 0 0 x ⌅⇤ x 3 ( f ζ ) 3 µ ( f ζ ) 3 18 216 6 24 24 66 27 64 64 125 6 6 6 6 8 8 8 8 25 25 27 27 µ 1 1 1 1 1 1 1 1 0 0

  10. Graph k-colouring in time O * ( 2 |V| ) . Trivial algorithm: time O * ( k |V| ) .

  11. Graph k-colouring in time O * ( 2 |V| ) . Trivial algorithm: time O * ( k |V| ) . [Björklund, H., Koivisto, Set partitioning via inclusion-exclusion. SIAM J. Comput., 39(2):546–563, 2009.]

  12. Exciting new trend in algorithms for hard problems Graph k-colouring in time O * ( 2 |V| ) . Trivial algorithm: time O * ( k |V| ) .

  13. Exciting new trend in algorithms for hard problems Graph k-colouring in time O * ( 2 |V| ) . Trivial algorithm: time O * ( k |V| ) . Theory of NP-hardness 1960 1980 2000

  14. Exciting new trend in algorithms for hard problems Graph k-colouring in time O * ( 2 |V| ) . Trivial algorithm: time O * ( k |V| ) . Let’ s give up Theory of NP-hardness 1960 1980 2000

  15. Exciting new trend in algorithms for hard problems Graph k-colouring in time O * ( 2 |V| ) . Trivial algorithm: time O * ( k |V| ) . Let’ s find the wrong answer real fast! Let’ s give up Approximation algorithms Theory of NP-hardness 1960 1980 2000

  16. Exciting new trend in algorithms for hard problems Graph k-colouring in time O * ( 2 |V| ) . Trivial algorithm: time O * ( k |V| ) . Let’ s find the right answer faster. Let’ s find the wrong answer real fast! Exponential time (exact) algorithms Let’ s give up Approximation algorithms Theory of NP-hardness 1960 1980 2000

  17. Exciting new trend in algorithms for hard problems Graph k-colouring in time O * ( 2 |V| ) . Trivial algorithm: time O * ( k |V| ) . French connection: Kratsch, Liedloff, Thomassé, Paul, Havet, Escoffier, Let’ s find the right answer faster. Let’ s find the Paschos,… wrong answer real fast! Exponential time (exact) algorithms Let’ s give up Approximation algorithms Theory of NP-hardness 1960 1980 2000

  18. What? Why? No, really: Why? How?

  19. How fast can we multiply?

  20. Multiply polynomials (1 x 0 +1 x 1 +3 x 2 ) ⋅ (1 x 0 +2 x 1 ) = 1 x 0 +3 x 1 +5 x 2 +6 x 3

  21. Multiply polynomials multiplication on S elements in semigroup S (monomials) (1 x 0 +1 x 1 +3 x 2 ) ⋅ (1 x 0 +2 x 1 ) = 1 x 0 +3 x 1 +5 x 2 +6 x 3 mapping f from S to some field K

  22. Multiplication in semigroups (1 x 0 +1 x 1 +3 x 2 ) ⋅ (1 x 0 +2 x 1 ) = 1 x 0 +3 x 1 +5 x 2 +6 x 3 For lattices: join product ∑ ( f ∨ g )( c ) = f ( a ) g ( b ) a , b ∈ L : a ∨ b = c

  23. Algebraic view semigroup S monomial lattice point f , g : S → K field K of scalars coefficient product in the multiplication of semigroup join product polynomials algebra

  24. Fourier meets Möbius p F ( p ) polynomial ˙ F − 1 multiplication q F ( q ) ζ f join product ∨ µ ζ g

  25. C’EST FRAIS! Zeta circuits for lattices with n nonzero irreducibles of size O ( vn )

  26. C’EST FRAIS! Zeta circuits for lattices with n nonzero irreducibles of size O ( vn ) [Björklund, H. Kaski, Koivisto, Nederlof, Parviainen, SODA , last week]

  27. What? Why? How?

  28. Divisors of 72 72 36 24 18 12 8 9 6 4 3 2 5 nonzero irreducibles “6” is reducible (join of 2 and 3) 1

  29. 72 36 24 18 12 8 9 6 4 3 2 1 prime powers

  30. 72 36 24 18 12 8 9 6 4 3 2 1 prime powers ground set A vn = e = 2 | A | | A |

  31. 72 36 24 18 12 8 9 6 4 3 2 1 prime powers ground set A vn = e = 2 | A | | A | Also works optimally for sublattices of the subset lattice that are downward closed intersection closed union closed

  32. 72 36 24 18 12 8 9 6 4 3 2 1 prime powers ground set A vn = e = 2 | A | | A | e = Θ ( v ) Also works optimally for sublattices of the subset lattice that are downward closed intersection closed union closed

  33. What? Why? How?

  34. The Spectrum Map 72 36 24 18 12 8 9 6 4 3 2 1

  35. The Spectrum Map {2,3,4,8,9} 72 {2,3,4,9} {2,3,4,8} 36 24 18 12 8 {2,3,9} {2,3,4} {2,4,8} 9 6 {3,9} {2,3} 4 {2,4} 3 2 {3} {2} 1 Ø

Recommend


More recommend