Пороговая функция — различия между версиями

Материал из Викиконспекты
Перейти к: навигация, поиск
Строка 11: Строка 11:
 
Все  наборы  значений  аргументов  <tex>A_1, A_2, A_3</tex>  на  которых  функция  принимает  единичное (либо  нулевое)  значение, можно получить из соотношения вида <tex>A_1 3+A_2 4+A_36>5</tex>.
 
Все  наборы  значений  аргументов  <tex>A_1, A_2, A_3</tex>  на  которых  функция  принимает  единичное (либо  нулевое)  значение, можно получить из соотношения вида <tex>A_1 3+A_2 4+A_36>5</tex>.
  
:Если <tex>A_1=0;A_2=0;A_3=0, то 0<5 и f=0</tex>.   
+
:Если <tex>A_1=0,A_2=0,A_3=0</tex>, то <tex>0<5 \Rightarrow f=0</tex>.   
:Если <tex>A_1=0;A_2=0;A_3=1, то 6>5 и f=1</tex>.   
+
:Если <tex>A_1=0,A_2=0,A_3=1</tex>, то <tex>6>5 \Rightarrow f=1</tex>.   
:Если <tex>A_1=0;A_2=1;A_3=0, то 4<5 и f=0</tex>.
+
:Если <tex>A_1=0,A_2=1,A_3=0</tex>, то <tex>4<5 \Rightarrow f=0</tex>.
:Если <tex>A_1=0;A_2=1;A_3=1, то 10>5 и f=1</tex>.  
+
:Если <tex>A_1=0,A_2=1,A_3=1</tex>, то <tex>10>5 \Rightarrow f=1</tex>.  
:Если <tex>A_1=1;A_2=0;A_3=0, то 3<5 и f=0</tex>.  
+
:Если <tex>A_1=1,A_2=0,A_3=0</tex>, то <tex>3<5 \Rightarrow f=0</tex>.  
:Если <tex>A_1=1;A_2=0;A_3=1, то 9>5 и f=1</tex>.
+
:Если <tex>A_1=1,A_2=0,A_3=1</tex>, то <tex>9>5 \Rightarrow f=1</tex>.
:Если <tex>A_1=1;A_2=1;A_3=0, то 7>5 и f=1</tex>.
+
:Если <tex>A_1=1,A_2=1,A_3=0</tex>, то <tex>7>5 \Rightarrow f=1</tex>.
:Если <tex>A_1=1;A_2=1;A_3=1, то 13>5 и f=1</tex>.
+
:Если <tex>A_1=1,A_2=1,A_3=1</tex>, то <tex>13>5 \Rightarrow f=1</tex>.
 
   
 
   
 
Таким  образом,  заданная  функция  принимает  единичное  значение  на  наборах 001, 011, 101, 110, 111.  Её минимальная форма имеет вид  
 
Таким  образом,  заданная  функция  принимает  единичное  значение  на  наборах 001, 011, 101, 110, 111.  Её минимальная форма имеет вид  

Версия 02:15, 12 октября 2011

Определение:
Булева функция [math]f(A_1,A_2,...,A_n)[/math] называется пороговой, если ее можно представить в виде [math]f(A_1,A_2,...,A_n) = [A_1 a_1+A_2 a_2+...+A_n a_n=\sum_{i=1}^n A_i a_i \ge T][/math], где [math]a_i[/math]вес аргумента [math]A_i[/math], а [math]T[/math]порог функции [math]f[/math]; [math]a_i, T \in R[/math]


Обычно пороговую функцию записывают в следующим виде: [math]f = [a_1,a_2,a_3,...,a_n;T][/math].

Для примера рассмотрим функцию трёх аргументов [math]f(A_1,A_2,A_3)=[3,4,6;5][/math]. Согласно этой записи имеем

[math]a_1=3; a_2=4; a_3=6; T=5[/math].

Все наборы значений аргументов [math]A_1, A_2, A_3[/math] на которых функция принимает единичное (либо нулевое) значение, можно получить из соотношения вида [math]A_1 3+A_2 4+A_36\gt 5[/math].

Если [math]A_1=0,A_2=0,A_3=0[/math], то [math]0\lt 5 \Rightarrow f=0[/math].
Если [math]A_1=0,A_2=0,A_3=1[/math], то [math]6\gt 5 \Rightarrow f=1[/math].
Если [math]A_1=0,A_2=1,A_3=0[/math], то [math]4\lt 5 \Rightarrow f=0[/math].
Если [math]A_1=0,A_2=1,A_3=1[/math], то [math]10\gt 5 \Rightarrow f=1[/math].
Если [math]A_1=1,A_2=0,A_3=0[/math], то [math]3\lt 5 \Rightarrow f=0[/math].
Если [math]A_1=1,A_2=0,A_3=1[/math], то [math]9\gt 5 \Rightarrow f=1[/math].
Если [math]A_1=1,A_2=1,A_3=0[/math], то [math]7\gt 5 \Rightarrow f=1[/math].
Если [math]A_1=1,A_2=1,A_3=1[/math], то [math]13\gt 5 \Rightarrow f=1[/math].

Таким образом, заданная функция принимает единичное значение на наборах 001, 011, 101, 110, 111. Её минимальная форма имеет вид

[math]f=A_1 A_2 + A_3[/math].

Для всякой пороговой функции справедливо

[math][a_1,a_2,a_3,...,a_n;T]=[ka_1,ka_2,ka_3,...,ka_n;kT][/math],

где k — положительное вещественное число. Чтобы убедиться в этом достаточно записать

[math]ka_1 A_1+ka_2 A_2+...+ka_n A_n \ge kT[/math]
[math]ka_1 A_1+ka_2 A_2+...+ka_n A_n \lt kT[/math]

и разделить обе части неравенства на [math]k[/math].

Пример непороговой функции

Примером непороговой функции может служить Сложение по модулю 2 ([math]XOR[/math]).

При аргументах [math](0, 0)[/math] значение функции [math]XOR[/math] равно 0. Тогда, по определению пороговой функции должно выполняться неравенство [math]A_1 x_1+A_2 x_2 \lt T[/math]. Подставляя значение аргументов, получаем, что [math]T\gt 0[/math]. При аргументах [math](0, 1)[/math] и [math](1, 0)[/math] значение функции [math]XOR[/math] равно 1. Тогда, по определению выполняется неравенство [math]A_1 x_1+A_2 x_2 \ge T[/math], подставляя в которое значения соответствующих аргументов, получаем [math]A_1 \ge T, A_2 \ge T[/math]. Отсюда следует, что [math]A_1\gt 0, A_2\gt 0[/math] и [math]A_1+A_2 \ge 2T[/math]. Но это неравенстово не выполняется при аргументах [math](1, 1)[/math]. Значит, функция [math]XOR[/math] непороговая.

Источники