Algoritmos construtivamente eficientes, sem correção e prova de eficiência

17

Estou procurando exemplos naturais de algoritmos eficientes (isto é, em tempo polinomial) st

  1. sua correção e eficiência podem ser comprovadas construtivamente (por exemplo, na ou na ), masPRUMAHUMA
  2. nenhuma prova usando apenas conceitos eficientes é conhecida (ou seja, não sabemos como provar sua correção e eficiência na ou ).S 1 2TV0 0S21 1

Eu mesmo posso fazer exemplos artificiais. No entanto, quero exemplos naturais interessantes, ou seja, algoritmos estudados por eles mesmos, não criados apenas para responder a este tipo de perguntas.

Kaveh
fonte
11
Talvez algo da teoria dos autômatos, em que um algoritmo é fácil, mas para mostrar que funciona, é preciso considerar todos os subconjuntos de algo ou de outro?
Andrej Bauer
2
E quanto à verificação de primalidade em tempo polinomial? É provável que essa prova seja complicada o suficiente para ser difícil de manter dentro de ? S21 1
Andrej Bauer
4
@ Neel, na verdade, a tese de Emil " Princípio do buraco dos pombos e computação aleatória " é sobre a formalização de algoritmos probabilísticos. Um axioma principal necessário para formalizar alguns deles parece ser a contagem aproximada, que não faz parte de ou S 1 2 . Eu acho que pode ser mais simples se ater ao caso determinístico do politimo com T V 0 e S 1 2 . TV0 0S21 1TV0 0S21 1
Kaveh
11
ps: Seria mais interessante se pudéssemos provar que a correção / eficiência dos algoritmos não é comprovável nessas teorias, ou pelo menos são equivalentes a declarações que se acredita serem prováveis ​​nelas. No entanto, pedir isso provavelmente é demais com o que sabemos atualmente.
Kaveh
4
@ Neel, a maior parte da probabilidade relevante pode ser feita em sistemas de primeira ordem, já que você nunca precisa realmente saber a probabilidade exata de um evento, geralmente você só precisa comparar essa probabilidade com certos números racionais.
François G. Dorais

Respostas:

14

Essa é a mesma idéia que a resposta de Andrej, mas com mais detalhes.

KRAJICEK e Pudlak [ LNCS 960, 1995, pp. 210-220 ] demonstraram que, se é uma Σ b 1 -property que define primos no modelo padrão e S 1 2¬ P ( x ) ( y 1 , y 2 ) ( 1 < y 1 , y 2 < x x = y 1 y 2 )P(x)Σ1 1b

S21 1¬P(x)(y1 1,y2)(1 1<y1 1,y2<xx=y1 1y2)
existe um algoritmo de fatoração de tempo polinomial. Isso fornece vários exemplos, já que qualquer algoritmo NP para teste de primalidade produz basicamente uma fórmula . Em particular, o teste de primalidade AKS fornece essa fórmula (quando reformulado adequadamente no idioma de S 1 2 ). O artigo de Krajicek e Pudlak fornece mais exemplos relacionados a criptografia desse tipo, mas antecede a AKS e os avanços relacionados em alguns anos.Σ1 1bS21 1
François G. Dorais
fonte
10

TC0 0VTC0 0

TV0 0VTC0 0TC0 0

(uman)

p(umap)=1 1umap

S21 1

Outra classe de exemplos é dada por algoritmos de teste de irredutibilidade e fatoração para polinômios (principalmente sobre campos finitos e sobre os racionais). Invariavelmente, eles se baseiam no pequeno teorema de Fermat ou em suas generalizações (entre outros) e, como tal, não são conhecidos por serem formalizáveis ​​em uma teoria apropriada da aritmética limitada. Normalmente, esses algoritmos são randomizados, mas para exemplos determinísticos de tempo polinomial, pode-se fazer o teste de irredutibilidade de Rabin ou o algoritmo de raiz quadrada de Tonelli-Shanks (formulado para que um não retorno quadrático seja necessário como parte da entrada).

Emil Jeřábek apoia Monica
fonte
9

O teste de primalidade da AKS parece ser um bom candidato para se acreditar na Wikipedia.

No entanto, eu esperava que esse exemplo fosse difícil de encontrar. As provas existentes serão redigidas para que obviamente não sejam feitas na aritmética limitada, mas provavelmente serão "adaptáveis" à aritmética limitada com mais ou menos esforço (geralmente mais).

Andrej Bauer
fonte
2
S21 1
2
S21 1S21 1
2
Não é um papel maravilhoso por Krajicek e Pudlak que dá um grupo mais exemplos: karlin.mff.cuni.cz/~krajicek/j-crypto.ps
François G. Dorais
2
@ François, por que não postar uma resposta? :)
Kaveh
8
Então, eu recebo a maior contagem de votos para fazer um palpite de sorte, enquanto outros sabem o que está acontecendo. A matemática é como a MTV.
21313 Andrej Bauer