J'ai essayé de chercher en ligne, mais je n'ai trouvé aucune déclaration définitive. Il serait logique pour moi que l'union et l'intersection de deux langues NPC produisent une langue qui n'est pas nécessairement dans NPC. Est-il également vrai que les langages des PNJ ne sont pas fermés sous le complément, la concaténation et les opérations des étoiles kleene?
8
Réponses:
Pour tous les exemples de cette réponse, je considère que l'alphabet est . Notez que les langues et sont certainement pas complètes en NP .{0,1} ∅ {0,1}∗
La classe des langages complets NP n'est pas fermée sous intersection. Pour toute NP langue -complete , laissez et . et sont tous deux NP- mais .L L0={0w∣w∈L} L1={1w∣w∈L} L0 L1 L0∩L1=∅
La classe des langues complètes NP n'est pas fermée sous union. Étant donné les langages NP et de la partie précédente, laissez et . et sont tous deux NP- complétés mais.L0 L1 L′0=L0∪{1w∣w∈{0,1}∗}∪{ε} L′1=L1∪{0w∣w∈{0,1}∗}∪{ε} L′0 L′1 L′0∪L′1={0,1}∗
La classe des langages complets NP n'est pas fermée sous concaténation. Considérez les langages NP- complets et de la partie précédente. Puisque les deux langues contiennent , nous avons.L′0 L′1 ε L′0L′1⊇L′0∪L′1={0,1}∗
La classe des langues complètes NP n'est pas fermée sous l'étoile de Kleene. Pour tout langage complet NP , est NP complet mais.L L∪{0,1} (L∪{0,1})∗={0,1}∗
Si la classe des problèmes NP complets est fermée par complémentation, alors NP = coNP . Que cela soit vrai ou non est l'un des principaux problèmes ouverts de la théorie de la complexité.
la source
{0, 1}*
NP-complete n'est pas. Si vous prenez, par exemple, l'intersection de 2 langues NP-complètes, ne devriez-vous pas obtenir une langue NP-complète, ce qui rend NP fermé sous l'intersection?Jetez un œil aux preuves d'union, d'intersection, de concaténation et d'étoile kleene des langages NP, ici . Il semble qu'un argument similaire pourrait être avancé pour les langues NP-Complete.
Pour la notation,
Dans le cas de l'union à partir de 1 , on peut créer une nouvelle machine qui décide en appelantM3 L3 M1 et M2 comme sous-routines. À son tour, à chaque foisM1 ou M2 est appelé, UNE est également appelé. DoncM3 décide L3 en utilisant UNE . Par l'argument de 1 , le temps d'exécution deM3 est en P et puisqu'il utilise UNE comme sous-programme, L3 est NP-Complete. En d'autres termes,L3 est NP-Complete pour la même raison que L1 et sont NP-Complete.L2
Le même argument peut être fait intersection et il semble que des arguments similaires pourraient être avancés pour la concaténation et l'étoile kleene.
Dans le cas du compliment, il semble probable qu'il soit difficile de prouver pour les mêmes raisons qu'il est difficile de prouver le compliment en NP.
la source