Entscheidungsproblem I LENGUAJES RECURSIVAMENTE ENUMERABLES MÁQUINAS DE TURING. DECIDIBILIDAD OTROS MODELOS COMPUTACIONALES. Máquinas de Turing (TM)

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Entscheidungsproblem I LENGUAJES RECURSIVAMENTE ENUMERABLES MÁQUINAS DE TURING. DECIDIBILIDAD OTROS MODELOS COMPUTACIONALES. Máquinas de Turing (TM)"

Transcripción

1 Entscheidungsproblem I LENGUAJES RECURSIVAMENTE ENUMERABLES MÁQUINAS DE TURING. DECIDIBILIDAD OTROS MODELOS COMPUTACIONALES Francisco Hernández Quiroz Departamento de Matemáticas Facultad de Ciencias, UNAM fhq@ciencias.unam.mx Página Web: Facultad de Ciencias Las máquinas de Turing se inventaron para contestar una pregunta abierta en lógica matemática: Sean α 1,..., α n fórmulas del cálculo de predicados a las que llamaremos axiomas. Sea θ otra fórmula a la que llamaremos candidato a teorema. Queremos un método para poder contestar la pregunta α 1,..., α n = θ? (Que se lee θ es una consecuencia lógica de α 1,..., α n? ) Éste es el problema clásico de la decisión o Entscheidungsproblem. Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 1 / 69 Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 2 / 69 Procedimiento efectivo Máquinas de Turing (TM) El método que buscamos deberá tener las siguientes características: 1 Deberá expresarse en términos tan formales como las instancias del problema. 2 Deberá ser mecánico : su aplicación se basará en reglas que se siguen sin necesidad de interpretación o de inspiración. 3 El método deberá especificarse de manera finita. 4 Los recursos utilizados deben ser finitos tanto espacial como temporalmente y, de preferencia, deben poder acotarse con anticipación. Church y Turing demostraron que no existe un método para resolver el Entscheidungsproblem que cumpla con lo anterior. De paso, inventaron dos de los modelos más populares de computación. Una máquina de Turing es un mecanismo muy simple que consiste en una cinta de lectura y escritura, una cabeza de lectura y escritura que recorre esta cinta (y que puede estar en diferentes estados) y una función que regula los movimientos de la cinta. a a b b c c q Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 3 / 69 Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 4 / 69

2 Definición formal Aceptación y rechazo I Una máquina de Turing está formada por los siguientes elementos: un conjunto de estados Q; un alfabeto de entrada Σ; un alfabeto de cinta, con Σ Γ; una función de transición δ : Q Γ Q Γ {, } los estados inicial, de aceptación y de rechazo s, t, r Q, respectivamente; el símbolo de espacio en blanco Γ Σ; el símbolo de inicio de la cinta Γ. Es imposible moverse a la izquierda del símbolo de inicio. Los estados de aceptación y rechazo no se pueden abandonar. Una configuración es una terna (q, α, n), donde q Q, α Γ y n N. La configuración inicial es (s, α, 0) α Σ. Definiremos una relación entre configuraciones. Sean el n-ésimo símbolo de la cadena α y α [n] α [n/x] Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 5 / 69 Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 6 / 69 Aceptación y rechazo II Ejemplos la cadena resultante de sustituir ese símbolo por x. Entonces: (q, α, n) (r, β, m) sii δ(q, α [n] ) = (r, b, ), β = α [n/b], m = n + 1 o bien δ(q, α [n] ) = (r, b, ), β = α [n/b], m = n 1 es la cerradura transitiva y reflexiva de esta relación. Una máquina de Turing M se detiene con una entrada α Σ sii (s, α, 0) (q, β, n) con q = t o bien q = r. El lenguaje aceptado por M es L(M) = {α Σ (s, α, 0) (t, β, n)}. Una máquina que acepta {a n b n c n }, con Q = {s, q 1,..., q 10, t, r}, Σ = {a, b, c}, Γ = {a, b, c,,, } y δ definida por la tabla a b c s (s,, ) (s, a, ) (q 1, b, ) (q 2, c, ) (q 3,, ) q 1 (r,, ) (q 1, b, ) (q 2, c, ) (q 3, ) q 2 (r,, ) (r,, ) (q 2, c, ) (q 3,, ) q 3 (t,, ) (r,, ) (r,, ) (q 4,, ) (q 3,, ) q 4 (r,, ) (r,, ) (q 5,, ) (q 4, c, ) (q 4,, ) q 5 (r,, ) (q 6,, ) (q 5, b, ) (q 5,, ) q 6 (q 7,, ) (q 6, a, ) (q 6,, ) q 7 (q 8,, ) (r,, ) (r,, ) (q 7,, ) (t,, ) q 8 (q 8, a, ) (q 9,, ) (r,, ) (q 8,, ) (r,, ) q 9 (q 9, b, ) (q 10, ) (q 9,, ) (r,, ) q 10 (q 10, c, ) (q 10,, ) (q 3,, ) Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 7 / 69 Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 8 / 69

3 Variantes de máquinas de Turing Varias cintas I Una máquina de Turing con dos cintas tiene una función de transición δ : Q Γ 2 Q Q Γ 2 {, } 2 Existen variantes de las TM que no añaden poder computacional (aunque sí ventajas prácticas): Máquinas con varias cintas (se presentará el caso particular de dos cintas). Máquinas con cintas infinitas en ambos sentidos. Máquinas no deterministas. El último caso tiene interés especial en la teoría de la complejidad. Todas estas variantes pueden reducirse al modelo original. a a b b c c q a b c a b c Esta máquina se puede simular con una máquina de una sola cinta con alfabeto Γ 1 = { } Σ (Γ {â a Γ}) 2. La cinta de esta máquina se ve así a â b b c c a b c a ˆb c Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 9 / 69 Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 10 / 69 Varias cintas II La nueva máquina utiliza con símbolos del tipo â para indicar la posición en cada una de las cintas de la máquina original y simula de esta forma una transición original con una serie de transiciones en la nueva máquina. Cinta infinita en ambos sentidos Una máquina con cinta infinita en ambos sentidos se puede simular por medio de una máquina con dos cintas: Se elige un punto arbitrario en la cinta original. Se divide la cinta original a partir de este punto. Se copia la información de la cinta original a las dos cintas nuevas, invirtiendo el orden de una de ellas para simular la parte infinita hacia la izquierda.... a a a a b b b b c c c c... b b a a a a... b b c c c c... Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 11 / 69 Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 12 / 69

4 TM no deterministas I TM no deterministas II Una máquina de Turing no determinista (NTM) es similar a una TM, excepto por δ : Q Γ P(Q Γ {, }). La aceptación se produce sii existe una secuencia de elecciones que lleve al estado de aceptación. Para reducir una NTM a un TM se utilizará una máquina con tres cintas: la primera cinta tendrá la entrada original; la segunda contendrá secuencias de los dígitos 1,..., r, separadas por el símbolo # ordenadas por longitud y lexicográficamente: en la tercera cinta se copiará la entrada original y se procesará de acuerdo con las instrucciones de la máquina original, elegidas de acuerdo con las secuencias de la cinta 2: donde r es el número máximo de opciones que contiene la función δ original. Esta máquina aceptará la entrada sii en alguna de las simulaciones de la máquina original acepta. 1 # 2 # # r # 11 # 12 # # rr # 111 # 112 # Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 13 / 69 Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 14 / 69 Lenguajes recursivos y recursivamente enumerables Propiedades decidibles, indecidibles y semidecidibles Sea M TM. Dada una cadena α Σ, tenemos tres posibilidades: 1 M acepta α, es decir, s, α ω, 0 M t, β ω, n ; 2 M rechaza α, es decir, s, α ω, 0 M r, β ω, n ; 3 M no hace ninguna de las dos cosas anteriores pues entra en un ciclo infinito. Diremos que M es total si para toda α Σ, M acepta o rechaza α. Definiremos ahora dos tipos de lenguajes. Sea L Σ. L es recursivo (rec) sii existe una M TM total tal que L = L(M); L es recursivamente enumerable (r.e.) sii existe una M TM tal que L = L(M); Como se verá más adelante, algunos lenguajes que son r.e. no son rec. Sea P una propiedad de cadenas en Σ, i.e., P(α) = V sii P es verdadera de α. Por ejemplo, la propiedad Una propiedad P es Primo(α) = V sii α = n y n es primo. decidible sii {α P(α) = V} es recursivo indecidible sii {α P(α) = V} no es recursivo semidecidible sii {α P(α) = V} es r.e. Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 15 / 69 Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 16 / 69

5 Indecidibilidad Codificación de máquinas de Turing I De acuerdo con la definición,todas las propiedades decidibles son semidecidibles. Sin embargo, algunas propiedades semidecidibles son indecidibles. Peor todavía, existen también propiedades indecidibles que no son siquiera semidecidibles. Para demostrar lo anterior, construiremos máquinas de Turing que se basan en la idea de universalidad. El primer paso es representar de manera adecuada una máquina de Turing adecuada. Un esquema posible es el siguiente. Sea M = Q, Σ, Γ, δ, s, t, r,, una TM con Q = i Σ = j Γ = k s t r el m-ésimo estado el n-ésimo estado el p-ésimo estado el q-ésimo carácter de Σ el r-ésimo carácter de Σ Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 17 / 69 Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 18 / 69 Codificación de máquinas de Turing II Codificación de máquinas de Turing III Entonces la cadena binaria siguiente codifica esta información 0 i 10 j 10 k 10 m 10 n 10 p 10 q 10 r 1 Y una transición en delta δ(s u, a v ) = (s w, a x, ) está representada por la cadena 0 u 10 v 10 w 10 x 101 Mientras que la transición δ(s u, a v ) = (s w, a x, ) queda codificada en la cadena 0 u 10 v 10 w 10 x 111. Finalmente una cadena en Γ de la forma queda codificada por la cadena 0 n 1 10 n n z 1 En adelante, designaremos con M y α las codificaciones de la TM M y la cadena α, respectivamente. Si las queremos combinar en una cadena usaremos el símbolo # para separarlas: M # α a n1 a n2 a nz Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 19 / 69 Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 20 / 69

