set-cover: Solve exact set cover problems like Sudoku, 8 Queens, Soma Cube, Tetris Cube

[ algorithms, bsd3, library, math ] [ Propose Tags ]

Solver for exact set cover problems. Included examples: Sudoku, Nonogram, 8 Queens, Domino tiling, Mastermind, Soma Cube, Tetris Cube, Cube of L's, Logika's Baumeister puzzle. The generic algorithm allows to choose between slow but flexible Set from containers package and fast but cumbersome bitvectors.

For getting familiar with the package I propose to study the Queen8 example along with Math.SetCover.Exact.

Build examples with cabal install -fbuildExamples.

The package needs only Haskell 98.

Versions [faq] 0.0, 0.0.1, 0.0.2, 0.0.3, 0.0.4, 0.0.5,, 0.0.6, 0.0.7, 0.0.8, 0.0.9
Dependencies array (>=0.1 && <0.6), base (>=4 && <4.11), containers (>=0.4 && <0.6), haha (>=0.3.1 && <0.4), non-empty (>=0.2 && <0.4), pooled-io (==0.0.*), random (>=1.0 && <1.2), set-cover, transformers (>=0.2 && <0.6), unicode (==0.0.*), utility-ht (>=0.0.1 && <0.1) [details]
License BSD-3-Clause
Author Henning Thielemann, Helmut Podhaisky
Maintainer Henning Thielemann <>
Revised Revision 1 made by HerbertValerioRiedel at Mon Oct 1 21:23:58 UTC 2018
Category Math, Algorithms
Home page
Source repo this: darcs get --tag 0.0.6
head: darcs get
Uploaded by HenningThielemann at Sat Jan 16 22:45:09 UTC 2016
Distributions NixOS:0.0.9, Stackage:0.0.9
Executables pangram, mastermind, nonogram, domino, alphametics, lonpos-pyramid, baumeister, lcube, sudoku-setcover, queen8, soma-cube, tetris-cube
Downloads 3893 total (170 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs available [build log]
Last success reported on 2016-01-20 [all 1 reports]





Build example executables


Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info


Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

For package maintainers and hackage trustees