Sei sulla pagina 1di 9

Complejidad en espacio

La complejidad computacional esta basada en la cantidad de tiempo, espacio, u otros recursos


utilizados para reconocer un lenguaje en alguna maquina de computo universal, tal como una
maquina de turing.
Considere la maquina de Turing M de la figura anterior. M tiene una cinta de solo-lectura con
marcadores en los extremos, ¢ y $, y K cintas de almacenamiento semi-infinitas. Si por cada
palabra de entrada de longitud n, M lee a lo sumo S(n) celdas en cualquiera de las cintas de
almacenamiento, entonces se dice que M es una maquina de Turing espacio-acotada S(n), o de
complejidad en espacio S(n). El lenguaje recorrido por M se dice tambien que es de complejidad
en espacio S(n).

Complejidad en Tiempo
Considere la maquina de Turing M de la figura anterior, tiene k cintas infinitas de doble via, una de
las cuales contiene la entrada. Se puede escribir en todas las cintas, incluyendo la de la entrada. Si
para cada palabra de entrada de longitud n, M realiza a lo mas T(n) moviminetos antes de detenerse,
entonces se dice que M es una maquina de Turing tiempo-acotada, o de complejidad en tiempo
T(n).

Complejidades en tiempo y espacio no determinsticas

Una MT no deterministica es de complejidad en tiempo T(n) si cualquier secuencia de movimientos


causa que la maquina realize a lo mas T(n) movimientos. Es de complejidad en esapcio S(n) si
cualquier secuencia la obliga a leer a lo sumo S(n) celdas en cualquier cinta de almacenamiento.

Clases de complejidad

Los requisitos para definir una clase:

*fijar un modelo de computación (tipo de TM),

*la modalidad de computación: determinista, no determinista, etcétera,

*el recurso el uso del cual se controla por la definición: tiempo, espacio, etcétera,

*la cota que se impone al recurso: una función correcta de complejidad.

Clases básicas
Complejidad en espacio
* Complejidad computacional de problemas en terminos de
cantidad de espacio/memoria.

* Interrelaciones entre la complejidad en espacio y la


complejidad en tiempo.

Definicion:

Sea M una MT determinista Sea x0 2 y C = (Ix0 , I1, . . . , Im) tal que Ij = wjqjxj .

Definición: Sea M una MT determinista. La complejidad en espacio de M es la función


parcial, eM : N− → N definida así:

eM(n) = max {s(C) : Э x 2 Σn (C comput. Finita de M sobre x)}

si para cada x E Σn se tiene que M ↓ x (no definida en otro caso).

Definición: Sea M una MT no determinista. La complejidad en espacio de M es la función


total, eM : N →N, definida así: eM(n) = max {sM(x) : x 2 n}, en donde sM(x) es
consideraciones:

*SPACE(f ) C NSPACE(f ).

*El problema SAT es resoluble por una MTD usando una cantidad de espacio
polinomial.

*Elespacio parece una medida de complejidad mas potente que el tiempo


(reutilizacion).

Teorema 1:

Demostración: Sea X 2 NTIME(f ) y M una MTND que resuelve X en tiempo acotado por f
(n), asintoticamente. Se considera una MTD, M' , tal que:

Para cada dato de entrada x de tamaño n simule f (n) pasos de cada computación de
M(x).

Reutilizando el espacio, basta que M' utilice f (n) casillas.

Teorema 2:

Demostración: Sea M una MTND que decide L en espacio O(f (n)).

Sea G(M, x) el árbol que describe el conjunto de computaciones de M sobre x

Los nodos son las d.i. de M(x). (C1, C2) es un arco sii en un paso de
computación de M(x) se pasa de C1 a C2. Se tiene que:
x 2 L sii existe un camino desde Ix a una d.i. de parada y aceptación.

Luego se puede simular M por una MTD que decide L en tiempo

Demostración: Sea M una MTND que decide un lenguaje, L, en espacio O(f (n)).

Sea

El árbol G(M, x) de computaciones de M sobre x tiene tamaño:

para una cierta constante, k, que depende de M.

Decidir que x 2 L equivale a ver si existe un camino entre dos nodos del
grafo de longitud, a lo sumo.
Se puede simular por una MT determinista que usa espacio del orden:

Las clases PSPACE y NPSPACE

Clases correspondientes a P y NP en la complejidad en espacio.

Definición:

PSPACE: clase de lenguajes decibles por una MT determinista con espacio


polinomial.

Definición:

NPSPACE: clase de lenguajes decibles por una MT no determinista con espacio


polinomial.

Definición:

L : clase de lenguajes decidibles por una MT determinista con espacio


logarítmico.
Definición:

NL: clase de lenguajes decidibles por una MT no determinista con espacio


logarítmico.

Se verifica:

Potrebbero piacerti anche