6 Máquina de Turing universal Problema de la detención HP Con las codificaciones anteriores podemos definir dos conjuntos: Dada esta codificación, se puede crear un máquina de Turing que, para todas M TM y α Σ M, simule la ejecución de las instrucciones de M con la entrada α a partir de la cadena M # α. Llamaremos máquina de Turing universal (o para abreviar TMU) a esta máquina y, con algunas leves modificaciones propias de cada caso, la usaremos como base para construir TM especiales. Por ejemplo, podemos modificar la TMU de tal forma que al terminar de simular M con α acepte la cadena M # α sii M aceptó α. HP = { M # α M se detiene con la entrada α} MP = { M # α α L(M)}. El primer conjunto debe su nombre a que describe lo que se conoce como el problema de la detención (halting problem); y el segundo, el problema de la pertenencia (membership problem). Si HP fuera rec, la pregunta de si una TM dada se detiene con una entrada particular sería decidible. Algo análogo se puede plantear para MP. En cambio, es muy fácil ver que ambos son r.e., pues una leve adaptación de la TMU nos lleva a tener TM que aceptan HP y MP (véase la lámina anterior). Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 21 / 69 Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 22 / 69 HP no tiene solución total I HP no es rec, i.e. la pregunta de si una TM se detiene con una entrada no es decidible. Si aceptamos la tesis de Church-Turing, esto equivale a decir que no existe un procedimiento efectivo para responder siempre esta pregunta. Antes de demostrar lo anterior, véase cómo la codificación de las TM nos permite ordenarlas lexicográficamente. Se puede hacer lo mismo con las cadenas y, gracias a esto, construir una tabla como la siguiente: TM/cad. ɛ α... M ɛ s s n... n... M 0 s s s... n M β n n s... n... HP no tiene solución total II donde tenemos s en la entrada (M β, α) si la TM codificada por la cadena β se detiene con la entrada α; y n, en caso contrario. Por reducción al absurdo, supongamos que existe una TM total H tal que L(H) = HP = { M # α M se detiene con α} H nos permitiría construir la tabla anterior sin error, pues sii M se detiene con la entrada α. M # α L(H) Considérese a hora la siguiente TM, H: para toda entrada M # α, H la acepta si H la rechaza, y entra en un ciclo trivial en caso contrario. Obsérvese cómo H es muy fácil de construir, suponiendo que contamos ya con H. Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 23 / 69 Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 24 / 69

7 HP no tiene solución total III Por otro lado, la lista de TM codificada es exhaustiva (pero veremos que H no está ahí). Nos podemos preguntar ahora si H # H HP, lo que equivale a decir que H se detiene cuando recibe como entrada la cadena que la codifica. Pero en ese caso, por la definición de H, esta TM debe entrar en un loop trivial cuando tiene como entrada su propia descripción, lo cual contradice nuestra hipótesis. Si por el contrario suponemos que HP no tiene solución total IV En conclusión, la suposición de que H existe nos lleva una contradicción. La demostración anterior se basa en el método de diagonalización de Cantor, pues H es la negación de la diagonal de la tabla anterior, lo que la hace diferir de todas los renglones de la lista. Esto contradice el supuesto de que la lista es exhaustiva. H # H HP, llegamos a una contradicción análoga. Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 25 / 69 Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 26 / 69 Problemas indecidibles o que no son semidecidibles Complementos de lenguajes I El problema de la detención no es el único indecidible; el problema de la pertenencia tampoco es decidible. Sin embargo, ambos problemas son semidecidibles, i.e., HP y MP son r.e. Para demostrarlo, se necesitan adaptaciones muy simples de la TMU. Dadas M TM y α Σ : se simula M con α y se acepta M # α si M acepta α (el lenguaje aceptado es MP); se simula M con α, pero se acepta M # α si M termina, ya sea con aceptación o rechazo (el lenguaje aceptado es HP). Otros problemas no son siquiera semidecidibles, e.g. determinar si una TM no se detiene con una entrada: HP = { M # α M no se detiene con α}. El caso de HP se puede demostrar por medio de un teorema muy general. Definición Sea L Σ. Designaremos su complemento con L. Si L es rec (r.e.), entonces diremos que L es co-rec. (co-r.e.). Teorema (a) Si tanto L como L son r.e., entonces ambos son rec. (b) Si L es rec, entonces es co-rec. Dem. (a) Si L y L son r.e., existen M, M TM tales que L(M) = L L(M) = L. Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 27 / 69 Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 28 / 69

8 Complementos de lenguajes II Complementos de lenguajes III La TMU se puede adaptar muy para obtener N TM tal que N funciona así: N tiene dos cintas y α Σ N simula M en la primera cinta N simula M en la segunda cinta L(N) = L y N es total. las simulaciones se realizan alternando pasos (para evitar la posibilidad de que N entre en un ciclo infinito si M o M lo hacen) si M acepta α, N acepta si M acepta α, N rechaza. Dado que α L = L(M) o bien α L = L(M), N siempre se detiene y, por tanto, L es recursivo. Se puede construir una TM total para L de manera análoga. Para (b) la hipótesis implica la existencia de una TM total que acepta L. Basta modificar esta TM invirtiendo los estados de aceptación y rechazo para obtener otra TM total que acepta L. Corolario Corolario. HP no es r.e. Dem. HP es r.e, y (a) implicaría que si HP también fuera r.e., ambos serían rec y ya se demostró que HP no es rec. Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 29 / 69 Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 30 / 69 Funciones computables Reducción m I Hasta ahora hemos visto las TM como mecanismos para decidir problemas (i.e., responder preguntas con sí o no). Pero también podríamos verlas como formas de calcular funciones. Sea M TM, con Σ y Γ como alfabetos de entrada y de la cinta, respectivamente. Entonces, podemos definir una función f M : Σ Γ como Definición Sean A Σ y B. Una reducción (no inyectiva) de A a B es una función computable σ : Σ tal que para toda α Σ α A sii σ(α) B. En general, escribiremos A m B sii existe una reducción de A a B. {(α, β) s M, α, 0 M t, β, n }. El siguiente teorema será de gran utilidad en adelante: Obsérvese que f M no tiene por qué ser total. Por otro lado, diremos que la función σ : Σ es: (a) Turing-computable sii existe una M TM tal que σ = f M ; (b) computable sii existe una M TM total tal que σ = f M. Teorema Sean A, B Σ y A m B. Entonces: (a) Si B es r.e (rec), entonces A también es r.e (rec). (b) Si A no es r.e. (rec), entonces B tampoco es r.e. (rec). Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 31 / 69 Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 32 / 69

9 Reducción m II Dem. Por hipótesis, existe σ computable tal que para toda α Σ α A sii σ(α) B. En el caso (a) existe una M TM (total) tal que L(M) = B. Entonces, podemos construir una N TM (total) tal que L(N) = A. N procede así: Entonces para toda α, N calcula σ(α); simula M con σ(α); acepta si M acepta σ(α). N acepta α sii M acepta σ(α) sii σ(α) B sii α A. En cuanto a (b), es fácil ver que la reducción σ nos permitiría decidir la pertenencia a A por medio de la pertenencia a B si B fuera r.e. (rec). Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 33 / 69 Ejemplos Sea Entonces FIN = { M L(M) es finito} HP m MP HP m FIN. El primer ejemplo se resuelve con una K TM total que, a partir de una cadena M # α, genera otra M TM que, para toda entrada β, simula M con α y, si esta se detiene, acepta β. M acepta todas las cadenas sii M se detiene con α. K computa la σ deseada y la pregunta M # α HP? se convierte en la pregunta M # γ MP?, para cualquier γ arbitraria. El segundo caso se puede demostrar con una construcción similar. Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 34 / 69 Propiedades no triviales de lenguajes r.e. Propiedades decidibles Sea Σ un alfabeto y consideremos ahora sólo los subconjuntos de Σ que sean lenguajes r.e. Nos interesan propiedades de lenguajes r.e. como las siguientes: ser regular; ser un CFL; ser infinito; incluir a ɛ. Sea P una propiedad y L un lenguaje. Si P es cierta de L escribiremos P(L) = V. En caso contrario, P(L) = F. Una propiedad que es cierta de algunos lenguajes r.e. pero no de otros es no trivial. Todos los ejemplos anteriores son no triviales. Hay que observar que hablamos de propiedades de lenguajes y no de cadenas. Sin embargo, los conceptos de decidibilidad, semidecibilidad e indecibilidad se pueden extender a estas propiedades. Sea P una propiedad y sea L un r.e. Entonces P es decidible sii M, N TM. L(N) = L M es total ( N L(M) P(L) = V). Indecibilidad y semidecibilidad se definen de manera análoga. Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 35 / 69 Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 36 / 69

