Metadata-Version: 2.1
Name: multiset-multicover
Version: 1.0
Summary: MM is a package for running the greedy cover algorithm to perform multiset multicover.
Home-page: https://github.com/euxhenh/multiset_multicover
Author: Euxhen Hasanaj
Author-email: ehasanaj@cs.cmu.edu
License: MIT
Keywords: set,cover,multiset,multicover,greedy
Platform: ALL
Provides: multiset_multicover
Requires-Python: >=3.7
License-File: LICENSE

This package implements the Greedy Cover algorithm for multisets
        in `C++` and exposes it to Python.
        Given a universe of elements U, and a family of subsets F = {S1, ..., Sn}
        of U, the set cover problem asks to find the smallest number of sets in F
        such that every element of U appears in at least one such set.
        This can be extended to a multicover problem, where we ask that
        every element be included at least k sets. This in turn, can be extended
        to accomodate multisets, where each element in Si also has a given
        multiplicity.

        The set cover problem is NP hard. The best known algorithm
        is a greedy approach that iteratively selects the set with the largest
        number of elements that have not been covered yet. This algorithm
        has a log(n)-approximation guarantee where n is the size of the largest set.
        The same guarantee also applies to the multicover problem, as well as the
        multiset multicover problem (n here corresponds to the size of the largest
        set, counting multiplicities).
