@@ -1,7 +1,6 @@
11{-# LANGUAGE GADTs, DataKinds, KindSignatures, TypeOperators, TypeFamilies,
22 MultiParamTypeClasses, FlexibleInstances, PolyKinds, FlexibleContexts,
3− UndecidableInstances, ConstraintKinds, OverlappingInstances, ScopedTypeVariables,
4− AllowAmbiguousTypes #-}
3+ UndecidableInstances, ConstraintKinds, OverlappingInstances, ScopedTypeVariables #-}
54
65module Data.Type.Set (Set(..), Union, Unionable, union, quicksort, append,
76 Sort, Sortable, Append(..), Split(..), Cmp,
@@ -111,6 +110,9 @@ instance Nubable '[] where
111110instance Nubable '[e] where
112111 nub (Ext x Empty) = Ext x Empty
113112
113+instance Nubable (e ': s) => Nubable (e ': e ': s) where
114+ nub (Ext _ (Ext e s)) = nub (Ext e s)
115+
114116instance (Nub (e ': f ': s) ~ (e ': Nub (f ': s)),
115117 Nubable (f ': s)) => Nubable (e ': f ': s) where
116118 nub (Ext e (Ext f s)) = Ext e (nub (Ext f s))