Probar n! es completamente constructible en el tiempo

8

Acabamos de terminar nuestra clase de "Construcibilidad de tiempo" en clase la semana pasada y, por el bien de nosotros, mostramos que nk,2n son completamente construibles en el tiempo, es decir, existe una máquina de Turing (determinista de múltiples cintas) que para n dado, se detiene después de exactamente f(n) pasos, y solo pregunté si ahora podíamos demostrar que n! es completamente construible en el tiempo (y siguió adelante).

No estoy seguro de cómo va la prueba, pero creo que tiene que usar nk la capacidad de construcción del tiempo hasta cierto punto, o alguna identidad que involucra factoriales, ya que mostramos nk es (totalmente) construible en el tiempo usando nk=n+i=1i=k1(n1)ni.

Las sugerencias también serían apreciadas, de verdad. Gracias por adelantado.

coptus
fuente

Respuestas:

1

Supongamos que tenemos encontrar n! en entrada n. Nuestra complejidad son los términos de longitud de la entrada (asumimos que esL=O(logn)) Multiplicación de unk poco a poco l número de bit a través de tomas de multiplicación estándar O(kl) operaciones (también después de la multiplicación del número de bits en el resultado si O(k+l)) Multiplicamos linealmente en un ciclo de1 a n Llegar n!. Por lo tanto, el número de operaciones realizadas está limitado por#=L2(1+2...(n1))=L2n(n1)2=O(L22O(L))=o(L!). Por lo tanto, es espacio y tiempo construible.

Sashas
fuente
1
El problema es que debe probar (construir una máquina, dar "una descripción" de sus pasos y luego contarlos) que, si n es una longitud de entrada, la máquina se detiene después de exactamente f (n) pasos. El límite superior es, en este caso, irrelevante (porque, de hecho, se deduce inmediatamente de la prueba dada).
coptus
@coptus Según Wikipedia, parece que hay 2 definiciones diferentes para la función construible en el tiempo. Uno solo requiere que la función se detenga después de exactamentef(n) pasos, mientras que el otro requiere detenerse O(f(n)) pasos, pero también requiere que la salida sea la representación binaria de f(n). Me parece que Sashas demostró según la segunda definición
Dean Gurvitz