Fundamentos de Ciencias de la Computación

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

Download "Fundamentos de Ciencias de la Computación"

Transcripción

1 Fundamentos de Ciencias de la Computación Clase 16: Problema de Primer Cuatrimestre de 2005 Departamento de Cs. e Ing. de la Computación Universidad Nacional del Sur Bahía Blanca, Argentina Un problema de decisión de especial importancia es el problema de detención de la máquina de Turing (Halting Problem) Problema de Detención de MT (The Halting Problem): Dada una MT T y una cadena α, existe un algoritmo para decidir si T se detendrá comenzando en el estado inicial con α en la cinta? Problema Insoluble! 1 2 Alan Turing, a fines de 1930, enunció demostró que este problema es. Teorema: El problema de de la máquina de Turing no es algorítmicamente soluble. y... # α #... MT T Algoritmo DetenciónMT Dato de Entrada: T, α Dato de Salida: Estado Comienzo... Devolver Estado con valor se detiene o cicla Fin Resultados auxiliares a utilizar: Si L es recursivo, entonces su complemento también lo es Turing ha demostrado que este algoritmo NO EXISTE 3 4 En un lenguaje de alto nivel (ej: Pascal) podríamos escribir un simulador de máquinas de Turing. Dada una MT T y una cadena α, podrán ocurrir tres situaciones 1. El cómputo de T es exitoso; el simulador dará como salida el resultado de la evaluación y se detendrá. 2. T no puede computar el valor para α, y se detendrá (ej: imprimiendo un mensaje). 3. T no se detiene y cicla. El simulador también lo hará. He aquí donde el problema de la detención se hace presente! Supongamos que el problema es soluble, y el procedimiento EjecYSiempreParar(P,E,Res) recibe una MT P y una entrada E, y simula P sobre E. Si P se detiene con la entrada E, devuelve Sí. Si P entra en ciclo infinito, retorna No. P es una descripción codificada de una Máquina de Turing 5 6

2 En particular, si la entrada es la misma descripción, es válido invocar a: EjecYSiempreParar(P,P,Res) En este caso nos dice si la MT P se detiene o no comenzando con la cadena P en la cinta. Consideremos el siguiente algoritmo, que cicla infinitamente en un caso en particular... Procedure Diagonal(X): EjecYSiempreParar(X,X,Res) El procedimiento Diagonal para sssi EjecYSiempreParar responde No (X cicla) El procedimiento Diagonal cicla infinitamente sssi EjecySiempreParar responde Si (X se detiene) 7 8 Procedure Diagonal(X): EjecYSiempreParar(X,X,Res) Diagonal se detiene si X cicla Diagonal cicla infinitamente si X se detiene 9 Qué pasa si ejecutamos Diagonal(Diagonal)? Procedure Diagonal(Diagonal): EjecYSiempreParar(Diagonal,Diagonal, Res) El procedimiento Diagonal para sssi EjecYSiempreParar responde No (Diagonal cicla) El procedimiento Diagonal cicla infinitamente sssi EjecySiempreParar responde Si (Diagonal se detiene) 10 Qué pasa si ejecutamos Diagonal(Diagonal)? Procedure Diagonal(Diagonal): EjecYSiempreParar(Diagonal,Diagonal, Res) Diagonal se detiene si Diagonal cicla Diagonal cicla si Diagonal se detiene Esto es absurdo, y proviene de asumir que existe el algoritmo para resolver el problema de la detención. Luego el problema de la detencion es. 11 Formalizando la intuición de Turing Sea el lenguaje H={ Mw la máquina de Turing M se detiene sobre el input w}. H es recursivo enumerable (pues la MUT justamente se detiene cuando w es aceptado por M). Será H recursivo? Si lo fuera, existiría una MT M 0 que decide si M se detiene al procesar w (esta máquina M 0 resolvería el problema de la detención). Si H es recursivo, ent. el lenguaje H 1 ={ M la MT M para sobre el input M} también lo es. 12

