Teorema da dicotomia de Schaefer

Teorema da dicotomia de Schaefer Na teoria da complexidade computacional, um ramo da informática, O teorema da dicotomia de Schaefer afirma condições necessárias e suficientes sob as quais um conjunto finito S de relações sobre o domínio booleano produz problemas de tempo polinomial ou NP-completo quando as relações de S são usadas para restringir algumas das variáveis ​​proposicionais.[1] É chamado de teorema da dicotomia porque a complexidade do problema definido por S está em P ou NP-completo, em oposição a uma das classes de complexidade intermediária que se sabe existir. (assumindo P ≠ NP) pelo teorema de Ladner.

Casos especiais do teorema da dicotomia de Schaefer incluem a NP-completude do SAT (o problema de satisfatibilidade booleana) e suas duas variantes populares 1-em-3 SAT e 3SAT não-todos iguais (frequentemente denotado por NAE-3SAT). Na verdade, para essas duas variantes do SAT, O teorema da dicotomia de Schaefer mostra que suas versões monótonas (onde negações de variáveis ​​não são permitidas) também são NP-completos.

Conteúdo 1 Apresentação original 2 Apresentação moderna 3 Propriedades dos Polimorfismos 4 Generalizações 5 Trabalho relatado 6 Veja também 7 References Original presentation Schaefer defines a decision problem that he calls the Generalized Satisfiability problem for S (indicado por SAT(S)), Onde {estilo de exibição S={R_{1},ldots ,R_{m}}} é um conjunto finito de relações sobre variáveis ​​proposicionais. Uma instância do problema é uma fórmula S, ou seja. uma conjunção de restrições da forma {estilo de exibição R_{j}(x_{eu_{1}},ldots ,x_{eu_{n}})} Onde {estilo de exibição R_{j}em S} e a {estilo de exibição x_{eu_{j}}} são variáveis ​​proposicionais. O problema é determinar se a fórmula dada é satisfatível, em outras palavras, se as variáveis ​​podem receber valores tais que satisfaçam todas as restrições dadas pelas relações de S.

Schaefer identifica seis classes de conjuntos de relações booleanas para as quais SAT(S) está em P e prova que todos os outros conjuntos de relações geram um problema NP-completo. Um conjunto finito de relações S sobre o domínio booleano define um problema de satisfatibilidade computável em tempo polinomial se qualquer uma das seguintes condições for válida: todas as relações que não são constantemente falsas são verdadeiras quando todos os seus argumentos são verdadeiros; todas as relações que não são constantemente falsas são verdadeiras quando todos os seus argumentos são falsos; todas as relações são equivalentes a uma conjunção de cláusulas binárias; todas as relações são equivalentes a uma conjunção de cláusulas de Horn; todas as relações são equivalentes a uma conjunção de cláusulas dual-Horn; todas as relações são equivalentes a uma conjunção de fórmulas afins. [2] Por outro lado, o problema SAT(S) é NP-completo.

Modern presentation A modern, apresentação simplificada do teorema de Schaefer é dada em um artigo expositivo por Hubie Chen.[3][4] Em termos modernos, o problema SAT(S) é visto como um problema de satisfação de restrições sobre o domínio booleano. Nesta área, é padrão denotar o conjunto de relações por Γ e o problema de decisão definido por Γ como CSP(C).

Esta compreensão moderna usa a álgebra, em particular, álgebra universal. Para o teorema da dicotomia de Schaefer, o conceito mais importante em álgebra universal é o de um polimorfismo. Uma operação {estilo de exibição f:D^{m}para D} é um polimorfismo de uma relação {estilo de exibição Rsubseteq D^{k}} E se, para qualquer escolha de m tuplas {estilo de exibição (t_{11},dotsc ,t_{1k}),dotsc ,(t_{m1},dotsc ,t_{mk})} de R, sustenta que a tupla obtida dessas m tuplas aplicando f coordenadamente, ou seja. {estilo de exibição (f(t_{11},dotsc ,t_{m1}),dotsc ,f(t_{1k},dotsc ,t_{mk}))} , está em R. Aquilo é, uma operação f é um polimorfismo de R se R é fechado sob f: aplicar f a qualquer tupla em R produz outra tupla dentro de R. Diz-se que um conjunto de relações Γ tem um polimorfismo f se toda relação em Γ tem f como um polimorfismo. Esta definição permite a formulação algébrica do teorema da dicotomia de Schaefer.

