set-cover: Solve exact set cover problems like Sudoku, 8 Queens, Soma Cube, Tetris Cube
This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.
Solver for exact set cover problems.
Included examples:
Sudoku, Nonogram, 8 Queens, Domino tiling, Mastermind, Alphametics,
Soma Cube, Tetris Cube, Cube of L's,
Logika's Baumeister puzzle, Lonpos pyramid, Conway's 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.
The Sudoku and Nonogram examples also demonstrate how to interpret the set-cover solution in a human-friendly way.
Build examples with cabal install -fbuildExamples
.
The package needs only Haskell 98.
There is also an experimental implementation using LLVM and knead
.
Do not rely on that interface in released packages.
Properties
Versions | 0.0, 0.0.1, 0.0.2, 0.0.3, 0.0.4, 0.0.5, 0.0.5.1, 0.0.6, 0.0.7, 0.0.8, 0.0.9, 0.1, 0.1, 0.1.1, 0.1.1.1 |
---|---|
Change log | Changes.md |
Dependencies | array (>=0.4 && <0.6), base (>=4 && <5), containers (>=0.4 && <0.7), enummapset (>=0.1 && <0.7), haha (>=0.3.1 && <0.4), non-empty (>=0.2 && <0.4), pooled-io (>=0.0 && <0.1), prelude-compat (<1), psqueues (>=0.2 && <0.3), random (>=1.0 && <1.2), semigroups (>=0.1 && <1.0), set-cover, transformers (>=0.2 && <0.6), unicode (>=0.0 && <0.1), utility-ht (>=0.0.12 && <0.1) [details] |
License | BSD-3-Clause |
Author | Henning Thielemann, Helmut Podhaisky |
Maintainer | Henning Thielemann <haskell@henning-thielemann.de> |
Category | Math, Algorithms |
Home page | http://hub.darcs.net/thielema/set-cover/ |
Source repo | this: darcs get http://hub.darcs.net/thielema/set-cover/ --tag 0.1 head: darcs get http://hub.darcs.net/thielema/set-cover/ |
Uploaded | by HenningThielemann at 2019-08-31T18:31:07Z |
Modules
[Index] [Quick Jump]
- Math
- SetCover
- Math.SetCover.Bit
- Math.SetCover.BitPosition
- Math.SetCover.BitPriorityQueue
- Math.SetCover.BitSet
- Math.SetCover.Cuboid
- Math.SetCover.Exact
- Math.SetCover.Exact.Knead
- Math.SetCover.Exact.Knead.Saturated
- Math.SetCover.Exact.Knead.Vector
- Math.SetCover.Exact.Priority
- Math.SetCover.Exact.UArray
- Math.SetCover.Exact.Knead
- Math.SetCover.Queue
- SetCover
Flags
Manual Flags
Name | Description | Default |
---|---|---|
llvm | Enable efficient signal processing using LLVM | Disabled |
Automatic Flags
Name | Description | Default |
---|---|---|
buildexamples | Build example executables | Disabled |
Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info
Downloads
- set-cover-0.1.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
Package maintainers
For package maintainers and hackage trustees