3 Si H 1 ={ M la máquina de Turing M para sobre el input M} es recursivo también lo es su complemento CH 1 (por teorema antes visto): CH 1 ={w o bien w no codifica una MT, o bien w=cod(m) tal que w L(M)}. Casualmente, el lenguaje CH 1 es análogo a nuestro procedimiento Diagonal, y el último paso de nuestra prueba.... Puede CH 1 ser recursivo? 13 Supongamos que hubiera solución para el problema de Puedo definir un lenguaje recursivo H={ Mw M para con input w}. El lenguaje H 1 H, con H 1 ={ M M para con input M} también sería recursivo... El complemento de H 1 es CH 1 = Σ* - H 1. CH 1 ={w o bien w no codifica una MT, o bien w=cod(m) tal que w L(M)}. Si H 1 es recursivo, entonces CH 1 debería serlo (por propiedad) 14 CH 1 ={w w no codifica una MT, o bien w=cod(m) tal que la MT M no se detiene con input w}. Puede CH 1 ser recursivo? Veamos que CH 1 no es recursivo, ni siquiera r.e.! Supongamos que M* es una MT que hace que CH 1 sea r.e. M* para si w CH 1, M* no necesariamente para si w CH 1 Entonces Cod(M*) CH 1? Cod(M*) CH 1? Por def. de CH 1, Cod(M*) CH 1 sssi M* no acepta Cod(M*). Por def. de r.e., si M* la aplicamos a Cod(M*), se tiene que Cod(M*) CH 1 sssi M* acepta Cod(M*). Este absurdo partió de suponer que M 0 existe. Luego M 0 no existe, y el problema de es Funciones Recursivas Parciales y Maq. de Turing Funciones Turing- Computable Problema de la Detención Funciones Recursivas Parciales Función de Inmortalidad (Ver Apunte) Existe un equivalente al problema de en todos los formalismos equivalentes mencionados en la teoría. 17 Reducibilidad: PD1 PD2 - Repaso Dados dos problemas de decisión PD1 y PD2, diremos que PD1 se reduce a PD2 si un algoritmo usado para solucionar PD2 puede usarse para construir la solución para PD1 (notación PD1 PD2). ***#...#*** PD1 PD2 ***#...#*** 18

4 Reducibilidad: PD1 PD2 - Repaso Formalmente: PD1 PD2 si MT M que toma como entrada una codificación de una instancia I 1 D 1 de PD1 y devuelve I 2 D 2, instancia de PD2, tq. si I 1 SI 1 ent. I 2 SI 2 y si I 1 NO 1 ent. I 2 NO 2 Teorema de Reducibilidad - Repaso Teorema: Sean PD1 y PD2 prob. de decisión: (1) Si PD1 PD2, y PD2 es soluble, ent. PD1 también es soluble. (2) Si PD1 PD2, y PD1 es, ent. PD2 también es. ***#I 1 #** ***#I 2 #** ***#R#** PD1 PD2 soluble soluble Corolario del Teorema Anterior Corolario: Sea PDet = problema de de la Máquina de Turing, y sea P i un problema de decisión arbitrario. Entonces si PDet P i, entonces el problema P i es. Este resultado será de utilidad para resolver distintos problemas de decisión. Prob. Detención con Cinta en Blanco P Blanco : Dada una MT T, existe un algoritmo para decidir si T se detiene comenzando con la cinta en blanco? T se detiene sobre la cinta en blanco?... # #... MT T Es este problema soluble? Prob. Detención con Cinta en Blanco Supongamos que es soluble... Dada esta situación: **#T#** Podemos decidir si se detiene sobre α Prob. Detención para Impresión P Print : existe un algoritmo para decidir si una MT T Print se detiene tras escribir s habiendo comenzado con una cadena α sobre la cinta? Probaremos que PDet P Print y por ser PDet, también lo es P Print **#T#α#** ***#T b #*** T T Absurdo, pues el problema de es Luego P Blanco es # α #... MT T Print... # s α #... T Print se detiene 24

