Download Lógicas Modales Computacionales Clase # 6: Decidibilidad

Document related concepts
no text concepts found
Transcript
Lógicas Modales Computacionales
Clase # 6: Decidibilidad
Carlos Areces / Daniel Gorín / Sergio Mera
2do Cuatrimestre 2006,
Buenos Aires, Argentina
Propiedad de modelos finitos. . . ¿para qué?
I
Usando el método de selección vimos que la lógica modal básica
tiene la propiedad de modelos finitos
I
Tener esta propiedad y ser decidible, ¿es lo mismo?
I
No necesariamente. . . pero ayuda
: Bisimulaciones
Carlos Areces / Daniel Gorín / Sergio Mera
Propiedad de modelos finitos y satisfacibilidad
El problema de la satisfacibilidad
I
Sea ϕ una fórmula de alguna lógica L con signatura S
I
Y sea C alguna clase de modelos (e.g. todos los modelos)
I
Problema: ¿Es ϕ satisfacible (respecto a C)?
Supongamos que. . .
I
L tiene la propiedad de modelos finitos
I
Para todo modelo finito M, es decidible si M está en C
I
En ese caso, podemos proponer el siguiente algoritmo:
: Bisimulaciones
Carlos Areces / Daniel Gorín / Sergio Mera
Modelos finitos ≈ semi-decidibilidad
funcion buscarModelo(ϕ, C)
1. S ← símbolos que aparecen en ϕ
2. para n ← 1, 2, 3, . . .
3.
4.
para M ← modelos de S de tamaño n
si M está en C y M |= ϕ
devolver ¡SI!
Fig. 1 – buscarModelo.java
I
Observar que para cada n, hay finitos M posibles
I
Y cada M es finito y tiene finitos símbolos para interpretar
I
Siempre que ϕ sea satisfacible va a responder que sí
I
Pero nunca responde que no!
: Bisimulaciones
Carlos Areces / Daniel Gorín / Sergio Mera
Modelos finitos + Axiomatización ≈ Decidibilidad
I
Si L además tiene una axiomatización consistente y completa A
I
(Y es decidible si ψ es axioma de A, lo cual es razonable!)
I
Entonces podemos escupir uno por uno los teoremas de L
I
¡Y usar eso para semi-decidir si ϕ es insatisfacible!
funcion buscarContradiccion(ϕ)
1. para ψ ← todos los teoremas de L enumerados con A
2.
si ψ == ¬ϕ
devolver ¡NO!
Fig. 2 – buscarContradiccion.java
: Bisimulaciones
Carlos Areces / Daniel Gorín / Sergio Mera
Modelos finitos + Axiomatización ≈ Decidibilidad
I
Dado ϕ podemos correr ambos programas en paralelo!
buscarModelo.java & buscarContradiccion.java
Fig. 3 – decidirSatisfacibilidad.sh
I
Si ϕ es satisfacible, buscarModelo.java da la respuesta
I
Si ϕ es insatisfacible, la da buscarContradiccion.java
I
Y una de las dos cosas tiene que pasar!
: Bisimulaciones
Carlos Areces / Daniel Gorín / Sergio Mera
¿Prueba esto que la lógica modal básica es decidible?
I
Sabemos que la lógica modal básica tiene modelos finitos
I
La clase de todos los modelos es trivialmente decidible
I
¿Tenemos una axiomatización consistente, completa y decidible?
I
En la Práctica 2 presentamos una que es consistente y
decidible. . .
I
Y pronto veremos que además es completa
I
Hasta que eso pase. . . sigue el acto de fé
: Bisimulaciones
Carlos Areces / Daniel Gorín / Sergio Mera
¿Y qué pasa si tomamos otras clases de modelos?
I
Tomemos una signatura S con un único símbolo de relación R
I
Y sea CT la clase de los modelos donde R es transitiva
I
¿Cómo vemos si la lógica modal básica sobre CT es decidible?
Si pudiéramos ver que
I
1. Tiene la propiedad de modelos finitos
2. Es axiomatizable
entonces ya está!
I
Pregunta ¿y cómo vemos si tiene modelos finitos?
I
Posible respuesta ¿Igual que hicimos con la lógica modal básica?
I
Pero los modelos que obtenemos por selección son árboles. . .
I
¡y los árboles no están en CT !
: Bisimulaciones
Carlos Areces / Daniel Gorín / Sergio Mera
Aparecen las filtraciones
I
I
Otro método de probar la propiedad de modelos finitos
Idea:
I
I
I
I
Ventajas:
I
I
I
Nos va a dar margen para jugar con las relaciones
Prueba un resultado más fuerte (modelo acotado)
Aclaración:
I
I
: Bisimulaciones
No se seleccionan finitos sucesores (en un árbol)
En cambio, se cocientan todos los elementos del modelo
El criterio para cocientar es: “cosas que ϕ no puede distinguir”
En lo que sigue asumimos que hay una única relación
Pero la generalización es trivial
Carlos Areces / Daniel Gorín / Sergio Mera
Preliminares
Definición (Conjunto cerrado por subfórmulas)
Un conjunto de fórmulas Σ está cerrado por subfórmulas si para todo
par de fórmulas ϕ y ψ, si ϕ ∈ Σ y ψ es subfórmula de ϕ, entonces
ψ∈Σ
Definición
Sea Σ un conjunto cerrado por subfórmulas, y sea M = hW, R, Vi.
Llamamos !Σ a la relación de equivalencia sobre W dada por
!Σ := {(w, v) | para todo ϕ ∈ Σ, M, w |= ϕ sii M, v |= ϕ}
: Bisimulaciones
Carlos Areces / Daniel Gorín / Sergio Mera
Con ustedes, las filtraciones
Definición (Filtración)
Sea M = hW, R, Vi y sea Σ un conjunto cerrado por subfórmulas. Se
llama filtración de M vía Σ a cualquier modelo Mf = hW f , Rf , V f i
que cumpla
I.
II .
W f = W/ !Σ
Si Rwv, entonces Rf [w][v]
III .
Si Rf [w][v] y 3ϕ ∈ Σ, entonces M, v |= ϕ implica M, w |= 3ϕ
IV .
V f (p) = {[w] | M, w |= p} para todo p ∈ Σ
I
I
: Bisimulaciones
Las condiciones II y III tienen algo de zig y zag
Intuitivamente, nos dicen qué pares tiene que tener Rf como
mínimo (II) y como máximo (III).
Carlos Areces / Daniel Gorín / Sergio Mera
Filtraciones. . . ¿para que?
Teorema (Filtration Theorem)
Sea Mf la filtración vía Σ de M, donde Σ es un conjunto de fórmulas
de la lógica modal básica, cerrado por subfórmulas. Para toda
fórmula ϕ ∈ Σ y todo elemento w de M, M, w |= ϕ sii Mf , [w] |= ϕ
Demostración.
Inducción en ϕ. Caso base, por definición de V f . Booleanos, por HI.
I Si 3ψ ∈ Σ y M, w |= 3ψ
I
I
I
I
Si 3ψ ∈ Σ y Mf , [w] |= 3ψ
I
I
: Bisimulaciones
Existe v tal que Rwv y M, v |= ψ
Por II, Rf [w][v] y como ψ ∈ Σ, por HI Mf , [v] |= ψ
Con lo cual Mf , [w] |= 3ψ
Para algún [v], Rf [w][v] y Mf , [v] |= ψ
Como ψ ∈ Σ, por HI, M, v |= ψ; luego, por III M, w |= 3ψ
Carlos Areces / Daniel Gorín / Sergio Mera
Filtraciones, mito o realidad
I
I
Si Mf cumple ciertas condiciones, vale el Filtration Theorem
Preguntas:
I
I
: Bisimulaciones
¿Serán condiciones que se pueden cumplir?
O sea, dado M y Σ, existirá siempre una filtración de M vía Σ
Carlos Areces / Daniel Gorín / Sergio Mera
Filtraciones, ¡realidad!
Teorema
Sea M = hW, R, Vi y sea Σ un conjunto cerrado por subfórmulas.
Llamemos W f a W/ !Σ , y V f a la valuación que cumple con IV.
Entonces, Ms = hW f , Rs , V f i y Ml = hW f , Rl , V f i son filtraciones de
M vía Σ, donde
Rs [w][v]
sii
∃w0 ∈ [w] y ∃v0 ∈ [v] tal que Rw0 v0
Rl [w][v]
sii
para toda 3ϕ ∈ Σ, M, v |= ϕ implica M, w |= 3ϕ
Además, si Mf = hW f , Rf , V f i es una filtración de M vía Σ,
entonces Rs ⊆ Rf ⊆ Rl
: Bisimulaciones
Carlos Areces / Daniel Gorín / Sergio Mera
Filtraciones, ¡realidad!
Demostración.
Veamos que Ms = hW f , Rs , V f i es una filtración (el
resto. . . ejercicio!). Alcanza con ver que Rs cumple con II y III.
I
Rs cumple II por definición
I
Para III, supongamos que Rs [w][v] y que M, v |= ϕ para 3ϕ ∈ Σ
I
Necesitamos ver que M, w |= 3ϕ
I
Como Rs [w][v], existen w0 ∈ [w] y v0 ∈ [v] tales que Rwv
I
Pero ϕ ∈ Σ, y v0 !Σ v, con lo cual M, v0 |= ϕ
I
Luego, M, w0 |= 3ϕ
I
Pero como w0 !Σ w y 3ϕ ∈ Σ, M, w |= 3ϕ
: Bisimulaciones
Carlos Areces / Daniel Gorín / Sergio Mera
Propiedad de modelos finitos vía filtraciones
Teorema
Sea ϕ una fórmula de la lógica modal básica. Si ϕ es satisfacible, es
satisfacible en un modelo finito, que contiene a lo sumo 2m nodos,
donde m es la cantidad de subfórmulas de ϕ (m ≤ |ϕ|)
Demostración.
I
Supongamos que ϕ es satisfacible, i.e., M, w |= ϕ
I
Sea Σ := {ψ | ψ es subfórmula de ϕ}. Observar que Σ es finito
I
Sea, además, Mf una filtración de M vía Σ.
I
Vale Mf , [w] |= ϕ
I
¿Cuántos elementos tiene Mf ?
I
¡A lo sumo 2|Σ| !
: Bisimulaciones
Carlos Areces / Daniel Gorín / Sergio Mera
Filtraciones =⇒ propiedad de modelo acotado
I
Probamos una propiedad más fuerte que “modelo finito”
I
Porque podemos dar una cota para el tamaño del modelo
I
Y si podemos hacer eso, ya no necesitamos una axiomatización
para tener decidibilidad
: Bisimulaciones
Carlos Areces / Daniel Gorín / Sergio Mera
Propiedad de modelo acotado ≈ decidibilidad
funcion buscarModeloAcotado(ϕ, C)
1. S ← símbolos que aparecen en ϕ
2. k ← cota para el tamaño de un modelo para ϕ
3. para n ← 1, 2, 3, . . . , k
4.
5.
para M ← modelos de S de tamaño n
si M está en C y M |= ϕ
devolver ¡SI!
6. devolver ¡NO!
Fig. 4 – buscarModeloAcotado.java
: Bisimulaciones
Carlos Areces / Daniel Gorín / Sergio Mera
¿Y cómo se usa esto con otras clases de modelos?
I
Vimos que hay al menos dos filtraciones posibles (la que usa Rs
y la que usa Rl )
I
Es fácil ver que, por ejemplo, ni Rs ni Rl preservan la
transitividad de R
I
¡Pero veremos que hay otras Rf que sí!
: Bisimulaciones
Carlos Areces / Daniel Gorín / Sergio Mera