Équilibrage de la formule booléenne en


10

Je recherche des références sur la complexité du problème d' équilibrage des formules booléennes . En particulier,

  1. Savait-on que les formules booléennes pouvaient être équilibrées en ?AC0
  2. Existe-t-il une preuve simple de l'équilibrage de la formule booléenne en ?AC0

Par "simple", j'entends une preuve plus simple que celle que je mentionne ci-dessous, en particulier je recherche une preuve qui ne dépend pas de l'évaluation de la formule booléenne étant en .NC1


Contexte

Ici, toutes les classes de complexité mentionnées sont les classes uniformes.

BFB (équilibrage de formule booléenne): étant
donné une formule booléenne , recherchez une formule booléenne équilibrée équivalente.φ

Je m'intéresse à la complexité de ce problème, en particulier les preuves simples montrant que le problème est en (ou même T C 0 ou N C 1 ). Les arguments d'équilibrage communs comme ceux basés sur le lemme de Spira appliquent des modifications structurelles répétées à l'arbre de formule qui semblent donner seulement B F B N C 2 .AC0TC0NC1BFBNC2

J'ai une preuve pour , mais la preuve n'est pas simple et dépend de la preuve de B F E N C 1 .BFBAC0BFENC1

BFE (évaluation de la formule booléenne)
Étant donné une formule booléenne et une affectation vérité τ pour les variables dans φ , t τ satisfait φ ( τ φ )?φτφ
τφτφ

On sait d'après le célèbre résultat de Sam Buss que l'évaluation de la formule booléenne ( ) peut être calculée en N C 1 = A L o g T i m e (voir [Buss87] et [BCGR92] ).BFENC1=ALogTime

Il s'ensuit (de manière assez surprenante, du moins pour moi) que l'équilibrage des formules booléennes ( ) est également en N C 1 :BFBNC1

L'idée est que l'on peut coder en dur dans les portes d'entrée de B F E pour obtenir une formule équivalente à φ et c'est une opération complètement syntaxique calculable en A C 0 . Puisque B F E a des formules équilibrées, nous obtenons une formule équilibrée équivalente pour φ . En d'autres termes, l'algorithme est:φBFEφAC0BFEφ

φλp.Eval(φ,p)

Motivation

BFBAC0TC0NC1BFENC1NC1BFBNC1


Des questions

  1. AC0BFBAC1
  2. BFENC1BFBAC0

3
Quelle définition de «équilibre» utilisez-vous?
Dana Moshkovitz

1
Depth<10lgSize+100Depth=O(lgSize)

a convenu que la définition de "l'équilibrage" devrait être claire. est-ce similaire au concept d'équilibrage dans les arbres binaires? par exemple "arbres auto équilibrés"
vzn

Réponses:


3

NC1

L'idée de base est de représenter l'arbre comme une expression entre parenthèses et de trouver des séparateurs équilibrés pour ceux-ci. Notez que nous trouvons des séparateurs de feuilles, c'est-à-dire des sous-arbres qui sont équilibrés en nombre de feuilles.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.