5 Prob. Detención para Impresión Supongamos que es soluble... Dada esta situación: *#T#α#s#* *#T#α#* Podemos decidir si T se detiene tras escribir s, comenzando con α en la cinta *#T #α#s#* Absurdo, pues el problema de es Luego P Print es Síntesis demostración por reducibilidad Para demostrar que un problema es : 1. Suponer que el problema es soluble. 2. Tomar un problema que ya se conozca, o pueda demostrarse,, para plantear la reducción. 3. Es importante recordar que debe reducirse el problema elegido en el punto 2 al problema que supusimos soluble (demostración por el absurdo) 4. Demostrar la reducción. No olvidar la conclusión de la demostación. T hace lo mismo que T, pero imprime s antes de detenerse

Reducibilidad. Se dice que f es computable si existe una MT que la computa y que siempre se detiene. f(w)

Reducibilidad. Se dice que f es computable si existe una MT que la computa y que siempre se detiene. f(w) Reducibilidad Def: Sean L 1, L 2 Σ se dirá que L 1 se reduce a L 2 (L 1 α L 2 ) si existe una función total computable (o recursiva) f: Σ Σ tal que Σ, L 1 f() L 2 Σ Σ L 1 L 1 f() f( ) Se dice que f es

Más detalles

Problemas Insolubles Ejemplos

