Применение логических уравнений широко используется в различных приложениях [1]. Например, задача синтеза логических схем, нахождения корня систем логических уравнений, поиска диагностических тестов, сводится к нахождению корня логического уравнения по возможности меньшей длины. Корень логического уравнения представляется в виде конъюнкции. Требования к рангу конъюнкции, а также необходимость информации о том существует ли такая конъюнкция, какой вид она должна иметь, зависят от поставленной задачи. Например, задачу построения тестового набора для b - неисправности можно свести к отысканию одного корня логического уравнения D = 0.[2] Данная работа посвящена сокращению ранга корня логического уравнения. В общем случае нахождение корня логического уравнения сводится к процедуре обхода дерева решения, которая заключается в выборе переменной ветвления и фиксации значения этой переменной, с последующим упрощением множества, которое представляет ДНФ D. Процедура продолжается до тех пор, пока мы не найдем корень уравнения, либо корня для данного уравнения не существует. В данной работе предлагается модификация алгоритма, предложенного в работе [4]. В частности, предлагается особая процедура сокращения множеств, путем анализа положительно и отрицательно однородных множеств и множества неоднородных векторов, для которого формируется срез. Данная процедура позволяет сократить ранг конъюнкции и ускорить процедуру нахождения решения.
Был исследован и реализован алгоритм поиска корня логического уравнения D = 0 с помощью использования информации о подмножествах однородных векторов. Было выявлено, что данный алгоритм может быть оптимизирован. Предложена модификация алгоритма, заключающаяся в анализе срезов множества М* и множеств однородных векторов, c последующим нахождением покрытия, позволяющая сократить время на поиск корня логического уравнения.
На основе полученных экспериментальным путем данных, можем сделать вывод о том, что алгоритм, использующий анализ срезов множества М, может находить решения меньшего ранга за меньшее время, но с возрастанием процента неопределенных компонент в векторах множества, представляющего ДНФ D, мы можем наблюдать, что классический алгоритм начинает находить более качественные решения.