Сегодня я тоже хотел изучить варианты решения SAT в haskell. Сначала я решил написать собственный интерфейс для решения picosat.Haskell: привязка к быстрому и простому решению SAT
Тогда я узнал, что есть SBV library. Это интерфейсы к Z3, Yices, CVC4 и Boolector.
Кроме того, я сделал поиск в google на github, и он проскакивает, есть даже Picosat binding.
Есть ли какие-либо другие привязки haskell для SAT-решателей, на которые стоит обратить внимание, учитывая ограничение быстрой/высокой производительности. Карификация: это подходит для высокопроизводительных SAT-решений (например, проблем, которые работают в течение нескольких дней, а также проблем, которые необходимо выполнить как можно быстрее, когда я проверяю проблемы с S^2 или 20 или более). Например, то, что я особенно не хватает в хаке, является привязкой к быстрому решению SAR-решения parrallel, например, Plingeling. (Кроме того, я узнал о текущем обновлении привязки picosat на github больше случайно, и я очень хорошо мог пропустить другие варианты)
По умолчанию для библиотеки SBV используется решатель Z3 SMT. Правильно ли я понял, что пикосат быстрее для простого решения SAT, чем Z3?
Не пытайтесь быть забавным, но знаете ли вы, чтобы посмотреть на хак? Там уже много пакетов SAT и SMT, только поиск «sat» дает 10 пакетов (некоторые из них являются привязками, некоторые - сантехникой, а некоторые - реализациями SAT Haskell).Поиск «smt» дает несколько других, и вы, скорее всего, найдете один или два других, сканируя вокруг (например: «picosat» находится в хаке). –
Я смотрел хакер по категориям и искал в браузере, но, видимо, есть функция текстового поиска. Другие варианты хакера либо связаны, что библиотека SBV уже предлагает, либо не сравнивается с picosat относительно скорости. – mrsteve
Томас, знаете ли вы, знаете ли, что все библиотеки пакетов хакеров подходят для многопоточного программирования trival? тривиально в том смысле, что я не испытываю проблем с SAT, все они разделены, и нет необходимости в общей памяти или так, я просто хочу сделать n SAT-вызовов разных проблем сразу. – mrsteve