Temos classes de complexidade com relação a, digamos, complexidade de caso médio? Por exemplo, existe uma classe de complexidade (nomeada) para problemas que levam o tempo polinomial esperado para decidir?
Outra questão considera a complexidade do melhor caso , exemplificado abaixo:
Existe uma classe de problemas (naturais) cuja decisão requer pelo menos tempo exponencial?
Para esclarecer, considere um idioma completo EXP- . Obviamente, nem todas as instâncias de L exigem tempo exponencial: há instâncias que podem ser decididas mesmo em tempo polinomial. Portanto, a melhor complexidade de L não é o tempo exponencial.
Edição: Desde que surgiram várias ambiguidades, quero tentar esclarecer ainda mais. Por complexidade do "melhor caso", refiro-me a uma classe de complexidade cuja complexidade dos problemas é mais limitada por alguma função. Por exemplo, defina BestE como a classe de idiomas que não pode ser decidida em tempo inferior a um exponencial linear. Simbolicamente, seja uma máquina de Turing arbitrária, ec , n 0 e n sejam números naturais:
onde indica o tempo que leva antes de M parar na entrada x .
Aceito que definir essa classe de problemas seja muito estranho, pois exigimos que toda máquina de Turing , independentemente de seu poder, não possa decidir a linguagem no tempo menos que um exponencial linear.
No entanto, observe que a contraparte em tempo polinomial ( BestP ) é natural, pois toda máquina de Turing exige tempo pelo menos ler sua entrada.
PS: Talvez, em vez de quantificar como "para toda a máquina de Turing ", tenhamos de limitá-la a alguma classe pré-especificada de máquinas de Turing, como máquinas de Turing em tempo polinomial. Dessa forma, podemos definir classes como B e s t ( n 2 ) , que é a classe de linguagens que exigem pelo menos o tempo quadrática para ser decidido em máquinas de Turing de tempo polinomial.
PS2: Também se pode considerar a contrapartida da complexidade do circuito, na qual consideramos o menor tamanho / profundidade do circuito para decidir um idioma.