I circuiti Depth-2 con porte OR e MOD non sono universali?


9

È noto che ogni funzione booleana può essere realizzata utilizzando un circuito booleano di profondità 2 (sopra le variabili, la loro negazione e i loro valori costanti) contenente porte AND nel primo livello e una singola porta OR nel livello superiore; questa è semplicemente la rappresentazione DNF di .f:{0,1}n→{0,1}f

Un altro tipo di gate che è di grande interesse per la complessità del circuito è il gate . La definizione abituale è la seguente:MODm

MODm(x1,…,xk)={1 if ∑xi≡0modm 0 if ∑xi≢0modm 

Queste porte a volte hanno un potere sorprendente; per esempio, qualsiasi funzione booleana può essere rappresentata da un circuito di profondità 2 che ha solo porte MOD6 (questo è folklore ma posso elaborare se qualcuno è interessato).

Tuttavia, un altro folklore è che i circuiti con una singola porta OR nella parte superiore e le porte MODm nello strato inferiore (con m riparato una volta per tutte, e in particolare lo stesso per tutte le porte) non è universale, cioè per qualsiasi valore di m , ci sono funzioni booleane che non possono essere calcolate dal circuito OR∘MODm .

Sto cercando una prova per questa affermazione, o almeno una direzione.


1
Nel primo paragrafo, o non hai bisogno di porte o devi dire "ogni funzione booleana monotona ".
— Tsuyoshi Ito,

Hai ragione; il presupposto abituale è che hai come input le variabili, la loro negazione e anche valori arbitrari (importante per i modgate). Scriverò esplicitamente.
— Gadi A

1
Immagino che , il numero di variabili di input, sia diverso da n , il modulo? nn
— Kristoffer Arnsfelt Hansen,

Sì, mi dispiace per quello.
— Gadi A

Sono interessato a questo. Conosci qualche riferimento per il primo fatto folcloristico? Mi chiedo, se in quest'ultima classe di circuiti permetti solo un OR, quanti ne permetti nel primo?
— Juan Bermejo Vega,

Risposte:


9

La funzione booleana AND non può essere calcolata. Supponiamo che la funzione AND sia calcolata da un circuito . Quindi ne consegue che uno dei sottocircuiti MOD deve calcolare già la funzione AND, il che è impossibile.OR∘MOD


No, ha ragione. L'assunto implicito qui è che n è costante e dovremmo essere in grado di gestire un numero arbitrariamente grande di input con porte mod_n.
— Gadi A

@GadiA Ah, ok. Questo non era chiaro nella tua domanda, almeno per le persone che non hanno familiarità con il campo. Ho fatto una modifica minore che dovrebbe chiarire questo.
— Gilles 'SO- smetti di essere malvagio'

Sì, la mia domanda è stata formulata molto male, scusa.
— Gadi A

@Gilles Puoi spiegarmi quale fan-in qui consideriamo? Il problema per me è che non riesco a capire perché il sottocircuito di MOD non può calcolare AND? Quanti ingressi ha questo MOD e questo AND?
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.