checkValues :: Indices  -- ^ the list of indices to check
            -> Bool     -- ^ true if the list contains values 1 to 7 with no repeats
checkValues ind = all (`elem` [1..7]) ind && allDifferent ind
    where allDifferent = comparePairwise.sort
          comparePairwise n = and (zipWith (/=) n (drop 1 n))

-- | Checks all the arcs and the ring containing the given index
checkValues :: Indices  -- ^ the list of indices to check
            -> Bool
checkValues ind = all (`elem` [1..7]) ind && allDifferent ind
    where allDifferent = comparePairwise.sort
          comparePairwise n = and (zipWith (/=) n (drop 1 n))

-- | Checks all the arcs and the ring containing the given index
checkValues ind = all (`elem` [1..7]) ind && allDifferent ind
    where allDifferent = comparePairwise.sort
          comparePairwise n = and (zipWith (/=) n (drop 1 n))

-- | Checks all the arcs and the ring containing the given index