Représentation canonique de l'arbre de décision binaire dans Ptime?


10

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 B01A,BAB

Existe-t-il une fonction qui entre un BDT et le transforme en une autre structure de données telle que:f

  1. f est dans Ptime
  2. A Bf(A)=f(B) si et seulement siAB
  3. g g ( f ( A ) ) Af a un pseudo-inverse , c'est-à-dire , également dans Ptimegg(f(A))A

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 rPEqKerPEq=KerKer=CF

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.PEqKerKerCF


1
Est même connu pour être en Ptime?

1
Indépendamment de cela, votre question est équivalente à "Est-ce que a une forme canonique FP ?".


Merci Ricky Demer, je ne savais pas qu'une approche systématique de cette question existait.
Marc

Pourquoi une "réponse négative à cette question" "fournirait-elle un résultat de séparation "?PEqKer

Réponses:


9

A g ( f ( A ) ) | g ( f ( A ) ) | poly ( | A | ) B A g ( f ( A ) ) = g ( f ( B ) ) | g ( f ( A ) ) | poly (NPSUBEXPUNEg(F(UNE))|g(F(UNE))|poly(|UNE|)BUNEg(F(UNE))=g(F(B))|g(F(UNE))|N PS U B E X Ppoly(|B|)NPSUBEXP


Je n'étais au courant que de la "réponse 2" de ce message. Par conséquent, j'ai commencé le même raisonnement, mais je suis resté coincé en cours de route.
Marc

Il serait cependant bon de le conclure de manière autonome. Je vais essayer de lire l'article sous-jacent à la demande de l'article: researcher.watson.ibm.com/researcher/files/us-vitaly/… et le faire.
Marc

1
J'ai peur qu'il y ait un problème avec la "réponse 3" de cette réponse. J'ai interrogé l'auteur à ce sujet, mais je n'ai reçu aucun commentaire.
Marc
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.