Estou interessado em saber se existem bons artigos ou pesquisas expositivos aos quais posso me referir quando escrevo sobre operadores de classes de complexidade : operadores que transformam classes de complexidade fazendo coisas como adicionar quantificadores a eles.
Exemplos de operadores
O seguinte pode ser interpretado como uma lista mínima de operadores que uma resposta deve poder descrever. Aqui, é um conjunto arbitrário de idiomas, sobre um alfabeto finito arbitrário . Σ
- O operador aparentemente foi introduzido por Wagner [1], embora com a notação em vez de . O exemplo mais conhecido de uma classe construído desta maneira é . Esse operador vem com um quantificador complementar , no qual o na definição é substituído por , que permite definir facilmente toda a hierarquia polinomial: por exemplo, . Este pode ser o primeiro operador que foi definido.⋁ ∃ C N P = ∃ P ∀ ∃ c ∀ c Σ P 2 P = ∃ ∀ P
- O operador é semelhante ao operador \ existente em que \ oplus \ mathbf C refere-se ao número de certificados existentes verificáveis na classe \ mathbf C , mas conta o número de certficiates módulo 2 . Isso pode ser usado para definir as classes \ mathsf {\ oplus P} e \ mathsf {\ oplus L} . Operadores similares " \ mathsf {Mod_k \ cdot} " existe para outros módulos k .∃ ⊕ C C 2 ⊕ P ⊕ L M o d k ⋅ k
- Este é o operador complementar e é tacitamente usado para definir , , e uma série de outras classes das que não são conhecidas por serem fechadas com complementos.c o C = P c o M o d k L
- com desculpas pelo espaçamento
- O operador foi aparentemente apresentado por Schöning [2], embora para definir linguagens (ou seja, ele não permitiu uma diferença de probabilidade) e sem usar as constantes explícitas ou . A definição aqui gera problemas de promessa, com instâncias YES e NO-instâncias em . Observe que e ; esse operador foi usado por Toda e Ogiwara [3] para mostrar que .A M = B P ⋅ N P P # P ⊆ B P ⋅ ⊕ P
Observações
Outros operadores importantes que podemos abstrair das definições das classes padrão são (das classes e ) e (das classes e ). Também está implícito na maior parte da literatura que (produzindo problemas de função das classes de decisão) e (produzindo classes de contagem das classes de decisão) também são operadores de complexidade.C = P C = L C ⋅ C P P P L F ⋅
Há um artigo de Borchert e Silvestri [4] que propõe definir um operador para cada classe, mas que não parece ser muito referido na literatura; Também me preocupo que essa abordagem geral possa ter sutis questões de definição. Eles se refiram a uma boa apresentação por Köbler, Schöning, e Torán [5], que no entanto é agora mais de 20 anos de idade, e também parece perder .
Questão
Que livro ou artigo é uma boa referência para operadores de classes de complexidade?
Referências
[1]: K. Wagner, A complexidade dos problemas combinatórios com representações sucintas de entradas , Acta Inform. 23 (1986) 325-356.
[2]: U. Schöning, classes probabilísticas de complexidade e baixa , no Proc. 2ª Conferência do IEEE sobre Estrutura em Teoria da Complexidade, 1987, pp. 2-8; também em J. Comput. System Sci., 39 (1989), pp. 84-100.
[3]: S. Toda e M. Ogiwara, As classes de contagem são pelo menos tão difíceis quanto a hierarquia de tempo polinomial , SIAM J. Comput. 21 (1992) 316-328.
[4]: B. e Borchert, R. Silvestri, operadores de ponto , Volume Teórico de Ciência da Computação 262 (2001), 501-523.
[5]: J. Köbler, U. Schöning e J. Torán, The Graph Isomorphism Problem: Its Complexity Structural, Birkhäuser, Basel (1993).
fonte
Respostas:
Aqui está uma referência com muitas definições de operadores (mas não muitos detalhes):
Ele define um operador de identidade , assim como os operadores c o -, N (correspondente a ∃ acima), B P , R (correspondente ao erro unilateral limitado), ⊕ , U (correspondente ao não determinismo com uma aceitação única) transição), P (correspondente a erro bilateral ilimitado) e Δ (que para uma classe C forma C ∩ c o C ).E co N ∃ BP R ⊕ U P Δ C C∩coC
Isso mostra que:
Ao longo, que também descreve um punhado de maneiras que estes operadores referem-se a classes de complexidade tradicionais, tais como , Z P P , Um H , H A , etc.Σp2P ZPP AM MA
fonte
Como referência introdutória à noção de operador de complexidade (e demonstrando algumas aplicações da ideia), o melhor que encontrei até agora é
que é derivado de notas de aula sobre complexidade computacional e tópicos relacionados. Na página 187 ("Palestra Suplementar G: Teorema de Toda"), ele define os operadores
e define tácitamente na página 12 da maneira usual.co-
O tratamento de Kozen desses operadores é suficiente para indicar como eles estão conectados às classes de complexidade "usuais" e para descrever o teorema de Toda, mas não discute muito seus relacionamentos e apenas os menciona por um total de 6 páginas (no que é afinal de contas). um livro que cobre um tópico muito mais amplo). Espero que alguém possa fornecer uma referência melhor que essa.
fonte