для назначения я должен создать таблицу истинности так:Сформировать таблицу истинности произвольной длиной Haskell
combinations :: Int -> [[Bool]]
комбинацию 3 следует выход:
[[False, False, False],[False, False, True],[False, True, False],[False, True, True][True, False, False][True, False, True],[True, True, False],[True, True, True]]
я могу сделать список понимание:
combinations n = [[a,b] | a<-[True, False], b <-[True, False]]
но это не масштабируется для любых чисел.
Не могли бы вы дать мне подсказку?
Существует 'функция replicateM' в' модуле Control.Monad' для генерации комбинаций. – user3237465