Главная » Все файлы » Просмотр файлов из архивов » PDF-файлы » The Quest for Efficient Boolean Satisfiability Solvers

The Quest for Efficient Boolean Satisfiability Solvers (Презентации лекций)

PDF-файл The Quest for Efficient Boolean Satisfiability Solvers (Презентации лекций) Boolean SAT-SMT Solvers for Software Engineering (64077): Лекции - 11 семестр (3 семестр магистратуры)The Quest for Efficient Boolean Satisfiability Solvers (Презентации лекций) - PDF (64077) - СтудИзба2020-08-25СтудИзба

Описание файла

Файл "The Quest for Efficient Boolean Satisfiability Solvers" внутри архива находится в следующих папках: Презентации лекций, Статьи к лекциям. PDF-файл из архива "Презентации лекций", который расположен в категории "". Всё это находится в предмете "boolean sat-smt solvers for software engineering" из 11 семестр (3 семестр магистратуры), которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .

Просмотр PDF-файла онлайн

Текст из PDF

The Quest for Efficient Boolean Satisfiability SolversLintao Zhang, Sharad MalikDepartment of Electrical Engineering, Princeton University, Princeton, NJ 08544{lintaoz,sharad}@ee.Princeton.eduAbstract. The classical NP-complete problem of Boolean Satisfiability (SAT)has seen much interest in not just the theoretical computer science community,but also in areas where practical solutions to this problem enable significantpractical applications. Since the first development of the basic search basedalgorithm proposed by Davis, Putnam, Logemann and Loveland (DPLL) aboutforty years ago, this area has seen active research effort with many interestingcontributions that have culminated in state-of-the-art SAT solvers today beingable to handle problem instances with thousands, and in same cases evenmillions, of variables.

In this paper we examine some of the main ideas alongthis passage that have led to our current capabilities. Given the depth of theliterature in this field, it is impossible to do this in any comprehensive way;rather we focus on techniques with consistent demonstrated efficiency inavailable solvers. For the most part, we focus on techniques within the basicDPLL search framework, but also briefly describe other approaches and look atsome possible future research directions.1. IntroductionGiven a propositional formula, determining whether there exists a variable assignmentsuch that the formula evaluates to true is called the Boolean Satisfiability Problem,commonly abbreviated as SAT.

SAT has seen much theoretical interest as thecanonical NP-complete problem [1]. Given its NP-Completeness, it is very unlikelythat there exists any polynomial algorithm for SAT. However, NP-Completeness doesnot exclude the possibility of finding algorithms that are efficient enough for solvingmany interesting SAT instances.

These instances arise from many diverse areas many practical problems in AI planning [2], circuit testing [3], software verification[4] can be formulated as SAT instances. This has motivated the research in practicallyefficient SAT solvers.This research has resulted in the development of several SAT algorithms that haveseen practical success. These algorithms are based on various principles such asresolution [5], search [6], local search and random walk [7], Binary DecisionDiagrams [8], Stälmarck’s algorithm [9], and others.

Gu et al. [10] provide anexcellent review of many of the algorithms developed thus far. Some of thesealgorithms are complete, while others are stochastic methods. For a given SATinstance, complete SAT solvers can either find a solution (i.e. a satisfying variableassignment) or prove that no solution exists. Stochastic methods, on the other hand,cannot prove the instance to be unsatisfiable even though they may be able to find asolution for certain kinds of satisfiable instances quickly. Stochastic methods haveapplications in domains such as AI planning [2] and FPGA routing [11], whereinstances are likely to be satisfiable and proving unsatisfiability is not required.However, for many other domains (especially verification problems e.g.

[4, 12]), theprimary task is to prove unsatisfiability of the instances. For these, complete SATsolvers are a requirement.In recent years search-based algorithms based on the well-known DavisLogemann-Loveland algorithm [6] (sometimes called the DPLL algorithm forhistorical reasons) are emerging as some of the most efficient methods for completeSAT solvers.