10 Teorema de Rice I Sea P una propiedad no trivial de lenguajes r.e. Entonces P es indecidible. Demostración. Reduciremos HP al lenguaje { M P(L(M)) = V}. Supongamos que P( ) = F. Como P no es trivial, existe A r.e. tal que P(A) = V. Sea M A TM tal que L(M A ) = A. Dada una N TM y una α Σ N, construimos una K = σ( N # α ) tal que para toda β Σ K 1 preserva una copia de β en una cinta separada; 2 escribe α en su cinta; 3 simula N con α; Teorema de Rice II 4 si N se detiene con α, simula M A con β y acepta si M A acepta. Si N # α HP, L(K) =. En caso contrario, L(K) = L(M A ) = A. Es decir, es decir, N # α HP L(K) = A P(L(K)) = P(A) = V N # α HP L(K) = P(L(K)) = P( ) = F HP m { M P(L(M)) = V}. Como HP no es rec, { M P(L(M)) = V} tampoco lo es y P es indecidible. Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 37 / 69 Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 38 / 69 Segundo teorema de Rice I Sea P una propiedad de lenguajes r.e. Diremos que P es monótona si A, B r.e. A B P(A) = V P(B) = V. Por ejemplo, la propiedad de contener a ɛ es monótona, lo mismo que la propiedad de ser infinito, pero las propiedades de ser finito o regular no son monótonas. Segundo teorema de Rice. Sea P una propiedad de lenguajes r.e. no monótona. Entonces P no es siquiera semidecidible. Demostración. Por reducción de HP al conjunto { M P(L(M)) = V}. Para esto, M TM, α Σ M construimos una K TM tal que M # α HP sii K { M P(L(M)) = V}. Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 39 / 69 Segundo teorema de Rice II Como P no es monótona, existen A, B r.e. tales que Sean M A, M B TM tales que A B P(A) = V P(B) = F. L(M A ) = A L(M B ) = B. K contará con tres cintas y β procederá de la siguiente forma 1 escribe β en las cintas 1 y 2; 2 escribe α en la cinta 3; 3 simula M A en la cinta 1, M B en la cinta 2 y M en la cinta 3; 4 acepta β si ocurre cualquiera de los siguientes casos: 1 M A acepta β o bien 2 M B acepta β y M se detiene con α. Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 40 / 69

11 Segundo teorema de Rice III TM con oráculo Jerarquía aritmética Incomputabilidad y sus grados Entonces M # α HP L(K) = L(M B ) P(L(K)) = P(L(M B )) = F M # α HP L(K) = L(M A ) P(L(K)) = P(L(M A )) = V Hasta ahora parece que los conjuntos incomputables se reducen a dos tipos: los que no son recursivos y los que ni siquiera son recursivamente enumerables. En realidad, el panorama puede ser más complejo: los conjuntos no r.e. son clasificables en función de su grado de incomputabilidad. El método básico es determinar qué problema necesitamos resolver para que un conjunto se vuelva rec o r.e. Las soluciones a problemas de decisión se pueden clasificar por medio de oráculos. Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 41 / 69 Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 42 / 69 TM con oráculo Jerarquía aritmética Máquinas de Turing con oráculo TM con oráculo Jerarquía aritmética Reductibilidad-Turing Un oráculo es una cinta adicional donde se codifica la función característica de un conjunto. Supongamos que ordenamos las cadenas en un alfabeto Σ y que la función ν : Σ b N nos dice la posición que le corresponde a una cadena en el orden lexicográfico. Sea A Σ. El oráculo de A, denotado por O A es una cinta infinita que en cada celda guarda 0 o 1 de acuerdo con la regla α A sii O A [n] = 1. Una máquina de Turing con oráculo (TMO) es una TM que durante un momento de su ejecución puede entrar en un estado tal que puede consultar el valor de una celda de un oráculo. Sean A, B Σ. A es recursivamente enumerable en B sii existe una M TMO con oráculo O B tal que A = L(M). Si M es total, entonces A es recursiva en B o Turing-reductible a B. En símbolos A T B. Ejemplos: MP T HP y HP T MP. Obsérvese que HP T HP y vicerversa, pero HP m HP. Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 43 / 69 Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 44 / 69

12 TM con oráculo Jerarquía aritmética Jerarquía aritmética TM con oráculo Jerarquía aritmética Versión lógica de la jerarquía aritmética La relación T nos permite clasificar lenguajes no r.e.: Σ 0 1 = {lenguajes r.e.} 0 1 = {lenguajes rec} Σ 0 n+1 = {lenguajes r.e. en algún L Σ 0 n} 0 n+1 = {lenguajes rec en algún L Σ 0 n} Π 0 n = {complementos de lenguajes en Σ 0 n} Alternativamente, un lenguaje L es r.e. sii existe una propiedad R decidible de pares de cadenas tal que L = {α β. R(α, β)}. Por ejemplo HP = { M # α x. M se detiene con α en x pasos} MP = { M # α x. M acepta α en x pasos} Las observaciones anteriores se pueden generalizar por medio del siguiente teorema: 1 Un lenguaje L está en Σ 0 n sii una propiedad R (n + 1)-aria decidible tal L = {α β 1 β R(α, β 1,..., β n )} 2 Un lenguaje L está en Π 0 n sii una propiedad R (n + 1)-aria decidible tal 3 0 n = Σ 0 n Π 0 n. L = {α β 1 β R(α, β 1,..., β n )} Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 45 / 69 Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 46 / 69 TM con oráculo Jerarquía aritmética Completitud Definiciones de computabilidad Definición. Sea C un nivel de la jerarquía aritmética y sea L un lenguaje. Diremos que L es C-difícil sii para todo A C, A m L. C-completo sii L es C-difícil y L C. Por ejemplo, HP y MP son Σ 0 n-completos. Turing propuso sus máquinas como una definición formal de la noción intuitiva de calculabilidad efectiva. Él mismo aplicó su definición a dos problemas: la determinación de qué es un número computable y la demostración de irresolubilidad del Entscheidungsproblem. Otros matemáticos contemporáneos propusieron otras formas de definir la calculabilidad efectiva: el cálculo lambda, las gramáticas formales, etc. Es posible demostrar que, una vez que se acepta una noción de equivalencia adecuada, todos estas definiciones son equivalentes, en el sentido de que nos permiten calcular la misma clase de funciones. Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 47 / 69 Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 48 / 69

13 Tesis de Church-Turing La equivalencia entre modelos de computación llevó a plantear la siguiente afirmación: Toda función es calculable efectivamente si y sólo si es calculable por una máquina de Turing. Esta afirmación es conocida como la tesis de Church-Turing, pues se deriva del trabajo de ambos Dado que afirma que una noción intuitiva (calculabilidad efectiva) es capturada por una noción formal, no se puede decir propiamente que está demostrada. Pero es una hipótesis de trabajo conveniente y los resultados de computabilidad vistos en la sección anterior pueden formularse de manera más general si se acepta la validez de la tesis. También es posible reformularla de manera que no se vea como una afirmación dogmática, sino como un conjunto de axiomas de los cuales se pueden derivar los mismos resultados Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 49 / 69 Computabilidad-Turing Para poder comparar los modelos que estudiaremos adoptaremos una convención similar a la que vimos antes. Sea M TM, con Σ y Γ como alfabetos de entrada y de la cinta, respectivamente. Entonces, podemos definir una función f M : Σ Γ como {(α, β) s M, α, 0 M t, β, n }. Obsérvese que f M no tiene por qué ser total. Por otro lado, diremos que la función σ : Σ es: (a) Turing-computable sii existe una M TM tal que σ = f M ; (b) computable sii existe una M TM total tal que σ = f M. Esta convención se puede modificar para que se refiera a números naturales y no a cadenas. Por ejemplo, podemos pensar en que la cadena α se refiere al número natural que corresponde al lugar que ocupa α en el orden lexicográfico. Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 50 / 69 Funciones recursivas µ Funciones nuevas I Las funciones recursivas-µ son otro modelo de computabilidad. La terminología adoptada presupone la tesis de Church-Turing. Estas funciones son el mínimo conjunto cerrado bajo las operaciones de composición, recursión primitiva, minimización acotada y que contiene a las siguientes funciones básicas (donde x = x 1,..., x n ): Cero. La constante c : N 0 N, con c = 0 es computable. Sucesor. La función s : N N, con s(x) = x + 1, es computable. Proyecciones. Las funciones π n k : Nn N y π n k (x 1,..., x n ) = x k, con 1 k n, son computables. Las operaciones para crear nuevas funciones son: Composición. Si las funciones f : N k N y g 1,..., g k : N n N son computables entonces también lo es la función f (g 1,..., g k ) : N n N, definida por f(g 1 ( x),..., g k ( x)). Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 51 / 69 Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 52 / 69

14 Funciones nuevas II Recursión primitiva. Si y h 1,..., h k : N n N g 1,..., g k : N n+k+1 N son computables, entonces también lo son las funciones definidas a continuación f 1,..., f k : N n+1 N, f i (0, x) = h i ( x) f i (s(n), x) = g i (n, x, f 1 (n, x),..., f k (n, x)). Funciones nuevas III Minimización no acotada. Sea g : N n+1 N una función computable. Entonces, también es computable la función definida por f : N n N, f( x) = m donde m es el mínimo valor tal que: g(x, m) = 0 y n m. g(x, n) está definida = indefinida, en caso de que no exista tal m El valor de f( x) se denota con la expresión µy. g(y, x) = 0. Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 53 / 69 Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 54 / 69 Ejemplos Cálculo lambda I La función + suele definirse por medio de las siguientes ecuaciones 0 + x = x s(y) + x = s(y + x) En la notación de las funciones µ tendríamos: h = π 1 1 g = s π3 3 f(0, x) = π1 1 (x) f(s(y), x) = s(π3 3 (y, x, f(y, x))) Las funciones recursivas también son expresables en el cálculo λ. El conjunto de términos del cálculo λ se denotará por Λ. La sintaxis del cálculo lambda es al siguiente Λ V (λx. Λ) (ΛΛ) donde V denota una variable: w, x, y, z, w 1,... La regla básica es la reducción β ((λx. M)N) β M [x/n] Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 55 / 69 Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 56 / 69

15 Funciones recursivas en el cálculo lambda I Sean M y N Λ. Entonces: V def λxy. x F def λxy. y [M, N] def λz. zmn 0 def λx. x n + 1 def [F, n] S def λx. [F, x] P def λx. xf C def λx. 0 Cero def λx. xv πi n def λx 1,..., x n. x i Y def λf. (λx. f(xx))(λx. f(xx)) Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 57 / 69 Funciones recursivas en el cálculo lambda II Obviamente, 0 y n + 1 definen los números naturales. S y P son las funciones predecesor y sucesor. V y F son los valores de verdad, Cero es una función que nos da V si su argumento es 0 y F en caso contrario. πi n es, por supuesto, la proyección i-ésima con n argumentos. El término Y será útil más adelante para definir la recursión. Supongamos que h : N N y g 1,..., g n : N N son funciones definidas por los términos H y G 1,... G n Λ, respectivamente, la composición e(x) = h(g 1 (x),..., g n (x)) se define con el término E E def λx. H(G 1 x)... (G n x). Supongamos que h : N N y g : N N N son funciones computables definidas por los términos H, G Λ. La función recursiva e : N N definida a partir de h y g se define por medio del término λ: E def Yλf. λx. (Cero x)(hx)(g(p x)(f(p x))) Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 58 / 69 Funciones recursivas en el cálculo lambda III Lenguaje de programación IMP Sea g : N N N una función computable definida por el término G Λ. La función e : N N definida por minimización a partir de g es el término E def λxµ[λy. Cero(Gxy)] Supongamos que ahora queremos definir la función suma del ejemplo anterior en términos de Λ. Entonces: H def λx 1. x 1 G def λz, x 1, x 2. S((λx 1, x 2, x 3. x 3 )zx 1 x 2 ) SUMA def Yλf. λx, y. (Cero x)(hy)(g(p x)y(f(p x)y)) Se trata de un CFL. Empezaremos con las expresiones aritméticas: A n X (A + A) (A A) (A A) donde n Z y X Loc. Tenemos ahora las expresiones booleanas EB: B V F (A = A) (A A) B (B B) (B B) donde A EA. Finalmente, los comandos del lenguaje se definen así: C ::= skip X := A (C ; C) (if B then C else C) (while B do C). donde A EA y B EB. Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 59 / 69 Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 60 / 69

16 Funciones recursivas y programas while I Funciones recursivas y programas while II Las funciones µ también son definibles por medio de programas de IMP. Sea f : N n N una función recursiva. El objeto es definir un programa P con al menos las localidades X 0,..., X n tal que [P ]σ(x 0 ) = f(σ(x 1 ),..., σ(x n )). Lo haremos por inducción en la funciones recursivas. P 0 def X 0 := 0 P S def X 0 := X 1 + 1; P π n i def X 0 := X i ; Sean P f y P g1,..., P gk los programas correspondientes a las funciones f : N k N y g 1,..., g k : N n N. Entonces, el programa correspondiente a h = f (g 1,..., g k ) es P h def P g1 ; Y 1 := X 0 ;... P gk ; Y k := X 0 ; X 1 := Y 1 ;... X k := Y k ; P f Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 61 / 69 Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 62 / 69 Funciones recursivas y programas while III Veamos ahora un caso restringido para la recursión primitiva. Supongamos que tenemos las funciones h : N N y g : N 3 N y a partir de ellas definimos la función f : N 2 N: Queremos un programa P f tal que f(0, x 1 ) = h(x 1 ) f(s(n), x 1 ) = g(n, x 1, f(n, x 1 )) [P f ]σ(x 0 ) = f(σ(z), σ(x 1 )). Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 63 / 69 Funciones recursivas y programas while IV Por hipótesis inductiva, suponemos la existencia de dos programas Entonces P f es el programa [P h ]σ(x 0 ) = h(σ(x 1 )) [P g ]σ(x 0 ) = g(σ(z), σ(x 1 ), σ(x 2 )) W := Z; Y 1 := X 1 ; % Guardamos los argumentos originales de f Y 0 := 0; % Usaremos a Y 0 como contador P h ; % Ejecutamos el programa del caso base while Y 0 < W do Z := Y 0 ; X 1 := Y 1 ; X 2 := X 0 ; P g Y 0 := Y Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 64 / 69

17 Funciones recursivas y programas while V Por ejemplo, si tenemos la función recursiva Funciones recursivas y programas while VI y entonces, el programa P suma tal que suma(0, x 1 ) = x 1 suma(s(n), x 1 ) = s(suma(n, x 1 )) aquí la función base h : N N se define como la proyección π 1 1 (x 1) = x 1 y la función g : N 3 N es s π 3 3 (n, x 1, x 2 ) = s(x 2 ). Los programas P h y P g tales que son: [P h ]σ(x 0 ) = π 1 1 (σ(x 1)) [P g ]σ(x 0 ) = s π 3 3 (σ(z), σ(x 1), σ(x 2 )) P h = X 0 := X 1 P g = X 0 := X queda así: W := Z; Y 1 := X 1 ; Y 0 := 0; P h ; while Y 0 < W do Z := Y 0 ; X 1 := Y 1 ; X 2 := X 0 ; P g ; Y 0 := Y [P suma ]σ(x 0 ) = suma(σ(z), σ(x 1 )) Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 65 / 69 Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 66 / 69 Máquinas de registros I Las máquinas de registros ilimitados (URM) son una abstracción del procesador central de una computadora. La memoria es como la del lenguaje IMP, pero las localidades se llaman registros: Reg = {R 1, R 2... } Los programas para URM se basan en unas cuantas instrucciones: Nombre Sintaxis Significado Cero Z(n) R n := 0 Sucesor S(n) R n := R n + 1 Transferencia T(n, m) R n := R m Salto J(n, m, k) si R n = R m entonces ve a la instrucción k-ésima; si no, continúa con la siguiente Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 67 / 69 Los registros guardan números naturales y los estados posibles son Σ = {σ : Reg N} Este programa calcula la suma de los números en R 1 y R 2. La tabla presenta el estado de la memoria después de cada instrucción: R 1 R 2 R J(2, 3, 5) S(1) S(3) J(1, 1, 1) Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 68 / 69

18 Funciones recursivas y URM Las funciones recursivas µ pueden calcularse por medio de URM de una manera muy similar a los programas en IMP: Las funciones cero, sucesor y proyecciones tienen una implementación muy simple. Para la composición de funciones hay que adoptar convenciones para guardar resultados parciales de funciones y presentar parámetros de manera similar a como se hizo con los programas IMP. Además, hay que reenumerar las direcciones referidas en la operación de salto, para evitar interferir en el código de otros programas. Finalmente, la recursión y la minimalización se manejan como se hizo con los ciclos while en IMP. Francisco Hernández Quiroz Teoría de la Computación Máq. de Turing y Mod. de Comp. 69 / 69

Entscheidungsproblem I TEORÍA DE LA COMPUTACIÓN MÁQUINAS DE TURING Y DECIDIBILIDAD. Máquinas de Turing (TM) Procedimiento efectivo

Entscheidungsproblem I TEORÍA DE LA COMPUTACIÓN MÁQUINAS DE TURING Y DECIDIBILIDAD. Máquinas de Turing (TM) Procedimiento efectivo Entscheidungsproblem I TEORÍA DE LA COMPUTACIÓN MÁQUINAS DE TURING Y DECIDIBILIDAD Francisco Hernández Quiroz Departamento de Matemáticas Facultad de Ciencias, UNAM E-mail: fhq@ciencias.unam.mx Página

Más detalles

Introducción a la indecidibilidad

Introducción a la indecidibilidad Introducción a la indecidibilidad José M. empere Departamento de istemas Informáticos y Computación Universidad Politécnica de Valencia Lenguajes y problemas Un problema será considerado cualquier cuestión

Más detalles

Introducción TEORÍA DE LA COMPUTACIÓN INTRODUCCIÓN. Lógica

Introducción TEORÍA DE LA COMPUTACIÓN INTRODUCCIÓN. Lógica Introducción TEORÍA DE LA COMPUTACIÓN INTRODUCCIÓN Francisco Hernández Quiroz Departamento de Matemáticas Facultad de Ciencias, UNAM E-mail: fhq@ciencias.unam.mx Página Web: www.matematicas.unam.mx/fhq

Más detalles

Problemas de Decisión

Problemas de Decisión Problemas de Decisión La motivación de este capítulo puede estar dado por lo siguiente: Dado un conjunto Σ de fórmulas proposicionales en L(P ), existe un algoritmo general para determinar si Σ = ϕ Qué

Más detalles

Departamento de Tecnologías de la Información. Tema 5. Decidibilidad. Ciencias de la Computación e Inteligencia Artificial

Departamento de Tecnologías de la Información. Tema 5. Decidibilidad. Ciencias de la Computación e Inteligencia Artificial Departamento de Tecnologías de la Información Tema 5 Decidibilidad Ciencias de la Computación e Inteligencia Artificial Índice 5.1 Lenguajes reconocibles y decidibles 5.2 Problemas decidibles sobre lenguajes

Más detalles

Inducción en definiciones y demostraciones AUTÓMATAS Y LENGUAJES FORMALES PRELIMINARES MATEMÁTICOS. Números naturales. Inducción matemática

Inducción en definiciones y demostraciones AUTÓMATAS Y LENGUAJES FORMALES PRELIMINARES MATEMÁTICOS. Números naturales. Inducción matemática Inducción en definiciones y demostraciones AUTÓMATAS Y LENGUAJES FORMALES PRELIMINARES MATEMÁTICOS Francisco Hernández Quiroz Departamento de Matemáticas Facultad de Ciencias, UNAM E-mail: fhq@ciencias.unam.mx

Más detalles

Computabilidad y Lenguajes Formales: Teoría de la Computabilidad: Máquinas de Turing

Computabilidad y Lenguajes Formales: Teoría de la Computabilidad: Máquinas de Turing 300CIG007 Computabilidad y Lenguajes Formales: Teoría de la Computabilidad: Máquinas de Turing Pontificia Universidad Javeriana Cali Ingenieria de Sistemas y Computación Prof. Gloria Inés Alvarez V. Máquina

Más detalles

Máquinas de Turing. 18 de junio de 2015

Máquinas de Turing. 18 de junio de 2015 Máquinas de Turing 18 de junio de 2015 1. Introducción Hasta ahora hemos visto clases de lenguajes relativamente simples. Lo que vamos a ver ahora es preguntarnos qué lenguajes pueden definirse por cualquier

Más detalles

Inducción en definiciones y demostraciones AUTÓMATAS Y LENGUAJES FORMALES PRELIMINARES MATEMÁTICOS. Números naturales. Inducción matemática

Inducción en definiciones y demostraciones AUTÓMATAS Y LENGUAJES FORMALES PRELIMINARES MATEMÁTICOS. Números naturales. Inducción matemática Inducción en definiciones y demostraciones AUTÓMATAS Y LENGUAJES FORMALES PRELIMINARES MATEMÁTICOS Francisco Hernández Quiroz Departamento de Matemáticas Facultad de Ciencias, UNAM E-mail: fhq@ciencias.unam.mx

Más detalles

Sintaxis LÓGICA COMPUTACIONAL CÁLCULO DE PROPOSICIONES. Funciones boolenas. Semántica

Sintaxis LÓGICA COMPUTACIONAL CÁLCULO DE PROPOSICIONES. Funciones boolenas. Semántica Proposiciones atómicas y compuestas Sintaxis LÓGICA COMPUTACIONAL CÁLCULO DE PROPOSICIONES Francisco Hernández Quiroz Departamento de Matemáticas Facultad de Ciencias, UNAM E-mail: fhq@cienciasunammx Página

Más detalles

MÁQUINAS DE TURING Y LENGUAJES ESTRUCTURADOS POR FRASES

MÁQUINAS DE TURING Y LENGUAJES ESTRUCTURADOS POR FRASES Máquinas de Turing y lenguajes estructurados por frases -1- MÁQUINAS DE TURING Y LENGUAJES ESTRUCTURADOS POR FRASES MÁQUINAS DE TURING - Son máquinas teóricas capaces de aceptar lenguajes generados por

Más detalles

Análisis lógico Cálculo de proposiciones

Análisis lógico Cálculo de proposiciones Sintaxis Semántica Sistemas de demostración Análisis lógico Cálculo de proposiciones Departamento de Matemáticas Facultad de Ciencias, UNAM E-mail: fhq@ciencias.unam.mx Página Web: www.matematicas.unam.mx/fhq

Más detalles

5. Propiedades de los Lenguajes Recursivamente Enumerables y de los Lenguajes Recursivos.

5. Propiedades de los Lenguajes Recursivamente Enumerables y de los Lenguajes Recursivos. 5. Propiedades de los Lenguajes Recursivamente Enumerables y de los Lenguajes Recursivos. 5.1 Esquemas de representación de áquinas de Turing. 5.2 Propiedades de cierre. 5.3 Codificación de áquinas de

Más detalles

Gramáticas independientes del contexto TEORÍA DE LA COMPUTACIÓN LENGUAJES INDEPENDIENTES DEL CONTEXTO Y AUTÓMATAS DE PILA. Otras definiciones I

Gramáticas independientes del contexto TEORÍA DE LA COMPUTACIÓN LENGUAJES INDEPENDIENTES DEL CONTEXTO Y AUTÓMATAS DE PILA. Otras definiciones I Gramáticas independientes del contexto TEORÍ DE L COMPUTCIÓN LENGUJES INDEPENDIENTES DEL CONTEXTO Y UTÓMTS DE PIL Francisco Hernández Quiroz Departamento de Matemáticas Facultad de Ciencias, UNM E-mail:

Más detalles

Tipos de datos en S. Lógica y Computabilidad. Codificación de variables y etiquetas de S. Codificación de programas en S

Tipos de datos en S. Lógica y Computabilidad. Codificación de variables y etiquetas de S. Codificación de programas en S Tipos de datos en S Lógica y Computabilidad Verano 2011 Departamento de Computación - FCEyN - UBA Computabilidad - clase 5 Codificación de programas, Halting problem, diagonalización, tesis de Church,

Más detalles

Curso Básico de Computación

Curso Básico de Computación Curso Básico de Computación 8 Indecibilidad Feliú Sagols Troncoso Matemáticas CINVESTAV-IPN 2010 Curso Básico de Computación (Matemáticas) 8 Indecibilidad 2010 1 / 58 8 Indecibilidad

Más detalles

Introducción. Máquinas de Turing. Turing restringidas. Turing y Computadoras INAOE (INAOE) 1 / 49

Introducción. Máquinas de Turing. Turing restringidas. Turing y Computadoras INAOE (INAOE) 1 / 49 y Computadoras INAOE (INAOE) 1 / 49 Contenido y Computadoras 1 2 3 4 y Computadoras (INAOE) 2 / 49 y Computadoras Hasta ahora hemos visto clases de lenguajes relativamente simples Lo que vamos a ver ahora

Más detalles

Máquinas de Turing Definición y descripción

Máquinas de Turing Definición y descripción Capítulo 12 Máquinas de Turing 12.1. Definición y descripción Definición 1 Se llama máquina de Turing a toda séptupla M = (Γ,Σ,,Q,q 0,f,F), donde: Γ es el alfabeto de símbolos de la cinta. Σ Γ es el alfabeto

Más detalles

Lenguajes de programación LÓGICA COMPUTACIONAL LENGUAJES DE PROGRAMACIÓN. Sintaxis y semántica formales. Lenguaje IMP

Lenguajes de programación LÓGICA COMPUTACIONAL LENGUAJES DE PROGRAMACIÓN. Sintaxis y semántica formales. Lenguaje IMP Lenguajes de programación LÓGICA COMPUTACIONAL LENGUAJES DE PROGRAMACIÓN Francisco Hernández Quiroz Departamento de Matemáticas Facultad de Ciencias, UNAM E-mail: fhq@ciencias.unam.mx Página Web: www.matematicas.unam.mx/fhq

Más detalles

Lenguajes de programación ANÁLISIS LÓGICO LENGUAJES DE PROGRAMACIÓN. Sintaxis y semántica formales. Lenguaje IMP

Lenguajes de programación ANÁLISIS LÓGICO LENGUAJES DE PROGRAMACIÓN. Sintaxis y semántica formales. Lenguaje IMP Lenguajes de programación ANÁLISIS LÓGICO LENGUAJES DE PROGRAMACIÓN Francisco Hernández Quiroz Departamento de Matemáticas Facultad de Ciencias, UNAM E-mail: fhq@ciencias.unam.mx Página Web: www.matematicas.unam.mx/fhq

Más detalles

Hacia las Gramáticas Propias II

Hacia las Gramáticas Propias II Hacia las Hacia las II Gramáticas sin Ciclos Universidad de Cantabria Outline Hacia las 1 Hacia las 2 3 Definición Hacia las Definición Diremos que una gramática libre de contexto G := (V, Σ, Q 0, P) es

Más detalles

Examen. Pontificia Universidad Católica de Chile Escuela de Ingeniería Departamento de Ciencia de la Computación. Segundo Semestre, 2003.

Examen. Pontificia Universidad Católica de Chile Escuela de Ingeniería Departamento de Ciencia de la Computación. Segundo Semestre, 2003. Pontificia Universidad Católica de Chile Escuela de Ingeniería Departamento de Ciencia de la Computación Examen IIC 2222 Teoría de Autómatas y Lenguajes Formales Segundo Semestre, 2003 Este examen tiene

Más detalles

Teorema de incompletitud de Gödel

Teorema de incompletitud de Gödel Teorema de incompletitud de Gödel Theorem (Gödel) Th(N) es una teoría indecidible. IIC2213 Teorías 79 / 109 Teorema de incompletitud de Gödel Theorem (Gödel) Th(N) es una teoría indecidible. Corolario

Más detalles

Lenguaje de programación S (Davis/Sigal/Weyuker) Lógica y Computabilidad. Ejemplo 1. Ejemplo 2

Lenguaje de programación S (Davis/Sigal/Weyuker) Lógica y Computabilidad. Ejemplo 1. Ejemplo 2 Lógica y Computabilidad Verano 2011 Departamento de Computación - FCEyN - UBA Computabilidad - clase 4 Lenguaje S, estado, descripción instantánea, cómputo, funciones parciales computables, minimización

Más detalles

Máquinas de Turing IIC3242. IIC3242 Máquinas de Turing 1 / 42

Máquinas de Turing IIC3242. IIC3242 Máquinas de Turing 1 / 42 Máquinas de Turing IIC3242 IIC3242 Máquinas de Turing 1 / 42 Complejidad Computacional Objetivo: Medir la complejidad computacional de un problema. Vale decir: Medir la cantidad de recursos computacionales

Más detalles

MÁQUINAS DE TURING CIENCIAS DE LA COMPUTACION I 2009

MÁQUINAS DE TURING CIENCIAS DE LA COMPUTACION I 2009 MÁQUINAS DE TURING Las máquinas de Turing, así como los AF y los AP se utilizan para aceptar cadenas de un lenguaje definidas sobre un alfabeto A. El modelo básico de máquina de Turing, tiene un mecanismo

Más detalles

Máquinas de estado finito y expresiones regulares

Máquinas de estado finito y expresiones regulares Capítulo 3 Máquinas de estado finito y expresiones regulares En este tema definiremos y estudiaremos máquinas de estado finito, llamadas también máquinas de estado finito secuenciales o autómatas finitos.

Más detalles

5 Autómatas de pila 5.1 Descripción informal. 5.2 Definiciones

5 Autómatas de pila 5.1 Descripción informal. 5.2 Definiciones 1 Curso Básico de Computación 5 Autómatas de pila 5.1 Descripción informal Un autómata de pila es esencialmente un autómata finito que controla una cinta de entrada provista de una cabeza de lectura y

Más detalles

13.3. MT para reconocer lenguajes

13.3. MT para reconocer lenguajes 13.3. MT para reconocer lenguajes Gramática equivalente a una MT Sea M=(Γ,Σ,,Q,q 0,f,F) una Máquina de Turing. L(M) es el lenguaje aceptado por la máquina M. A partir de M se puede crear una gramática

Más detalles

Máquinas de Turing IIC3242. IIC3242 Máquinas de Turing 1 / 45

Máquinas de Turing IIC3242. IIC3242 Máquinas de Turing 1 / 45 Máquinas de Turing IIC3242 IIC3242 Máquinas de Turing 1 / 45 Complejidad Computacional Objetivo: Medir la complejidad computacional de un problema. Vale decir: Medir la cantidad de recursos computacionales

Más detalles

Terminaremos el capítulo con una breve referencia a la teoría de cardinales.

Terminaremos el capítulo con una breve referencia a la teoría de cardinales. TEMA 5. CARDINALES 241 Tema 5. Cardinales Terminaremos el capítulo con una breve referencia a la teoría de cardinales. Definición A.5.1. Diremos que el conjunto X tiene el mismo cardinal que el conjunto

Más detalles

Lógica e hipercomputación. 25 de marzo de 2004

Lógica e hipercomputación. 25 de marzo de 2004 Lógica e hipercomputación Francisco Hernández Quiroz Departamento de Matemáticas Facultad de Ciencias, UNAM E-mail: fhq@fciencias.unam.mx Página Web: www.fciencias.unam.mx/ fhq/ 25 de marzo de 2004 1 2

Más detalles

La máquina de Turing

La máquina de Turing La máquina de Turing José M. Sempere Departamento de Sistemas Informáticos y Computación Universidad Politécnica de Valencia David Hilbert (1862, Rusia 1943, Alemania) Matemático que aportó diversos resultados

Más detalles

Gramáticas independientes del contexto AUTÓMATAS Y LENGUAJES FORMALES LENGUAJES INDEPENDIENTES DEL CONTEXTO Y AUTÓMATAS DE PILA. Otras definiciones I

Gramáticas independientes del contexto AUTÓMATAS Y LENGUAJES FORMALES LENGUAJES INDEPENDIENTES DEL CONTEXTO Y AUTÓMATAS DE PILA. Otras definiciones I Gramáticas independientes del contexto UTÓMTS Y LENGUJES FORMLES LENGUJES INDEPENDIENTES DEL CONTEXTO Y UTÓMTS DE PIL Francisco Hernández Quiroz Departamento de Matemáticas Facultad de Ciencias, UNM E-mail:

Más detalles

Capítulo V: CONJUNTOS RECURSIVAMENTE ENUMERABLES

Capítulo V: CONJUNTOS RECURSIVAMENTE ENUMERABLES Capítulo V: CONJUNTOS RECURSIVAMENTE ENUMERABLES Mario de J. Pérez Jiménez Grupo de investigación en Computación Natural Dpto. Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla

Más detalles

Tema 5: Programas Universales

Tema 5: Programas Universales Tema 5: Programas Universales Dpto. Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla Lógica y Computabilidad Curso 2006 07 LC, 2006 07 Programas universales 5.1 Procedimientos

Más detalles

a partir de otras funciones. Entonces C es la menor clase de funciones que contiene a las funciones básicas y es cerrada por los p. d.

a partir de otras funciones. Entonces C es la menor clase de funciones que contiene a las funciones básicas y es cerrada por los p. d. Tema 3: Funciones Primitivas Recursivas Caracterización de clases de funciones: Maneras básicas de definir una clase de funciones C: Descriptiva: C satisface ciertas propiedades. (Ejemplo: la clase GCOMP)

Más detalles

Propiedades de Lenguajes Regulares

Propiedades de Lenguajes Regulares de INAOE (INAOE) 1 / 44 Contenido 1 2 3 4 (INAOE) 2 / 44 Existen diferentes herramientas que se pueden utilizar sobre los lenguajes regulares: El lema de : cualquier lenguaje regular satisface el pumping

Más detalles

Introducción a la complejidad computacional

Introducción a la complejidad computacional Introducción a la complejidad computacional definida sobre anillos arbitrarios 18 de junio de 2016 Fuente: http://www.utmmcss.com/ Por qué otro modelo? Continuo vs discreto. Intuición interiorizada del

Más detalles

Autómatas Finitos Deterministicos (DFA)

Autómatas Finitos Deterministicos (DFA) Autómatas Finitos Deterministicos (DFA) Introducción a la Lógica Fa.M.A.F., Universidad Nacional de Córdoba 22//4 Info útil Bibliografía: Introducción a la teoría de autómatas, lenguajes y computación.

Más detalles

Autómatas Finitos Deterministicos (DFA)

Autómatas Finitos Deterministicos (DFA) Autómatas Finitos Deterministicos (DFA) Introducción a la Lógica y la Computación Fa.M.A.F., Universidad Nacional de Córdoba 26/0/6 Info útil Bibliografía: Introducción a la teoría de autómatas, lenguajes

Más detalles

Máquinas de Turing, programas y tesis de Turing-Church

Máquinas de Turing, programas y tesis de Turing-Church Máquinas de Turing, programas y tesis de Turing-Church Elvira Mayordomo, Universidad de Zaragoza Ilustraciones: Costas Busch, Rensselaer Polytechnic Institute 1 Máquinas de Turing 2 La jerarquía de lenguajes

Más detalles

Términos LÓGICA COMPUTACIONAL CÁLCULO DE PREDICADOS. Variables libres y ligadas. Fórmulas. Tenemos dos conjuntos básicos.

Términos LÓGICA COMPUTACIONAL CÁLCULO DE PREDICADOS. Variables libres y ligadas. Fórmulas. Tenemos dos conjuntos básicos. Términos LÓGICA COMPUTACIONAL CÁLCULO DE PREDICADOS Francisco Hernández Quiroz Departamento de Matemáticas Facultad de Ciencias, UNAM E-mail: fhq@ciencias.unam.mx Página Web: www.matematicas.unam.mx/fhq

Más detalles

Equivalencia Entre PDA y CFL

Equivalencia Entre PDA y CFL Equivalencia Entre PDA y CFL El Lenguaje aceptado por un Autómata con Pila Universidad de Cantabria Esquema 1 Introducción 2 3 Lenguaje Aceptado por un Autómata Como en los autómatas finitos, se puede

Más detalles

Demostración del problema del paro (Halting problem)

Demostración del problema del paro (Halting problem) Demostración del problema del paro (Halting problem) Introducción a las ciencias de la computación Antonio López Jaimes UNIVERSIDAD AUTÓNOMA METROPOLITANA UNIDAD IZTAPALAPA Definición del problema El problema

Más detalles

7 Máquina de Turing. 7.1 Introducción. 7.2 El modelo de la Máquina de Turing

7 Máquina de Turing. 7.1 Introducción. 7.2 El modelo de la Máquina de Turing 1 Curso Básico de Computación 7 Máquina de Turing Es este capítulo introducimos la Máquina de Turing que es, un modelo matemático simple de una computadora. 7.1 Introducción Hasta ahora no se ha podido

Más detalles

Análisis y Complejidad de Algoritmos. Completitud NP

Análisis y Complejidad de Algoritmos. Completitud NP Análisis y Complejidad de Algoritmos Completitud NP Arturo Díaz Pérez Sección de Computación Departamento de Ingeniería Eléctrica CINVESTAV-IPN Av. Instituto Politécnico Nacional No. 2508 Col. San Pedro

Más detalles

los lenguajes WHILE y LOOP X2 := X1; while X2 0 do X1 := X1 + 1; X2 := X2 1 od

los lenguajes WHILE y LOOP X2 := X1; while X2 0 do X1 := X1 + 1; X2 := X2 1 od los lenguajes WHILE y LOOP X2 := X1; while X2 0 do X1 := X1 + 1; X2 := X2 1 od índice de materias introducción histórica modelos de cálculo lenguajes WHILE y LOOP funciones µ-recursivas teorema de equivalencia

Más detalles

Teoría de Autómatas y Lenguajes Formales Equivalencia de Conjuntos Pruebas por Inducción

Teoría de Autómatas y Lenguajes Formales Equivalencia de Conjuntos Pruebas por Inducción y Lenguajes INAOE y (INAOE) 1 / 40 Contenido y 1 2 3 4 5 6 y (INAOE) 2 / 40 Objetivo General Proporcionar al estudiante los fundamentos de la teoría de autómatas así como los de lenguajes formales. También

Más detalles

Tema 6: Máquina de Turing

Tema 6: Máquina de Turing Tema 6: Máquina de Turing Departamento de Sistemas Informáticos y Computación http://www.dc.upv.es p.1/28 Tema 6: Máquina de Turing La Máquina de Turing. Máquinas de Turing como aceptores Otros modelos

Más detalles

Departamento de Tecnologías de la Información. Tema 6. Funciones recursivas. Ciencias de la Computación e Inteligencia Artificial

Departamento de Tecnologías de la Información. Tema 6. Funciones recursivas. Ciencias de la Computación e Inteligencia Artificial Departamento de Tecnologías de la Información Tema 6 Funciones recursivas Ciencias de la Computación e Inteligencia Artificial Índice 6.1 Funciones recursivas primitivas 6.2 Limitaciones de las funciones

Más detalles

Indice COMPUTABILIDAD Y COMPLEJIDAD. Introducción. Introducción

Indice COMPUTABILIDAD Y COMPLEJIDAD. Introducción. Introducción COMPUTABILIDAD Y COMPLEJIDAD Belén Pérez Lancho Dpto. Informática y Automática 12-Enero-2006 Computabilidad Introducción Modelos de computación Máquinas de Turing Funciones Recursivas Parciales Conclusiones

Más detalles

1. Programas y funciones computables

1. Programas y funciones computables Computabilidad 1 Índice 1. Programas y funciones computables 3 1.1. El lenguaje S........................................... 3 1.2. Programas de S......................................... 3 1.3. Macros...............................................

Más detalles

TIPOS DE GRAMATICAS JERARQUIAS DE CHOMSKY

TIPOS DE GRAMATICAS JERARQUIAS DE CHOMSKY TIPOS DE GRAMATICAS JERARQUIAS DE CHOMSKY Para el estudio de este tema es necesario analizar dos tipos de gramáticas de la clasificación de Chomsky, las regulares y las independientes de contexto, las

Más detalles

14/02/2017. TEMA 3: EL CUERPO DE LOS NUMEROS REALES Esp. Prof. Liliana N. Caputo

14/02/2017. TEMA 3: EL CUERPO DE LOS NUMEROS REALES Esp. Prof. Liliana N. Caputo TEMA 3: EL CUERPO DE LOS NUMEROS REALES Esp. Prof. Liliana N. Caputo Así como al estudiar conjuntos hablamos de la existencia de términos primitivos (que no se definen), para definir algunos conjuntos,

Más detalles

Números naturales y recursividad

Números naturales y recursividad Números naturales y recursividad Rafael F. Isaacs G. * Fecha: 12 de abril de 2004 Números naturales Cuál es el primer conjunto de números que estudiamos desde la escuela primaria? Se sabe que los números

Más detalles

Estructuras Algebraicas

Estructuras Algebraicas Tema 1 Estructuras Algebraicas Definición 1 Sea A un conjunto no vacío Una operación binaria (u operación interna) en A es una aplicación : A A A Es decir, tenemos una regla que a cada par de elementos

Más detalles

Procesadores de Lenguaje

Procesadores de Lenguaje Procesadores de Lenguaje Repaso TALF Cristina Tîrnăucă Dept. Matesco, Universidad de Cantabria Fac. Ciencias Ing. Informática Primavera de 2013 La Jerarquía de Chomsky Cuatro niveles de lenguajes formales

Más detalles

Problemas fáciles, difíciles e imposibles

Problemas fáciles, difíciles e imposibles Problemas fáciles, difíciles e imposibles La computadora lo resuelve todo? Santiago Figueira Departamento de Computación FCEyN, UBA Semana de la Computación 2015 1 Qué son los métodos efectivos? Intuitivamente

Más detalles

sup si A no es acotado.

sup si A no es acotado. Capítulo 6 Espacios completos 1. El teorema de Cantor En este capítulo estudiaremos más a fondo los espacios métricos completos. Lo primero que haremos es establecer la equivalencia entre completitud y

Más detalles

1 NOCIONES BÁSICAS SOBRE CONJUNTOS. SÍMBOLOS.

1 NOCIONES BÁSICAS SOBRE CONJUNTOS. SÍMBOLOS. UNIDAD 1.- CONCEPTOS REQUERIDOS CONJUNTOS. AXIOMAS DE PERTENENCIA, PARALELISMO, ORDEN Y PARTICIÓN. 1 NOCIONES BÁSICAS SOBRE CONJUNTOS. SÍMBOLOS. 1.1 Determinaciones de un conjunto. Un conjunto queda determinado

Más detalles

Departamento de Ingeniería Matemática - Universidad de Chile

Departamento de Ingeniería Matemática - Universidad de Chile Ingeniería Matemática FACULTAD DE CIENCIAS FÍSICAS Y MATEMÁTICAS UNIVERSIDAD DE CHILE Álgebra Lineal 08-2 SEMANA 7: ESPACIOS VECTORIALES 3.5. Generadores de un espacio vectorial Sea V un espacio vectorial

Más detalles

Las variedades lineales en un K-espacio vectorial V pueden definirse como sigue a partir de los subespacios de V.

Las variedades lineales en un K-espacio vectorial V pueden definirse como sigue a partir de los subespacios de V. Capítulo 9 Variedades lineales Al considerar los subespacios de R 2, vimos que éstos son el conjunto {(0, 0)}, el espacio R 2 y las rectas que pasan por el origen. Ahora, en algunos contextos, por ejemplo

Más detalles

Aplicaciones de las derivadas. El teorema del valor medio

Aplicaciones de las derivadas. El teorema del valor medio Aplicaciones de las derivadas. El teorema del valor medio Ya hemos hablado en un par de artículos anteriores del concepto de derivada y de su interpretación tanto desde el punto de vista geométrico como

Más detalles

Sistema Axiomático para el Cálculo Proposicional

Sistema Axiomático para el Cálculo Proposicional Sistema Axiomático para el Cálculo Proposicional Lógica Matemática José de Jesús Lavalle Martínez 12 de julio de 2011 Resumen Este documento es una traducción de partes de la sección 1.4 AN AXIOM SYSTEM

Más detalles

Departamento de Tecnologías de la Información. Tema 4. Máquinas de Turing. Ciencias de la Computación e Inteligencia Artificial

Departamento de Tecnologías de la Información. Tema 4. Máquinas de Turing. Ciencias de la Computación e Inteligencia Artificial Departamento de Tecnologías de la Información Tema 4 Máquinas de Turing Ciencias de la Computación e Inteligencia Artificial Índice 4.1 Límites de los autómatas 4.2 Definición de Máquina de Turing 4.3

Más detalles

Apuntes de Lógica Matemática I

Apuntes de Lógica Matemática I Apuntes de Lógica Matemática I Héctor Olvera Vital 1. Primeras definiciones Definición 1 Un alfabeto A es un conjunto de símbolos. Definición 2 Una expresión del alfabeto A es una sucesión finita de símbolos

Más detalles

Conjuntos. Un conjunto es una colección de objetos. Si a es un objeto y R es un conjunto entonces por. a R. se entiende que a pertenece a R.

Conjuntos. Un conjunto es una colección de objetos. Si a es un objeto y R es un conjunto entonces por. a R. se entiende que a pertenece a R. Conjuntos Un conjunto es una colección de objetos. Si a es un objeto y R es un conjunto entonces por se entiende que a pertenece a R. a R Normalmente, podremos definir a un conjunto de dos maneras: Por

Más detalles

Introducción a la Lógica y la Computación

Introducción a la Lógica y la Computación Introducción a la Lógica y la Computación Parte III: Lenguajes y Autómatas Clase del 4 de Noviembre de 2015 Parte III: Lenguajes y Autómatas Introducción a la Lógica y la Computación 1/21 Lenguajes Formales

Más detalles

Unidad 4. Autómatas de Pila

Unidad 4. Autómatas de Pila Unidad 4. Autómatas de Pila Una de las limitaciones de los AF es que no pueden reconocer el lenguaje {0 n 1 n } debido a que no se puede registrar para todo n con un número finito de estados. Otro lenguaje

Más detalles

Teoría de la Computación Lenguajes Regulares (LR) - Propiedades

Teoría de la Computación Lenguajes Regulares (LR) - Propiedades Teoría de la Computación Lenguajes Regulares (LR) - Propiedades Prof. Hilda Y. Contreras Departamento de Computación hyelitza@ula.ve http://webdelprofesor.ula.ve/ingenieria/hyelitza Objetivo Lenguajes

Más detalles

Teorema de Lagrange. En esta sección demostramos algunos hechos básicos sobre grupos, que se pueden deducir de la definición

Teorema de Lagrange. En esta sección demostramos algunos hechos básicos sobre grupos, que se pueden deducir de la definición Teorema de Lagrange Capítulo 3 3.1 Introducción En este capítulo estudiaremos uno de los teoremas más importantes de toda la teoría de grupos como lo es el Teorema de Lagrange. Daremos en primer lugar

Más detalles

3 Propiedades de los conjuntos regulares 3.1 Lema de Bombeo para conjuntos regulares

3 Propiedades de los conjuntos regulares 3.1 Lema de Bombeo para conjuntos regulares Curso Básico de Computación 3 Propiedades de los conjuntos regulares 3. Lema de Bombeo para conjuntos regulares El lema de bombeo es una herramienta poderosa para probar que ciertos lenguajes son no regulares.

Más detalles

Problemas indecidibles

Problemas indecidibles Capítulo 7 Problemas indecidibles 71 Codificación de máquinas de Turing Toda MT se puede codificar como una secuencia finita de ceros y unos En esta sección presentaremos una codificación válida para todas

Más detalles

autómatas finitos y lenguajes regulares LENGUAJES FORMALES Y

autómatas finitos y lenguajes regulares LENGUAJES FORMALES Y CONTENIDO Reconocedores [HMU2.1]. Traductores [C8]. Diagramas de Estado [HMU2.1]. Equivalencia entre AF deterministas y no deterministas [HMU2.2-2.3]. Expresiones [HMU3]. Propiedades de [HMU4]. Relación

Más detalles

Autómatas Finitos INAOE. Introducción a. Autómatas. Definición formal de un. Finito Determinístico. Finito No- Finitos y Lenguajes Formales

Autómatas Finitos INAOE. Introducción a. Autómatas. Definición formal de un. Finito Determinístico. Finito No- Finitos y Lenguajes Formales los s s s s INAOE (INAOE) 1 / 58 Contenido los s s 1 los s 2 3 4 s 5 (INAOE) 2 / 58 los s los s los s s : Conjunto de estados + Control Cambio de estados en respuesta a una entrada. Tipo de Control: :

Más detalles

Problemas computacionales, intratabilidad y problemas NP completos. Febrero Facultad de Ingeniería. Universidad del Valle

Problemas computacionales, intratabilidad y problemas NP completos. Febrero Facultad de Ingeniería. Universidad del Valle Complejidad Complejidad, in NP completos Facultad de Ingeniería. Universidad del Valle Febrero 2017 Contenido Complejidad 1 2 3 Complejidad computacional Complejidad Introducción En ciencias de la computación

Más detalles

8.1 Indecibilidad 8.5 Indecibilidad en el problema de la correspondencia de Post

8.1 Indecibilidad 8.5 Indecibilidad en el problema de la correspondencia de Post 1 Curso Básico de Computación 8.1 Indecibilidad 8.5 Indecibilidad en el problema de la correspondencia de Post Los problemas indecidibles aparecen en varias áreas. En las próximas tres secciones se analizarán

Más detalles

Análisis asintótico de algoritmos

Análisis asintótico de algoritmos Algoritmos y problemas Análisis asintótico de algoritmos! Cada algoritmo resuelve a un problema particular! Hay varias maneras de resolver un problema! Algunas maneras son buenas y otras son malas! El

Más detalles

Unidad 4. Autómatas de Pila

Unidad 4. Autómatas de Pila Unidad 4. Autómatas de Pila Una de las limitaciones de los AF es que no pueden reconocer el lenguaje {0n1n} debido a que no se puede registrar para todo n con un número finito de estados. Otro lenguaje

Más detalles

CIENCIAS FORMALES CIENCIAS FÁCTICAS

CIENCIAS FORMALES CIENCIAS FÁCTICAS UNA CLASIFICACIÓN DE LAS CIENCIAS CIENCIAS FORMALES CIENCIAS FÁCTICAS CIENCIAS FORMALES MATEMÁTICA LÓGICA CIENCIAS FÁCTICAS FÍSICA BIOLOGÍA QUÍMICA CIENCIAS SOCIALES OTRAS CIENCIAS FORMALES VOCABULARIO

Más detalles

Lenguaje Regular. Sumario. Lenguaje Regular. Autómatas y Lenguajes Formales. Capítulo 8: Propiedades de los Lenguajes Regulares

Lenguaje Regular. Sumario. Lenguaje Regular. Autómatas y Lenguajes Formales. Capítulo 8: Propiedades de los Lenguajes Regulares Lenguaje Regular Capítulo 8: Propiedades de los Lenguajes Regulares José Miguel Buenaposada Josemiguel.buenaposada@urjc.es Definición 1 (Lenguaje Regular) Un lenguaje L se denomina regular si y sólo si

Más detalles

1. Conjuntos y funciones

1. Conjuntos y funciones Centro de Matemática Facultad de Ciencias Universidad de la República Introducción a la Topología Curso 2016 PRACTICO 1: CONJUNTOS. 1 1. Conjuntos y funciones Ejercicio 1. Si I es un conjunto y A α es

Más detalles

diám A = x,y A d(x,y) si A es acotado si A no es acotado. {d(x,y) : x,y A}

diám A = x,y A d(x,y) si A es acotado si A no es acotado. {d(x,y) : x,y A} Capítulo 6 Teoría de Baire 1. El teorema de Cantor En este capítulo estudiaremos más a fondo los espacios métricos completos. Lo primero que haremos es establecer la equivalencia entre completitud y la

Más detalles

Ciencias de la Computación I

Ciencias de la Computación I Ciencias de la Computación I Autómatas Linealmente Acotados Máquinas de Turing Motivación - Es posible diseñar un AP que reconozca el lenguaje L 1? L 1 = { a n b n c n / n > 0 } Ejemplo una estrategia

Más detalles

Modelos de Informática Teórica Capítulo 2 - Clases de Complejidad

Modelos de Informática Teórica Capítulo 2 - Clases de Complejidad Modelos de Informática TeóricaCapítulo 2 - Clases de Complejidad p. 1/40 Modelos de Informática Teórica Capítulo 2 - Clases de Complejidad Serafín Moral Callejón Departamento de Ciencias de la Computación

Más detalles

Formulaciones equivalentes del Axioma de Elección

Formulaciones equivalentes del Axioma de Elección Formulaciones equivalentes del Axioma de Elección MARU SARAZOLA Resumen En este documento presentamos algunas formulaciones equivalentes del axioma de elección. En la primera sección, se presenta el enunciado

Más detalles

Bases Formales de la Computación

Bases Formales de la Computación Bases Formales de la Computación Pontificia Universidad Javeriana 12 de septiembre de 2008 CÁLCULOS DE PROCESOS Contenido 1 2 Sistemas Concurrentes Múltiples agentes (procesos) que interactuan entre ellos.

Más detalles

ALGEBRA y ALGEBRA LINEAL. Primer Semestre CAPITULO I LOGICA Y CONJUNTOS.

ALGEBRA y ALGEBRA LINEAL. Primer Semestre CAPITULO I LOGICA Y CONJUNTOS. ALGEBRA y ALGEBRA LINEAL 520142 Primer Semestre CAPITULO I LOGICA Y CONJUNTOS. DEPARTAMENTO DE INGENIERIA MATEMATICA Facultad de Ciencias Físicas y Matemáticas Universidad de Concepción 1 La lógica es

Más detalles

Tema 5: Procedimientos para obtener funciones computables

Tema 5: Procedimientos para obtener funciones computables Tema 5: Procedimientos para obtener funciones computables Dpto. Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla Lógica y Computabilidad Curso 2010 11 LC, 2010 11 Procedimientos

Más detalles

Estructuras Discretas. Conjuntos. Conjuntos & Funciones. Especificación de Conjuntos.

Estructuras Discretas. Conjuntos. Conjuntos & Funciones. Especificación de Conjuntos. Estructuras Discretas Conjuntos Conjuntos & Funciones Claudio Lobos clobos@inf.utfsm.cl niversidad Técnica Federico Santa María Estructuras Discretas INF 152 Definición: conjunto n conjunto es una colección

Más detalles

Nuestro objetivo es demostrar que autómata = lógica Qué significa esto? Queremos encontrar una lógica que defina a los lenguajes regulares

Nuestro objetivo es demostrar que autómata = lógica Qué significa esto? Queremos encontrar una lógica que defina a los lenguajes regulares Autómata = Lógica Nuestro objetivo es demostrar que autómata = lógica Qué significa esto? Queremos encontrar una lógica que defina a los lenguajes regulares Pero antes: Vamos a hacer un breve repaso sobre

Más detalles

Lógica - Conjuntos inductivos

Lógica - Conjuntos inductivos Lógica - Conjuntos inductivos Matemática discreta y Lógica I Mayo de 2017 Las transparencias son tomadas del curso de Lógica del instituto de computación de Facultad de Ingeniería. Inducción - Plan Conjuntos

Más detalles

Curso Básico de Computación

Curso Básico de Computación Curso Básico de Computación 8.1 Indecibilidad Feliú Sagols Troncoso Matemáticas CINVESTAV-IPN 2010 Curso Básico de Computación (Matemáticas) 8.1 Indecibilidad 2010 1 / 96 8.5

Más detalles

Cardinalidad IIC1253. IIC1253 Cardinalidad 1 / 23

Cardinalidad IIC1253. IIC1253 Cardinalidad 1 / 23 Cardinalidad IIC1253 IIC1253 Cardinalidad 1 / 23 Conjuntos con la misma cardinalidad Definición Decimos que dos conjuntos A y B son equinumerosos, denotado como A B, si existe una biyección f : A B. IIC1253

Más detalles

Cardinalidad IIC1253. IIC1253 Cardinalidad 1 / 23

Cardinalidad IIC1253. IIC1253 Cardinalidad 1 / 23 Cardinalidad IIC1253 IIC1253 Cardinalidad 1 / 23 Conjuntos con la misma cardinalidad Definición Decimos que dos conjuntos A y B son equinumerosos, denotado como A B, si existe una biyección f : A B. Ejemplo

Más detalles

Tema 1: El cuerpo de los números reales

Tema 1: El cuerpo de los números reales Una definición axiomática debe ser: tal que: Tema 1: El cuerpo de los números reales - Ningún axioma se debe deducir o demostrar de otro anterior - Han de ser los mínimos para demostrar una teoría Axiomas

Más detalles

Memo Garro. A n F. n=1

Memo Garro. A n F. n=1 σ-álgebra Memo Garro Introducción En este apunte estudiaremos el concepto de σ-álgebra, como un tipo especial de familia de subconjuntos de un espacio Ω, aunque todavía desde un punto de vista puramente

Más detalles

El Autómata con Pila: Transiciones

El Autómata con Pila: Transiciones El Autómata con Pila: Transiciones El Espacio de Configuraciones Universidad de Cantabria Esquema Introducción 1 Introducción 2 3 Transiciones Necesitamos ahora definir, paso por paso, como se comporta

Más detalles

Teoría de Lenguajes. Clase Teórica 7 Autómatas de Pila y Lenguajes Independientes del Contexto Primer cuartimestre 2014

Teoría de Lenguajes. Clase Teórica 7 Autómatas de Pila y Lenguajes Independientes del Contexto Primer cuartimestre 2014 Teoría de Lenguajes Clase Teórica 7 Autómatas de Pila y Lenguajes Independientes del Contexto Primer cuartimestre 2014 aterial compilado por el Profesor Julio Jacobo, a lo largo de distintas ediciones

Más detalles