Я делаю кое-что с SAT и хочу, чтобы у меня были и предложения "and" и "или".
type AndClause = [Literal]
type OrClause = [Literal]
Но у меня возникают проблемы, когда я их использую:
instance Satisfiable AndClause where ...
instance Satisfiable OrClause where ...
Дает мне «Дублирующиеся объявления экземпляров». Это типы, а не данные или конструкторы типов, поэтому я не думаю, что могу использовать newtype для того, что хочу. Есть ли какое-нибудь решение?