Problemas Insolubles Ejemplos Problemas Insolubles Ejemplos A continuación enunciaremos una serie de problemas y demostraremos, mediante la técnica de reducibilidad, que los mismos son indecidibles (no solubles a través de una máquina

Más detalles

Ciencias de la Computación I

Ciencias de la Computación I Ciencias de la Computación I Nociones básicas de Computabilidad Problemas y Lenguajes Un problema se describe con un lenguaje Cuanto más formal el lenguaje, más precisa la formulación del problema Los

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

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

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

Entscheidungsproblem I LENGUAJES RECURSIVAMENTE ENUMERABLES MÁQUINAS DE TURING. DECIDIBILIDAD. Máquinas de Turing (TM) Procedimiento efectivo

Entscheidungsproblem I LENGUAJES RECURSIVAMENTE ENUMERABLES MÁQUINAS DE TURING. DECIDIBILIDAD. Máquinas de Turing (TM) Procedimiento efectivo Entscheidungsproblem I LENGUAJES RECURSIVAMENTE ENUMERABLES MÁQUINAS DE TURING. DECIDIBILIDAD Francisco Hernández Quiroz Departamento de Matemáticas Facultad de Ciencias, UNAM E-mail: fhq@ciencias.unam.mx

Más detalles

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

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

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

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

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

Computabilidad y Lenguajes Formales: Teoría de la Computabilidad: Reducibilidad

Computabilidad y Lenguajes Formales: Teoría de la Computabilidad: Reducibilidad 300CIG007 Computabilidad y Lenguajes Formales: Teoría de la Computabilidad: Reducibilidad Pontificia niversidad Javeriana Cali Ingenieria de Sistemas y Computación Prof. Gloria Inés Alvarez V. Reducibilidad

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

Teoría de la Computabilidad

Teoría de la Computabilidad MT para computar funciones Teoría de la Computabilidad Módulo 9: Máquinas de Turing para Computar Funciones Extensiones de las Máquinas de Turing Departamento de Cs. e Ing. de la Computación Universidad

Más detalles

Computabilidad y Lenguajes Formales: Teoría de la Computabilidad: Decidibilidad

Computabilidad y Lenguajes Formales: Teoría de la Computabilidad: Decidibilidad 300CIG007 Computabilidad y Lenguajes Formales: Teoría de la Computabilidad: Decidibilidad Pontificia Universidad Javeriana Cali Ingenieria de Sistemas y Computación Prof. Gloria Inés Alvarez V. Lo indecidible

Más detalles

1 De niciones básicas

1 De niciones básicas Universidad Simón Bolívar Dpto. de Computación y Tecnología de la Información CI3721 - Traductores e Interpretadores Abril-Julio 2008 Profesor Luis astorga Apuntes sobre problemas de decisión y reducción

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

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

Problemas recursivamente enumerables

Problemas recursivamente enumerables Problemas recursivamente enumerables Definición Un problema L es recursivamente enumerable si existe una máquina de Turing M tal que L = L(M). Nótese que M en la definición no necesariamente se detiene

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

TRADUCTORES E INTERPRETADORES

TRADUCTORES E INTERPRETADORES TRADUCTORES E INTERPRETADORES Clase 15: Tipos de Máquinas de Turing Agenda Reconocedores vs. Decididores Computadores Enumeradores Agenda Reconocedores vs. Decididores Computadores Enumeradores No existe

Más detalles

Problemas recursivamente enumerables

Problemas recursivamente enumerables Problemas recursivamente enumerables Definición Un problema L es recursivamente enumerable si existe una máquina de Turing M tal que L = L(M). Nótese que M en la definición no necesariamente se detiene

Más detalles

Modelos Avanzados de Computación

Modelos Avanzados de Computación UNIVERSIDAD DE GRANADA Departamento de Ciencias de la Computación e Inteligencia Artificial Modelos Avanzados de Computación Práctica 2 Máquinas de Turing Curso 2014-2015 Doble Grado en Ingeniería Informá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

8 Indecibilidad. 8.1 Problemas

8 Indecibilidad. 8.1 Problemas Curso Básico de Computación 8 Indecibilidad Ahora se considera la clase de lenguajes recursivos y recursivamente enumerables. El aspecto más interesante de este estudio trata de lenguajes cuyas cadenas

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

Cardinalidad. Pablo Verdes. 9 de marzo de 2016 LCC. Pablo Verdes (LCC) Cardinalidad 9 de marzo de / 18

Cardinalidad. Pablo Verdes. 9 de marzo de 2016 LCC. Pablo Verdes (LCC) Cardinalidad 9 de marzo de / 18 Cardinalidad Pablo Verdes LCC 9 de marzo de 2016 Pablo Verdes (LCC) Cardinalidad 9 de marzo de 2016 1 / 18 Por qué estudiamos cardinalidad? Recordemos nuestro objetivo: modelar el proceso de cálculo. Cuál

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

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

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

Clases de complejidad computacional: P y NP

Clases de complejidad computacional: P y NP 1er cuatrimestre 2006 La teoría de Se aplica a problemas de decisión, o sea problemas que tienen como respuesta SI o NO (aunque es sencillo ver que sus implicancias pueden extenderse a problemas de optimización).

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

Teorías. Una teoría acerca de una base de conocimiento Σ contendrá no sólo a Σ sino que a todo lo que se puede deducir de Σ.

Teorías. Una teoría acerca de una base de conocimiento Σ contendrá no sólo a Σ sino que a todo lo que se puede deducir de Σ. Teorías Qué es una teoría? Ya hemos usado antes la noción de base de conocimiento Este concepto se refiere a un conocimiento, representado a través de axiomas. Una teoría acerca de una base de conocimiento

Más detalles

Si L es recursivo, entonces es recursivamente numerable

Si L es recursivo, entonces es recursivamente numerable Si L es recursivo, entonces es recursivamente numerable Slide 19 program GeneraRec (output); procedure sgte (var x: string); (* calcula la siguiente x en el orden natural *) begin... end; var x: string;

Más detalles

CLASES DE PROBLEMAS. 1) Introducción 2) Problemas de decisión, Lenguajes, Codificación. y la clase NP-Completa. 6) Otras clases de problemas NP-

CLASES DE PROBLEMAS. 1) Introducción 2) Problemas de decisión, Lenguajes, Codificación. y la clase NP-Completa. 6) Otras clases de problemas NP- CLASES DE PROBLEMAS 1) Introducción 2) Problemas de decisión, Lenguajes, Codificación. y la clase NP-Completa. 6) Otras clases de problemas Computers and Intractability NP- guide to the theory of 1. Introducción:

Más detalles

Fundamentos de Ciencias de la Computación

Fundamentos de Ciencias de la Computación Fundamentos de Ciencias de la Computación Lenguajes APND Clase 13: Introducción Maquinas de Turing Lenguajes regulares Lenguajes Libres de Contexto Primer Cuatrimestre de 2005 Departamento de Cs. e Ing.

Más detalles