Researchers have been working on DPLL-based SAT solvers for aboutforty years. In the last ten years we have seen significant growth and success in SATsolver research based on the DPLL framework. Earlier SAT solvers based on DPLLinclude Tableau (NTAB) [13], POSIT [14], 2cl [15] and CSAT [16] among others.They are still appearing occasionally in the literature for performance comparisonreasons. In the mid 1990’s, Silva and Sakallah [17], and Bayardo and Schrag [18]proposed to augment the original DPLL algorithm with non-chronologicalbacktracking and conflict-driven learning. These techniques greatly improved theefficiency of the DPLL algorithm for structured (in contrast to randomly generated)SAT instances. Many practical applications emerged (e.g.

[4, 11, 12]), which pushedthese solvers to their limits and provided strong motivation for finding even moreefficient algorithms. This led to a new generation of solvers such as SATO [19],Chaff [20], and BerkMin [21] which pay a lot of attention to optimizing variousaspects of the DPLL algorithm. The results are some very efficient SAT solvers thatcan often solve SAT instances generated from industrial applications with tens ofthousands or even millions of variables.

On another front, solvers such as satz [22]and cnfs [23] keep pushing the ability to tackle hard random 3-SAT instances. Thesesolvers, though very efficient on random instances, are typically not competitive onstructured instances generated from real applications.A DPLL-based SAT solver is a relatively small piece of software.

Many of thesolvers mentioned above have only a few thousand lines of code (these solvers aremostly written in C or C++, for efficiency reasons). However, the algorithms involvedare quite complex and a lot of attention is focused on various aspects of the solversuch as coding, data structures, choosing algorithms and heuristics, and parametertuning. Even though the overall framework is well understood and people have beenworking on it for years, it may appear that we have reached a plateau in terms of whatcan be achieved in practice – however we feel that many open questions still exist andpresent many research opportunities.In this paper we chart the journey from the original basic DPLL frameworkthrough the introduction of efficient techniques within this framework culminating atcurrent state-of-the-art solvers.

Given the depth of literature in this field, it isimpossible to do this in any comprehensive way; rather, we focus on techniques withconsistent demonstrated efficiency in available solvers. While for the most part, wefocus on techniques within the basic DPLL search framework, we will also brieflydescribe other approaches and look at some possible future research directions.2. The Basic DPLL FrameworkEven though there were many developments pre-dating them, the original algorithmfor solving SAT is often attributed to Davis and Putnam for proposing a resolutionbased algorithm for Boolean SAT in 1960 [5].

The original algorithm proposedsuffers from the problem of memory explosion. Therefore, Davis, Logemann andLoveland [6] proposed a modified version that used search instead of resolution tolimit the memory required for the solver. This algorithm is often referred to as theDPLL algorithm. It can be argued that intrinsically these two algorithms are tightlyrelated because search (i.e.

branching on variables) can be regarded as a special typeof resolution. However, in the future discussion we will regard search-basedalgorithms as their own class and distinguish them from explicit resolutionalgorithms.For the efficiency of the solver, the propositional formula instance is usuallypresented in a Product of Sum form, usually called a Conjunctive Normal Form(CNF). It is not a limitation to require the instance to be presented in CNF. Thereexist polynomial algorithms (e.g. [24]) to transform any propositional formula into aCNF formula that has the same satisfiability as the original one.

In the discussionsthat follow, we will assume that the problem is presented in CNF. A SAT instance inCNF is a logical and of one or more clauses, where each clause is a logical or of oneor more literals. A literal is either the positive or the negative occurrence of avariable.A propositional formula in CNF has some nice properties that can help prune thesearch space and speed up the search process.

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Нашёл ошибку?
Или хочешь предложить что-то улучшить на этой странице? Напиши об этом и получи бонус!
Бонус рассчитывается индивидуально в каждом случае и может быть в виде баллов или бесплатной услуги от студизбы.
Предложить исправление
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5120
Авторов
на СтудИзбе
444
Средний доход
с одного платного файла
Обучение Подробнее