Seja Γ uma linguagem de restrição finita sobre o domínio booleano. O problema CSP(C) é decidível em tempo polinomial se Γ tem uma das seis seguintes operações como um polimorfismo: a operação unária constante 0; a operação unária constante 1; a operação E binária ∧; a operação OR binário ∨; a operação de maioria ternária {nome do operador de estilo de exibição {Maioria} (x,y,z)=(xcunha y)v (xcunha z)v (ywedge z);} a operação minoritária ternária {nome do operador de estilo de exibição {Minoria} (x,y,z)=xo mais yo mais z.} Por outro lado, o problema CSP(C) é NP-completo.

Nesta formulação, é fácil verificar se alguma das condições de tratabilidade se mantém.

Properties of Polymorphisms Given a set Γ of relations, há uma conexão surpreendentemente próxima entre seus polimorfismos e a complexidade computacional do CSP(C).

Uma relação R é chamada primitiva positiva definível, ou curto pp-definível, de um conjunto Γ de relações se R(v1, ... , vk) ⇔ ∃x1 ... xm. C vale para alguma conjunção C de restrições de Γ e equações sobre as variáveis {v1,...,vk, x1,..., xm}. Por exemplo, se Γ consiste na relação ternária nae(x,y,z) segurando se x,y,z não são todos iguais, e R(x,y,z) é x∨y∨z, então R pode ser pp-definido por R(x,y,z) ⇔ ∃a. não(0,x,uma) ∧ não(y,z,¬a); esta redução foi usada para provar que o NAE-3SAT é NP-completo. O conjunto de todas as relações que são pp-definíveis de Γ é denotado por ≪Γ≫. Se Γ' ⊆ ≪Γ≫ para alguma restrição finita define Γ e Γ', então CSP(C') reduz para CSP(C).[5] Dado um conjunto Γ de relações, Pol(C) denota o conjunto de polimorfismos de Γ. Por outro lado, se O é um conjunto de operações, então Inv(O) denota o conjunto de relações tendo todas as operações em O como um polimorfismo. Pol e Inv juntos constroem uma conexão Galois. Para qualquer conjunto finito Γ de relações sobre um domínio finito, ≪Γ≫ = Inv(Pol(C)) detém, isso é, o conjunto de relações pp-definíveis de Γ pode ser derivado dos polimorfismos de Γ.[6] Além disso, se Pol(C) ⊆ Pol(C') para dois conjuntos de relações finitas Γ e Γ', então Γ' ⊆ ≪Γ≫ e CSP(C') reduz para CSP(C). Como consequência, dois conjuntos de relações com os mesmos polimorfismos levam à mesma complexidade computacional.[7] Generalizations The analysis was later fine-tuned: CSP(C) é solúvel em co-NLOGTIME, L-completo, NL-completo, ⊕L-completo, P-completo ou NP-completo e dado Γ, pode-se decidir em tempo polinomial qual desses casos é válido.[8] O teorema da dicotomia de Schaefer foi recentemente generalizado para uma classe maior de relações.[9] Related work If the problem is to count the number of solutions, que é indicado por #CSP(C), então, um resultado semelhante de Creignou e Hermann é válido.[10] Seja Γ uma linguagem de restrição finita sobre o domínio booleano. O problema #CSP(C) é computável em tempo polinomial se Γ tem uma operação de Mal'tsev como um polimorfismo. Por outro lado, o problema #CSP(C) é #P-completo. Uma operação de Mal'tsev m é uma operação ternária que satisfaz {estilo de exibição m(x,y,y)=m(y,y,x)= x.} Um exemplo de uma operação Mal'tsev é a operação Minoritária apresentada no moderno, formulação algébrica do teorema da dicotomia de Schaefer acima. Desta forma, quando Γ tem a operação Minoritária como um polimorfismo, não só é possível decidir CSP(C) em tempo polinomial, mas para calcular #CSP(C) em tempo polinomial. Há um total de 4 Operações Mal'tsev em variáveis ​​booleanas, determinado pelos valores de {estilo de exibição m(T,F,T)} e {estilo de exibição m(F,T,F)} . Um exemplo de menos simétrica é dado por {estilo de exibição m(x,y,z)=(xcunha z)v (neg ywedge (xvee z))} . Em outros domínios, como grupos, exemplos de operações de Mal'tsev incluem {estilo de exibição x-y+z} e {estilo de exibição xy^{-1}z.} Para domínios maiores, mesmo para um domínio de tamanho três, a existência de um polimorfismo de Mal'tsev para Γ não é mais uma condição suficiente para a tratabilidade de #CSP(C). No entanto, a ausência de um polimorfismo de Mal'tsev para Γ ainda implica a #P-dureza de #CSP(C).

Veja também teoremas de classificação Max/min CSP/Ones, um conjunto semelhante de restrições para problemas de otimização Referências ^ Schaefer, Thomas J. (1978). "A Complexidade dos Problemas de Satisfação". ESTOQUE 1978. pp. 216-226. doi:10.1145/800133.804350. ^ Schaefer (1978, p.218 esquerda) define uma fórmula afim como sendo da forma x1 ⊕ ... ⊕ xn = c, onde cada xi é uma variável, c é uma constante, ou seja. verdadeiro ou falso, e "⊕" denota XOR, ou seja. adição em um anel booleano. ^ Chen, Hubie (dezembro 2009). "Um encontro de lógica, Complexidade, e Álgebra". Pesquisas de Computação ACM. 42 (1): 1-32. arXiv:cs/0611018. doi:10.1145/1592451.1592453. ^ Chen, Hubie (dezembro 2006). "Um encontro de lógica, Complexidade, e Álgebra". Notícias SIGACT (Coluna lógica). arXiv:cs/0611018. ^ Chen (2006), p.8, Proposição 3.9; Chen usa redução muitos-um em tempo polinomial ^ Chen (2006), p.9, Teorema 3.13 ^ Chen (2006), p.11, Teorema 3.15 ^ Allender, Eric; terreno para construção, Michael; Immerman, Neil; Schnoor, Henning; Vollmer, Heriberto (Junho 2009). "A complexidade dos problemas de satisfatibilidade: Refinando o teorema de Schaefer" (PDF). Revista de Ciências da Computação e Sistemas. 75 (4): 245-254. doi:10.1016/j.jcss.2008.11.001. Recuperado 2013-09-19. ^ Bodirsky, Manoel; Pentecostes, Michael (2015). "Teorema de Schaefer para Grafos". J. ACM. 62 (3): 19:1-19:52. arXiv:1011.2894. doi:10.1145/2764899. ^ Creignou, Nádia; Hermann, Miki (1996). "Complexidade de problemas de contagem de satisfatibilidade generalizada". Informação e Computação. 125 (1): 1-12. doi:10.1006/inco.1996.0016. ISSN 0890-5401. Categorias: Programação de restriçõesTeoremas na teoria da complexidade computacional

Se você quiser conhecer outros artigos semelhantes a Teorema da dicotomia de Schaefer você pode visitar a categoria Constraint programming.

Deixe uma resposta

seu endereço de e-mail não será publicado.

Ir para cima

Usamos cookies próprios e de terceiros para melhorar a experiência do usuário Mais informação