consistent' (Bound lb ub) ixs =
  case (cLower, cUpper) of
    (Consistent, Consistent) -> Consistent
    (Consistent, inconsistent) -> inconsistent
    (inconsistent, Consistent) -> inconsistent
    (Inconsistent{}, Inconsistent{}) -> Inconsistent
      "Neither the lower nor ther upper bound conform with the indices."
  where
    cLower = Bound lb Nothing `consistent'` ixs
    cUpper = Bound Nothing ub `consistent'` ixs
consistent' (Bound lb ub) ixs =
  case (cLower, cUpper) of
    (Consistent, Consistent) -> Consistent
    (Consistent, inconsistent) -> inconsistent
    (inconsistent, Consistent) -> inconsistent
    (Inconsistent{}, Inconsistent{}) -> Inconsistent
      "Neither the lower nor ther upper bound conform with the indices."
  where
    cLower = Bound lb Nothing `consistent'` ixs
    cUpper = Bound Nothing ub `consistent'` ixs
consistent' (Bound lb ub) ixs =
  case (cLower, cUpper) of
    (Consistent, Consistent) -> Consistent
    (Consistent, inconsistent) -> inconsistent
    (inconsistent, Consistent) -> inconsistent
    (Inconsistent{}, Inconsistent{}) -> Inconsistent
      "Neither the lower nor ther upper bound conform with the indices."
  where
    cLower = Bound lb Nothing `consistent'` ixs
    cUpper = Bound Nothing ub `consistent'` ixs