En teoría de la complejidad computacional, se dice que una función
es una función de espacio constructivo si existe una Máquina de Turing que toda entrada de longitud n utiliza a lo sumo S(n) casillas (sin contar las casillas de la entrada) y además, para todo natural n existe una entrada de longitud n que utiliza exactamente S(n) casillas.
Las funciones de espacio constructivo se utilizan para definir clases de complejidad acotadas por espacio.
Si adicionalmente, existe una Máquina de Turing tal que toda entrada de longitud n utiliza exactamente S(n) casillas, se dice que la función S es de espacio completamente constructivo.
Todas las funciones de espacio constructivo acotadas inferiormente por la función n son de espacio completamente constructivo.