set-cover-0.1: test/knead/Test/Knead.hs
module Test.Knead where
import Test.Utility
(InflatedString, setAssigns, equivalentSolutions,
forAllShrinkSmall, genInflatedWords)
import qualified Math.SetCover.Exact.Knead.Saturated as ESC_KneadSat
import qualified Math.SetCover.Exact.Knead as ESC_Knead
import qualified Math.SetCover.Exact as ESC
import qualified Test.QuickCheck as QC
partitionKnead :: [InflatedString] -> Bool
partitionKnead xs =
let asns = setAssigns xs
in ESC.partitions asns
==
ESC_Knead.partitions asns
partitionKneadVector :: [InflatedString] -> Bool
partitionKneadVector xs =
let asns = setAssigns xs
in equivalentSolutions
(ESC.partitions asns)
(ESC_KneadSat.partitions asns)
tests :: [(String, (Int, QC.Property))]
tests =
("partitionKnead",
forAllShrinkSmall genInflatedWords partitionKnead) :
("partitionKneadVector",
forAllShrinkSmall genInflatedWords partitionKneadVector) :
[]