Essa pode ser uma pergunta subjetiva, e não uma resposta concreta, mas de qualquer maneira.
Na teoria da complexidade estudamos a noção de cálculos eficientes. Existem classes como significa tempo polinomial e significa espaço no log . Ambos são considerados representados como uma espécie de "eficiência" e capturam muito bem as dificuldades de alguns problemas.L
Mas há uma diferença entre e : enquanto o tempo polinomial, , é definido como a união de problemas que são executados no tempo para qualquer constante , isso é,L P O ( n k ) k
,
o espaço do log, , é definido como . Se imitarmos a definição de , torna-seS P A C E [ log n ] P
,
onde é chamado de classe de espaço polylog . Minha pergunta é:
Por que usamos o espaço de log como a noção de computação eficiente, em vez do espaço polylog?
Uma questão principal pode ser sobre os conjuntos completos de problemas. No espaço de registro, muitas reduções de uma, e têm problemas completos. Por outro lado, se tiver problemas completos com essas reduções, teríamos contraditado o teorema da hierarquia espacial. Mas e se mudarmos para as reduções do polilog? Podemos evitar esses problemas? Em geral, se tentarmos encaixar na noção de eficiência e (se necessário) modificar algumas das definições para obter todas as boas propriedades que uma classe "boa" deve ter, até onde podemos ir?L P o l y L P o l y L
Existe alguma razão teórica e / ou prática para usar o espaço do log em vez do espaço polylog?