1) Diga si los siguientes problemas son resolubles o no. Debe demostrar formalmente su respuesta.

1) Diga si los siguientes problemas son resolubles o no. Debe demostrar formalmente su respuesta. Relación de ejercicios de calculabilidad 1) Diga si los siguientes problemas son resolubles o no. Debe demostrar formalmente su respuesta. a) Dado un programa Q=(n,p,codigo), una entrada x N n y un número

Más detalles

Teoría Matemática de la Computación Segundo Problemario Prof. Miguel A. Pizaña 13 de julio de 2016

Teoría Matemática de la Computación Segundo Problemario Prof. Miguel A. Pizaña 13 de julio de 2016 Teoría Matemática de la Computación Segundo Problemario Prof. Miguel A. Pizaña 13 de julio de 2016 I Máquinas de Turing. 1. Qué es un a Máquina de Turing? Cómo se define? Cómo se llaman las teorías que

Más detalles

Computabilidad y aleatoriedad

Computabilidad y aleatoriedad Computabilidad y aleatoriedad Santiago Figueira Grupo de Investigación en Lógica y Computabilidad Departamento de Computación Facultad de Ciencias Exactas y Naturales Universidad de Buenos Aires VI Jornadas

Más detalles

Curso: Teoría de la Computación. Unidad 2, Sesión 7: Complejidad computacional

Curso: Teoría de la Computación. Unidad 2, Sesión 7: Complejidad computacional Curso: Teoría de la Computación. Unidad 2, Sesión 7: Complejidad computacional Instituto de Computación, Facultad de Ingeniería Universidad de la República, Montevideo, Uruguay dictado semestre 2-2009

Más detalles

Teoría de la Computabilidad

Teoría de la Computabilidad Teoría de la Computabilidad Módulo 7: Lenguajes sensibles al contexto 2016 Departamento de Cs. e Ing. de la Computación Universidad Nacional del Sur Bahía Blanca, Argentina Es este programa en Pascal sintácticamente

Más detalles

PRACTICA 10: Máquinas de Turing

PRACTICA 10: Máquinas de Turing ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA INFORMÁTICA Departamento de Estadística, I.O. y Computación Teoría de Autómatas y Lenguajes Formales PRACTICA 10: Máquinas de Turing 10.1. Introducción La clase de

Más detalles

El lenguaje P. Lógica y Computabilidad ( ) símbolos p. Verano convenciones. Lógica Proposicional - clase 1

El lenguaje P. Lógica y Computabilidad ( ) símbolos p. Verano convenciones. Lógica Proposicional - clase 1 Lógica y Computabilidad Verano 2011 Departamento de Computación - FCEyN - UBA Lógica Proposicional - clase 1 Lenguaje de lógica proposicional, semántica, tautología, consecuencia semántica, conjunto satisfacible,

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

Introducción a la Complejidad Computacional

Introducción a la Complejidad Computacional Introducción a la Complejidad Computacional El análisis sobre decidibilidad que hemos hecho nos permite saber qué podemos hacer y qué no podemos hacer. Pero nada sabemos de qué tan difícil resolver los

Más detalles

FUNDAMENTOS DE COMPUTABILIDAD GUÍA DOCENTE

FUNDAMENTOS DE COMPUTABILIDAD GUÍA DOCENTE FUNDAMENTOS DE COMPUTABILIDAD GUÍA DOCENTE OBJETIVOS: El área de Fundamentos de Computabilidad se encuadra en el campo de la Informática Teórica, que trata de dar respuesta a cuestiones tales como qué

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

Máquinas de Turing. Definición 2

Máquinas de Turing. Definición 2 Definición 1 La Máquina de Turing (MT) es el modelo de autómata com máxima capacidad computacional: la unidad de control puede desplazarse a izquierda o derecha y sobreescribir símbolos en la cinta de

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

Teoría de Lenguajes Teoría de la Programación 1 Soluciones

