Марков доказал, что любая функция из входов может быть вычислена только с ⌈ log ( n + 1 ) ⌉ отрицаниями. Эффективная конструктивная версия была описана Фишером. Смотрите также экспозицию результата из блога GLL .n⌈log(n+1)⌉
Точнее:
Теорема: Предположим, что вычисляется схемой C с g затворами, а затем вычисляется схемой C ∗ с 2 g + O ( n 2 log 2 n ) Гейтс и ⌈ log ( n + 1 ) ⌉ отрицания.f:{0,1}n→{0,1}mCgC∗2g+O(n2log2n)⌈log(n+1)⌉
Основная идея состоит в том, чтобы добавить для каждого провода в C провод parellel w ′ в C ∗, который всегда несет дополнение w . Базовый случай для входных проводов: Фишер описывает , как построить схему инверсии I ( х ) = ¯ х с О ( п 2 лога 2 л ) ворота и только ⌈ лог ( п + 1 ) ⌉ отрицания. Для логических элементов И цепи С , мы можем дополнитьwCw′C∗wI(x)=x¯¯¯O(n2log2n)⌈log(n+1)⌉C с a ′ = b ′ ∨ c ′ , а также для вентилей OR. Ворота NOT в C ничего не стоят, мы просто поменяемся ролями w и w ' ниже по потоку от шлюза NOT. Таким образом, вся схема, кроме подсхемы инвертора, является монотонной.a=b∧ca′=b′∨c′Cww′
А.А. Марков. Об инверсионной сложности системы функций. J. ACM , 5 (4): 331–334, 1958.
М. Дж. Фишер. Сложность сетей с ограничением отрицания - краткий обзор. В
теории автоматов и формальных языков , 71–82, 1975