Efficient ordered (by popcount) enumeration of bits https://github.com/choener/OrderedBits

Latest on Hackage:

This package is not currently in any snapshots. If you're interested in using it, we recommend adding it to Stackage Nightly. Doing so will make builds more reliable, and allow stackage.org to host generated Haddocks.

BSD3 licensed by Christian Hoener zu Siederdissen

Build Status


The OrderedBits library provides methods to generate unboxed vectors of Ints (and others) ordered by their population count or Hamming distance to the 0 set. In other words, we enumerate the power set of a given input set.

Such an order is important for dynamic programming algorithms for Hamiltonian path problems and the travelling salesman problem.


Christian Hoener zu Siederdissen
Leipzig University, Leipzig, Germany


  • removed upper bounds

  • move to tasty framework for property tests

  • moved all properties directly into tests/properties.hs

  • vector <= 0.11 supported (with conditional compilation)

  • vector-algorithms version bump
  • removed explicit llvm flag (use –ghc-options)

  • initial checkin of the (naive) sorted implementation
  • memoization of Int-sets up to 31 bit
  • non-memo versions (somewhat efficient)
  • travis-ci integration
comments powered byDisqus