Files
University-notes/1 курс/2 семестр/Дискретка/Билеты/14.md
2024-06-23 14:21:36 +03:00

6.8 KiB
Raw Blame History

Линейные функции. Замкнутость класса 𝐿. Сокращённая ДНФ линейной функции. Лемма о нелинейной функции

Линейные функции

  • Линейная функция (класс L) - функция, которая может быть представлена формулой a_0 \oplus a_1x_1 \oplus a_2x_2 \oplus \dots \oplus a_nx_n, где a_i - коэф., равные 1 или 0
  • Общий вид линейной функции это частный случай 1 курс/2 семестр/Дискретка/Билеты/6#Полином Жегалкина: в нём нет произведений переменных.

Примеры

  • 0
  • 1
  • x
  • \bar x = x \oplus 1

Замкнутость класса 𝐿

Теорема

Класс 𝐿 замкнут.

Доказательство

Пусть f(x_1, x_2, \dots, x_n) \in L и g(y_1, y_2, \dots, y_m) \in L Рассмотрим h = f(x_1, x_2, \dots, x_{n-1}, g(x_1, y_2, \dots, y_m), x_{k+1}, \dots, x_n)

Пусть f = a_0 \oplus a_1x_1 \oplus a_2x_2 \oplus \dots \oplus a_nx_n, g = b_0 \oplus b_1y_1 \oplus b_2y_2 \oplus \dots \oplus b_ny_n, тогда h = = a_0 \oplus a_1x_1 \oplus a_2x_2 \oplus \dots \oplus a_{n-1}x_{n-1} \oplus a_ng(y_1, y_2, \dots, y_m) = = a_0 \oplus a_1x_1 \oplus a_2x_2 \oplus \dots \oplus a_{n-1}x_{n-1} \oplus a_n(b_0 \oplus b_1y_1 \oplus b_2y_2 \oplus \dots \oplus b_ny_n) = = a_0 \oplus a_1x_1 \oplus a_2x_2 \oplus \dots \oplus a_{n-1}x_{n-1} \oplus a_nb_o \oplus a_nb_1y_1 \oplus a_nb_2y_2 \oplus \dots \oplus a_nb_ny_n \in L

Сокращённая ДНФ линейной функции

Теорема

1 курс/2 семестр/Дискретка/Билеты/4#Сокращённая ДНФ любой линейной функции совпадает с 1 курс/2 семестр/Дискретка/Билеты/3#^809b89, построенной на её существенных переменных.

Доказательство

Пусть f \in L, значит можно записать формулой f(x_{i_1}, x_{i_2}, \dots, x_{i_k}) = x_{i_1} \oplus x_{i_2} \oplus \dots \oplus x_{i_k} \oplus \alpha_0, где \alpha_o \in \{0, 1\}, а x_{i_1}..x_{i_k} - все существенные переменные f

Рассмотрим 1 курс/2 семестр/Дискретка/Билеты/4#Импликанта A = x^{\alpha_1}_{i_2} x^{\alpha_2}_{i_2} \dots x^{a_k}_{i_k} функции f (очевидно, входящую в СДНФ)

Пусть A' - элементарная конъюнкция отличная от A ровно в одной позиции. НУО, можно предположить, A' = x^{\overline{\alpha_1}}_{i_1} x^{\alpha_2}_{i_2} \dots x^{a_k}_{i_k}

Т.к. A - импликанта f, то f(\alpha_1, \alpha_2, \dots, \alpha_k) = \alpha_1 \oplus \alpha_2 \oplus \dots \oplus \alpha_k \oplus \alpha_0 = 1 Но тогда f(\overline{\alpha_1}, \alpha_2, \dots, \alpha_k) = \overline{\alpha_1} \oplus \alpha_2 \oplus \dots \oplus \alpha_k \oplus \alpha_0 = \alpha_1 ==$\oplus 1$== \oplus \alpha_2 \oplus \dots \oplus \alpha_k \oplus \alpha_0 = 1 \oplus 1 = 0

Т.е. A' не является импликантой f. Таким образом, любые 2 импликанты, входящие в СДНФ функции f, отличаются не менее, чем в 2х позициях и, следовательно, являются простыми Т.е. сокращённая ДНФ совпадает с СДНФ

Лемма о нелинейной функции

Лемма

Если функция 𝑓 нелинейна, то функция 𝑥𝑦 является суперпозицией функций f, 0, 1 и \bar x. То есть если f \notin L, то xy \in [\{f, 0, 1, \bar x\}].

Доказательство

Пусть f(x_1, x_2, \dots, x_n) \notin L, тогда в 1 курс/2 семестр/Дискретка/Билеты/6#Полином Жегалкина этой функции входит конъюнкция каких-нибудь переменных. НУО, предположим, что это конъюнкция x_1 и x_2

Вынесем x_1x_2 за скобку, тогда в скобках останется полином остальных переменных. Обозначим p_{1,2}(x_3, \dots, x_n) В оставшийся части выражения вынесем отдельные x_1 и x_2 за скобку. Полиномы в скобках обозначим p_1(x_3, \dots, x_n) и p_2(x_3, \dots, x_n) соответственно Все слагаемые без x_1 и x_2 тоже образуют полином - p_0(x_3, \dots, x_n)

Итак, f(x_1, x_2, \dots, x_n) = x_1x_2p_{1,2}(x_3, \dots, x_n) \oplus x_1p_1(x_3, \dots, x_n) \oplus x_2p_2(x_3, \dots, x_n) \oplus p_0(x_3, \dots, x_n) p_{1,2}(x_3, \dots, x_n) \neq 0, иначе f эквивалентна полиному без x_1x_2, что противоречит 1 курс/2 семестр/Дискретка/Билеты/6#Единственность полинома Жегалкина

Таким образом, существуют такие \alpha_3, \dots, \alpha_n, что p_{1,2}(\alpha_3, \dots, \alpha_n) = 1 Пусть p_1(\alpha_3, \dots, \alpha_n) = \alpha_1, p_2(\alpha_3, \dots, \alpha_n) = \alpha_2, p_0(\alpha_3, \dots, \alpha_n) = \alpha_0 Подставим \alpha_3, \dots, \alpha_n в f вместо x_3, \dots, x_n:


	f(x_1, x_2, \alpha_3, \dots, \alpha_n) = x_1x_2 \oplus x_1\alpha_1 \oplus x_2\alpha_2 \oplus \alpha_0

Теперь подставим вместо x_1 функцию x \oplus \alpha_2, вместо x_2 - y \oplus \alpha_1: f(x \oplus \alpha_2, y \oplus \alpha_1, \alpha_3, \dots, \alpha_n) = = (x \oplus \alpha_2)(y \oplus \alpha_1) \oplus (x \oplus \alpha_2)\alpha_1 \oplus (y \oplus \alpha_1)\alpha_2 \oplus \alpha_0 = = xy \oplus \alpha_2y \oplus \alpha_1x \oplus \alpha_1\alpha_2 \oplus \alpha_1x \oplus \alpha_1\alpha_2 \oplus \alpha_2y \oplus \alpha_1\alpha_2 \oplus \alpha_0 = = xy \oplus \alpha_1\alpha_2 \oplus \alpha_0

Введём функцию h(x, y) = f(x \oplus \alpha_2, y \oplus \alpha_1, \alpha_3, \dots, \alpha_n) \oplus \alpha_1\alpha_2 \oplus \alpha_0 h(x, y) = xy

Прибавление констант эквивалентно отрицанию или тождественной функции, следовательно, xy = h(x, y) \in [\{f, 0, 1, \bar x\}]