УДК 519.718
В. В. Чугунова
О НАДЕЖНОСТИ СХЕМ В НЕКОТОРЫХ ПРИВОДИМЫХ ПОЛНЫХ БАЗИСАХ
Показано, что если к базису {х1 & х2, Х[} добавить, по крайней мере, еще одну булеву функцию, зависящую не более чем от двух переменных, то асимптотическая оценка ненадежности значительно понижается.
Рассмотрим реализацию булевых функций схемами из ненадежных двухвходовых функциональных элементов. Схема реализует функцию Дхь х2, ..., х„) = 7(X), если при поступлении на входы схемы набора а = (аь а2, ..., а„) при отсутствии неисправностей на выходе схемы появляется значение /(а). Предполагается, что входы всех элементов схемы независимо друг от друга с вероятностью е (0 < е < 1/2) подвержены инверсным неисправностям. Эти неисправности характеризуются тем, что поступающее на вход элемента значение а, (а е {0, 1}) с вероятностью е может превратиться в значение а .
Пусть Р7 (а) (S, а) - вероятность появления значения 7 (а) на выходе
схемы S, реализующей булеву функцию 7(X), при входном наборе а . Ненадежность Р(Б) схемы S определяется как максимальное из чисел Р7(-)(Б, а)
при всевозможных входных наборах а . Надежность схемы S равна 1 - Р(5).
Обозначим Ре (7) = Р(Б), где S - схема из ненадежных элементов, реализующая булеву функцию 7. Схему А из ненадежных элементов, реализующую булеву функцию 7, назовем асимптотически оптимальной (наилучшей) по надежности, если Р(А) ~ Ре (7) при е — 0.
Пусть Б' - это множество всех булевых функций, зависящих не более чем от двух переменных. Тогда множество попарно неконгруэнтных булевых функций, зависящих (возможно, фиктивно) от двух переменных х1, х2, есть М(х1, х2) = {х1 & х2, х1 V х2, х11 х2, х1 X х2, х1 — х2, х1 -— х2, х1 ~ х2, х1 © х2, х, 0, 1}. При перечислении функций использованы следующие обозначения: х1 | х2 = х V х2 , х1 X х2 = Х& х2 , х1 ~ х2 = х1 & х2 V Х& х2, х1 — х2 = х1 V х2 , х1 -— х2 = х1 & х2 , х1 © х2 = х1 & х2 V х & х2 .
Множество Б с М(х1, х2) назовем неприводимым полным базисом (в Р2), если множество Б полно и никакое его собственное подмножество полным не является.
Известно, что в Р2 существует 17 (с точностью до переименования переменных) неприводимых полных базисов, содержащих функции не более чем двух переменных: Б1 = {х1 |х2}, В2 = {х1 X х2}, Б3 = {х1 — х2, х1 -— х2}, Б4 = {х1 — х2, х1 © х2}, Б5 = {х1 — х2, х1 ~ х2}, Б6 = {х1 © х2, х1 & х2, 1}, Б7 = {х1 ~ х2, х1 V х2, 0}, Б8 = {х1 ~ х2, х1 & х2, х1 © х2}, Б9 = {х1 ~ х2, х1 V х2, х1 © х2}, Б10 = {х1 ~ х2, х1 & х2, 0}, Б11 = {х1 © х2, х1 V х2, 1}, Б12 = {х1 — х2, х1 }, Б13 = {х1 — х2, х1 }, Б14 = {х1 — х2, 1}, Б15 = {х1 — х2, 0}, Б16 = {х1 & х2, х1 },
Б17 = {х1 V х2, х1 }.
Любой другой базис, отличный от базисов Б1 - Бп (например, Б18 = = |Х1 & х2, XI V х2, X }), можно получить переименованием переменных без отождествления, а также добавлением одной или нескольких функций из множества М(х1, х2) к некоторому базису из указанного списка.
Пусть базис Б - один из базисов Б1 - Б18, тогда для него справедливы теоремы 1 и 2.
Теорема 1 [1]. Пусть константы а, Ь, й (таблица 1) соответствуют базису Б и е е (0; й]. Тогда любую булеву функцию /(X) в базисе Б можно реализовать такой схемой S, что Р(5) < ае + Ье2.
Теорема 2 [1]. Пусть константы а, Ь , й и класс булевых функций К(п) (таблица 1) соответствуют базису Б. Тогда для любой булевой функции /(X),
/£ К(п), и любой схемы 5, реализующей/в базисе Б, при е е (0; й ] верно неравенство Р(5) > ае + Ь е2, причем а - та же константа, что и в теореме 1.
Из теоремы 2 следует, что схемы, построенные при доказательстве теоремы 1, являются асимптотически оптимальными по надежности для почти всех функций.
Таблица 1
В а Ь й Ь й К (п)
Ві = {Хі х2} 2 і9 і/і00 - і і/4 хі,і
В2 = {Х1ІХ2} 2 і9 і/і00 - і і/4 хі,0
Вз = {Хі^Х2, Хі Ф Х2} 2 5і і/300 - і і/4 Хі ,0, і
В4 = {х1—фх2, х1©х2} 2 бб і/200 - 2 і/4 хі,і
В5 = {Хі — Х2, Хі~Х2} 2 бб і/200 - 2 і/4 хі,0
В6 = {хі©х2, хі&х2, і} 2 67 і/200 - 2 і/4 Хі ,0, і
В7 = {Хі~Х2, ХіУХ2, 0} 2 б7 і/200 - 2 і/4 Хі ,0, і
В8 = {Хі~Х2, Хі&Х2, Хі©Х2} 2 б2 і/300 - 2 і/4 Хі ,0
В9 = {хі~х2, ХіУХ2, хі©х2} 2 б2 і/300 - 2 і/4 Хі , і
Ві0 = {Хі~Х2, Хі&Х2, 0} 2 бб і/200 - 2 і/4 Хі ,0
Віі = {Хі©Х2, ХіУХ2, і} 2 бб і/200 - 2 і/4 Хі , і
Ві2 = {Хі — Х2, хі } 3 4і і/і50 - б і/б х^ & Н(Х), і
Віз = {Хі—Х2, Хі } 3 4і і/і50 - б і/б xf V Н(Х), 0
Ві4 = {Хі — Х2, і} 4 59 і/200 - 8 і/іі (хг8 & Н(Зс))ц
Ві5 = {Хі—Х2, 0} 4 59 і/200 - 8 і/і і (хг8 & Н(Зс))ц
Віб = {Хі&Х2, Хі } 4 83 і/200 - і2 і/і0 (хг8 & Н(Зс))ц
Ві7 = {ХіУХ2, Хі } 4 83 і/200 - і2 і/і0 (хг8 & Н(Зс))ц
Вів = {Хі&Х2, ХіУХ2, Хі } 2 і9 і/і50 - 2 і/б х8,0, і
Используемые в таблице обозначения: I = 1, п, 5, ц е |0, 1}, Н(X) -произвольная булева функция от переменных Х1,Х2,...,хп .
Заметим, что если к базису ^ & x2, Xl} добавить дизъюнкцию x1 V x2, то асимптотическая оценка ненадежности значительно понижается с 4е до 2е. Какой же будет эта оценка, если базис Б' содержит все функции, зависящие не более чем от двух переменных? В этом случае справедливы теоремы 3 и 4.
Теорема 3. Пусть в базисе Б' е < 1/300, а / (X) - произвольная функция. Тогда функцию /в базисе Б' можно реализовать схемой 5, ненадежность которой Р(5) < 2е + 19е2.
Доказательство. Утверждение теоремы следует из того, что Б' з
1X11X2}. ____
Пусть К(п) - множество, содержащее функции X;, X ( г = 1, п ) и константы 0, 1. Очевидно, число функций во множестве К (п) равно 2п + 2 и ма-
2п
ло по сравнению с общим числом 22 булевых функций от п переменных.
Теорема 4. Пусть е < 1/6, / (X) - булева функция, / £ К(п), и 5 - любая
схема в базисе Б', реализующая/. Тогда Р(5) > 2е - 2е2.
Для доказательства теоремы 4 воспользуемся леммой 1.
Лемма 1 [2]. Пусть / - произвольная булева функция, отличная от константы, и 5 - любая схема, ее реализующая. Пусть подсхема Б схемы 5 содержит выход схемы 5 и реализует булеву функцию /' с ненадежностью Р(Б) < 1/2. Обозначим р1 - минимум вероятностей ошибок на выходе схемы Б по таким входным наборам Ь , что /' (Ь) = 0 . Аналогично р0 - минимум вероятностей ошибок на выходе схемы Б по таким входным наборам Ь , что
/' (Ь) = 1.
Тогда вероятности ошибок на выходе схемы 5 удовлетворяют условиям: Р1(5, а) > р1, если /(а) = 0;
Р0(5, а) > р0, если /(а) = 1.
Замечание 1 [2]. Из леммы 1 следует, что Р(5) > тах|р0, р1}. Доказательство теоремы 4. Пусть / - булева функция, удовлетворяющая условиям теоремы, а 5 - произвольная схема, ее реализующая. Поскольку / £ К(п), схема 5 содержит хотя бы один элемент. Обозначим Е1 - элемент, содержащий выход схемы 5. Возможны случаи.
1. Элемент Е1 реализует функцию x1 & x2. Для него вероятность ошибки на выходе при поступлении на входы набора (11) равна Р0 = 2е - е2 = р0. При е < 1/6 применима лемма 1, поэтому (см. замечание 1) Р(5) > 2е - е2.
2. Элемент Е1 реализует функцию x1 V x2. Для него вероятность ошибки на выходе при поступлении на входы набора (00) равна Р1 = 2е - е2 = р1. При е < 1/6 применима лемма 1, поэтому (см. замечание 1) Р(5) > 2е - е2.
3. Элемент Е1 реализует функцию x1 ^ x2. Для него вероятность ошибки на выходе при поступлении на входы набора (10) равна Р1 = 2е - е2 = р1. При е < 1/6 применима лемма 1, поэтому (см. замечание 1) Р(5) > 2е - е2.
4. Элемент Е1 реализует функцию x1 -/> x2. Для него вероятность ошибки на выходе при поступлении на входы набора (10) равна Р0 = 2е - е2 = р0. При е < 1/6 применима лемма 1, поэтому (см. замечание 1) Р(5) > 2е - е2.
5. Элемент Е1 реализует функцию x1 ~ x2. Для него вероятность ошибки на выходе при поступлении на входы наборов (00) и (11) равна Р0 = 2е -
- 2е2 = р0. При е < 1/6 применима лемма 1, поэтому (см. замечание 1) Р(5) > 2е - 2е2.
6. Элемент Е1 реализует функцию x1 © x2. Для него вероятность ошибки на выходе при поступлении на входы наборов (00) и (11) равна Р1 = 2е -
- 2е2 = р1. При е < 1/6 применима лемма 1, поэтому (см. замечание 1) Р(5) > 2е - 2е2.
7. Элемент Е1 реализует функцию x1 | x2. Для него вероятность ошибки на выходе при поступлении на входы набора (11) равна Р1 = 2е - 2е2 = р1. При е < 1/6 применима лемма 1, поэтому (см. замечание 1) Р(5) > 2е - 2е2.
8. Элемент Е1 реализует функцию x1Xx2. Для него вероятность ошибки на выходе при поступлении на входы набора (00) равна Р0 = 2е - 2е2 = р0. При е < 1/6 применима лемма 1, поэтому (см. замечание 1) Р(5) > 2е - 2е2.
9. Элемент Е1 реализует функцию *1. Поскольку /£ К(п), то схема 5, кроме элемента Е1, содержит, по крайней мере, еще один элемент Е2, выход которого соединен с входом инвертора Е1. Возможно несколько случаев.
9.1. Элемент Е2 реализует функцию x1 & x2. Вероятность ошибки на выходе подсхемы, состоящей из элементов Е1 и Е2, при поступлении на ее входы набора (11) равна Р1 = е + (2е - е2)(1 - 2е) = 3е - 5е2 +2е3 и равна р1. При е < 1/6 ненадежность рассматриваемой подсхемы не больше 1/2. Применима лемма 1, поэтому (см. замечание 1) Р(5) > 3е - 5е2 + 2е3 > 2е - 2е2 при е < 1/6.
9.2. Элемент Е2 реализует функцию x1 V x2. Вероятность ошибки на выходе подсхемы, состоящей из элементов Е1 и Е2, при поступлении на ее входы набора (00) равна Р0 = е + (2е - е2)(1 - 2е) = 3е - 5е2 + 2е3 и равна р0. При е < 1/6 ненадежность рассматриваемой подсхемы не больше 1/2. Применима лемма 1, поэтому (см. замечание 1) Р(5) > 3е - 5е2 + 2е3 > 2е - 2е2 при е < 1/6.
9.3. Элемент Е2 реализует функцию x1 — x2. Вероятность ошибки на выходе подсхемы, состоящей из элементов Е1 и Е2, при поступлении на ее входы набора (10) равна Р0 = е + (2е - е2)(1 - 2е) = 3е - 5е2 + 2е3 и равна р0. При е < 1/6 ненадежность рассматриваемой подсхемы не больше 1/2. Применима лемма 1, поэтому (см. замечание 1) Р(5) > 3е - 5е2 + 2е3 > 2е - 2е2 при е < 1/6.
9.4. Элемент Е2 реализует функцию x1 x2. Вероятность ошибки на выходе подсхемы, состоящей из элементов Е1 и Е2, при поступлении на ее входы набора (10) равна Р1 = е + (2е - е2)(1 - 2е) = 3е - 5е2 + 2е3 и равна р1. При е < 1/6 ненадежность рассматриваемой подсхемы не больше 1/2. Применима лемма 1, поэтому (см. замечание 1) Р(5) > 3е - 5е2 + 2е3 > 2е - 2е2 при е < 1/6.
9.5. Элемент Е2 реализует функцию x1 ~ x2. Вероятность ошибки на выходе подсхемы, состоящей из элементов Е1 и Е2, при поступлении на ее входы наборов (00) и (11) равна Р1 = е + (2е - 2е2)(1 - 2е) = 3е - 6е2 + 4е3 и равна р1. При е < 1/6 ненадежность рассматриваемой подсхемы не больше 1/2. Применима лемма 1, поэтому (см. замечание 1) Р(5) > 3е - 6е2 + 4е3 > 2е - 2е2 при е < 1/6.
9.6. Элемент Е2 реализует функцию x1 © x2. Вероятность ошибки на выходе подсхемы, состоящей из элементов Е1 и Е2, при поступлении на ее входы наборов (00) и (11) равна Р0 = е + (2е - 2е2)(1 - 2е) = 3е - 6е2 + 4е3 и равна р0. При е < 1/6 ненадежность рассматриваемой подсхемы не больше 1/2. Применима лемма 1, поэтому (см. замечание 1) Р(5) > 3е - 6е2 + 4е3 > 2е -
- 2е2 при е < 1/6.
9.7. Элемент Е2 реализует функцию x1 |x2. Вероятность ошибки на выходе подсхемы, состоящей из элементов Е1 и Е2, при поступлении на ее входы набора (11) равна Р0 = е + (2е - 2е2)(1 - 2е) = 3е - 6е2 + 4е3 и равна р0. При е < 1/6 ненадежность рассматриваемой подсхемы не больше 1/2. Применима лемма 1, поэтому (см. замечание 1) Р(5) > 3е - 6е2 + 4е3 > 2е - 2е2 при е < 1/6.
9.8. Элемент Е2 реализует функцию x1Xx2. Вероятность ошибки на выходе подсхемы, состоящей из элементов Е1 и Е2, при поступлении на ее входы набора (00) равна Р1 = е + (2е - 2е2)(1 - 2е) = 3е - 6е2 + 4е3 и равна р1. При е < 1/6 ненадежность рассматриваемой подсхемы не больше 1/2. Применима лемма 1, поэтому (см. замечание 1) Р(5) > 3е - 6е2 + 4е3 > 2е - 2е2 при е < 1/6.
9.9. Элемент Е2 реализует функцию X!. По лемме 3 вероятность ошибки на выходе подсхемы, состоящей из элементов Е1 и Е2, при поступлении на ее вход значения 1 равна Р0 = е + е(1 - 2е) = 2е - 2е2. Следовательно, р0 = = 2е - 2е2. При е < 1/6 ненадежность рассматриваемой подсхемы не больше 1/2. Применима лемма 1, поэтому (см. замечание 1) Р(5) > 2е - 2е2.
Теорема 4 доказана.
Из теоремы 4 следует, что схемы, построенные при доказательстве теоремы 3, являются асимптотически оптимальными по надежности для почти всех функций в базисе Б , содержащем функции не более чем от двух переменных.
Рассмотрим менее «богатые» полные базисы. Пусть Б - один из базисов ^ & x2, x1 V x2, X}, ^ & x2, X, x11 x2}, |x1 & x2, X, x1Xx2}, |x1 & X2, X , x1 ~ X;;}, |x1 & x2, *1, x1 © x2}, |x1 & x2, Xl, x1 — x2}. Тогда в базисе Б справедливы теоремы 5 и 6.
Теорема 5. При е е (0; 1/150] любую булеву функцию / (X) в базисе Б можно реализовать схемой 5, ненадежность которой Р(5) < 2е + 70е2.
Доказательство. Для доказательства теоремы достаточно рассмотреть шесть возможных случаев.
1. Базис ^ & x2, x1 V x2, Xl}
В базисе ^ & x2, x1 V x2, Xl} справедливо утверждение, доказанное в теореме 1 [3].
Утверждение 1. При е е (0; 1/150] любую булеву функцию /(X) в базисе ^ & x2, x1 V x2, X } можно реализовать такой схемой 5, ненадежность которой Р(5) < 2е + 19е2.
2. Базис ^ & x2, X, x1 | x2}
Так как базис ^ & x2, Xl, x1 | x2} содержит базис ^ | x2}, то в нем справедливо утверждение 2.
Утверждение 2. При е е (0; 1/100] любую булеву функцию /(X) в базисе ^ & x2, X, x1 | x2} можно реализовать такой схемой 5, ненадежность которой Р(5) < 2е + 19е2.
3. Базис ^ & x2, X, x1Xx2}
Так как базис ^ & x2, Xl, x1Xx2} содержит базис то в нем спра-
ведливо утверждение 3.
Утверждение 3. При е е (0; 1/100] любую булеву функцию /(X) в базисе ^ & x2, X , x1Xx2} можно реализовать такой схемой 5, ненадежность которой Р(5) < 2е + 19е2.
4. Базис ^ & x2, X, x1 ~ x2}
В базисе |x1 & x2, Xl, x1 ~ x2} справедливо утверждение 4.
Утверждение 4. При е е (0; 1/150] любую булеву функцию /(X) в базисе ^ & x2, *1, x1 ~ x2} можно реализовать такой схемой 5, ненадежность
которой Р(5) < 2е + 70е2.
Для доказательства утверждения 4 воспользуемся леммами 2 [3] и 3.
Пусть схема Би реализует функцию x1 | x2 с ненадежностью ц .
Лемма 2 [3]. Если ц е (0; 1/50], то любую функцию /(X) можно реализовать схемой 5, ненадежность которой Р(5) < 4ц.
Лемма 3. Пусть / - произвольная булева функция, 5 - схема, реализующая функцию / с ненадежностью Р(5), 5 - схема, реализующая функцию / с ненадежностью Р(5') в базисе ^ & x2, Xl, x1 ~ x2}. Тогда по схемам 5 и
5 в базисе ^ & x2, X, x1 ~ x2} можно построить схему ^1(5,), реализующую функцию /, для которой Р(^1(5,5)) < 2е + 7е2 + 18е Р(5) + 3 Р2(5), где Р(5) = тах Р^), Р( 5)}, при е е (0; 1/150].
Доказательство. Пусть / - произвольная булева функция, а схема 5 реализует функцию / с ненадежностью Р(5). Для повышения надежности схемы 5 будем использовать схему А, реализующую функцию g(x1, x2, x3) = = XI, X2 V XX V X2 X3. Нетрудно проверить, что X1 X2 V X1X3 V X2 x3 = (x1 ~ x2) &
6 (x2 ~ x3) ~ x2. Моделируя формулу в правой части последнего равенства, построим схему Б1 из четырех элементов (рис. 1). Вероятности ошибок на выходе этой схемы таковы: Р1(000) < 8е, Р0(001) < 5е, Р1(010) < 2е+ 7е2, Р1(011) < 5е, Р0(100) < 5е, Р0(101) < 2е + 7е2, Р1(110) < 5е, Р0(111) < 8е при е е (0; 1/150].
Возьмем два экземпляра схемы 5, реализующей функцию /, и соединим их выходы с первым и третьим входами схемы Б1, затем возьмем один экземпляр схемы 5, реализующей функцию / , соединим ее выход со вторым
входом схемы Б]_. Построенную таким образом схему обозначим ^1(5,5) (рис. 2). Вычислим вероятности ошибок на выходе этой схемы.
Пусть входной набор а схемы 5 является нулевым для функции / (/( а ) = 0) и единичным для функции / ( / (а ) = 1). Вероятность ошибки
3і
Р^^(Б, Б'), а ) на выходе схемы ^(Б, Б') в этом случае удовлетворяет неравенству: Р1(^1(Б,Б'), а) < (1 - Р1(Б, а ))2Ро( Б', а )8е + (1 - Р1(Б, а)) х х Ро( Б', а )-Р1(Б, <2 ) + (1 - Р1(Б, а ))2(1 - Ро( Б', <2 ))(2е + 7е2) + (1 -
- Р1(Б, а ))(1 - Ро( Б', а )) Р1(Б, <5 )5е + Р1(Б, а )Ро( Б', а ) (1 - Р1(Б, а )) +
+ Р1(Б, а )-Ро( б' , а )-Р1(Б, а) + Р1(Б, <5 )(1 - Ро( б' , а ))(1 - Р1(Б, а ))5е +
+ Р:2(Б, а)(1 - Ро( Б', <5)) < 2е + 7е2 + 8Ро( Б', а )е + ЮР^Б, а )е +
+ 2Ро( Б', <5 )Р1(Б, а) + Р:2(Б, а) при е е (о; 1/15о].
Следовательно, Р1(^1(Б, Б'), <5 ) < 2е+ 7е2 + 8Ро( Б', <5 )е + 1о Р1(Б, <5 )е +
+ 2Ро( Б', <5 )Р1(Б, а) + Р:2(Б, а) при е е (о; 1/15о].
Пусть входной набор а схемы Б является единичным для функции / (/(а) = 1) и нулевым для функции / (/ (а) = о). Вероятность ошибки Ро(^1(Б, Б'), а) на выходе схемы ^1(Б, Б') в этом случае удовлетворяет неравенству: Ро(^1(Б, Б'), а) < Ро2(Б, а) (1 - Р1( Б', а)) + Ро(Б, а) (1 -
- Р1( Б', а ))(1 - Ро(Б, а ))5е + Ро2(Б, <5) Р1( Б', <5) + Ро(Б, <2 )Р1( Б', а )(1 -
- Ро(Б, а)) + (1 - Ро(Б, а ))(1 - Р1( б' , а ))Ро(Б, а )5е + (1 - Ро(Б, <5 ))2(1 -
- Р1( б' , а ))(2е + 7е2) + (1 - Ро(Б, а ))Р1( б' , а )Ро(Б, а) + (1 -
- Ро(Б, а ))2Р1( Б', а )8е < 2е + 7е2 + 8Р1( Б', <5 )е + ЮРо(Б, а )е + + 2Р1( Б', <5 )Ро(Б, а) + Ро2(Б, а) при е е (о; 1/15о].
¥і(Б, Б')
Рис. 1 Рис. 2
Следовательно, Ро(^(Б, Бг), а ) < 2є + 7є2 + 8Р1( Бг, а )є + 10Ро(Б, а) х х є + 2Рі( Б', а )Ро(Б, а ) + Ро2(Б, а) при є є (0; 1/150].
Таким образом, при є є (0; 1/150] и Р(Б, а) = тах {Р(Б, <2 ), Р( Бг , а )}
получим Р(^1(Б, Бг ), а) < 2є + 7є2 + 18є Р(Б, а) + 3 Р2(Б, а).
Лемма 3 доказана.
Доказательство утверждения 4. В базисе {х1 & х2, Хі , х1 ~ х2} построим схему Бн, реализующую функцию х1 | х2, моделируя формулу х1 | х2 =
= Хі & Х2 . Схема Бн содержит два ненадежных элемента. Ненадежность одного из них не больше 2є, другого - не больше є. Поэтому ненадежность схемы Бн не больше 3є.
Пусть схема Бн реализует функцию х11 х2 в базисе {х1 & х2, х, х1 ~ х2} с вероятностью ошибки на выходе Р(Бн) < 3є. Тогда ц є (0; 3є] и є є (0; 1/150].
По лемме 2 при є є (0; 1/150] любую булеву функцию можно реализовать схемой Б с ненадежностью Р( Б) < 12є.
Применяя лемму 3, по схеме Б построим схему ^1( Б , Б'), ненадежность которой Р(^1( Б, Б')) < 2є + 655є2 < 7є, при є є (0; 1/150]. Применяя лемму 3 еще раз, получим схему ^2(Б, Б'), для которой Р( ^2(Б, Б')) < 2є + + 280є2 < 4є, при є є (0; 1/150]. На четвертом шаге итерации построим схему ^3(Б, Б'), ненадежность которой Р( ^3(Б, Б')) < 2є + 127є2 < 3є, при є є (0; 1/150]. По схеме ^3(Б, Б') построим схему ^4(Б, Б'), реализующую /с ненадежностью Р(^4(Б, Б')) < 2є + 88є2, при є є (0; 1/150]. Аналогично по схеме ^4(Б, Б') строим схему ^5(Б, Б'), ненадежность которой Р( ^5(Б, Б') ) < 2є + 74є2, при є є (0; 1/150]. По схеме ^5(Б, Б') построим схему ^6 (Б, Б'), реализующую / с ненадежностью Р( ^6 (Б, Б')) < 2є + 71є2, при є є (0; 1/150]. Проводим еще один шаг итерации и по схеме ^6(Б, Б') построим схему (Б, Б'), реализующую/с ненадежностью Р( ^7 (Б, Б')) <
< 2є + 70є2, при є є (0; 1/150]. Схема (Б, Б') искомая, т.е. Б = (Б, Б').
Утверждение 4 доказано.
5. Базис {х1 & х2, Хі, х1 © х2}
В базисе {х1 & х2, хі, х1 © х2} справедливо утверждение 5.
Утверждение 5. При є є (0; 1/150] любую булеву функцию /(X) в базисе {х1 & х2, Хі , х1 © х2} можно реализовать такой схемой Б, ненадежность
которой Р(Б) < 2є+ 70є2.
Для доказательства утверждения 5 воспользуемся леммой 4.
Лемма 4. Пусть / - произвольная булева функция, Б - схема, реализующая функцию / с ненадежностью Р(Б) в базисе {х1 & х2, Хі , х1 © х2}. Тогда по схеме Б в указанном базисе можно построить схему ^(Б), реализующую функцию / для которой Р(^(Б)) < 2є + 7є2 + 18єР(Б) + 3Р2(Б), при є є (0; 1/150].
Доказательство. Пусть / - произвольная булева функция, Б - схема, реализующая функцию / с ненадежностью Р(Б). Для повышения надежности схемы Б будем использовать схему 02, реализующую функцию g(х1, х2, х3) = = х1х2 V х1хз V х2х3. Нетрудно проверить, что х1х2 V х1хз V х2х3 = (х1 © х2) &
& (х2 © х3) © х2. Моделируя формулу в правой части последнего равенства, построим схему Б2 из четырех элементов. Вероятности ошибок на выходе этой схемы таковы: Рі(000) < 2є + 7є2, Рі(001) < 5є, Рі(010) < 8є, Р0(011) < 5є, Рі(100) < 5є, Ро(іОі) < 8є, Ро(ііО) < 5є, Ро(ІІі) < 2є + 7є2 при є є (0; 1/150].
Возьмем три экземпляра схемы Б, реализующей функцию /, и соединим их выходы с входами схемы Б2. Построенную таким образом схему обозначим ^(5). Вычислим вероятности ошибок на выходе этой схемы.
Пусть входной набор а схемы Б является нулевым для функции / (/(а ) = 0). Вероятность ошибки Р^^Б), а ) на выходе схемы ^(5) в этом случае удовлетворяет неравенству: Р1(^(5), а) < (1 - Р1(Б, а ))3(2е + 7е2) +
+ (1 - Р1(5, а ))2Р1(5, а )5е + (1 - Р1(5, а ))2Р1(5', а )8е + (1 - р^б, а)) х х Р12(5, а) + Р1(5, а )(1 - Р1(5, а ))25е + рДб, а )(1 - р^б, а)) + рДб, а )(1 -
- Р1(5, а)) + Р3(5, а) < 2е + 7е2 + 18Р1(Б, а )е + 3 Р^Б, а) при е е (0;
1/150].
Следовательно, Р1(^(5), а) < 2е+ 7е2 + 18Р1(5, а )е + 3 Р^(Б, а) при е е (0; 1/150].
Пусть входной набор а схемы Б является единичным для функции / (/(а) = 1). Вероятность ошибки Р0(^(5), а ) на выходе схемы ^(5) в этом слу-
3 2
чае удовлетворяет неравенству: Р0(^(5), а ) < Р0 (Б, а) + Р0 (Б, а )(1 -
- Р0(5, а)) + Р02(5, а) (1 - Р0(5, а)) + Р0(5, а )(1 - Р^Б, а ))25е + Р02(5, а)) х х (1 - Р0(5, а)) + Р0(5, а )(1 - Р0(5, а ))28е + (1 - Р0(5, <5 ))2-Р0(5, а )5е + (1 -
- Р0(5, <5 ))3(2е + 7е2) < 2е + 7е2 + 18Р0(5, <2 )е + 3 Р02(5, а) при е е (0; 1/150].
2 2 Следовательно, Р0(у(5), а) < 2е + 7е + 18Р0(5, а )е + 3 Р0 (5, а) при
е е (0; 1/150].
Таким образом, при е е (0; 1/150] получим
Р(у(.Б), а) < 2е + 7е2 + 18еР(5, с) + 3Р2(5, <5).
Лемма 4 доказана.
Доказательство утверждения 5. В базисе |х1 & х2, х , х1 © х2} построим схему 5^, реализующую функцию х1 | х2, моделируя формулу х1 | х2 = = х1 & х2 . Схема Бн содержит два ненадежных элемента. Ненадежность одного из них не больше 2е, другого - не больше е. Поэтому ненадежность схемы Бн не больше 3е.
Пусть схема Бн реализует функцию х11 х2 в базисе |х1 & х2, х^, х1 © х2} с вероятностью ошибки на выходе Р(Бн) < 3е. Тогда ц е (0; 3е] и е е (0; 1/150].
По лемме 2 при е е (0; 1/150] любую булеву функцию можно реализовать схемой 5 с ненадежностью Р( 5) < 12е.
Применяя лемму 4, по схеме 5 построим схему ^( 5), ненадежность которой Р(^( 5)) < 2е + 655е2 < 7е, при е е (0; 1/150]. Применяя лемму 4 еще раз, получим схему ^2( 5), для которой Р(^2( 5)) < 2е + 280е2 < 4е, при е е (0; 1/150]. На четвертом шаге итерации построим схему ^3( 5), ненадежность которой Р(^3( 5)) < 2е+ 127е2 < 3е, при е е (0; 1/150]. По схеме ^3( 5) построим схему ^4( 5), реализующую / с ненадежностью Р(^4( 5)) < 2е + 88е2, при е е (0; 1/150]. Аналогично по схеме ^4( 5) строим схему ^5( 5), ненадежность которой Р(^5( 5)) < 2е + 74е2, при е е (0; 1/150]. По схеме ^5( 5) построим схему ^6( 5), реализующую /с ненадежностью Р(^6( 5)) < 2е + 34
+ 71е2, при є є (0; 1/150]. Проводим еще один шаг итерации и по схеме ^б( Б) построим схему ^7( Б), реализующую /с ненадежностью Р(^7( Б)) < 2є + + 70є2, при є є (0; 1/150]. Схема ^7( Б) искомая, т.е. Б = ^7( Б).
Утверждение 5 доказано.
6. Базис |х1 & х2, хь х1 ^ х2}
Утверждение 6. При є є (0; 1/150] любую булеву функцию /(Х) в базисе |х1 & х2, Х1, х1 ^ х2} можно реализовать такой схемой Б, ненадежность
которой Р(Б) < 2є + 57є2.
Для доказательства утверждения б воспользуемся леммой 5.
Лемма 5. Пусть / - произвольная функция, Б - схема, реализующая функцию/с ненадежностью Р(Б), Б' - схема, реализующая функцию / с ненадежностью Р( Б') в базисе |х1 & х2, , х1 ^ х2}. Тогда по схемам Б и Б' в
базисе |х1 & х2, хь х1 ^ х2} можно построить схему ^2(Б, Б'), реализующую функцию /, для которой Р(^2(Б, Б')) < тах|2є + 4є2 + 15є Р(Б) +
+ 3Р2(Б), 12є2 + 12єР(Б) + 3Р2(Б) }, где Р(Б) = тах|Р(Б), Р(Б')}, при є є (0; 1/150].
Доказательство. Пусть / - произвольная булева функция. По лемме 2 при є є (0; 1/150] ее можно реализовать схемой Б с ненадежностью Р(Б) <
< 12є. Для повышения надежности схемы Б будем использовать схему 03, реализующую функцию g(x1, х2, х3) = хх V х1 хз V х2хз. Нетрудно проверить, что хх V х1хз V х2хз = ((х1 ^ х2) ^ х3) ^ х1 & х2. Моделируя формулу в правой части последнего равенства, построим схему 03 из пяти элементов. Вероятности ошибок на выходе этой схемы таковы: Р0(000) < 4є, Р1(001) < 4є, Р0(010) < 12є2, Р0(011) < 4є, Р1(100) < 5є, Р1(101) < 2є + 4є2, Р0(110) < 4є, Р1(111) < бє.
Возьмем сначала один экземпляр схемы Б', реализующей функцию / и один экземпляр схемы Б, реализующей функцию /, затем еще один экземпляр схемы Б и в указанном порядке соединим их выходы с входами схемы
03. Построенную таким образом схему обозначим ^2(Б, Б'). Вычислим вероятности ошибок на выходе этой схемы.
Пусть входной набор а схемы Б является нулевым для функции / (/ а ) = 0) и единичным для функции / ( / (а ) = 1). Вероятность ошибки Р1(¥2(Б, Б'), а) на выходе схемы ^2(Б, Б') удовлетворяет неравенству: Р1(У2(Б, Б'), а) < (1 - Р1(Б, а)) Р^(Б', а) + (1 - Л(Б, а )))(1 - Р0( Б', а)) х
х Р0( б' , а )4є + Р1(Б, а)) р02(б', а) + Р1(Б, а ))р^ б' , а )(1 - Р0( б' , а)) + (1 -
- Р1(Б, а ))Р0( б' , а )(1 - Р0( б' , а ))5є + (1 - Р1(Б, а )))(1 - Р0( б' , а ))2(2є + + 4є2) + Р1(Б, а ))(1 - Р0( б' , а ))Р0( б' , а) + Р1(Б, а ))(1 - Рп( б' , а ))2бє <
< 2є + 4є2 + 9Р0( Б', а )є + 6Р1(Б, а ))є + 2Р0( Б', а )Р1(Б, а)) + Р02(Б', а).
Следовательно, Р1(^2(Б, Б'), а ) < 2є + 4є2 + 9Р0( Б', а )є + 6Р1(Б, а )) х х є + 2Р0( Б', а )Р1(Б, а)) + Р02(Б', а).
Пусть входной набор а схемы Б является единичным для функции / (/(а ) = 1) и нулевым для функции / (/ (а ) = 0). Вероятность ошибки Р0(¥2(5, Б'), а ) на выходе схемы у2(Б, Б') в этом случае удовлетворяет неравенству: р0(^2(5, б' ), а) < р0(5, а )(1 - р1( б' , а ))2 4е + р0(б, а) х х Р1( Б', а )(1 - Р1( Б', а )) + (1 - Р0(Б, <5 ))(1 - Р1( Б', <5 ))2 12е2 + (1 -
- Р0(Б, <5 ))(1 - Р1( Б', <5)) Р1( Б', а )4е + Р0(Б, <2 )(1 - Р1( Б', а ))Р1( Б', а) х х 8е + Р0(Б, а ) Р2(Б', а) + (1 - Р0(Б, а ))Р1( Б', а )(1 - Р1( Б', а ))4е + (1 -
- Р0(Б, а)) Р*(Б', а) < 12е2 + 8Р1( Б', а )е + 4Р0(Б, а )е + 2Р1( Б', а) х Р0(Б, а) + + Р12(Б', а).
Следовательно, Р0(^2(Б, Б'), а ) < 12е2 + 8Р1( Б', а )е + 4Р0(Б, а )е + + 2Р1( Б', а )Р0(Б, а ) + Р12(Б', <2).
Таким образом, при е е (0; 1/150], считая Р(Б) = тах|Р(Б), Р( Бг)}, получим: Р(у2(Б, Б')) < тах|2Е + 4е2 + 15е Р(Б) + 3 Р2(Б), 12е2 + 12е Р(Б) +
+ 3 Р2(Б) }.
Лемма 5 доказана.
Доказательство утверждения 6. В базисе |х1 & х2, х, х1 ^ х2} построим схему Бй, реализующую функцию х11 х2, моделируя формулу х11 х2 = = х1 & х2 . Схема Бй содержит два ненадежных элемента. Ненадежность одного из них не больше 2е, другого - не больше е. Поэтому ненадежность схемы Бй не больше 3е.
Пусть схема Бй реализует функцию х1 | х2 в базисе |х1 & х2, х , х1 ^ х2} с вероятностью ошибки на выходе Р(Бй) < 3е. Тогда ц е (0; 3е] и е е (0; 1/150].
По лемме 2 при е е (0; 1/150] любую булеву функцию можно реализовать схемой Б с ненадежностью Р( Б) < 12е.
Применяя лемму 5, по схеме Б построим схему у2( Б , Б'), ненадежность которой Р(у2( Б , Б')) < тах|2Е + 616е2; 12е2 + 576е3} < 2е + 616е2 < 6,2е при е е (0; 1/150]. Применяя лемму 5 еще раз, получим схему ^2(Б, Б'), для которой Р(^2(Б, Б')) < тах|2Е + 213е2; 203е2} < 2е + 213е2 < 3,5е при е е (0; 1/150]. На четвертом шаге итерации построим схему ^|(Б, Бг), ненадежность которой Р(¥2(Б, Б')) < тах|2Е + 94е2; 91е2} < 2е + 94е2 < 2,7е при е е (0; 1/150]. По схеме ^|(Б, Б') построим схему ^4(Б, Бг), реализующую /с ненадежностью Р(^4(Б, Бг)) < тах|2Е + 67е2; 67е2} < 2,5е при е е (0; 1/150]. Аналогично, по схеме ^(Б, Б ), строим схему ¥|( Б, Б О, ненадежность которой Р(^2(Б, Б')) < тах|2Е + 61е2; 61е2} < 2е + 61е2 при е е (0; 1/150]. По схеме ^2(5, Б') построим схему ^2(Б, Бг), реализующую /с ненадежностью Р( ¥|(Б,
Б')) < тах|2Е + 58е2; 59е2} < 2е + 58е2 при е е (0; 1/150]. Проводим еще один шаг итерации и по схеме ¥|(Б, Б') по-36
строим схему ^2(Б, Б'), реализующую f с ненадежностью Р(^2(Б, Б')) <
< шах|2є + 57є2; 58є2} - 2є + 57є2 при є є (0; 1/150]. Схема у^(Б, Б ) искомая, т.е. Б = ^2(Б, Бг). Утверждение 6 доказано.
Из утверждений 1-6 следует справедливость теоремы 5.
Теорема 6. Пусть є < 1/6, f (Х) - булева функция, f £ К(п), и Б - любая схема, реализующая f в базисе Б. Тогда Р(Б) > 2є - 2є2.
Доказательство. Для доказательства достаточно выделить связную подсхему, содержащую выход схемы Б и состоящую из не более двух элементов (как в теореме 4).
Из теоремы 6 следует, что схемы, построенные при доказательстве теоремы 5, являются асимптотически оптимальными по надежности для почти всех функций в базисе Б.
Отметим, что теоремы 5 и 6 справедливы не только в базисах |х1 & х2, х1 V х2, Х1}, |х1 & х2, Х1, х1 |х2}, |х1 & х2, Х1, х1Хх2}, |х1 & х2, Х1, х1 ~ х2}, |х1 & х2, Х1, х1 © х2}, |х1 & х2, Х1, х1 — х2}, но и двойственных им базисах |Х1 V Х2, Х1, Х1ІХ2}, |Х1 V Х2, Х1, Х1 ІХ2}, |Х1 V Х2, Х1, Х1 © Х2}, |Х1 V Х2, Х1, Х1 ~ Х2}, |Х1 V Х2, Х1, Х1 Х2}, а также во всех базисах, полученных из пере-
численных добавлением любых других функций от двух переменных.
Из теорем 3-6 следует, что, добавив, по крайней мере, еще одну булеву функцию к базису |х1 & Х2, Х }, получим асимптотическую оценку ненадежности - 2є, хотя в самом базисе |х1 & Х2, Х } эта оценка была 4є. Исключение составляет лишь базис |х1 & Х2, Х , Х1 Х2}. В нем справедливы теоремы 7 и 8.
Теорема 7. Пусть в базисе |х1 & Х2, Х^, Х1 Х2} є < 1/200, а f (Х) -произвольная функция. Тогда функцию f в базисе |х1 & Х2, Х, Х1 Х2} можно реализовать схемой Б, ненадежность которой Р(Б) < 3є + 41є2.
Доказательство теоремы следует из того, что базис |х1 & Х2, Х,
Х1 Х2} содержит базис | Х[, Х1 Х2} и в нем справедливо аналогичное ут-
верждение, доказанное в [4].
Пусть К (п) - множество функций Хі & Н(Х) (і = 1, п) и константа 1.
* 2п-1
Очевидно, число функций в классе К (п) не больше 2п 2 + 2 - 2п и мало
по сравнению с общим числом булевых функций.
Теорема 8. Пусть є < 1/8, f (Х) - булева функция, f £ К * (п), и Б - любая схема в базисе |х1 & Х2, Х, Х1 Х2}, реализующая f. Тогда Р(Б) > 3є -
- 6є2.
Доказательство. Пусть f - булева функция, удовлетворяющая условиям теоремы, а Б - произвольная схема, ее реализующая. Поскольку f £ К * (п), схема Б содержит, по крайней мере, два элемента Е1 и Е2. Пусть Е1 - элемент, содержащий выход схемы Б. Возможны случаи.
1. Элемент Е1 является конъюнктором. Возможны случаи.
1.1. Один из входов конъюнктора Е1 соединен с выходом элемента Е2, реализующего произвольную функцию рассматриваемого базиса. Вероят-
ность ошибки на выходе подсхемы, содержащей элементы Е1 и Е2 при поступлении на входы элемента Е\ набора (11), удовлетворяет неравенству Р0 = = р0 > 2е - е2 + е(1 - 3е + £2) > 3е - 4е2. При е < 1/8 применима лемма 1, поэтому (см. замечание 1) Р(5) > 3е - 4е2.
1.2. Оба входа конъюнктора Е1 соединены с выходом элемента Е2, реализующего произвольную функцию рассматриваемого базиса. Вероятность ошибки на выходе подсхемы, содержащей элементы Е1 и Е2 при поступлении на входы элемента Е1 набора (11), удовлетворяет неравенству Р0 = р0 > 2е -
- е2 + е(1 - 2е) > 3е - 3е2. При е < 1/8 применима лемма 1, поэтому (см. замечание 1) Р(5) > 3е - 3е2.
2. Элемент Е1 является инвертором. Возможны случаи.
2.1. Вход инвертора Е1 соединен с выходом элемента Е2, реализующего
одну из функций х1 & х2 или х1 х2. Вероятность ошибки на выходе под-
схемы, содержащей элементы Е1 и Е2, при поступлении на вход элемента Е1 значения (1) равна Р1 = р1 = е + (2е - е2)(1 - 2е) > 3е - 5е2. При е < 1/8 применима лемма 1, поэтому (см. замечание 1) Р(5) > 3е - 5е2.
2.2. Вход инвертора Е1 соединен с выходом еще одного инвертора Е2. В этом случае схема 5 содержит, по крайней мере, еще один элемент Е3 (в противном случае / е К * (п)).
Если Е3 реализует конъюнкцию или антиимпликацию, то вероятность ошибки на выходе подсхемы, содержащей элементы Е1, Е2 и Е3, при поступлении на вход элемента Е1 значения (1) равна Р0 = р0 = е + (3е - 5е2)(1 - 2е) > > 4е - 11 е2. При е < 1/8 применима лемма 1, поэтому (см. замечание 1) Р(5) > 4е - 11 е2 > 3е - 6е2.
Если Е3 реализует инверсию, то вероятность ошибки на выходе подсхемы, содержащей элементы Е1, Е2 и Е3, при поступлении на вход элемента Е1 значения (1) равна Р0 = р0 = е + (2е - 2е2)(1 - 2е) > 3е - 6е2. При е < 1/8 применима лемма 1, поэтому (см. замечание 1) Р(5) > 3е - 6е2.
3. Элемент Е1 является антиимпликатором, левый вход которого соединен с выходом элемента Е2, а правый - с выходом элемента Е3 (иначе
/ е К * (п)). Элементы Е2 и Е3 реализуют произвольные функции базиса. Тогда вероятность ошибки на выходе подсхемы, содержащей перечисленные элементы, при поступлении на входы элемента Е1 набора (10) удовлетворяет неравенству Р0 = р0 > 2е - е2 + е (1 - 2е)2 > 3е - 5е2. При е < 1/8 применима лемма 1, поэтому (см. замечание 1) Р(5) > 3е - 5е2.
Теорема 8 доказана.
Из теоремы 8 следует, что схемы, построенные при доказательстве теоремы 7, являются асимптотически оптимальными по надежности для почти всех функций в базисе {х1 & х2, Х, х1 -— х2}. Аналогичный результат имеет место в базисе {х1 V х2, х , х1 — х2}, двойственном {х1 & х2, х1, х1 -— х2}.
Таким образом, из теорем 3-8 следует, что если к базису {х1 & х2, х1},
в котором оценка ненадежности асимптотически равна 4е, добавить функцию х1 -— х2, то оценка ненадежности в полученном базисе будет асимптотически равна уже 3е. Если к базису {х1 & х2, х1} добавить любую другую булеву функцию двух переменных, то асимптотическая оценка будет равна 2е.
Список литературы
1. Чугунова, В. В. Синтез асимптотически оптимальных по надежности схем при инверсных неисправностях на входах элементов : автореф. канд. дис. / В. В. Чугунова. - Пенза : Изд-во Пенз. гос. ун-та, 2007.
2. Алехина, М. А. Нижние оценки ненадежности схем в некоторых базисах при однотипных константных неисправностях на входах элементов / М. А. Алехина // Дискретный анализ и исследование операций. - 2002. - 9 т. - № 3. - С. 3-28. -(Серия 1).
3. Алехина, М. А. Об асимптотически наилучших по надежности схемах в базисе
|&, V, } при инверсных неисправностях на входах элементов / М. А. Алехина,
В. В. Чугунова // Дискретный анализ и исследование операций. - Новосибирск : Изд-во института математики. - 2006. - 13 т. - № 4. - С. 3-17. - (Серия 1).
4. Алехина, М. А. Об асимптотически наилучших по надежности схемах в базисах |-—, } и |—, } при инверсных неисправностях на входах элементов /
М. А. Алехина, В. В. Чугунова // Известия высших учебных заведений. Поволжский регион. - 2005. - № 6 (21) - С. 16-25. - (Естественные науки).