Конструктивный подход к проверке истинности квантифицированных булевых формул в УДК 004.421+004.4'2+004.771
КОНСТРУКТИВНЫЙ ПОДХОД К ПРОВЕРКЕ ИСТИННОСТИ КВАНТИФИЦИРОВАННЫХ БУЛЕВЫХ ФОРМУЛ В РЕШАТЕЛЕ HPC2QALL
Опарин Геннадий Анатольевич
Д.т.н., проф., зам. директора, e-mail: [email protected] Богданова Вера Геннадьевна К.т.н., доцент, с.н.с., e-mail: [email protected] Горский Сергей Алексеевич
К.т.н., н.с., e-mail: [email protected] Институт динамики систем и теории управления имени В.М. Матросова Сибирского отделения Российской академии наук (ИДСТУ СО РАН), 664033 г. Иркутск ул. Лермонтова, 134
Аннотация. Высокая вычислительная сложность ряда задач анализа динамики и структурно-параметрического синтеза для разных классов динамических управляемых систем обусловливает разработку методов и средств их параллельного решения. На основе метода булевых ограничений задачи качественного анализа поведения траекторий двоичных динамических систем, функционирование которых рассматривается на конечном интервале времени, сводятся к решению задач булевой выполнимости и проверки истинности квантифицированных булевых формул. Строится математическая модель исследуемого динамического свойства в виде системы булевых уравнений, учитывающая как спецификацию свойства, так и уравнения динамики конкретного объекта. Такой подход, в отличие от существующих, является декларативным и обеспечивает возможность параллелизма по данным. Для проверки истинности 2-квантифицированных булевых формул разработан параллельный решатель Hpc2qall. В отличие от аналогичных решателей, Hpc2qall выдает не только результат проверки истинности формулы (SAT или UNSAT), но и осуществляет конструктивное нахождение всех наборов значений переменных под квантором всеобщности, приводящих к результату UNSAT. Приводится пример применения конструктивного подхода для решения задачи синтеза стабилизирующей обратной связи.
Ключевые слова: двоичная динамическая система, булева модель, параллельный 2QBF решатель, качественный анализ.
Цитирование: Опарин Г.А., Богданова В.Г., Горский С.А. Конструктивный подход к проверке истинности квантифицированных булевых формул в решателе Hpc2qall // Информационные и математические технологии в науке и управлении. 2019. № 3 (15). С. 91-101. DOI: 10.25729/24130133-2019-3-08
Введение. Высокая вычислительная сложность ряда задач анализа динамики и структурно-параметрического синтеза для разных классов динамических управляемых систем, в частности, NP-сложность задач качественного исследования двоичных динамических систем (ДДС) [14], синтеза управляющей последовательности в ДДС [4],
параметрического синтеза стабилизирующей обратной связи для управляемых динамических систем [10], обусловливает разработку методов и средств их параллельного решения. На основе метода булевых ограничений [3] задачи качественного анализа поведения траекторий двоичных динамических систем (ДДС), функционирование которых рассматривается на конечном интервале времени, сводятся к решению задач булевой выполнимости или проверки истинности квалифицированных булевых формул. Строится математическая модель исследуемого динамического свойства в виде системы булевых уравнений, учитывающая как спецификацию свойства, так и уравнения динамики конкретного объекта [1, 6]. Такой подход, в отличие от существующих, является декларативным и обеспечивает возможность параллелизма по данным при решении задач большой размерности. Цель настоящего исследования состояла в разработке параллельного решателя проверки истинности 2-квантифицированных булевых формул (2QBF). В разработанном решателе Hpc2qall применяется параллелизм по данным. Подзадачи, полученные путем расщепления исходной 2QBF, решаются параллельно как независимые. В отличие от существующих 2QBF решателей, Hpc2qall выдает не только результат проверки истинности 2QBF, но и осуществляет конструктивное нахождение всех наборов переменных под квантором всеобщности, приводящих к результату UNSAT (значение формулы равно FALSE), для этого в качестве базового решателя используется решатель CADET [12]. Выдаваемое этим решателем доказательство правильности полученного им результата (сертификата [11]) в случае ложности 2QBF (результат UNSAT) представляет собой частный случай сертификата, а именно, означивание переменных под знаком верхнего квантора всеобщности. Сертификаты очень востребованы для практических приложений QBF [5, 11]. В настоящей работе приводится пример применения Hpc2qall для конструктивного решения задачи синтеза обратной стабилизирующей связи в ДДС на основе метода булевых ограничений.
1. Постановка задачи. Рассматривается нелинейная двоичная динамическая система (ДДС), векторно-матричное уравнение которой имеет вид
x' = F(х'~\и'~1), (1)
у'-^Щх'-1). (2)
где х, и, у - векторы соответственно состояния, управления и выхода (х ^ В", и е Вт, у е В\ В = {ОД}), п, т и / - соответствующие размерности этих векторов; ? е 71 = {1,2,..., А} -дискретное время (номер такта); Е(х, и), Н(х) - векторные функции алгебры логики,
называемые соответственно функцией переходов и выхода (F : В" хВт —> В", H : В" —» В1 ).
Ставится задача синтеза нелинейного закона управления по выходу в виду обратной
связи
и-1= о(/-1), (3)
обеспечивающей глобальную устойчивость заданного состояния замкнутой системы.
Система (1-3) на конечном интервале времени Т называется глобально устойчивой
относительно состояния х*, если для любого ей" существует момент времени еГ
/ * 0 \ * * * такой, что ,х ) = х , для всех , т.е. состояние х является равновесным состоянием
(x(t\х°)= х*)л (x(t* +1, х° ) = X* ) . (4)
Для заданного к = к* стабилизирующую обратную связь (3) назовем оптимальной по быстродействию, если замкнутая система (1-4) является глобально устойчивой по отношению к состоянию х*, но для к = к* -1 задача синтеза обратной связи не имеет решения.
2. Метод решения. Будем искать функции Ог (у)(1 = \,2,...,т) в алгебраической
нормальной форме (АНФ)
&Лу) = с'о ®С[ луг ®с\ лу2 ©...©с; лу1 Фс;+1 л^ лу2 Ф
5 \ /
® С'г+2 ЛУ\ лУз ©•••Фс2'-1 л
где с) - неопределенные коэффициенты, сге{0,1}(/ = 1,2,...,и;у = 0,1,... ,2' -1). Обозначим
множество таких коэффициентов через С.
Сведем задачу синтеза стабилизирующей обратной связи к решению задачи проверки истинности 2QBF, используя метод булевых ограничений. Система уравнений (1-3) с
обратной связью вида (4) на интервале времени Т = {1,2,...,А:} эквивалентна одному булеву
уравнению вида
Q>(X,Y,U,C) = 0,
(6)
где х = {х°,х\...,хк),у = {у°,у\...,ук-1),и = {и\и\...,ик-1).
Запишем спецификацию задачи синтеза обратной связи, обеспечивающей глобальную устойчивость состояния х *, на языке формальной логики:
(3C)(Vx°)(3t : t g T)((x(t\x°) = x*)A(x(t* + l,x°) = x*)).
С учетом (6) это выражение примет вид:
(3C)(VX, 7, и : Ф(Х, 7, U, C)(3t : t е T)((x(t*, ) = х* ) a (x(t* +1, х° ) = х* )), (7)
где Ф(Х,У,1Т) - характеристическая функция динамического процесса с начальным состоянием х0 и множеством коэффициентов С относительно переменных из множеств
XX,и.
С учетом того, что характеристическая функция состояния х * имеет вид х, лж2 л-"лжп (хг - это переменная xi без отрицания для х* — 1 и с отрицанием для
х* = 0, /' = 1,2,...,и) и в силу конечности множества Г подформулу
{31 Л ^ Г)((х(7*, х°) = х*) л (х(7* +1, х°) = х*)) заменим на эквивалентную ей формулу
% .я ftit А ~f+l\
Заменим ограниченный квантор всеобщности на обычный квантор всеобщности. Тогда (7) примет вид
(ЗС)(УХ,7,£/)(Ф(Х,7,£/,С) v^ л?=1 (*/ лх/+1)). (8)
Избавимся от импликации в формуле (8). Тогда получим эквивалентную (8) 2QBF:
(ЗС)(УХ,7,£/)(Ф(ХХВД v(v¡U Лп1=1 <х; лх;+1))). (9)
Если значение этой формулы равно TRUE, то существует хотя бы одно означивание коэффициентов из множества C, являющееся решением задачи синтеза стабилизирующей обратной связи. В силу двойственности, если (9) истинна, то формула
(УС)(ЗХЛ£/)(Ф(Х,ВДС)Л(Л^ v;=1 (*; vx/+1))) (ю)
ложна. Следовательно, значение FALSE, полученное при проверке истинности (10), говорит о существовании решения задачи синтеза стабилизирующей обратной связи. Преимущество решения обратной задачи заключается в возможности автоматизации представления подкванторного выражения в виде конъюнктивной нормальной формы (КНФ) с помощью конвертора, предоставляемого программными средствами Sage Tutorial [13], если левая часть уравнения (6) задана в виде АНФ. КНФ используется в формате QDIMACS, требуемом для QBF-решателей.
3. Иллюстративный пример. Применим рассмотренный подход для генетической регуляторной сети с управляющими входами [9], уравнения описания динамики которой имеют вид:
í+i î / t î \ Xj = Щ Л (х2 V х3 ),
t+l t t t x2 = Щ Л u2 Л Xj ,
xf1 = и[ Л (и\ V (u[ • Xj)),
t _ t
y 1-*1> (11)
y\ =xl
и[-1 =c\ ®c\ Л^Г ®c\ A y1;1 ®c\ Л^Г ЛУ'2~\ u2l = c¡©с2лy'-1 ©c22лy2l ©c32лy'-1 лy2l, = Cq © cf л jf1 © c\ A y''1 © C33 A y1'1 A y" .
Система булевых уравнений (11) в формате АНФ имеет вид:
ф[ = Xj е х2-1 е Хз-1 ф х2-1 1 Л< 4 © < _1 л х2-1 © и[~1 л Хз"1 Ф и[~1 л х2-1 л Хз"1 = 0,
ф'2 = х2 © и21 Л х[~х Ф 1 Í-л и2 4 лхГ 1 =0,
Ф; = х3 © t-1 /Т\ í-1 Í-1 и2 Ши3 л Xj © и2 -1 Í-л и3 -1 Í-1 Дч í-1 Í-1 Л Xj © Щ л и2 © и[~1 л Из"1 л XÍ"1 ©
Ф и í-1 Í-1 2 -1 í-1 í-1 Л из Л Xj = 0,
фГ ' = уГ © хГ1 = 0,
Ф'Г 1 = УГ © х2ч = 0,
ф:г [ Í-1 = Mj © Со © с\ Л у[~1 ©4 а У? © с\лу[~1 = 0,
Ф'7 [ í-1 = и2 © с2 © с2 л У; '©с2 а У? ®c¡ АУ[-1 лу? -- = 0,
фГ 1 = и'3~1 © Cq © cl Л у[~1 ©с23 А У? ®c¡ л^Г л у1-,-1 = 0.
Используя конвертор [13], приведем каждое уравнение к виду КНФ=1. Для
t еТ = {1,2,...,к,к + 1} получим Ф(Х,Y,U,С) = д^1 Ф[ лФ2 л• • • лФ(8-1 . Подставив это
значение в (10), получим 2QBF:
(v c)(3 x, 7 ,u) л ™ф[л¥2 л-л ф^а (л t h v г1)).
Значения коэффициентов из множества C, при которых эта формула ложна, являются решениями задачи синтеза стабилизирующей обратной связи.
Для поиска решений этой задачи разработан параллельный 2QBF решатель Hpc2qall. В отличие от существующих 2QBF решателей, Hpc2qall выдает не только заключение об истинности формулы (SAT или UNSUT), но и осуществляет конструктивное нахождение всех наборов переменных под квантором всеобщности, приводящих к заключению UNSAT (значение формулы равно FALSE). Эти наборы значений представляют собой означивания коэффициентов из множества C. В рассматриваемом примере для t£{1,2} найдены следующие наборы таких значений, являющиеся решением задачи синтеза стабилизирующей обратной связи:
(0 0 0 0 1 1 0 0 0 10 0), (0 0 0 0 1 1 0 0 1 0 1 1), (0 0 0 0 1 1 0 0 0 1 1 1), (0 0 0 0 1 1 0 0 1 0 0 0), которым соответствуют следующие законы управления по выходу в виде обратной связи
и[ =0,и'2 =1©Х =у[Уъ
где fx = 1 J2= у[ ®у[® у[ -У2=у[^у[,/Ъ=\®у[® у[ ■ у[ = у[ v y[JA = у[.
3. Параллельный решатель Hpc2qall. В решателе Hpc2qall используется параллелизм по данным. Подзадачи формируются на основе расщепления исходной 2QBF.
Пусть х = (х1,...,хи ) и у - (у1,...,у„ ) - векторы булевых переменных размерности
соответственно пх и п . Решатель Hpc2qall ориентирован на проверку истинности 2QBF вида 0,хух...уп0,2х\--х„(р(у,:х), где кванторы е ! V,3!, а подкванторное выражение
(р{у,х) — (р(уХт..,уп ,Л',,...) представлено в конъюнктивной нормальной форме (КНФ). Для определения выполнимости формулы 2QBF, в которой ^ является квантором всеобщности, а - квантором существования, используется параллельный алгоритм, основанный на расщеплении заданной 2QBF рассматриваемого вида путем выведения переменной у из-под верхнего квантора всеобщности в соответствии со следующими правилами преобразования:
(12)
А [ Уу1з... , у _! , у,+! , Упу ^...Хп,? (У, Х) у = 0 ]
Если пользоваться этой формулой, то при большой глубине расщепления возникают накладные расходы, связанные с подстановкой констант, распространением ограничений, упрощением и т.д. Поэтому применяется следующее преобразование
V.v,.....v.....,у Зх^...* <р(у,X) = [V^,...,yi+1,...,у Эх,,...^ у,(<р(у,х) л
(13)
А (у, ))] A [V^,... , у1+1,... ,уПу Э^,... ^, у, (<р(у, х) л С—СИ,- ))] Очевидно, что (12) и (13) эквивалентны в силу следующего:
3yi(<p(y,x)Ayi) = (ç}(y,x) y =iAr)V(0>(y, x) y= „A0) =HУ, x) y¡= l ,
3y, (ç(y, x) A )) = (cp(y, X) y =iA0)V(p(y, x) yi= 0 Al)=KУ, x) y¡= 0 .
Использующий рассмотренный алгоритм расщепления 2QBF параллельный решатель Hpc2qall представляет собой модифицированную версию решателя Hpcqsat [1]. Решатель Hpc2qall также реализован на основе архитектуры "Master-Slave" как MPI-приложение на языке C++. Главный процесс выполняет аналогичные функции по формированию очереди подзадач и управлению работой дочерних процессов.
Решатели Hpcqsat и Hpc2qall имеют следующие отличия:
1. В Hpc2qall в качестве базового решателя для проверки истинности подзадачи в дочерних процессах запускается 2QBF-решатель Cadet [12], в Hpcqsat - DepQBF.
2. В Hpcqsat дочерний процесс передает главному процессу запрос на подзадачу и результат решения подзадачи (SAT или UNSAT), а в Hpc2qall дополнительно к результату решения передается сертификат, возвращаемый базовым решателем Cadet.
3. В случае получения ответа UNSAT от базового решателя Hpcqsat находит один набор значений булевых переменных, который привел к такому ответу (конструктивное решение). Hpc2qall может найти все такие наборы (по умолчанию, а также один или k наборов, если задано соответствующее значение параметра поиска).
4. Hpcqsat использует дерево расщепления 2QBF для поиска конструктивного решения, а Hpc2qall использует сертификат, переданный вместе с результатом базовым решателем Cadet. Сертификат в данном случае представляет собой значения переменных верхнего квантора, при которых данный результат был получен. При получении для подзадачи ответа UNSAT главный процесс решателя Hpc2qall осуществляет построение соответствующей ветки дерева расщепления на глубину верхнего квантора (процедура SetSubtaskPath, рис. 1), и присваивает ей значение UNSAT. В процессе формирования данной ветки появляется множество ответвлений, которые могут также содержать искомые значения, они будут обрабатываться аналогично в процессе решения задачи. Представленные на рис. 1 и рис. 2 блок-схемы описывают работу главного (Master) и рабочих процессов (Slave).
Переменная Solve переключает режим работы главного процесса с расщепления 2QBF (Solve=0) на управление работой дочерних процессов при решении подзадач (Solve=1). Количество подзадач в очереди поддерживается в соответствии с количеством свободных вычислительных ресурсов. Переменная Result.val служит для выбора обработки результата, полученного в дочернем процессе при запуске процедуры SolveByCadet (рис. 2). Анализ влияния загрузки дочерних процессов (количества подзадач, отправляемых в ответ на запрос дочернего процесса Send(Request)) приведен в [7]. Процедура addToRequest регулирует формирование задания для дочерних процессов. На рис. 3 приведено ускорение, полученное при решении задачи синтеза стабилизирующей обратной связи для k=2 (нижняя линия) и этой же задачи большей размерности (при k=3 - верхняя линия). Видно, что с увеличением размерности задачи ускорение становится близким к линейному. На рис. 4 приведены
результаты решения ряда близких по характеристикам тестовых задач [8], показывающие одинаково высокую эффективность (рис. 5). Эксперименты проводились на кластере «Академик В.М. Матросов» [2].
Рис. 1. Работа главного процесса
С СтаРт )
Send (Request); // Посылаем запрос на задание Recv (&Task); // Получаем задание
о
7
£ 6 5 4 3
О CL О &
2
32 64 96 128 160 192 224 256 Процессорные ядра
1 ! к=3
Рис. 2. Работа дочернего процесса
Рис. 3. Ускорение на рассмотренном примере
5- 123456789 10 11 12
Тестовые задачи , 64 12s 256
-32 -64 -128 256
Рис. 4. Нарастающее общее время Рис. 5. Эффективность решения тестовых
выполнения тестовых задач (в сек.) задач для 64, 128 и 256 процессорных ядер
Заключение. Предложен конструктивный подход к решению задачи проверки истинности 2QBF. Разработан параллельный 2QBF решатель Hpc2qall, который, в отличие от существующих, выдавая ответ UNSAT, позволяет получить значения переменных под первым знаком квантора всеобщности, при которых формула принимает ложное значение. С использованием Hpc2qall решена задача синтеза закона управления по выходу в виде обратной связи, обеспечивающей глобальную устойчивость заданного состояния замкнутой системы. Проведен ряд вычислительных экспериментов, подтвердивших работоспособность и эффективность решателя.
Исследование выполнено при поддержке РФФИ, проект № 18-07-00596.
СПИСОК ЛИТЕРАТУРЫ
1. Богданова В.Г., Горский С.А. Параллельная реализация логического метода решения задач качественного анализа двоичных динамических систем // Информационные и математические технологии в науке и управлении. 2018. №4 (12). С. 145-154. DOI: 10.25729/2413-0133-2018-4-15.
2. Иркутский суперкомпьютерный центр. Режим доступа: http://hpc.icc.ru/ ( дата доступа 30.06.2019).
3. Опарин Г.А., Богданова В.Г., Пашинин А.А. Метод булевых ограничений в качественном анализе // Международный журнал прикладных и фундаментальных исследований. 2018. № 9. С. 19-29. DOI: 10.17513/mjpfi. 12381.
4. Akutsu T., Hayashida M., Tamura T. Algorithms for inference, analysis and control of Boolean networks // International Conference on Algebraic Biology, 2008. Pp. 1-15. DOI: https://doi.org/10.1007/978-3-540-85101-l_l.
5. Becker B., Ehlers R., Lewis M., Marin P. ALLQBF Solving by Computational Learning. In: Chakraborty S., Mukund M. (eds) Automated Technology for Verification and Analysis. ATVA 2012. Lecture Notes in Computer Science. 2012. Vol. 7561. Pp. 370-384. Springer, Berlin, Heidelberg. DOI: https://doi.org/10.1007/978-3-642-33386-6_29.
6. Bogdanova V.G., Gorsky S.A. Multiagent technology for parallel implementation of Boolean constraint method for qualitative analysis of binary dynamic systems // 42nd International
Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO). Opatija. 2019. Pp. 1043-1048. DOI: 10.23919/MIPR0.2019.8757154.
7. Bogdanova V.G., Gorsky S.A. Scalable parallel solver of Boolean satisfiability problems // 41st International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO), Opatija, 2018. Pp. 0222-0227. DOI: 10.23919/MIPR0.2018.8400042.
8. Datasets of 2QBF. Режим доступа: http://www.qbflib.org/eval18.html (дата доступ: 30.06.2019)
9. Li H., Wang Y. Output feedback stabilization control design for Boolean control networks // Automatica. 2013. Vol. 49(12). Pp. 3641-3645. DOI: https://doi .org/10.1016/j. automatica.2013.09.023.
10. Nemirovskii A.A. Several NP-hard problems arising in robust stability analysis // Mathematics of Control, Signals, and Systems. 1993. Vol. 6. Pp. 99-105. DOI: https://doi .org/10.1007/BF01211741.
11. Niemetz A., Preiner M., Lonsing F., Seidl M., Biere A. Resolution-Based Certificate Extraction for QBF. In: Cimatti A., Sebastiani R. (eds) Theory and Applications of Satisfiability Testing - SAT 2012. Lecture Notes in Computer Science. 2012. Vol. 7317. Pp. 430-435. Springer, Berlin, Heidelberg. DOI: https://doi.org/10.1007/978-3-642-31612-8_33.
12. Rabe M.N., Seshia S.A.: Incremental Determinization. In: Creignou N., Le Berre D. (eds) Theory and Applications of Satisfiability Testing - SAT 2016. Lecture Notes in Computer Science. 2016. Vol. 9710. Pp. 375-392. Springer, Cham. DOI: https://doi.org/10.1007/978-3-319-40970-2_23.
13. Sage Tutorial in Russian. Режим доступа: http://doc.sagemath.org/pdf/ru/tutorial/ SageTutorial_ru.pdf (дата доступа 30.06.2019)
14. Zhao Q. "A remark on "Scalar equations for synchronous Boolean networks with biological Applications" by C. Farrow, J. Heidel, J. Maloney, and J. Rogers," in IEEE Transactions on Neural Networks, 2005. Vol. 16(6). Pp. 1715-1716. DOI: 10.1109/TNN.2005.857944.
UDK 004.421+004.4'2+004.771
A CONSTRUCTIVE APPROACH TO THE CHECKING OF VALIDITY OF 2-QUANTIFIED BOOLEAN FORMULAS IN THE HPC2QALL SOLVER
Gennady A. Oparin
Doctor of technical science, professor, Deputy Director, e-mail: [email protected]
Vera G. Bogdanova PhD., assistant professor, senior researcher, e-mail: [email protected]
Sergey A. Gorsky PhD., researcher, e-mail: [email protected] Matrosov Institute for System Dynamics and Control Theory Siberian Branch of the Russian Academy of Sciences 134, Lermontov Str., 664033, Irkutsk, Russia
Abstract. The high computational complexity of some problems in the analysis of dynamics and structural-parametric synthesis for different classes of dynamic controlled systems leads to the development of methods and software for their parallel solution. Based on the Boolean constraints method, problems of qualitative analysis of the trajectories behavior of binary dynamical systems, whose operation is considered on a finite time interval, are reduced to solving Boolean satisfiability problems and checking the validity of quantified Boolean formulas. A mathematical model of the studied dynamic property is constructed as a system of Boolean equations, taking into account both the property specification and the equations of the dynamics of a specific object. Such an approach is declarative and provides the possibility of data parallelism. For verifying the validity of the quantified Boolean formulas, a parallel solver Hpc2qall was implemented. Unlike similar solvers, Hpc2qall not only produces the answer (SAT or UNSAT) but finds all values sets of universally quantified variables leading to this answer. An example is given of applying a constructive approach to solving the problem of the synthesis of stabilizing feedback.
Keywords: binary dynamic system, Boolean model, parallel 2QBF solver, qualitative analysis.
References
1. Bogdanova V.G., Gorsky S.A. Parallelnaya realizatsiya logicheskogo metoda resheniya zadach kachestvennogo analiza dvoichnykh dinamicheskikh system [Parallel implementation of the logical method for solving the problems of binary dynamic systems qualitative analysis // Informatsionnyye i matematicheskiye tekhnologii v nauke i upravlenii = Information and mathematical technologies in science and management. 2018. №4 (12). C. 145-154. DOI: 10.25729/2413-0133-2018-4-15 (in Russian)
2. Irkutskiy superkomp'yuternyy tsentr [Irkutsk Supercomputer Center of SB RAS]. Available at: http://hpc.icc.ru/ (accessed 30.06.2019) (in Russian)
3. Oparin G.A., Bogdanova V.G., Pashinin A.A. Metod bulevykh ogranicheniy v kachestvennom analize dvoichnykh dinamicheskikh system [Boolean constraints method in qualitative analysis of binary dynamic systems] // Mezhdunarodnyy zhurnal prikladnykh i fundamentalnykh issledovaniy = International Journal of Applied and Basic Research. 2018. № 9. Pp. 19-29. DOI: 10.17513/mjpfi.12381 (in Russian)
4. Akutsu T., Hayashida M., Tamura T. Algorithms for inference, analysis and control of Boolean networks // International Conference on Algebraic Biology, 2008. Pp. 1-15. DOI: https://doi.org/10.1007/978-3-540-85101-l_l.
5. Becker B., Ehlers R., Lewis M., Marin P. ALLQBF Solving by Computational Learning. In: Chakraborty S., Mukund M. (eds) Automated Technology for Verification and Analysis. ATVA 2012. Lecture Notes in Computer Science. 2012. Vol. 7561. Pp. 370-384. Springer, Berlin, Heidelberg. DOI: https://doi.org/10.1007/978-3-642-33386-6_29.
6. Bogdanova V.G., Gorsky S.A. Multiagent technology for parallel implementation of Boolean constraint method for qualitative analysis of binary dynamic systems // 42nd International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO). Opatija. 2019. Pp. 1043-1048. DOI: 10.23919/MIPR0.2019.8757154.
7. Bogdanova V.G., Gorsky S.A. Scalable parallel solver of Boolean satisfiability problems // 41st International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO). Opatija. 2018. Pp. 0222-0227. DOI: 10.23919/MIPR0.2018.8400042.
8. Datasets of 2QBF. Available at: http://www.qbflib.org/eval18.html (accessed 30.06.2019)
9. Li H., Wang Y. Output feedback stabilization control design for Boolean control networks // Automatica. 2013. Vol. 49(12). Pp. 3641-3645. DOI: https://doi .org/10.1016/j. automatica.2013.09.023.
10. Nemirovskii A.A. Several NP-hard problems arising in robust stability analysis // Mathematics of Control, Signals, and Systems. 1993. Vol. 6. Pp. 99-105. DOI: https://doi .org/10.1007/BF01211741.
11. Niemetz A., Preiner M., Lonsing F., Seidl M., Biere A. Resolution-Based Certificate Extraction for QBF. In: Cimatti A., Sebastiani R. (eds) Theory and Applications of Satisfiability Testing -SAT 2012. Lecture Notes in Computer Science. 2012. Vol. 7317. Pp. 430-435. Springer, Berlin, Heidelberg. DOI: https://doi.org/10.1007/978-3-642-31612-8_33.
12. Rabe M.N., Seshia S.A.: Incremental Determinization. In: Creignou N., Le Berre D. (eds) Theory and Applications of Satisfiability Testing - SAT 2016. Lecture Notes in Computer Science. 2016. Vol. 9710. Pp. 375-392. Springer, Cham. DOI: https://doi.org/10.1007/978-3-319-40970-2_23.
13. Sage Tutorial in Russian. Режим доступа: http://doc.sagemath.org/pdf/ru/tutorial/ SageTutorial_ru.pdf (дата доступа 30.06.2019)
14. Zhao Q. "A remark on "Scalar equations for synchronous Boolean networks with biological Applications" by C. Farrow, J. Heidel, J. Maloney, and J. Rogers," in IEEE Transactions on Neural Networks, 2005. Vol. 16(6). Pp. 1715-1716. DOI: 10.1109/TNN.2005.857944.