Size: a a a

2020 November 20

AV

Alexander Vershilov in Haskell
Ну я так и сделал
источник

к

кана in Haskell
это тоже делается оч тривиально
источник

AV

Alexander Vershilov in Haskell
Да
источник

DB

Danil Berestov in Haskell
кана
если нужно еще и с констрантами чет делать, то проще всего просто нормализовать сначала
а что есть "нормализовать"?
источник

к

кана in Haskell
свести к полиному
источник

AV

Alexander Vershilov in Haskell
привести к канонической форме
источник

AV

Alexander Vershilov in Haskell
в данном случае полином
источник

к

кана in Haskell
кана
свести к полиному
а ну не совсем к полиному, много же переменных
источник

AV

Alexander Vershilov in Haskell
полином имеет право иметь много переменных
источник

AV

Alexander Vershilov in Haskell
У меня это грубо говоря [(Integer, [String])]
источник

DB

Danil Berestov in Haskell
к списку списков просто, получается?)
источник

AV

Alexander Vershilov in Haskell
Только стринг сортированный, а интеджер /= 0
источник

к

кана in Haskell
тут нормальная форма будет что-то вроде

type Norm = [(Int, [String])]

элементы списка это слагаемые, Int это константа, [String] - переменные
источник

DB

Danil Berestov in Haskell
Alexander Vershilov
Только стринг сортированный, а интеджер /= 0
на типах не указано, бан
источник

AV

Alexander Vershilov in Haskell
Я в процессе!
источник

AV

Alexander Vershilov in Haskell
А сортированность - через newtype
источник

DB

Danil Berestov in Haskell
ликвид кваскель не щитается
источник

AV

Alexander Vershilov in Haskell
Ну могу и через честные gadt c доказательствами
источник

к

кана in Haskell
кана
тут нормальная форма будет что-то вроде

type Norm = [(Int, [String])]

элементы списка это слагаемые, Int это константа, [String] - переменные
даже нет, просто

type Norm = [(Int, String)]
источник

AV

Alexander Vershilov in Haskell
Нет
источник