Je me demande s'il peut exister un moyen de donner une sorte de "forme normale" aux arbres de décision binaires (BDT) de manière maniable.
Plus précisément: un BDT est un arbre avec des nœuds internes étiquetés par des variables booléennes et des feuilles étiquetées par ou . Un BDT représente une fonction booléenne de manière évidente. Deux BDT sont équivalents ( ) lorsqu'ils représentent la même fonction.1 A , B A ∼ B
Existe-t-il une fonction qui entre un BDT et le transforme en une autre structure de données telle que:
- est dans Ptime
- A ∼ B si et seulement si
- g g ( f ( A ) ) ∼ A a un pseudo-inverse , c'est-à-dire , également dans Ptime
Par exemple, les diagrammes de décision binaires ordonnés réduits OBDD valident 2 et 3, mais pas 1 car avec le mauvais ordre des variables, la sortie peut être de taille exponentielle.
J'ai le sentiment que cela pourrait ne pas être possible, mais je n'ai trouvé aucune preuve de cela nulle part.
Pour commenter davantage la suggestion de Ricky Demer:
Cet article définit les classes (classes d'équivalence en Ptime) et (invariant complet en Ptime) et CF (forme canonique en Ptime). Ils étudient diverses implications (improbables) de P E q = K e r et K e r = C F mais ne fournissent pas de réponse définitive à ces questions.K e r
Diverses réponses négatives (impossibilité de 1 & 2, 1 & 2 & 3) à cette question fourniraient des résultats de séparation comme ou K e r ≠ C F ... ce qui semble être un problème ouvert jusqu'à présent.
Réponses:
A ↦ g ( f ( A ) ) | g ( f ( A ) ) | poly ( | A | ) B A g ( f ( A ) ) = g ( f ( B ) ) | g ( f ( A ) ) | poly (N P ⊈ S U B E X P A ↦ g( f( A ) ) | g( f( A ) ) | poly ( | A | ) B UNE g( f( A ) ) = g( f( B ) ) | g( f( A ) ) | N P ⊆ S U B E X Ppoly ( | B | ) N P ⊆ S U B E X P
la source