Problemas de Decisión
|
|
- Gregorio Manuel Revuelta Redondo
- hace 6 años
- Vistas:
Transcripción
1 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é pasa si la pregunta la hacemos para el caso de fórmulas de primer orden? Qué esperamos de un algoritmo que resuelva los dos problemas anteriores? El tipo de algoritmos a los que nos referimos son conocidos como algoritmos de decisión, ya que son usados para decidir, dando una respuesta afirmativa o negativa. En nuestro ejemplo, queremos construir un algoritmo que, dada una fórmula arbitraria de L(P ), ϕ, y un conjunto de fórmulas en el mismo lenguaje, nos diga si Σ = ϕ El algoritmo se ve como la siguiente máquina: Jorge Baier Aranda, PUC << Atrás 223
2 Sí Σ, ϕ Algoritmo No Si a esta máquina le pasamos como entrada cualquier par Σ, ϕ, responderá SÍ si Σ = ϕ y NO si Σ = ϕ. Alternativamente, si consideramos que Σ, ϕ se puede representar como una palabra, entonces esta máquina sirve para decidir la pertenencia de una palabra arbitraria al lenguaje: L = { Σ, ϕ Σ L(P ), ϕ L(P ), Σ = ϕ} En general, un problema de decisión cualquiera se puede representar por un lenguaje. Cuál es el lenguaje asociado al siguiente problema de decisión? Dados dos números enteros arbitrarios x e y, son ellos soluciones para la ecuación 3x 2y = 0? Jorge Baier Aranda, PUC << Atrás 224
3 El lenguaje debe contener una codificación para todas las posibles instancias de la pregunta. Una instancia de la pregunta es: son x = 2 e y = 3 soluciones para la ecuación? Cuál es el lenguaje para el siguiente problema? Dada una fórmula arbitraria ϕ de lógica proposicional, es ϕ una tautología? Jorge Baier Aranda, PUC << Atrás 225
4 Problemas Decidibles Dado un problema de decisión cualquiera P, con un lenguaje asociado L, diremos que P y L son dedicidibles, si es que es posible encontrar un algoritmo tal que, dada cualquier entrada w pueda responder SÍ, si w L y NO si w L. Gráficamente el algoritmo se ve de la siguiente manera: Algoritmo w L Sí w w L No Para analizar cuándo un problema es decidible, necesitamos modelar, en forma matemática, qué es un algoritmo. Más precisamente, lo que haremos será dar un modelo matemático para un computador. Jorge Baier Aranda, PUC << Atrás 226
5 Máquinas de Turing Las máquinas de Turing (en honor a Alan Turing, figura 2) son un modelo matemático de un computador. Figure 2: Alan Turing, inventor de un modelo matemático para los computadores Una Máquina de Turing (MT) es una máquina de estado que posee una cinta infinita en la cual se puede leer y escribir. Jorge Baier Aranda, PUC << Atrás 227
6 La máquina tiene los siguientes elementos: Un conjunto finito de estados Q. Un alfabeto de entrada Σ (conjunto finito de símbolos que podría tener una entrada w). Un alfabeto de la cinta Γ (conjunto finito de símbolos en la cinta). Un estado inicial q 0 (q 0 Q). Una función de transición δ que especifica, dado un estado y un símbolo leído desde la cinta: el símbolo que se escribirá sobre la posición de la cinta en la cual la cabeza se encuentra, y si ésta se moverá a la derecha o a la izquierda. Un conjunto de estados finales Q F Q. Formalmente, es un mapeo desde Q Γ hasta Q Γ {+, } La función δ se puede describir como una tabla. La siguiente podría ser una definición para δ. Estado/Símbolo a b c b q 0 (q NO, a, +) (q 0, b, +) (q 1, c, +) (q NO, b, +) q (q SI, b, +) q NO q SI Jorge Baier Aranda, PUC << Atrás 228
7 Aquí, significa que la máquina se mueve a la izquierda y +, que se mueve a la derecha. La máquina puede ser alimentada con una palabra de entrada w, que se coloca al comienzo de la cinta. Jorge Baier Aranda, PUC << Atrás 229
8 La siguiente figura muestra una MT que recibe como entrada a la palabra w = a 0 a 1 a n. a 0 a 1 a 2 a 3 a 4 a 5 a n b b b b... cinta infinita... cabeza lectora/escritora Máquina de Estado A partir del símbolo que la MT lee desde la entrada determina qué símbolo escribe sobre la cinta, y en qué dirección moverse. Jorge Baier Aranda, PUC << Atrás 230
9 Si no está definida la movida de la máquina entonces diremos que la máquina se ha detenido. Si la máquina se detuvo en un estado final, diremos que la máquina acepta (o dice sí). En caso contrario, diremos que la máquina no acepta. Jorge Baier Aranda, PUC << Atrás 231
10 Supongamos una MT definida por: Ejemplo de MT Q = {q 0, q 1, q SI, q NO }. Γ = {a, b, c, b} Q F = {q SI }. Estado/Símbolo a b c b q 0 (q NO, a, +) (q 0, b, +) (q 1, c, +) (q NO, b, +) q (q SI, b, +) q NO q SI Qué lenguaje acepta esta máquina? Jorge Baier Aranda, PUC << Atrás 232
11 MT como computadoras de funciones También es posible ver a las MTs como máquinas computadoras de funciones. En este caso, la palabra de entrada codifica al (o los) argumento. Al terminar la ejecución, la máquina ha escrito en su cinta el resultado de la función. Si la función está definida para cualquier entrada, entonces decimos que es una función recursiva. Si no está definida para todas las entradas decimos que es una función recursiva parcial. Tesis de Church-Turing o Hipótesis de Church: Las funciones computables corresponden precisamente a la clase de funciones recursivas parciales Esta hipótesis no se puede demostrar pues el término computable no es formal (no está definido en términos matemáticos) sino que es intuitivo. Jorge Baier Aranda, PUC << Atrás 233
12 Un problema indecidible Al ingresar una entrada arbitraria a una MT, pueden ocurrir 3 cosas: Que la máquina se detenga, aceptando (dice SÍ). Que la máquina se detenga, no aceptando (dice NO). Esto ocurre cuando la máquina queda en un estado no final, en el cual no puede realizar más transiciones. No se detiene (no dice nada), es decir, queda ejecutando transiciones eternamente. Si un problema P es decidible, podremos construir una máquina en la cual sólo puedan ocurrir los dos primeros casos y nunca el tercero. Como una MT se puede representar por un número finito de elementos, podemos suponer que esta representación se puede codificar como un string. De esta manera #(M) representará la codificación de una máquina M. Supongamos el siguiente problema de decisión: Jorge Baier Aranda, PUC << Atrás 234
13 Dada una máquina arbitraria M, es cierto que M no acepta su propio código? El lenguaje asociado a este problema es el siguiente 9 : L d = {#(M) M(#(M)) no acepta} Supongamos L d es decidible y que M d acepta a L d. Qué sucede si alimentamos a M d con #(M d )?. Sólo hay dos posibilidades, que diga SÍ o que diga NO. Supongamos que dice SÍ. En este caso tenemos que #(M d ) L d, por lo que M d (#(M d )) no acepta, por definición. no puede decir SI, lo que contradice nuestra suposición inicial. Supongamos que dice que NO. 9 M(w) se usa para decir que M es alimentada con w Jorge Baier Aranda, PUC << Atrás 235
14 En este caso tenemos que #(M d ) L d, con lo que, por definición, M d (#(M d )) dice SI, que nuevamente contradice la suposición inicial. El hecho que no podamos ni decir SÍ ni decir NO significa que tampoco podemos decidir el siguiente lenguaje: por qué? L d = {#(M) M(#(M)) acepta} Podemos concluir de esto que un algoritmo de tales características no puede existir. El siguiente problema también es indecidible: Dada una máquina M y una palabra w, para M alimentada w? El lenguaje asociado a este problema es el siguiente: L u = { #(M), w M(w) para} Jorge Baier Aranda, PUC << Atrás 236
15 Suponiendo que tal algoritmo existe construiremos un algoritmo M para decidir L d. Supongamos M que, dada la codificación de una máquina M, entrega el código de una máquina M 0 que dice SI para las mismas entradas que M, pero que no para cuando M dice que NO y cuando M no para. Construir ese algoritmo es sencillo, lo que debemos hacer es copiar la función de transición y estados de M a M 0. Además, agregamos a M 0 un estado adicional, q l. Para cada estado no final que no tenga una transición a ningún otro estado en un símbolo cualquiera a, agregamos a δ una transición a q l. q l será un estado en el cual la máquina entra en un loop infinito. La máquina resultante M 0 funciona igual que M, con la diferencia que cada vez M dice NO, M 0 entra en un loop infinito. Jorge Baier Aranda, PUC << Atrás 237
16 El siguiente esquema muestra un algoritmo para aceptar L d. Algoritmo que decide L d #(M) Máquina M #(M 0 ), #(M) Algoritmo que decide Lu Si Si No No Jorge Baier Aranda, PUC << Atrás 238
17 Reducción Es interesante que analicemos un poco más el método que utilizamos en la solución del problema anterior. Para demostrar que el lenguaje L u es indecidible, supusimos que existía una algoritmo para decidir L u y luego demostramos que podíamos construir otro algoritmo para decidir L d. En otras palabras, hemos transformado un problema en el otro. En términos abstractos, para decidir la pertenencia de una palabra w a L d, nuestra máquina transforma dicha palabra a través de una función, digamos f( ), y luego se pregunta por la pertenencia de f(w) en L u. La función f( ) es computable y se puede computar para cualquier entrada. Cada vez que podamos determinar tal función y que se cumpla que w L 1 ssi f(w) L 2 Jorge Baier Aranda, PUC << Atrás 239
18 Diremos que L 1 es reducible a L 2, o bien, L 1 L 2 En nuestro caso sabemos que L d L u. Nótese que la salida de M u y M d están intercambiadas. La forma más sencilla de entender L 1 L 2 es recordando que: Si podemos decidir L 2 entonces podemos decidir L 1. o equivalentemente, Si no podemos decidir L 1 entonces no podemos decidir L 2. Ejercicio: Demuestre, por reducción, que el problema de determinar si una máquina de Turing acepta el lenguaje vacío es indecidible. Jorge Baier Aranda, PUC << Atrás 240
19 Lenguajes Recursivos y Recursivamente Enumerables Hemos visto que si L es un lenguaje decidible, existe una máquina M que siempre se detiene y que responde si una palabra cualquiera w pertenece a L. Los lenguajes decidibles también son conocidos como lenguajes recursivos Sin embargo, existe una calificación menos restrictiva. Un lenguaje L es recursivamente enumerable si existe una MT M, cuando es alimentada con alguna palabra w L, se detiene diciendo SÍ. El comportamiento no está definido cuando w L. Una máquina que decide un lenguaje recursivamente enumerable se ve de la siguente manera: Jorge Baier Aranda, PUC << Atrás 241
20 MT w L Sí w El problema de la parada de una máquina de Turing es recursivamente enumerable. En efecto, podemos construir una máquina M que recibe un par #(M), w y simula la ejecución de M con w. Si M se detiene con w responde SI. De la definición de lenguaje recurisivamente enumerable, se obtiene claramente que todo lenguaje recursivo (decidible) es recursivamente enumerable, ya que un lenguaje recursivo es un caso particular de los lenguajes recursivamente enumerables. Jorge Baier Aranda, PUC << Atrás 242
21 Por qué enumerable? El concepto de enumerabilidad recursiva nace del hecho de que, si se tiene un lenguaje recursivamente enumerable, es posible construir una MT que corre sin entrada y que genera como salida a todas las palabras del lenguaje. Evidentemente, esta máquina no para si el lenguaje es infinito. De todas formas tenemos como garantía que toda palabra w del lenguaje es generada como salida en tiempo finito. La máquina que genera esta salida es una máquina enumeradora. Supongamos que tenemos una máquina M que acepta un lenguaje recursivamente enumerable, L. Cómo construimos una máquina enumeradora para L? La idea es numerar todas las posibles entradas, de tal forma que w 0, w 1,... son todas las posibles entradas. Primer intento: Simulamos a M alimentada con w 0. Si M acepta a w 0 se anota en la cinta como salida. Jorge Baier Aranda, PUC << Atrás 243
22 Escribimos un # (que se usa solamente como separador) y seguimos con w 1. Qué pasa si M no para con w i? No podremos seguir generando las palabras que vienen a continuación. Segundo intento: Recorrer la siguiente matriz: w 0 w 1 w (1, w 0 ) (1, w 1 ) (1, w 2 ) 2 (2, w 0 ) (2, w 1 ) (2, w 2 ) 3 (3, w 0 ) (3, w 1 ) (3, w 2 ).... De tal forma que para cada par (i, w j ) nuestra máquina simula i movidas de M con entrada w j. Si M acepta en a lo más j movidas, escribe la salida en la cinta. El recorrido se realiza de tal manera que i + j = constante. Es decir, se recorren primero los pares (i, w j ) tales que i + j = 1, luego los pares con i + j = 2 y así sucesivamente. Con esto garantizamos que en tiempo finito recorreremos todas las palabras posibles, tardando un tiempo finito con cada una de ellas. Jorge Baier Aranda, PUC << Atrás 244
23 Eventualmente, todas las palabras de L aparecerán en la cinta de salida. Jorge Baier Aranda, PUC << Atrás 245
24 Indecidibilidad de Lógica de Predicados Hasta ahora hemos visto que todas las propiedades que se cumpĺıan en lógica proposicional, también se cumplen en lógica de primer orden. Consideremos el siguiente problema de decisión: Dada una fórmula proposicional arbitraria ϕ, es ϕ una tautología? Claramente este problema es decidible, porque podemos construir un algoritmo que haga un tabla de verdad y verifique que la fórmula es verdadera para todas las valuaciones posibles. Qué hacemos para el caso de primer orden? No podemos usar tablas de verdad! Supongamos el siguiente lenguaje: V U = {ϕ L(S) = ϕ} Jorge Baier Aranda, PUC << Atrás 246
25 En 1936 Turing y Church demostraron que este lenguaje es indecidible. Esto se da dado que es muy sencillo escribir una oración de primer orden ϕ M,w que describe el comportamiento de una Máquina de Turing al recibir una palabra w como entrada. La fórmula es universalmente verdadera si y sólo si la máquina acepta a w. La idea de la demostración es representar las palabras como funciones del lenguaje. Así, la palabra abbc se anota como a(b(b(c(ɛ)))) 10. Para describir el comportamiento de la máquina se define un predicado F q por cada estado q de la máquina tal que F q (x, y) es verdadero cuando la máquina se encuentra en el estado q con su cabezal sobre el primer símbolo de y y con la palabra x r y sobre la cinta 11. Sea M una máquina cualquiera, con q 0 su estado inicial y q f un estado final. Si δ(q, a) = (p, b, +) entonces la siguiente fórmula debe ser verdadera: 10 ɛ representa a la palabra vacía. 11 x r es el reverso de la palabra x x y (F q (x, a(y)) F p (b(x), y)) Jorge Baier Aranda, PUC << Atrás 247
26 Si δ(q, a) = (p, b, ) entonces las siguientes fórmulas deben ser verdaderas: para todo c Σ. x y (F q (c(x), a(y)) F p (x, c(b(y))), Finalmente, se agregan fórmulas similares para cuando la máquina se encuentra al final de la entrada o al principio de la cinta (las omitimos). Sea ψ la oración que corresponde a la conjunción de las fórmulas ya mencionadas más algunos axiomas de nombres únicos, entonces, M acepta a w si la siguiente fórmula es universalmente verdadera: F q0 (ɛ, w) ψ x y F qf (x, y), con w escrita en la notación requerida, forman una oración que es universalmente verdadera sí y sólo sí M para con la entrada w. Sin duda, este lenguaje es recursivamente enumerable, por, al menos, dos razones conocidas. Cuáles son ellas? Jorge Baier Aranda, PUC << Atrás 248
27 Por reducción podemos demostrar que el problema de determinar si una fórmula arbitraria es satisfactible también es indecidible. Cómo podemos demostrarlo? Si tenemos un algoritmo para verificar si una fórmula arbitraria es satisfactible, podemos construir un algoritmo para verificar si una fórmula ϕ es universalmente válida de la siguiente manera. Alimentamos el algoritmo con ϕ. Si el algoritmo dice SÍ, respondemos NO, y si dice NO, respondemos SÍ. Esto se puede hacer porque una fórmula ϕ es universalmente verdadera sí y sólo sí ϕ es insatisfactible. Podríamos establecer todas estas equivalencias: ϕ es universalmente válida ϕ es insatisfactible. ϕ es universalmente válida ϕ es insatisfactible. ϕ no es universalmente válida ϕ es satisfactible. Jorge Baier Aranda, PUC << Atrás 249
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 detallesIntroducció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 detallesEntscheidungsproblem 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 detallesDepartamento 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 detallesMinimización de Aútomatas Finitos
Minimización de Aútomatas Finitos Supongamos que para un AFD M = (Q, Σ, δ, q 0, F ) definimos la siguiente relación R M : xr M y ssi δ(q 0, x) = δ(q 0, y) Claramente, podemos notar que esta relación es
Más detallesMá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 detallesMá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 detallesDemostraciones por resolución
Demostraciones por resolución A lo largo del curso, hemos prometido insistentemente que hay métodos para mecanizar demostraciones En particular, queremos un método, dado una base de conocimiento Σ y una
Más detallesClases 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 detallesDepartamento 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 detallesExamen. 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 detalles5. 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 detallesMá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 detalles13.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 detallesIntroducció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 detallesTeorí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 detallesDemostració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 detallesMá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 detallesMÁ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 detallesALGORITMOS 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 detallesTIPOS 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 detallesEl 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 detallesCurso 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 detallesTema 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 detalles7 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 detallesConjuntos. 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 detalles5 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 detallesEquivalencia 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 detallesMá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 detallesTeorema 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 detallesProblemas 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 detallesTipos 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 detallesCiencias 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 detallesSistema 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 detallesTeoría de Autómatas y Compiladores [ICI-445] Capítulo 2: Autómatas Finitos
Teoría de Autómatas y Compiladores [ICI-445] Capítulo 2: Autómatas Finitos Dr. Ricardo Soto [ricardo.soto@ucv.cl] [http://www.inf.ucv.cl/ rsoto] Escuela de Ingeniería Informática Pontificia Universidad
Más detallesResolución Proposicional
Resolución Proposicional IIC2213 IIC2213 Resolución Proposicional 1 / 19 Resolución proposicional Sabemos que Σ = ϕ si y sólo si Σ { ϕ} es inconsistente. Cómo verificamos si Σ { ϕ} es inconsistente? El
Más detallesMá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 detallesAná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 detallesNuestro 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 detallesAná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 detallesLógica Proposicional. Significado de una Fórmula Proposicional
Proposicional Semántica Semántica Proposicional - Significado de una Fórmula Proposicional El significado de una proposición está dado por su valor de verdad (o sea, si es Verdadera o Falsa) que se obtiene
Más detalles7. Máquinas de Turing.
7. Máquinas de Turing. Araceli Sanchis de Miguel Agapito Ledezma Espino José A. Iglesias Mar
Más detallesLógica Proposicional
Proposicional Semántica Semántica Proposicional - Significado de una Fórmula Proposicional El significado de una proposición está dado por su valor de verdad (o sea, si es Verdadera o Falsa) que se obtiene
Más detallesMÁ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 detalles1. Probar pertenencia a Lenguajes libres de contexto
Tarea 3 Curso : Teoría de la Computación Codigo : CC3102-1 Fecha : 8 de noviembre de 2017 Autor : Bastián Mail : mail@gmail.com 1. Probar pertenencia a Lenguajes libres de contexto 1.1. L 1 = {a m b n
Más detallesQué es la lógica? Esfuerzos por modelar estas leyes del pensamiento humano. Han existido desde la antigüedad.
Qué es la lógica? La definición del Diccionario General de la Lengua Española dice: Disciplina que estudia los principios formales del conocimiento humano, es decir, las formas y las leyes más generales
Más detallesProcesadores 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 detallesANÁLISIS LÉXICO AUTÓMATAS FINITOS
Todos los derechos de propiedad intelectual de esta obra pertenecen en exclusiva a la Universidad Europea de Madrid, S.L.U. Queda terminantemente prohibida la reproducción, puesta a disposición del público
Más detallesConjuntos finitos y conjuntos numerables
Tema 3 Conjuntos finitos y conjuntos numerables En este tema vamos a usar los números naturales para contar los elementos de un conjunto, o dicho con mayor precisión, para definir los conjuntos finitos
Más detallesLó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 detallesConjuntos finitos y conjuntos numerables
Tema 3 Conjuntos finitos y conjuntos numerables En este tema vamos a usar los números naturales para contar los elementos de un conjunto, o dicho con mayor precisión, para definir los conjuntos finitos
Más detallesEjercicios de Lógica Proposicional *
Ejercicios de Lógica Proposicional * FernandoRVelazquezQ@gmail.com Notación. El lenguaje proposicional que hemos definido, aquel que utiliza los cinco conectivos,,, y, se denota como L {,,,, }. Los términos
Más detallesSemana02[1/23] Conjuntos. 9 de marzo de Conjuntos
Semana02[1/23] 9 de marzo de 2007 Introducción Semana02[2/23] La teoría de conjuntos gira en torno a la función proposicional x A. Los valores que hacen verdadera la función proposicional x A son aquellos
Más detallesTema 1: Sintaxis y Semántica de la Lógica Proposicional
Tema 1: Sintaxis y Semántica de la Lógica Proposicional Dpto. Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla Lógica y Computabilidad Curso 2010 11 LC, 2010 11 Lógica Proposicional
Más detallesUniversidad de Valladolid
Universidad de Valladolid Departamento de Informática Teoría de autómatas y lenguajes formales. 2 o I.T.Informática. Gestión. Examen de primera convocatoria. 18 de junio de 29 Apellidos, Nombre... Grupo:...
Más detallesAprendizaje Computacional y Extracción de Información
Aprendizaje Computacional y Extracción de Información Inferencia Gramatical Jose Oncina oncina@dlsi.ua.es Dep. Lenguajes y Sistemas Informáticos Universidad de Alicante 26 de septiembre de 2007 J. Oncina
Más detallesEl 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 detallesLógica Proposicional. Del conjunto de hipótesis Γ se deduce α?
Proposicional Metateoría: Corrección y Completitud Proposicional - 1 Del conjunto de hipótesis Γ se deduce α? Γ = α? -Tablas de verdad - Equivalencia lógicas Existen métodos que siempre responden SI o
Más detallesUnidad 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 detalles1. Resolución en lógica proposicional
1. Resolución en lógica proposicional 1.1. Introducción 1.1.1. Pseudo-motivación Si tengo una fórmula de proposicional, puedo probar con fuerza bruta todas las valuaciones a ver si es satisfactible? Si
Más detallesProblemas 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 detallesLógica Proposicional IIC1253. IIC1253 Lógica Proposicional 1/64
Lógica Proposicional IIC1253 IIC1253 Lógica Proposicional 1/64 Inicio de la Lógica Originalmente, la Lógica trataba con argumentos en el lenguaje natural. Ejemplo Es el siguiente argumento válido? Todos
Más detallesAutó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 detallesTeoría de Modelos Finitos: Motivación
Teoría de Modelos Finitos: Motivación IIC3260 IIC3260 Teoría de Modelos Finitos: Motivación 1 / 29 Poder expresivo de una lógica: Caso finito Desde ahora en adelante nos vamos a concentrar en las estructuras
Más detallesAutó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 detallesCurso Básico de Computación
Curso Básico de Computación 7 Máquina de Turing Feliú Sagols Troncoso Matemáticas CINVESTAV-IPN 2010 Curso Básico de Computación (Matemáticas) 7 Máquina de Turing 2010 1 / 43
Más detallesCOMPACIDAD Y COMPLETITUD: DOS TEOREMAS CLÁSICOS DE LA TEORÍA DE MODELOS
COMPACIDAD Y COMPLETITUD: DOS TEOREMAS CLÁSICOS DE LA TEORÍA DE MODELOS JOEL TORRES DEL VALLE 1 1 Universidad Cartagena Resumen. Se presentan dos teoremas clásicos de la Teoría de Modelos: Teorema de La
Más detallesUna (muy) breve introducción a la teoría de la computación
Una (muy) breve introducción a la teoría de la computación Marcelo Arenas M. Arenas Una (muy) breve introducción a la teoría de la computación 1 / 48 Ciencia de la computación Cuál es el objeto de estudio
Más detallesRecordatorio Basico de Álgebra para Lógica
Recordatorio Basico de Álgebra para Lógica Guido Sciavicco 1 Conjuntos Definición 1 Un conjunto es una colleccion, finita o infinita, de elementos. Ejemplo 2 La colleccion de los elementos a, b, c, denotada
Más detallesPropiedades 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 detallesClase práctica 3: Consecuencia Lógica
Clase práctica 3: Consecuencia Lógica (by Laski) Primer Cuatrimestre 2014 Repaso de la teórica Decimos que una valuación v satisface a una fórmula P si v(p ) = 1, y que satisface a un conjunto de fórmulas
Más detallesEspacios de una Matriz
Espacios de una Matriz Departamento de Matemáticas, CSI/ITESM 31 de enero de 2008 Índice 4.1. Espacios de una Matriz........................................ 1 4.2. Espacios Lineales............................................
Más detallesSucesiones. Una sucesión de números reales es una tira, o una lista, de nḿeros reales que generalmente denotamos como
Universidad de la República Facultad de Ingeniería IMERL Sucesiones Curso Cálculo 1 2008 Una sucesión de números reales es una tira, o una lista, de nḿeros reales que generalmente denotamos como a 1, a
Más detallesIntroducción a la Teoría de Autómatas, Lenguajes y Computación
Introducción a la Teoría de Autómatas, Lenguajes y Computación Gustavo Rodríguez Gómez y Aurelio López López INAOE Propedéutico 2010 1 / 53 Capítulo 2 Autómatas Finitos 2 / 53 1 Autómatas Finitos Autómatas
Más detallesLa 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 detallessup 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 detallesTraductores Push Down
Push Down Extensión de Autómatas Universidad de Cantabria Outline El Problema 1 El Problema 2 3 El Problema Hemos estudiado anteriormente los autómatas con pila y hemos visto su relación con los lenguajes
Más detallesLógica Proposicional Lenguaje Proposicional Implicación semántica
Capítulo 1 Lógica Proposicional 1.1. Lenguaje Proposicional Un lenguaje proposicional consta de los siguientes símbolos: las proposicones atómicas, también llamados enunciados atómicos o simplemente variables
Más detallesAutómata de Pila (AP, PDA) Tema 18
Tema Autómata de Pila (Pushdown Automata Autómata de Pila (AP, PDA Un AP es una máquina que acepta el lenguage generado por una GLC Consiste en un NFA- aumentado con una pila (stack. Dr. Luis A. Pineda
Más detallesCapítulo 8: Sistemas completos de contectivos
Capítulo 8: Sistemas completos de contectivos por G 3 Agosto 2014 Resumen Un conectivo de aridad n, es una función que asigna un valor de verdad a un conjuntos de n proposiciones ordenadas Mostramos que
Más detallesProblemas 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 detallesLa Jerarquía Polinomial
La Jerarquía Polinomial IIC3810 IIC3810 La Jerarquía Polinomial 1/18 La noción de oráculo Qué tienen en común los problemas CROM y EQUIV? IIC3810 La Jerarquía Polinomial 2/18 La noción de oráculo Qué tienen
Más detallesÍndice Proposiciones y Conectores Lógicos Tablas de Verdad Lógica de Predicados Inducción
Curso 0: Matemáticas y sus Aplicaciones Tema 5. Lógica y Formalismo Matemático Leandro Marín Dpto. de Matemática Aplicada Universidad de Murcia 2012 1 Proposiciones y Conectores Lógicos 2 Tablas de Verdad
Más detallesLógica de predicados
Lógica de predicados Cálculo de predicados Hay ciertos argumentos que parecen ser perfectamente lógicos y que no pueden ser especificados usando cálculo proposicional. Ejemplos: Todos los gatos tienen
Más detallesCapítulo 2 Conjuntos. 2.1 Introducción. 2.2 Determinación de conjuntos. Definición:
Capítulo 2 Conjuntos 2.1 Introducción El concepto de conjunto, de singular importancia en la ciencia matemática y objeto de estudio de una de sus disciplinas más recientes, está presente, aunque en forma
Más detallesCálculo de predicados. Lógica de predicados. Cálculo de predicados. Cálculo de predicados 08/06/2011
Lógica de predicados Hay ciertos argumentos que parecen ser perfectamente lógicos y que no pueden ser especificados usando cálculo proposicional. Ejemplos: Todos los gatos tienen cola Tomás es un gato
Más detallesSobre el teorema de la deducción
Sobre el teorema de la deducción José Alfredo Amor Montaño La teoría formal L para la lógica de proposiciones tiene como conjunto de símbolos primitivos al conjunto S = {, } {(, )} {P i } i N, de conectivos
Más detallesCC40A Complejidad de Kolmogorov
CC40A Complejidad de Kolmogorov Ricardo Baeza Yates, Rodrigo Paredes Dept. de Ciencias de la Computación, Universidad de Chile. 1. Definiciones Básicas La Complejidad de Kolmogorov (CK) de un string s
Más detallesIntroducció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 detallesEn general, un conjunto A se define seleccionando los elementos de un cierto conjunto U de referencia que cumplen una determinada propiedad.
nidad 3: Conjuntos 3.1 Introducción Georg Cantor [1845-1918] formuló de manera individual la teoría de conjuntos a finales del siglo XIX y principios del XX. Su objetivo era el de formalizar las matemáticas
Más detallesLógicaS Modales. Ricardo Oscar Rodríguez Departamento de Computación, Fac. Ciencias Exactas y Naturales, Universidad de Buenos Aires, Argentina.
Departamento de Computación, Fac. Ciencias Exactas y Naturales, Universidad de Buenos Aires, Argentina. Segunda Clase. 1er. Cuatrimestre, 2016 Outline 1 Repaso clase anterior Sintáxis Lógicas Modales Autocongruentes
Más detallesTuring 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 detallesCapítulo 9. Introducción a los lenguajes formales. Continuar
Capítulo 9. Introducción a los lenguajes formales Continuar Introducción Un lenguaje es un conjunto de símbolos y métodos para estructurar y combinar dichos símbolos. Un lenguaje también recibe el nombre
Más detallesClases 18 y 19:Máquina de Turing. M. en C. Edgardo Adrián Franco Martínez
Clases 18 y 19:Máquina de Turing M. en C. Edgardo Adrián Franco Martínez http://computacion.cs.cinvestav.mx/~efranco @efranco_escom edfranco@ipn.mx 1 Contenido Máquinas de Turing Definición formal de la
Más detallesLógica modal, topología y sistemas dinámicos p.1/37
Lógica modal, topología y sistemas dinámicos David Fernández Duque Universidad de Sevilla Grupo de Lógica, Lenguaje e Información Lógica modal, topología y sistemas dinámicos p.1/37 Introducción La interpretación
Más detallesTemas 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 detallesIntroducción a la Complejidad Computacional
Introducción a la Complejidad Computacional IIC2213 IIC2213 Introducción a la Complejidad Computacional 1 / 111 Complejidad Computacional Objetivo: Medir la complejidad computacional de un problema. Vale
Más detallesCuantificadores y Métodos de Demostración
Cuantificadores y Métodos de Demostración 1. Cuantificadores... 1 1.1. Cuantificador Existencial... 2 1.2. Cuantificador Universal... 3 2. Métodos de Demostración... 4 1. Cuantificadores Hasta ahora habíamos
Más detalles8.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 detallesIntroducción a la Lógica Proposicional Seminario de Matemáticas
Introducción a la Lógica Proposicional Seminario de Matemáticas Julio Ariel Hurtado Alegría ahurtado@unicauca.edu.co 8 de mayo de 2015 Julio A. Hurtado A. Departamento de Sistemas 1 / 34 Agenda Motivación
Más detalles