Teoría de Lenguajes Teoría de la Programación 1 Soluciones Ejercicio 1 Teoría de Lenguajes Teoría de la Programación 1 Soluciones a) Si L 1 y L 2 son dos lenguajes regulares, entonces (L 1.L 2 *)* = (L 1 L 2 )* FALSO: SI por ejemplo L 1 es el lenguaje vacío, al

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

Matemática computable

Matemática computable Conjuntos computables - Combinatoria - Álgebra Antonio Montalbán. U. de Chicago Coloquio Uruguayo de Matemática. Diciembre, 2009 Conjuntos computables - Combinatoria - Álgebra 1 Conjuntos computables 2

Más detalles

PROGRAMACIÓN II GEB 16:28

PROGRAMACIÓN II GEB 16:28 GEB 1 Temas Problemas demostrablemente irresolubles Problemas resolubles Clase P, NP, NP completa y CO-NP Objetivo Que el estudiante logre entender la clasificación de problemas y su importancia para la

Más detalles

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

Entscheidungsproblem I LENGUAJES RECURSIVAMENTE ENUMERABLES MÁQUINAS DE TURING. DECIDIBILIDAD OTROS MODELOS COMPUTACIONALES. Máquinas de Turing (TM) Entscheidungsproblem I LENGUAJES RECURSIVAMENTE ENUMERABLES MÁQUINAS DE TURING. DECIDIBILIDAD OTROS MODELOS COMPUTACIONALES Francisco Hernández Quiroz Departamento de Matemáticas Facultad de Ciencias,

Más detalles

Análisis y Diseño de Algoritmos

Análisis y Diseño de Algoritmos Análisis y Diseño de Algoritmos Teoría NP-Completeness DR. JESÚS A. GONZÁLEZ BERNAL CIENCIAS COMPUTACIONALES INAOE Problemas de Decisión Teoría de NP-Completeness Diseñada para aplicarse solo a problemas

Más detalles

Máquinas de Turing. Complexity D.Moshkovitz

Máquinas de Turing. Complexity D.Moshkovitz Máquinas de Turing 1 Motivación Nuestra meta, en este curso, es analizar problemas y clasificarlos de acuerdo a su complejidad. 2 Motivación Nos hacemos preguntas como: Cuánto tiempo tarda en computarse

Más detalles

Máquinas de Turing. Gálvez Martínez Ernesto Sánchez Sandoval David Isaac Villegas Rosales Erik Salazar Santiago Juan Carlos

Máquinas de Turing. Gálvez Martínez Ernesto Sánchez Sandoval David Isaac Villegas Rosales Erik Salazar Santiago Juan Carlos Máquinas de Turing Gálvez Martínez Ernesto Sánchez Sandoval David Isaac Villegas Rosales Erik Salazar Santiago Juan Carlos El modelo de Máquina de Turing Una Máquina de Turing Es un dispositivo que manipula

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

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

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

Máquinas de Turing, recordatorio y problemas

Máquinas de Turing, recordatorio y problemas Máquinas de Turing, recordatorio y problemas Elvira Mayordomo, Universidad de Zaragoza 5 de diciembre de 2014 1. Recordatorio de la definición de máquina de Turing Una máquina de Turing, abreviadamente

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

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

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

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

Autómatas Finitos No-Deterministicos (NFA)

Autómatas Finitos No-Deterministicos (NFA) (NFA) Introducción a la Lógica Fa.M.A.F., Universidad Nacional de Córdoba 2//5 Outline of the Talk Intuiciones Definición Lenguaje de un NFA Euivalencia de Lenguajes de un NFA y un DFA Determinización

Más detalles

si w=ay por tanto a Σ e y Σ*

si w=ay por tanto a Σ e y Σ* EJERCICIOS: LENGUAJES Y GRAMÁTICAS FORMALES Y MÁQUINAS DE TURING 1.- Prefijos de una cadena x son las cadenas que se pueden obtener de x suprimiendo 0 o más caracteres del final de x. Prefijos propios

Más detalles

Conjuntos computables y Teorema de Rice

Conjuntos computables y Teorema de Rice Lógica y Computabilidad Julián Dabbah (Robado de una clase de Franco Frizzo basada en una clase de María Emilia Descotte) 20 de septiembre de 2017 Repaso Conjuntos computables La función característica

Más detalles

Teoría de la Computación puesta en Práctica

Teoría de la Computación puesta en Práctica Teoría de la Computación puesta en Práctica Marcelo Arenas M. Arenas Teoría de la Computación puesta en Práctica 1 / 24 Problema a resolver WiMAX (Worldwide Interoperability for Microwave Access): estándar

Más detalles

Conjuntos c.e., co-c.e. y otras yerbas

Conjuntos c.e., co-c.e. y otras yerbas 1/19 Conjuntos c.e., co-c.e. y otras yerbas Conjuntos c.e., co-c.e. y otras yerbas Ariel Bendersky Febrero 2018 2/19 Conjuntos c.e., co-c.e. y otras yerbas Conjuntos y función característica - Mini repaso

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

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

ALGORITMOS DIGITALES II. Ing. Hugo Fdo. Velasco Peña Universidad Nacional 2006

ALGORITMOS DIGITALES II. Ing. Hugo Fdo. Velasco Peña Universidad Nacional 2006 ALGORITMOS DIGITALES II Ing. Hugo Fdo. Velasco Peña Universidad Nacional 2006 OBJETIVOS Conocer los principios básicos de los algoritmos. Establecer paralelos entre los algoritmos, los programas y las

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

Clases de Complejidad

Clases de Complejidad Clases de Complejidad IIC3242 IIC3242 Clases de Complejidad 1 / 63 Clases de complejidad: Supuestos Vamos a definir y estudiar las propiedades fundamentales de algunas de las clases de complejidad más

Más detalles

Decidibilidad. I. Procedimientos Efectivos. Lógica Matemática III

Decidibilidad. I. Procedimientos Efectivos. Lógica Matemática III I. Procedimientos Efectivos La idea de tener una receta para resolver una clase de problemas nos relaciona con los procedimientos efectivos. Las recetas están escritas en algún lenguaje (español, chino,

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

Lógica Proposicional IIC2213. IIC2213 Lógica Proposicional 1/42

Lógica Proposicional IIC2213. IIC2213 Lógica Proposicional 1/42 Lógica Proposicional IIC2213 IIC2213 Lógica Proposicional 1/42 Por qué necesitamos la lógica? Necesitamos un lenguaje con una sintaxis precisa y una semántica bien definida. Queremos usar este lenguaje

Más detalles

Autómatas Finitos Deterministicos (DFA) Introducción a la Complejidad Computacional FFHA, Universidad Nacional de San Juan

Autómatas Finitos Deterministicos (DFA) Introducción a la Complejidad Computacional FFHA, Universidad Nacional de San Juan Autómatas Finitos Deterministicos (DFA) Introducción a la Complejidad Computacional FFHA, Universidad Nacional de San Juan 206 Info útil Bibliografía: Introducción a la teoría de autómatas, lenguajes y

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 12 de Noviembre de 2014 Parte III: Lenguajes y Autómatas Introducción a la Lógica y la Computación 1/11 Lenguajes Regulares

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

Temas. Objetivo. Que el estudiante logre:

Temas. Objetivo. Que el estudiante logre: 0 Temas Objetivo Que el estudiante logre: 1) Formalizar problemas de decisión. 2) Identificar conceptos constructivos de la Teoría de la Computabilidad. 1 2 TEORÍA DE LA COMPLEJIDAD COMPUTACIONAL TEORÍA

Más detalles

La lógica de segundo orden: Sintaxis

La lógica de segundo orden: Sintaxis La lógica de segundo orden: Sintaxis Dado: Vocabulario L Definición La lógica de segundo orden (LSO) sobre L es definida como la extensión de LPO que incluye las siguientes reglas: Si t 1,..., t k son

Más detalles

Complejidad Computacional. Andrés Abeliuk Estudiante de Ciencias de la computación U. de Chile

Complejidad Computacional. Andrés Abeliuk Estudiante de Ciencias de la computación U. de Chile Complejidad Computacional Andrés Abeliuk Estudiante de Ciencias de la computación U. de Chile Números infinitos por cantor Es una de las creaciones matemáticas más sorprendentes y atrevidas de toda la

Más detalles

Lógica Proposicional IIC2213. IIC2213 Lógica Proposicional 1/42

Lógica Proposicional IIC2213. IIC2213 Lógica Proposicional 1/42 Lógica Proposicional IIC2213 IIC2213 Lógica Proposicional 1/42 Por qué necesitamos la lógica? Necesitamos un lenguaje con una sintaxis precisa y una semántica bien definida. Queremos usar este lenguaje

Más detalles

Turing Machines and their applications

Turing Machines and their applications Reporte de Caso páginas: Máquinas 31-39 de Turing y sus ISSN: aplicaciones 2415-2323 Iluminate vol. 8, Noviembre de 2016 14 31 Turing Machines and their applications Cristian Fernando Vilca Gutierrez crisfer.4217@gmail.com

Más detalles

Teoría de Autómatas y Lenguajes Formales.

Teoría de Autómatas y Lenguajes Formales. Teoría de Autómatas y Lenguajes Formales Prueba de Evaluación de Lenguajes Regulares, Autómatas a Pila y Máquinas de Turing. Autores: Araceli Sanchis de Miguel Agapito Ledezma Espino Jose A. Iglesias Martínez

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

Máquinas Secuenciales, Autómatas y Lenguajes. Tema 4: Expresiones Regulares. Luis Peña

Máquinas Secuenciales, Autómatas y Lenguajes. Tema 4: Expresiones Regulares. Luis Peña Máquinas Secuenciales, Autómatas y Lenguajes Tema 4: Expresiones Regulares Luis Peña Sumario Tema 4: Expresiones Regulares. 1. Concepto de Expresión Regular 2. Teoremas de Equivalencia Curso 2012-2013

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

Un tercer problema NP-completo: Programación entera

Un tercer problema NP-completo: Programación entera Un tercer problema NP-completo: Programación entera Un problema muy estudiado por su utilidad práctica: PROG-ENT = {(A, b) A x b es un sistema de ecuaciones lineales enteras que tiene solución}. Teorema

Más detalles

Introducción al Curso Seminario de Matemáticas

Introducción al Curso Seminario de Matemáticas al Curso Seminario de Matemáticas Julio Ariel Hurtado Alegría ahurtado@unicauca.edu.co 15 de febrero de 2013 Julio A. Hurtado A. Departamento de Sistemas 1 / 18 Agenda Presentación del Curso Julio A. Hurtado

Más detalles

Descripción de los Lenguajes Aceptados por Autómatas

Descripción de los Lenguajes Aceptados por Autómatas Descripción de los Lenguajes Aceptados por Autómatas Los Teoremas de Kleene Universidad de Cantabria Esquema 1 2 3 Lenguajes Aceptados por Autómatas Como repaso, tenemos un problema de respuesta Si/No

Más detalles

1) Comprender la importancia que tiene la Máquina de Turing para la Ciencia de la Computación.

1) Comprender la importancia que tiene la Máquina de Turing para la Ciencia de la Computación. 0 1 Temas 2 Objetivos 1) Comprender la importancia que tiene la Máquina de Turing para la Ciencia de la Computación. 2) Definir máquinas de Turing unicinta y multicinta, para reconocer lenguajes y para

Más detalles

Temas finales de Teoría de Autómatas y Lenguajes Formales II Curso

Temas finales de Teoría de Autómatas y Lenguajes Formales II Curso Temas finales de Teoría de Autómatas y Lenguajes Formales II Curso 2002-2003 M. Luisa González Díaz Departamento de Informática Universidad de Valladolid 2. Máquinas de Turing 2.1. 2.1.1. Definición, representación

Más detalles

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

Problemas computacionales, intratabilidad y problemas NP completos. 26 de agosto de Facultad de Ingeniería. Universidad del Valle Complejidad Complejidad, in NP completos Facultad de Ingeniería. Universidad del Valle 26 de agosto de 2014 Contenido Complejidad 1 2 3 Complejidad computacional Complejidad Notación De acuerdo a la complejidad

Más detalles