Lógica y Acción - Logic in Action

Anuncio
Lógica en Acción
Capı́tulo 6: Lógica y Acción
http://www.logicinaction.org/
(http://www.logicinaction.org/)
1 / 25
Acciones en General
Acciones
Diferentes tipos de acciones:
(http://www.logicinaction.org/)
2 / 25
Acciones en General
Acciones
Diferentes tipos de acciones:
Ella apaga la luz,
(http://www.logicinaction.org/)
2 / 25
Acciones en General
Acciones
Diferentes tipos de acciones:
Ella apaga la luz,
Guardas la leche en el refrigerador,
(http://www.logicinaction.org/)
2 / 25
Acciones en General
Acciones
Diferentes tipos de acciones:
Ella apaga la luz,
Guardas la leche en el refrigerador,
La manzana cae al suelo,
(http://www.logicinaction.org/)
2 / 25
Acciones en General
Acciones
Diferentes tipos de acciones:
Ella apaga la luz,
Guardas la leche en el refrigerador,
La manzana cae al suelo,
Envı́o la solicitud después de llenarla,
(http://www.logicinaction.org/)
2 / 25
Acciones en General
Acciones
Diferentes tipos de acciones:
Ella apaga la luz,
Guardas la leche en el refrigerador,
La manzana cae al suelo,
Envı́o la solicitud después de llenarla,
Él pregunta solo cuando sabe la respuesta,
(http://www.logicinaction.org/)
2 / 25
Acciones en General
Acciones
Diferentes tipos de acciones:
Ella apaga la luz,
Guardas la leche en el refrigerador,
La manzana cae al suelo,
Envı́o la solicitud después de llenarla,
Él pregunta solo cuando sabe la respuesta,
Ellos no hacen nada.
(http://www.logicinaction.org/)
2 / 25
Acciones en General
El efecto de una acción
Una acción pueden ser caracterizada de acuerdo a su efecto:
(http://www.logicinaction.org/)
3 / 25
Acciones en General
El efecto de una acción
Una acción pueden ser caracterizada de acuerdo a su efecto:
Después de apagar la luz, estaremos en la obscuridad.
(http://www.logicinaction.org/)
3 / 25
Acciones en General
El efecto de una acción
Una acción pueden ser caracterizada de acuerdo a su efecto:
Después de apagar la luz, estaremos en la obscuridad.
Después de poner la leche en el refrigerador, esta se enfriará.
(http://www.logicinaction.org/)
3 / 25
Acciones en General
El efecto de una acción
Una acción pueden ser caracterizada de acuerdo a su efecto:
Después de apagar la luz, estaremos en la obscuridad.
Después de poner la leche en el refrigerador, esta se enfriará.
Una vez que la manzana caiga al suelo se empezara a
descomponer.
(http://www.logicinaction.org/)
3 / 25
Acciones en General
El efecto de una acción
Una acción pueden ser caracterizada de acuerdo a su efecto:
Después de apagar la luz, estaremos en la obscuridad.
Después de poner la leche en el refrigerador, esta se enfriará.
Una vez que la manzana caiga al suelo se empezara a
descomponer.
Normalmente el jurado recibirá la solicitud después de que el
solicitante la envı́e, pero algunas veces la solicitud puede perderse.
(http://www.logicinaction.org/)
3 / 25
Acciones en General
El efecto de una acción
Una acción pueden ser caracterizada de acuerdo a su efecto:
Después de apagar la luz, estaremos en la obscuridad.
Después de poner la leche en el refrigerador, esta se enfriará.
Una vez que la manzana caiga al suelo se empezara a
descomponer.
Normalmente el jurado recibirá la solicitud después de que el
solicitante la envı́e, pero algunas veces la solicitud puede perderse.
Después de que el profesor hizo una pregunta, los estudiantes
permanecieron callados.
(http://www.logicinaction.org/)
3 / 25
Acciones en General
El efecto de una acción
Una acción pueden ser caracterizada de acuerdo a su efecto:
Después de apagar la luz, estaremos en la obscuridad.
Después de poner la leche en el refrigerador, esta se enfriará.
Una vez que la manzana caiga al suelo se empezara a
descomponer.
Normalmente el jurado recibirá la solicitud después de que el
solicitante la envı́e, pero algunas veces la solicitud puede perderse.
Después de que el profesor hizo una pregunta, los estudiantes
permanecieron callados.
Después de no hacer nada, todo sigue igual.
(http://www.logicinaction.org/)
3 / 25
Composición, Elección, Repetición, Verificación
Operaciones sobre acciones
Las acciones pueden ser combinadas en diversas formas:
(http://www.logicinaction.org/)
4 / 25
Composición, Elección, Repetición, Verificación
Operaciones sobre acciones
Las acciones pueden ser combinadas en diversas formas:
Composición. Ejecuta una acción después de otra:
Vierte la mezcla sobre la carne y luego cubre el recipiente.
(http://www.logicinaction.org/)
4 / 25
Composición, Elección, Repetición, Verificación
Operaciones sobre acciones
Las acciones pueden ser combinadas en diversas formas:
Composición. Ejecuta una acción después de otra:
Vierte la mezcla sobre la carne y luego cubre el recipiente.
Elección. Elige entre dos acciones:
Dame una de las cajas.
(http://www.logicinaction.org/)
4 / 25
Composición, Elección, Repetición, Verificación
Operaciones sobre acciones
Las acciones pueden ser combinadas en diversas formas:
Composición. Ejecuta una acción después de otra:
Vierte la mezcla sobre la carne y luego cubre el recipiente.
Elección. Elige entre dos acciones:
Dame una de las cajas.
Repetición. Realiza la misma acción varias veces:
Bate hasta que el azúcar se integre.
(http://www.logicinaction.org/)
4 / 25
Composición, Elección, Repetición, Verificación
Operaciones sobre acciones
Las acciones pueden ser combinadas en diversas formas:
Composición. Ejecuta una acción después de otra:
Vierte la mezcla sobre la carne y luego cubre el recipiente.
Elección. Elige entre dos acciones:
Dame una de las cajas.
Repetición. Realiza la misma acción varias veces:
Bate hasta que el azúcar se integre.
Verificación. Verifica si cierta condición se cumple:
Revisa si está lloviendo.
(http://www.logicinaction.org/)
4 / 25
Composición, Elección, Repetición, Verificación
Operaciones sobre acciones
Las acciones pueden ser combinadas en diversas formas:
Composición. Ejecuta una acción después de otra:
Vierte la mezcla sobre la carne y luego cubre el recipiente.
Elección. Elige entre dos acciones:
Dame una de las cajas.
Repetición. Realiza la misma acción varias veces:
Bate hasta que el azúcar se integre.
Verificación. Verifica si cierta condición se cumple:
Revisa si está lloviendo.
Deshacer. Deshacer una acción:
Cierra la ventana que acabas de abrir.
(http://www.logicinaction.org/)
4 / 25
Composición, Elección, Repetición, Verificación
Ejemplo: lenguajes de programación
Tres estructuras de control en lenguajes de programación:
(http://www.logicinaction.org/)
5 / 25
Composición, Elección, Repetición, Verificación
Ejemplo: lenguajes de programación
Tres estructuras de control en lenguajes de programación:
1
WHILE P do A
(http://www.logicinaction.org/)
5 / 25
Composición, Elección, Repetición, Verificación
Ejemplo: lenguajes de programación
Tres estructuras de control en lenguajes de programación:
1
WHILE P do A
Puede ser definido como el repetir la verificación de ‘P ’ y la ejecución de
‘A’, y luego verificar ‘no A’.
(http://www.logicinaction.org/)
5 / 25
Composición, Elección, Repetición, Verificación
Ejemplo: lenguajes de programación
Tres estructuras de control en lenguajes de programación:
1
WHILE P do A
Puede ser definido como el repetir la verificación de ‘P ’ y la ejecución de
‘A’, y luego verificar ‘no A’.
2
REPEAT A UNTIL P
(http://www.logicinaction.org/)
5 / 25
Composición, Elección, Repetición, Verificación
Ejemplo: lenguajes de programación
Tres estructuras de control en lenguajes de programación:
1
WHILE P do A
Puede ser definido como el repetir la verificación de ‘P ’ y la ejecución de
‘A’, y luego verificar ‘no A’.
2
REPEAT A UNTIL P
Puede ser definido como la composición de ‘A’ y luego WHILE (not P)
do A.
(http://www.logicinaction.org/)
5 / 25
Composición, Elección, Repetición, Verificación
Ejemplo: lenguajes de programación
Tres estructuras de control en lenguajes de programación:
1
WHILE P do A
Puede ser definido como el repetir la verificación de ‘P ’ y la ejecución de
‘A’, y luego verificar ‘no A’.
2
REPEAT A UNTIL P
Puede ser definido como la composición de ‘A’ y luego WHILE (not P)
do A.
3
IF P THEN A ELSE B
(http://www.logicinaction.org/)
5 / 25
Composición, Elección, Repetición, Verificación
Ejemplo: lenguajes de programación
Tres estructuras de control en lenguajes de programación:
1
WHILE P do A
Puede ser definido como el repetir la verificación de ‘P ’ y la ejecución de
‘A’, y luego verificar ‘no A’.
2
REPEAT A UNTIL P
Puede ser definido como la composición de ‘A’ y luego WHILE (not P)
do A.
3
IF P THEN A ELSE B
Puede ser definido como una elección entre verificar ‘P ’ y luego ejecutar
‘A’, o verificar ‘not P ’ y luego ejecutar ‘B’.
(http://www.logicinaction.org/)
5 / 25
Acciones como Relaciones
Representando acciones de manera abstracta (1)
Las acciones pueden ser representadas como transiciones entre estados:
(http://www.logicinaction.org/)
6 / 25
Acciones como Relaciones
Representando acciones de manera abstracta (1)
Las acciones pueden ser representadas como transiciones entre estados:
Luz encendida
(http://www.logicinaction.org/)
Luz apagada
6 / 25
Acciones como Relaciones
Representando acciones de manera abstracta (1)
Las acciones pueden ser representadas como transiciones entre estados:
Luz encendida
(http://www.logicinaction.org/)
Oprime el interruptor
Luz apagada
6 / 25
Acciones como Relaciones
Representando acciones de manera abstracta (1)
Las acciones pueden ser representadas como transiciones entre estados:
Luz encendida
Oprime el interruptor
Luz apagada
La carta
llega a su
destino
Tengo
la carta
La carta
se pierde
(http://www.logicinaction.org/)
6 / 25
Acciones como Relaciones
Representando acciones de manera abstracta (1)
Las acciones pueden ser representadas como transiciones entre estados:
Luz encendida
Oprime el interruptor
Enviarla
Luz apagada
La carta
llega a su
destino
Tengo
la carta
Enviarla
(http://www.logicinaction.org/)
La carta
se pierde
6 / 25
Acciones como Relaciones
Representando acciones de manera abstracta (2)
Formalmente, si tomamos un conjunto de estados S = {s1 , s2 , . . .},
(http://www.logicinaction.org/)
7 / 25
Acciones como Relaciones
Representando acciones de manera abstracta (2)
Formalmente, si tomamos un conjunto de estados S = {s1 , s2 , . . .},
s2
s1
s4
(http://www.logicinaction.org/)
s3
7 / 25
Acciones como Relaciones
Representando acciones de manera abstracta (2)
Formalmente, si tomamos un conjunto de estados S = {s1 , s2 , . . .}, podemos
representar acciones como relaciones binarias en S.
s2
s1
s4
(http://www.logicinaction.org/)
s3
7 / 25
Acciones como Relaciones
Representando acciones de manera abstracta (2)
Formalmente, si tomamos un conjunto de estados S = {s1 , s2 , . . .}, podemos
representar acciones como relaciones binarias en S.
a
a
a
s1
s4
b
s2
b
s3
b
(http://www.logicinaction.org/)
7 / 25
Acciones como Relaciones
Representando acciones de manera abstracta (2)
Formalmente, si tomamos un conjunto de estados S = {s1 , s2 , . . .}, podemos
representar acciones como relaciones binarias en S.
a
a
a
s1
s4
b
s2
b
s3
b
Ra := {(s1 , s1 ), (s1 , s2 ), (s2 , s2 )}
Rb := {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
(http://www.logicinaction.org/)
7 / 25
Operaciones sobre relaciones
Operaciones sobre relaciones (1)
Sea S un conjunto {s1 , s2 , . . .}.
s2
s1
s4
s3
(http://www.logicinaction.org/)
8 / 25
Operaciones sobre relaciones
Operaciones sobre relaciones (1)
Sea S un conjunto {s1 , s2 , . . .}.
La relación de identidad.
I := {(s, s) | s ∈ S}
s2
s1
s4
s3
(http://www.logicinaction.org/)
8 / 25
Operaciones sobre relaciones
Operaciones sobre relaciones (1)
Sea S un conjunto {s1 , s2 , . . .}.
La relación de identidad.
I := {(s, s) | s ∈ S}
s2
I = {(s1 , s1 ), (s2 , s2 ), (s3 , s3 ), (s4 , s4 )}
s1
s4
s3
(http://www.logicinaction.org/)
8 / 25
Operaciones sobre relaciones
Operaciones sobre relaciones (1)
Sea S un conjunto {s1 , s2 , . . .}.
La relación de identidad.
I := {(s, s) | s ∈ S}
s2
I = {(s1 , s1 ), (s2 , s2 ), (s3 , s3 ), (s4 , s4 )}
s1
s4
s3
(http://www.logicinaction.org/)
8 / 25
Operaciones sobre relaciones
Operaciones sobre relaciones (2)
Sea S un conjunto {s1 , s2 , . . .}, y sean Ra , Rb relaciones binarias en S.
a
a
a
s1
s4
s2
b
Ra := {(s1 , s1 ), (s1 , s2 ), (s2 , s2 )}
Rb := {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
s3
b
b
(http://www.logicinaction.org/)
9 / 25
Operaciones sobre relaciones
Operaciones sobre relaciones (2)
Sea S un conjunto {s1 , s2 , . . .}, y sean Ra , Rb relaciones binarias en S.
Composición.
Ra ◦ Rb := {(s, s0 ) | existe un s00 ∈ S tal que Ra ss00 y Rb s00 s0 }
a
a
a
s1
s4
s2
b
Ra := {(s1 , s1 ), (s1 , s2 ), (s2 , s2 )}
Rb := {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
s3
b
b
(http://www.logicinaction.org/)
9 / 25
Operaciones sobre relaciones
Operaciones sobre relaciones (2)
Sea S un conjunto {s1 , s2 , . . .}, y sean Ra , Rb relaciones binarias en S.
Composición.
Ra ◦ Rb := {(s, s0 ) | existe un s00 ∈ S tal que Ra ss00 y Rb s00 s0 }
a
a
a
s1
s4
s2
b
s3
b
Ra := {(s1 , s1 ), (s1 , s2 ), (s2 , s2 )}
Rb := {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
Ra ◦ Rb = {(s1 , s4 ), (s1 , s3 ), (s2 , s3 )}
b
(http://www.logicinaction.org/)
9 / 25
Operaciones sobre relaciones
Operaciones sobre relaciones (2)
Sea S un conjunto {s1 , s2 , . . .}, y sean Ra , Rb relaciones binarias en S.
Composición.
Ra ◦ Rb := {(s, s0 ) | existe un s00 ∈ S tal que Ra ss00 y Rb s00 s0 }
a
a
a
s1
s4
s2
b
s3
b
Ra := {(s1 , s1 ), (s1 , s2 ), (s2 , s2 )}
Rb := {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
Ra ◦ Rb = {(s1 , s4 ), (s1 , s3 ), (s2 , s3 )}
b
(http://www.logicinaction.org/)
9 / 25
Operaciones sobre relaciones
Operaciones sobre relaciones (2)
Sea S un conjunto {s1 , s2 , . . .}, y sean Ra , Rb relaciones binarias en S.
Composición.
Ra ◦ Rb := {(s, s0 ) | existe un s00 ∈ S tal que Ra ss00 y Rb s00 s0 }
a
a
a
s1
s4
s2
b
s3
b
Ra := {(s1 , s1 ), (s1 , s2 ), (s2 , s2 )}
Rb := {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
Ra ◦ Rb = {(s1 , s4 ), (s1 , s3 ), (s2 , s3 )}
b
En particular, dada una relación Ra , definimos
0
Ra
:= I,
1
0
Ra
:= Ra ◦ Ra
,
(http://www.logicinaction.org/)
2
1
Ra
:= Ra ◦ Ra
,
3
2
Ra
:= Ra ◦ Ra
,
...
9 / 25
Operaciones sobre relaciones
Operaciones sobre relaciones (3)
Sea S un conjunto {s1 , s2 , . . .}, y sean Ra , Rb relaciones binarias en S.
a
a
a
s1
s4
s2
b
Ra := {(s1 , s1 ), (s1 , s2 ), (s2 , s2 )}
Rb := {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
s3
b
b
(http://www.logicinaction.org/)
10 / 25
Operaciones sobre relaciones
Operaciones sobre relaciones (3)
Sea S un conjunto {s1 , s2 , . . .}, y sean Ra , Rb relaciones binarias en S.
Union.
Ra ∪ Rb := {(s, s0 ) | Ra ss0 o Rb ss0 }
a
a
a
s1
s4
s2
b
Ra := {(s1 , s1 ), (s1 , s2 ), (s2 , s2 )}
Rb := {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
s3
b
b
(http://www.logicinaction.org/)
10 / 25
Operaciones sobre relaciones
Operaciones sobre relaciones (3)
Sea S un conjunto {s1 , s2 , . . .}, y sean Ra , Rb relaciones binarias en S.
Union.
Ra ∪ Rb := {(s, s0 ) | Ra ss0 o Rb ss0 }
a
a
a
s1
s4
s2
b
s3
b
Ra := {(s1 , s1 ), (s1 , s2 ), (s2 , s2 )}
Rb := {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
Ra ∪ Rb = {(s1 , s1 ), (s1 , s2 ), (s2 , s2 )
(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
b
(http://www.logicinaction.org/)
10 / 25
Operaciones sobre relaciones
Operaciones sobre relaciones (3)
Sea S un conjunto {s1 , s2 , . . .}, y sean Ra , Rb relaciones binarias en S.
Union.
Ra ∪ Rb := {(s, s0 ) | Ra ss0 o Rb ss0 }
a
a
a
s1
s4
s2
b
s3
b
Ra := {(s1 , s1 ), (s1 , s2 ), (s2 , s2 )}
Rb := {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
Ra ∪ Rb = {(s1 , s1 ), (s1 , s2 ), (s2 , s2 )
(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
b
(http://www.logicinaction.org/)
10 / 25
Operaciones sobre relaciones
Operaciones sobre relaciones (4)
Sea S un conjunto {s1 , s2 , . . .}, y sean Ra , Rb relaciones binarias en S.
Rb := {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
a
a
a
s1
s4
s2
b
s3
b
b
(http://www.logicinaction.org/)
11 / 25
Operaciones sobre relaciones
Operaciones sobre relaciones (4)
Sea S un conjunto {s1 , s2 , . . .}, y sean Ra , Rb relaciones binarias en S.
Repetición cero o mas veces.
∗
n
Ra
:= {(s, s0 ) | Ra
ss0 para algún n ∈ N}
Rb := {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
a
a
a
s1
s4
s2
b
s3
b
b
(http://www.logicinaction.org/)
11 / 25
Operaciones sobre relaciones
Operaciones sobre relaciones (4)
Sea S un conjunto {s1 , s2 , . . .}, y sean Ra , Rb relaciones binarias en S.
Repetición cero o mas veces.
∗
n
Ra
:= {(s, s0 ) | Ra
ss0 para algún n ∈ N}
Rb := {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
a
Rb0 = {(s1 , s1 ), (s2 , s2 ), (s3 , s3 ), (s4 , s4 )}
a
a
s1
s4
s2
b
s3
b
b
(http://www.logicinaction.org/)
11 / 25
Operaciones sobre relaciones
Operaciones sobre relaciones (4)
Sea S un conjunto {s1 , s2 , . . .}, y sean Ra , Rb relaciones binarias en S.
Repetición cero o mas veces.
∗
n
Ra
:= {(s, s0 ) | Ra
ss0 para algún n ∈ N}
Rb := {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
a
Rb0 = {(s1 , s1 ), (s2 , s2 ), (s3 , s3 ), (s4 , s4 )}
a
a
s1
s4
s2
b
s3
b
b
(http://www.logicinaction.org/)
11 / 25
Operaciones sobre relaciones
Operaciones sobre relaciones (4)
Sea S un conjunto {s1 , s2 , . . .}, y sean Ra , Rb relaciones binarias en S.
Repetición cero o mas veces.
∗
n
Ra
:= {(s, s0 ) | Ra
ss0 para algún n ∈ N}
Rb := {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
a
a
a
s1
s4
s2
Rb0 = {(s1 , s1 ), (s2 , s2 ), (s3 , s3 ), (s4 , s4 )}
Rb1 = {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
b
s3
b
b
(http://www.logicinaction.org/)
11 / 25
Operaciones sobre relaciones
Operaciones sobre relaciones (4)
Sea S un conjunto {s1 , s2 , . . .}, y sean Ra , Rb relaciones binarias en S.
Repetición cero o mas veces.
∗
n
Ra
:= {(s, s0 ) | Ra
ss0 para algún n ∈ N}
Rb := {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
a
a
a
s1
s4
s2
Rb0 = {(s1 , s1 ), (s2 , s2 ), (s3 , s3 ), (s4 , s4 )}
Rb1 = {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
b
s3
b
b
(http://www.logicinaction.org/)
11 / 25
Operaciones sobre relaciones
Operaciones sobre relaciones (4)
Sea S un conjunto {s1 , s2 , . . .}, y sean Ra , Rb relaciones binarias en S.
Repetición cero o mas veces.
∗
n
Ra
:= {(s, s0 ) | Ra
ss0 para algún n ∈ N}
Rb := {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
a
a
a
s1
s4
s2
b
Rb0 = {(s1 , s1 ), (s2 , s2 ), (s3 , s3 ), (s4 , s4 )}
Rb1 = {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
Rb2 = {(s1 , s4 ), (s2 , s3 ), (s4 , s3 ), (s1 , s3 )}
s3
b
b
(http://www.logicinaction.org/)
11 / 25
Operaciones sobre relaciones
Operaciones sobre relaciones (4)
Sea S un conjunto {s1 , s2 , . . .}, y sean Ra , Rb relaciones binarias en S.
Repetición cero o mas veces.
∗
n
Ra
:= {(s, s0 ) | Ra
ss0 para algún n ∈ N}
Rb := {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
a
a
a
s1
s4
s2
b
Rb0 = {(s1 , s1 ), (s2 , s2 ), (s3 , s3 ), (s4 , s4 )}
Rb1 = {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
Rb2 = {(s1 , s4 ), (s2 , s3 ), (s4 , s3 ), (s1 , s3 )}
s3
b
b
(http://www.logicinaction.org/)
11 / 25
Operaciones sobre relaciones
Operaciones sobre relaciones (4)
Sea S un conjunto {s1 , s2 , . . .}, y sean Ra , Rb relaciones binarias en S.
Repetición cero o mas veces.
∗
n
Ra
:= {(s, s0 ) | Ra
ss0 para algún n ∈ N}
Rb := {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
a
a
a
s1
s4
s2
b
s3
b
Rb0 = {(s1 , s1 ), (s2 , s2 ), (s3 , s3 ), (s4 , s4 )}
Rb1 = {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
Rb2 = {(s1 , s4 ), (s2 , s3 ), (s4 , s3 ), (s1 , s3 )}
Rb3 = {(s1 , s4 ), (s2 , s3 ), (s4 , s3 ), (s1 , s3 )}
b
(http://www.logicinaction.org/)
11 / 25
Operaciones sobre relaciones
Operaciones sobre relaciones (4)
Sea S un conjunto {s1 , s2 , . . .}, y sean Ra , Rb relaciones binarias en S.
Repetición cero o mas veces.
∗
n
Ra
:= {(s, s0 ) | Ra
ss0 para algún n ∈ N}
Rb := {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
a
a
a
s1
s4
s2
b
s3
b
b
(http://www.logicinaction.org/)
Rb0 = {(s1 , s1 ), (s2 , s2 ), (s3 , s3 ), (s4 , s4 )}
Rb1 = {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
Rb2 = {(s1 , s4 ), (s2 , s3 ), (s4 , s3 ), (s1 , s3 )}
Rb3 = {(s1 , s4 ), (s2 , s3 ), (s4 , s3 ), (s1 , s3 )}
..
.
11 / 25
Operaciones sobre relaciones
Operaciones sobre relaciones (4)
Sea S un conjunto {s1 , s2 , . . .}, y sean Ra , Rb relaciones binarias en S.
Repetición cero o mas veces.
∗
n
Ra
:= {(s, s0 ) | Ra
ss0 para algún n ∈ N}
Rb := {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
a
a
a
s1
s4
s2
b
s3
b
b
Rb0 = {(s1 , s1 ), (s2 , s2 ), (s3 , s3 ), (s4 , s4 )}
Rb1 = {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
Rb2 = {(s1 , s4 ), (s2 , s3 ), (s4 , s3 ), (s1 , s3 )}
Rb3 = {(s1 , s4 ), (s2 , s3 ), (s4 , s3 ), (s1 , s3 )}
..
.
Rb∗ = {(s1 , s1 ), (s2 , s2 ), (s3 , s3 ), (s4 , s4 ),
(s1 , s4 ), (s2 , s3 ), (s4 , s3 ), (s1 , s3 )}
(http://www.logicinaction.org/)
11 / 25
Operaciones sobre relaciones
Operaciones sobre relaciones (5)
Sea S un conjunto {s1 , s2 , . . .}, y sean Ra , Rb relaciones binarias en S.
a
a
a
s1
s4
s2
b
Rb := {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
s3
b
b
(http://www.logicinaction.org/)
12 / 25
Operaciones sobre relaciones
Operaciones sobre relaciones (5)
Sea S un conjunto {s1 , s2 , . . .}, y sean Ra , Rb relaciones binarias en S.
Opuesta.
Rˇa := {(s0 , s) | Ra ss0 }
a
a
a
s1
s4
s2
b
Rb := {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
s3
b
b
(http://www.logicinaction.org/)
12 / 25
Operaciones sobre relaciones
Operaciones sobre relaciones (5)
Sea S un conjunto {s1 , s2 , . . .}, y sean Ra , Rb relaciones binarias en S.
Opuesta.
Rˇa := {(s0 , s) | Ra ss0 }
a
a
a
s1
s4
s2
b
s3
b
Rb := {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
Rˇb = {(s4 , s1 ), (s3 , s2 ), (s3 , s4 )}
b
(http://www.logicinaction.org/)
12 / 25
Operaciones sobre relaciones
Operaciones sobre relaciones (5)
Sea S un conjunto {s1 , s2 , . . .}, y sean Ra , Rb relaciones binarias en S.
Opuesta.
Rˇa := {(s0 , s) | Ra ss0 }
a
a
a
s1
s4
s2
b
s3
b
Rb := {(s1 , s4 ), (s2 , s3 ), (s4 , s3 )}
Rˇb = {(s4 , s1 ), (s3 , s2 ), (s3 , s4 )}
b
(http://www.logicinaction.org/)
12 / 25
Lógica proposicional y acciones: LDP
Sintaxis (1)
El lenguaje de la lógica dinámica proposicional (LDP) tiene dos partes,
fórmulas ϕ y acciones α.
Las fórmulas se construyen mediante la siguiente regla.
(http://www.logicinaction.org/)
13 / 25
Lógica proposicional y acciones: LDP
Sintaxis (1)
El lenguaje de la lógica dinámica proposicional (LDP) tiene dos partes,
fórmulas ϕ y acciones α.
Las fórmulas se construyen mediante la siguiente regla.
Todo enunciado básico es una fórmula
p,
(http://www.logicinaction.org/)
q,
r,
...
13 / 25
Lógica proposicional y acciones: LDP
Sintaxis (1)
El lenguaje de la lógica dinámica proposicional (LDP) tiene dos partes,
fórmulas ϕ y acciones α.
Las fórmulas se construyen mediante la siguiente regla.
Todo enunciado básico es una fórmula
p,
q,
r,
...
Si ϕ y ψ son fórmulas, también lo son:
¬ϕ,
(http://www.logicinaction.org/)
ϕ ∧ ψ,
ϕ ∨ ψ,
ϕ → ψ,
ϕ↔ψ
13 / 25
Lógica proposicional y acciones: LDP
Sintaxis (1)
El lenguaje de la lógica dinámica proposicional (LDP) tiene dos partes,
fórmulas ϕ y acciones α.
Las fórmulas se construyen mediante la siguiente regla.
Todo enunciado básico es una fórmula
p,
q,
r,
...
Si ϕ y ψ son fórmulas, también lo son:
¬ϕ,
ϕ ∧ ψ,
ϕ ∨ ψ,
ϕ → ψ,
ϕ↔ψ
Si ϕ es una fórmula y α una acción, la siguiente es una fórmula:
hαi ϕ
(http://www.logicinaction.org/)
13 / 25
Lógica proposicional y acciones: LDP
Sintaxis (2)
El lenguaje de la lógica dinámica proposicional (LDP) tiene dos partes,
fórmulas ϕ y acciones α.
Las acciones se construyen mediante las siguientes reglas
(http://www.logicinaction.org/)
14 / 25
Lógica proposicional y acciones: LDP
Sintaxis (2)
El lenguaje de la lógica dinámica proposicional (LDP) tiene dos partes,
fórmulas ϕ y acciones α.
Las acciones se construyen mediante las siguientes reglas
Toda acción básica es una acción
a,
(http://www.logicinaction.org/)
b,
c,
...
14 / 25
Lógica proposicional y acciones: LDP
Sintaxis (2)
El lenguaje de la lógica dinámica proposicional (LDP) tiene dos partes,
fórmulas ϕ y acciones α.
Las acciones se construyen mediante las siguientes reglas
Toda acción básica es una acción
a,
b,
c,
...
Si α y β son acciones, también lo son:
α; β ,
(http://www.logicinaction.org/)
α∪β,
α∗
14 / 25
Lógica proposicional y acciones: LDP
Sintaxis (2)
El lenguaje de la lógica dinámica proposicional (LDP) tiene dos partes,
fórmulas ϕ y acciones α.
Las acciones se construyen mediante las siguientes reglas
Toda acción básica es una acción
a,
b,
c,
...
Si α y β son acciones, también lo son:
α; β ,
α∪β,
α∗
Si ϕ es una fórmula la siguiente es una acción:
?ϕ
(http://www.logicinaction.org/)
14 / 25
Lógica proposicional y acciones: LDP
Intuiciones y abreviaciones
α; β
α∪β
α∗
?ϕ
hαi ϕ
(http://www.logicinaction.org/)
15 / 25
Lógica proposicional y acciones: LDP
Intuiciones y abreviaciones
α; β
composición: ejecuta α y luego β.
α∪β
α∗
?ϕ
hαi ϕ
(http://www.logicinaction.org/)
15 / 25
Lógica proposicional y acciones: LDP
Intuiciones y abreviaciones
α; β
α∪β
composición: ejecuta α y luego β.
elección no determinista: ejecuta α o β.
α∗
?ϕ
hαi ϕ
(http://www.logicinaction.org/)
15 / 25
Lógica proposicional y acciones: LDP
Intuiciones y abreviaciones
α; β
α∪β
α∗
composición: ejecuta α y luego β.
elección no determinista: ejecuta α o β.
repetición: ejecuta α cero, una, o cualquier número finito de veces.
?ϕ
hαi ϕ
(http://www.logicinaction.org/)
15 / 25
Lógica proposicional y acciones: LDP
Intuiciones y abreviaciones
α; β
α∪β
composición: ejecuta α y luego β.
elección no determinista: ejecuta α o β.
α∗
repetición: ejecuta α cero, una, o cualquier número finito de veces.
?ϕ
verificación: verifica si ϕ es verdadera o no.
hαi ϕ
(http://www.logicinaction.org/)
15 / 25
Lógica proposicional y acciones: LDP
Intuiciones y abreviaciones
α; β
α∪β
composición: ejecuta α y luego β.
elección no determinista: ejecuta α o β.
α∗
repetición: ejecuta α cero, una, o cualquier número finito de veces.
?ϕ
verificación: verifica si ϕ es verdadera o no.
hαi ϕ
α puede ser ejecutada de forma que, después de hacerlo, ϕ es verdadera.
(http://www.logicinaction.org/)
15 / 25
Lógica proposicional y acciones: LDP
Intuiciones y abreviaciones
α; β
α∪β
composición: ejecuta α y luego β.
elección no determinista: ejecuta α o β.
α∗
repetición: ejecuta α cero, una, o cualquier número finito de veces.
?ϕ
verificación: verifica si ϕ es verdadera o no.
hαi ϕ
α puede ser ejecutada de forma que, después de hacerlo, ϕ es verdadera.
Abreviaremos p ∨ ¬p como >.
(http://www.logicinaction.org/)
15 / 25
Lógica proposicional y acciones: LDP
Intuiciones y abreviaciones
α; β
α∪β
composición: ejecuta α y luego β.
elección no determinista: ejecuta α o β.
α∗
repetición: ejecuta α cero, una, o cualquier número finito de veces.
?ϕ
verificación: verifica si ϕ es verdadera o no.
hαi ϕ
α puede ser ejecutada de forma que, después de hacerlo, ϕ es verdadera.
Abreviaremos p ∨ ¬p como >.
Abreviaremos ¬> como ⊥.
(http://www.logicinaction.org/)
15 / 25
Lógica proposicional y acciones: LDP
Intuiciones y abreviaciones
α; β
α∪β
composición: ejecuta α y luego β.
elección no determinista: ejecuta α o β.
α∗
repetición: ejecuta α cero, una, o cualquier número finito de veces.
?ϕ
verificación: verifica si ϕ es verdadera o no.
hαi ϕ
α puede ser ejecutada de forma que, después de hacerlo, ϕ es verdadera.
Abreviaremos p ∨ ¬p como >.
Abreviaremos ¬> como ⊥.
Abreviaremos ¬hαi ¬ϕ como [α] ϕ.
(http://www.logicinaction.org/)
15 / 25
Lógica proposicional y acciones: LDP
Intuiciones y abreviaciones
α; β
α∪β
composición: ejecuta α y luego β.
elección no determinista: ejecuta α o β.
α∗
repetición: ejecuta α cero, una, o cualquier número finito de veces.
?ϕ
verificación: verifica si ϕ es verdadera o no.
hαi ϕ
α puede ser ejecutada de forma que, después de hacerlo, ϕ es verdadera.
Abreviaremos p ∨ ¬p como >.
Abreviaremos ¬> como ⊥.
Abreviaremos ¬hαi ¬ϕ como [α] ϕ.
[α] ϕ
Después de cualquier ejecución de α, ϕ es verdadera.
(http://www.logicinaction.org/)
15 / 25
Lógica proposicional y acciones: LDP
Ejemplos de fórmulas
hαi >
[α] ⊥
hαi ϕ ∧ ¬[α] ϕ
(http://www.logicinaction.org/)
16 / 25
Lógica proposicional y acciones: LDP
Ejemplos de fórmulas
hαi >
α puede ser ejecutada.
[α] ⊥
hαi ϕ ∧ ¬[α] ϕ
(http://www.logicinaction.org/)
16 / 25
Lógica proposicional y acciones: LDP
Ejemplos de fórmulas
hαi >
α puede ser ejecutada.
[α] ⊥
α no puede ser ejecutada.
hαi ϕ ∧ ¬[α] ϕ
(http://www.logicinaction.org/)
16 / 25
Lógica proposicional y acciones: LDP
Ejemplos de fórmulas
hαi >
α puede ser ejecutada.
[α] ⊥
α no puede ser ejecutada.
hαi ϕ ∧ ¬[α] ϕ
α puede ser ejecutada en al menos dos formas diferentes.
(http://www.logicinaction.org/)
16 / 25
Sistemas de Transición Etiquetados
Los modelos (1)
Las estructuras en las cuales evaluamos fórmulas en LDP, sistemas de transición
etiquetados (STE ), tienen tres componentes:
M =h ,
(http://www.logicinaction.org/)
,
i
17 / 25
Sistemas de Transición Etiquetados
Los modelos (1)
Las estructuras en las cuales evaluamos fórmulas en LDP, sistemas de transición
etiquetados (STE ), tienen tres componentes:
S: un conjunto no vació de estados,
s2
s1
s3
M = hS,
(http://www.logicinaction.org/)
,
i
17 / 25
Sistemas de Transición Etiquetados
Los modelos (1)
Las estructuras en las cuales evaluamos fórmulas en LDP, sistemas de transición
etiquetados (STE ), tienen tres componentes:
S: un conjunto no vació de estados,
V : una valuación indicando qué enunciados básicos son verdaderos en cada
estado s ∈ S, y
pq
s2
pq
s1
pq
s3
M = hS,
(http://www.logicinaction.org/)
,V i
17 / 25
Sistemas de Transición Etiquetados
Los modelos (1)
Las estructuras en las cuales evaluamos fórmulas en LDP, sistemas de transición
etiquetados (STE ), tienen tres componentes:
S: un conjunto no vació de estados,
V : una valuación indicando qué enunciados básicos son verdaderos en cada
estado s ∈ S, y
Ra : una relación binaria por cada acción básica a.
a
a
pq
s2
pq
b
s1
c
c
pq
b
s3
M = hS, Ra , V i
(http://www.logicinaction.org/)
17 / 25
Sistemas de Transición Etiquetados
The models (2)
A un sistema de transición etiquetado en el cual distinguimos un estado (el
estado inicial ) se le llama a sistema de transición etiquetado marcado o
gráfica de procesos.
a
a
pq
s2
pq
b
s1
c
c
pq
b
s3
(http://www.logicinaction.org/)
18 / 25
Sistemas de Transición Etiquetados
The models (2)
A un sistema de transición etiquetado en el cual distinguimos un estado (el
estado inicial ) se le llama a sistema de transición etiquetado marcado o
gráfica de procesos.
a
a
pq
s2
pq
b
s1
c
c
pq
b
s3
(http://www.logicinaction.org/)
18 / 25
Semántica de LDP
Evaluando fórmulas
Sea (M , s) un sistema de transición etiquetado marcado, con M = hS, Ra , V i:
(http://www.logicinaction.org/)
19 / 25
Semántica de LDP
Evaluando fórmulas
Sea (M , s) un sistema de transición etiquetado marcado, con M = hS, Ra , V i:
(M , s) |= p
si y solo si
(http://www.logicinaction.org/)
p ∈ V (s)
19 / 25
Semántica de LDP
Evaluando fórmulas
Sea (M , s) un sistema de transición etiquetado marcado, con M = hS, Ra , V i:
(M , s) |= p
si y solo si
p ∈ V (s)
(M , s) |= ¬ϕ
si y solo si
no es el caso que (M , s) |= ϕ
(http://www.logicinaction.org/)
19 / 25
Semántica de LDP
Evaluando fórmulas
Sea (M , s) un sistema de transición etiquetado marcado, con M = hS, Ra , V i:
(M , s) |= p
si y solo si
p ∈ V (s)
(M , s) |= ¬ϕ
si y solo si
no es el caso que (M , s) |= ϕ
(M , s) |= ϕ ∨ ψ
si y solo si
(M , s) |= ϕ o (M , s) |= ψ
(http://www.logicinaction.org/)
19 / 25
Semántica de LDP
Evaluando fórmulas
Sea (M , s) un sistema de transición etiquetado marcado, con M = hS, Ra , V i:
(M , s) |= p
si y solo si
p ∈ V (s)
(M , s) |= ¬ϕ
si y solo si
no es el caso que (M , s) |= ϕ
(M , s) |= ϕ ∨ ψ
si y solo si
(M , s) |= ϕ o (M , s) |= ψ
...
si y solo si
...
(http://www.logicinaction.org/)
19 / 25
Semántica de LDP
Evaluando fórmulas
Sea (M , s) un sistema de transición etiquetado marcado, con M = hS, Ra , V i:
(M , s) |= p
si y solo si
p ∈ V (s)
(M , s) |= ¬ϕ
si y solo si
no es el caso que (M , s) |= ϕ
(M , s) |= ϕ ∨ ψ
si y solo si
(M , s) |= ϕ o (M , s) |= ψ
...
si y solo si
...
(M , s) |= hαi ϕ
si y solo si
existe un t ∈ S tal que Rα st y (M , t) |= ϕ
(http://www.logicinaction.org/)
19 / 25
Semántica de LDP
Evaluando fórmulas
Sea (M , s) un sistema de transición etiquetado marcado, con M = hS, Ra , V i:
(M , s) |= p
si y solo si
p ∈ V (s)
(M , s) |= ¬ϕ
si y solo si
no es el caso que (M , s) |= ϕ
(M , s) |= ϕ ∨ ψ
si y solo si
(M , s) |= ϕ o (M , s) |= ψ
...
si y solo si
...
(M , s) |= hαi ϕ
si y solo si
existe un t ∈ S tal que Rα st y (M , t) |= ϕ
Si α no es una acción básica, la relación Rα se define como
(http://www.logicinaction.org/)
19 / 25
Semántica de LDP
Evaluando fórmulas
Sea (M , s) un sistema de transición etiquetado marcado, con M = hS, Ra , V i:
(M , s) |= p
si y solo si
p ∈ V (s)
(M , s) |= ¬ϕ
si y solo si
no es el caso que (M , s) |= ϕ
(M , s) |= ϕ ∨ ψ
si y solo si
(M , s) |= ϕ o (M , s) |= ψ
...
si y solo si
...
(M , s) |= hαi ϕ
si y solo si
existe un t ∈ S tal que Rα st y (M , t) |= ϕ
Si α no es una acción básica, la relación Rα se define como
Rα;β := Rα ◦ Rβ
(http://www.logicinaction.org/)
19 / 25
Semántica de LDP
Evaluando fórmulas
Sea (M , s) un sistema de transición etiquetado marcado, con M = hS, Ra , V i:
(M , s) |= p
si y solo si
p ∈ V (s)
(M , s) |= ¬ϕ
si y solo si
no es el caso que (M , s) |= ϕ
(M , s) |= ϕ ∨ ψ
si y solo si
(M , s) |= ϕ o (M , s) |= ψ
...
si y solo si
...
(M , s) |= hαi ϕ
si y solo si
existe un t ∈ S tal que Rα st y (M , t) |= ϕ
Si α no es una acción básica, la relación Rα se define como
Rα;β := Rα ◦ Rβ
Rα∪β := Rα ∪ Rβ
(http://www.logicinaction.org/)
19 / 25
Semántica de LDP
Evaluando fórmulas
Sea (M , s) un sistema de transición etiquetado marcado, con M = hS, Ra , V i:
(M , s) |= p
si y solo si
p ∈ V (s)
(M , s) |= ¬ϕ
si y solo si
no es el caso que (M , s) |= ϕ
(M , s) |= ϕ ∨ ψ
si y solo si
(M , s) |= ϕ o (M , s) |= ψ
...
si y solo si
...
(M , s) |= hαi ϕ
si y solo si
existe un t ∈ S tal que Rα st y (M , t) |= ϕ
Si α no es una acción básica, la relación Rα se define como
Rα;β := Rα ◦ Rβ
Rα∪β := Rα ∪ Rβ
Rα∗ := (Rα )∗
(http://www.logicinaction.org/)
19 / 25
Semántica de LDP
Evaluando fórmulas
Sea (M , s) un sistema de transición etiquetado marcado, con M = hS, Ra , V i:
(M , s) |= p
si y solo si
p ∈ V (s)
(M , s) |= ¬ϕ
si y solo si
no es el caso que (M , s) |= ϕ
(M , s) |= ϕ ∨ ψ
si y solo si
(M , s) |= ϕ o (M , s) |= ψ
...
si y solo si
...
(M , s) |= hαi ϕ
si y solo si
existe un t ∈ S tal que Rα st y (M , t) |= ϕ
Si α no es una acción básica, la relación Rα se define como
Rα;β := Rα ◦ Rβ
Rα∪β := Rα ∪ Rβ
Rα∗ := (Rα )∗
R?ϕ := {(s, s) ∈ S × S | (M , s) |= ϕ}
(http://www.logicinaction.org/)
19 / 25
Semántica de LDP
Ejemplo: construyendo relaciones mas complejas
s2
a
a
pq
s1
pq
c
b
c
pq
b
Ra := {(s1 , s1 ), (s2 , s1 )}
Rb := {(s1 , s2 ), (s3 , s3 )}
Rc := {(s1 , s3 ), (s3 , s2 )}
s3
(http://www.logicinaction.org/)
20 / 25
Semántica de LDP
Ejemplo: construyendo relaciones mas complejas
s2
a
a
pq
s1
pq
c
b
c
pq
b
Ra := {(s1 , s1 ), (s2 , s1 )}
Rb := {(s1 , s2 ), (s3 , s3 )}
Rc := {(s1 , s3 ), (s3 , s2 )}
s3
Ra∪b =
(http://www.logicinaction.org/)
20 / 25
Semántica de LDP
Ejemplo: construyendo relaciones mas complejas
s2
a
a
pq
s1
pq
c
b
c
pq
b
Ra := {(s1 , s1 ), (s2 , s1 )}
Rb := {(s1 , s2 ), (s3 , s3 )}
Rc := {(s1 , s3 ), (s3 , s2 )}
s3
Ra∪b = {(s1 , s1 ), (s2 , s1 ), (s1 , s2 ), (s3 , s3 )}
(http://www.logicinaction.org/)
20 / 25
Semántica de LDP
Ejemplo: construyendo relaciones mas complejas
s2
a
a
pq
s1
pq
c
b
c
pq
b
Ra := {(s1 , s1 ), (s2 , s1 )}
Rb := {(s1 , s2 ), (s3 , s3 )}
Rc := {(s1 , s3 ), (s3 , s2 )}
s3
Ra∪b = {(s1 , s1 ), (s2 , s1 ), (s1 , s2 ), (s3 , s3 )}
Ra∪c =
(http://www.logicinaction.org/)
20 / 25
Semántica de LDP
Ejemplo: construyendo relaciones mas complejas
s2
a
a
pq
s1
pq
c
b
c
pq
b
Ra := {(s1 , s1 ), (s2 , s1 )}
Rb := {(s1 , s2 ), (s3 , s3 )}
Rc := {(s1 , s3 ), (s3 , s2 )}
s3
Ra∪b = {(s1 , s1 ), (s2 , s1 ), (s1 , s2 ), (s3 , s3 )}
Ra∪c = {(s1 , s1 ), (s2 , s1 ), (s1 , s3 ), (s3 , s2 )}
(http://www.logicinaction.org/)
20 / 25
Semántica de LDP
Ejemplo: construyendo relaciones mas complejas
s2
a
a
pq
s1
pq
c
b
c
pq
b
Ra := {(s1 , s1 ), (s2 , s1 )}
Rb := {(s1 , s2 ), (s3 , s3 )}
Rc := {(s1 , s3 ), (s3 , s2 )}
s3
Ra∪b = {(s1 , s1 ), (s2 , s1 ), (s1 , s2 ), (s3 , s3 )}
Ra∪c = {(s1 , s1 ), (s2 , s1 ), (s1 , s3 ), (s3 , s2 )}
Rc;c =
(http://www.logicinaction.org/)
20 / 25
Semántica de LDP
Ejemplo: construyendo relaciones mas complejas
s2
a
a
pq
s1
pq
c
b
c
pq
b
Ra := {(s1 , s1 ), (s2 , s1 )}
Rb := {(s1 , s2 ), (s3 , s3 )}
Rc := {(s1 , s3 ), (s3 , s2 )}
s3
Ra∪b = {(s1 , s1 ), (s2 , s1 ), (s1 , s2 ), (s3 , s3 )}
Ra∪c = {(s1 , s1 ), (s2 , s1 ), (s1 , s3 ), (s3 , s2 )}
Rc;c = {(s1 , s2 )}
(http://www.logicinaction.org/)
20 / 25
Semántica de LDP
Ejemplo: construyendo relaciones mas complejas
s2
a
a
pq
s1
pq
c
b
c
pq
b
Ra := {(s1 , s1 ), (s2 , s1 )}
Rb := {(s1 , s2 ), (s3 , s3 )}
Rc := {(s1 , s3 ), (s3 , s2 )}
s3
Ra∪b
Ra∪c
Rc;c
Rb;b
(http://www.logicinaction.org/)
= {(s1 , s1 ), (s2 , s1 ), (s1 , s2 ), (s3 , s3 )}
= {(s1 , s1 ), (s2 , s1 ), (s1 , s3 ), (s3 , s2 )}
= {(s1 , s2 )}
=
20 / 25
Semántica de LDP
Ejemplo: construyendo relaciones mas complejas
s2
a
a
pq
s1
pq
c
b
c
pq
b
Ra := {(s1 , s1 ), (s2 , s1 )}
Rb := {(s1 , s2 ), (s3 , s3 )}
Rc := {(s1 , s3 ), (s3 , s2 )}
s3
Ra∪b
Ra∪c
Rc;c
Rb;b
(http://www.logicinaction.org/)
= {(s1 , s1 ), (s2 , s1 ), (s1 , s2 ), (s3 , s3 )}
= {(s1 , s1 ), (s2 , s1 ), (s1 , s3 ), (s3 , s2 )}
= {(s1 , s2 )}
={}
20 / 25
Semántica de LDP
Ejemplo: construyendo relaciones mas complejas
s2
a
a
pq
s1
pq
c
b
c
pq
b
Ra := {(s1 , s1 ), (s2 , s1 )}
Rb := {(s1 , s2 ), (s3 , s3 )}
Rc := {(s1 , s3 ), (s3 , s2 )}
s3
Ra∪b
Ra∪c
Rc;c
Rb;b
R?¬(p∨q)
(http://www.logicinaction.org/)
= {(s1 , s1 ), (s2 , s1 ), (s1 , s2 ), (s3 , s3 )}
= {(s1 , s1 ), (s2 , s1 ), (s1 , s3 ), (s3 , s2 )}
= {(s1 , s2 )}
={}
=
20 / 25
Semántica de LDP
Ejemplo: construyendo relaciones mas complejas
s2
a
a
pq
s1
pq
c
b
c
pq
b
Ra := {(s1 , s1 ), (s2 , s1 )}
Rb := {(s1 , s2 ), (s3 , s3 )}
Rc := {(s1 , s3 ), (s3 , s2 )}
s3
Ra∪b
Ra∪c
Rc;c
Rb;b
R?¬(p∨q)
(http://www.logicinaction.org/)
= {(s1 , s1 ), (s2 , s1 ), (s1 , s2 ), (s3 , s3 )}
= {(s1 , s1 ), (s2 , s1 ), (s1 , s3 ), (s3 , s2 )}
= {(s1 , s2 )}
={}
= {(s2 , s2 )}
20 / 25
Semántica de LDP
Ejemplo: construyendo relaciones mas complejas
s2
a
a
pq
s1
pq
c
b
c
pq
b
Ra := {(s1 , s1 ), (s2 , s1 )}
Rb := {(s1 , s2 ), (s3 , s3 )}
Rc := {(s1 , s3 ), (s3 , s2 )}
s3
Ra∪b
Ra∪c
Rc;c
Rb;b
R?¬(p∨q)
R?(p∨q)
(http://www.logicinaction.org/)
= {(s1 , s1 ), (s2 , s1 ), (s1 , s2 ), (s3 , s3 )}
= {(s1 , s1 ), (s2 , s1 ), (s1 , s3 ), (s3 , s2 )}
= {(s1 , s2 )}
={}
= {(s2 , s2 )}
=
20 / 25
Semántica de LDP
Ejemplo: construyendo relaciones mas complejas
s2
a
a
pq
s1
pq
c
b
c
pq
b
Ra := {(s1 , s1 ), (s2 , s1 )}
Rb := {(s1 , s2 ), (s3 , s3 )}
Rc := {(s1 , s3 ), (s3 , s2 )}
s3
Ra∪b
Ra∪c
Rc;c
Rb;b
R?¬(p∨q)
R?(p∨q)
(http://www.logicinaction.org/)
= {(s1 , s1 ), (s2 , s1 ), (s1 , s2 ), (s3 , s3 )}
= {(s1 , s1 ), (s2 , s1 ), (s1 , s3 ), (s3 , s2 )}
= {(s1 , s2 )}
={}
= {(s2 , s2 )}
= {(s1 , s1 ), (s3 , s3 )}
20 / 25
Semántica de LDP
Ejemplo: construyendo relaciones mas complejas
s2
a
a
pq
s1
pq
c
b
c
pq
b
Ra := {(s1 , s1 ), (s2 , s1 )}
Rb := {(s1 , s2 ), (s3 , s3 )}
Rc := {(s1 , s3 ), (s3 , s2 )}
s3
Ra∪b
Ra∪c
Rc;c
Rb;b
R?¬(p∨q)
R?(p∨q)
R?¬(p∨q);a;?(p∨q)
(http://www.logicinaction.org/)
= {(s1 , s1 ), (s2 , s1 ), (s1 , s2 ), (s3 , s3 )}
= {(s1 , s1 ), (s2 , s1 ), (s1 , s3 ), (s3 , s2 )}
= {(s1 , s2 )}
={}
= {(s2 , s2 )}
= {(s1 , s1 ), (s3 , s3 )}
=
20 / 25
Semántica de LDP
Ejemplo: construyendo relaciones mas complejas
s2
a
a
pq
s1
pq
c
b
c
pq
b
Ra := {(s1 , s1 ), (s2 , s1 )}
Rb := {(s1 , s2 ), (s3 , s3 )}
Rc := {(s1 , s3 ), (s3 , s2 )}
s3
Ra∪b
Ra∪c
Rc;c
Rb;b
R?¬(p∨q)
R?(p∨q)
R?¬(p∨q);a;?(p∨q)
(http://www.logicinaction.org/)
= {(s1 , s1 ), (s2 , s1 ), (s1 , s2 ), (s3 , s3 )}
= {(s1 , s1 ), (s2 , s1 ), (s1 , s3 ), (s3 , s2 )}
= {(s1 , s2 )}
={}
= {(s2 , s2 )}
= {(s1 , s1 ), (s3 , s3 )}
= {(s2 , s1 )}
20 / 25
Semántica de LDP
Ejemplo: construyendo relaciones mas complejas
s2
a
a
pq
s1
pq
c
b
c
pq
b
Ra := {(s1 , s1 ), (s2 , s1 )}
Rb := {(s1 , s2 ), (s3 , s3 )}
Rc := {(s1 , s3 ), (s3 , s2 )}
s3
Ra∪b
Ra∪c
Rc;c
Rb;b
R?¬(p∨q)
R?(p∨q)
R?¬(p∨q);a;?(p∨q)
Rc;a
(http://www.logicinaction.org/)
= {(s1 , s1 ), (s2 , s1 ), (s1 , s2 ), (s3 , s3 )}
= {(s1 , s1 ), (s2 , s1 ), (s1 , s3 ), (s3 , s2 )}
= {(s1 , s2 )}
={}
= {(s2 , s2 )}
= {(s1 , s1 ), (s3 , s3 )}
= {(s2 , s1 )}
=
20 / 25
Semántica de LDP
Ejemplo: construyendo relaciones mas complejas
s2
a
a
pq
s1
pq
c
b
c
pq
b
Ra := {(s1 , s1 ), (s2 , s1 )}
Rb := {(s1 , s2 ), (s3 , s3 )}
Rc := {(s1 , s3 ), (s3 , s2 )}
s3
Ra∪b
Ra∪c
Rc;c
Rb;b
R?¬(p∨q)
R?(p∨q)
R?¬(p∨q);a;?(p∨q)
Rc;a
(http://www.logicinaction.org/)
= {(s1 , s1 ), (s2 , s1 ), (s1 , s2 ), (s3 , s3 )}
= {(s1 , s1 ), (s2 , s1 ), (s1 , s3 ), (s3 , s2 )}
= {(s1 , s2 )}
={}
= {(s2 , s2 )}
= {(s1 , s1 ), (s3 , s3 )}
= {(s2 , s1 )}
= {(s3 , s1 )}
20 / 25
Semántica de LDP
Ejemplo: construyendo relaciones mas complejas
s2
a
a
pq
s1
pq
c
b
c
pq
b
Ra := {(s1 , s1 ), (s2 , s1 )}
Rb := {(s1 , s2 ), (s3 , s3 )}
Rc := {(s1 , s3 ), (s3 , s2 )}
s3
Ra∪b
Ra∪c
Rc;c
Rb;b
R?¬(p∨q)
R?(p∨q)
R?¬(p∨q);a;?(p∨q)
Rc;a
R(c;a)∗
(http://www.logicinaction.org/)
= {(s1 , s1 ), (s2 , s1 ), (s1 , s2 ), (s3 , s3 )}
= {(s1 , s1 ), (s2 , s1 ), (s1 , s3 ), (s3 , s2 )}
= {(s1 , s2 )}
={}
= {(s2 , s2 )}
= {(s1 , s1 ), (s3 , s3 )}
= {(s2 , s1 )}
= {(s3 , s1 )}
=
20 / 25
Semántica de LDP
Ejemplo: construyendo relaciones mas complejas
s2
a
a
pq
s1
pq
c
b
c
pq
b
Ra := {(s1 , s1 ), (s2 , s1 )}
Rb := {(s1 , s2 ), (s3 , s3 )}
Rc := {(s1 , s3 ), (s3 , s2 )}
s3
Ra∪b
Ra∪c
Rc;c
Rb;b
R?¬(p∨q)
R?(p∨q)
R?¬(p∨q);a;?(p∨q)
Rc;a
R(c;a)∗
(http://www.logicinaction.org/)
= {(s1 , s1 ), (s2 , s1 ), (s1 , s2 ), (s3 , s3 )}
= {(s1 , s1 ), (s2 , s1 ), (s1 , s3 ), (s3 , s2 )}
= {(s1 , s2 )}
={}
= {(s2 , s2 )}
= {(s1 , s1 ), (s3 , s3 )}
= {(s2 , s1 )}
= {(s3 , s1 )}
= {(s3 , s1 ), (s1 , s1 ), (s2 , s2 ), (s3 , s3 )}
20 / 25
Semántica de LDP
Ejemplo: construyendo relaciones mas complejas
s2
a
a
pq
s1
pq
c
b
c
pq
b
Ra := {(s1 , s1 ), (s2 , s1 )}
Rb := {(s1 , s2 ), (s3 , s3 )}
Rc := {(s1 , s3 ), (s3 , s2 )}
s3
Ra∪b
Ra∪c
Rc;c
Rb;b
R?¬(p∨q)
R?(p∨q)
R?¬(p∨q);a;?(p∨q)
Rc;a
R(c;a)∗
(http://www.logicinaction.org/)
= {(s1 , s1 ), (s2 , s1 ), (s1 , s2 ), (s3 , s3 )}
= {(s1 , s1 ), (s2 , s1 ), (s1 , s3 ), (s3 , s2 )}
= {(s1 , s2 )}
={}
= {(s2 , s2 )}
= {(s1 , s1 ), (s3 , s3 )}
= {(s2 , s1 )}
= {(s3 , s1 )}
= {(s3 , s1 ), (s1 , s1 ), (s2 , s2 ), (s3 , s3 )}
20 / 25
Semántica de LDP
Ejemplo: evaluando fórmulas
s2
a
a
pq
s1
pq
c
b
c
pq
b
s3
M
(http://www.logicinaction.org/)
21 / 25
Semántica de LDP
Ejemplo: evaluando fórmulas
s2
a
a
pq
pq
s1
c
b
c
pq
b
s3
M
(M , s1 ) |= ha ∪ bi p ∧ ¬[a ∪ b] p ?
(M , s3 ) |= [(c; a)∗ ] p ?
(M , s1 ) |= [b] ⊥
(M , s3 ) |= [?p] p
?
(M , s2 ) |= hai > → hbi >
?
(M , s2 ) |= hc∗ i >
?
(http://www.logicinaction.org/)
?
21 / 25
Semántica de LDP
Ejemplo: evaluando fórmulas
s2
a
a
pq
pq
s1
c
b
c
pq
b
s3
M
(M , s1 ) |= ha ∪ bi p ∧ ¬[a ∪ b] p
!
(M , s3 ) |= [(c; a)∗ ] p ?
(M , s1 ) |= [b] ⊥
?
(M , s3 ) |= [?p] p
(M , s2 ) |= hai > → hbi >
?
(M , s2 ) |= hc∗ i >
?
(http://www.logicinaction.org/)
?
21 / 25
Semántica de LDP
Ejemplo: evaluando fórmulas
s2
a
a
pq
pq
s1
c
b
c
pq
b
s3
M
(M , s1 ) |= ha ∪ bi p ∧ ¬[a ∪ b] p
(M , s1 ) |= [b] ⊥
!
%
(M , s2 ) |= hai > → hbi >
?
(M , s2 ) |= hc∗ i >
?
(http://www.logicinaction.org/)
(M , s3 ) |= [(c; a)∗ ] p ?
(M , s3 ) |= [?p] p
?
21 / 25
Semántica de LDP
Ejemplo: evaluando fórmulas
s2
a
a
pq
pq
s1
c
b
c
pq
b
s3
M
(M , s1 ) |= ha ∪ bi p ∧ ¬[a ∪ b] p
(M , s1 ) |= [b] ⊥
(M , s2 ) |= hai > → hbi >
(M , s2 ) |= hc∗ i >
(http://www.logicinaction.org/)
!
%
%
(M , s3 ) |= [(c; a)∗ ] p ?
(M , s3 ) |= [?p] p
?
?
21 / 25
Semántica de LDP
Ejemplo: evaluando fórmulas
s2
a
a
pq
s1
pq
c
b
c
pq
b
s3
M
(M , s1 ) |= ha ∪ bi p ∧ ¬[a ∪ b] p
(M , s1 ) |= [b] ⊥
(M , s2 ) |= hai > → hbi >
(M , s2 ) |= hc∗ i >
(http://www.logicinaction.org/)
!
%
%
!
(M , s3 ) |= [(c; a)∗ ] p ?
(M , s3 ) |= [?p] p
?
21 / 25
Semántica de LDP
Ejemplo: evaluando fórmulas
s2
a
a
pq
s1
pq
c
b
c
pq
b
s3
M
(M , s1 ) |= ha ∪ bi p ∧ ¬[a ∪ b] p
(M , s1 ) |= [b] ⊥
(M , s2 ) |= hai > → hbi >
(M , s2 ) |= hc∗ i >
(http://www.logicinaction.org/)
!
%
%
!
(M , s3 ) |= [(c; a)∗ ] p
!
(M , s3 ) |= [?p] p
?
21 / 25
Semántica de LDP
Ejemplo: evaluando fórmulas
s2
a
a
pq
s1
pq
c
b
c
pq
b
s3
M
(M , s1 ) |= ha ∪ bi p ∧ ¬[a ∪ b] p
(M , s1 ) |= [b] ⊥
(M , s2 ) |= hai > → hbi >
(M , s2 ) |= hc∗ i >
(http://www.logicinaction.org/)
!
%
%
!
(M , s3 ) |= [(c; a)∗ ] p
(M , s3 ) |= [?p] p
!
!
21 / 25
Sistema de Derivación
Sistema de derivación (1)
Las fórmulas válidas de LDP pueden ser derivadas a partir de los siguientes
principios:
(http://www.logicinaction.org/)
22 / 25
Sistema de Derivación
Sistema de derivación (1)
Las fórmulas válidas de LDP pueden ser derivadas a partir de los siguientes
principios:
1
Todas las tautologı́as proposicionales.
(http://www.logicinaction.org/)
22 / 25
Sistema de Derivación
Sistema de derivación (1)
Las fórmulas válidas de LDP pueden ser derivadas a partir de los siguientes
principios:
1
Todas las tautologı́as proposicionales.
2
[α] (ϕ → ψ) → ([α] ϕ → [α] ψ) para cualquier acción α.
(http://www.logicinaction.org/)
22 / 25
Sistema de Derivación
Sistema de derivación (1)
Las fórmulas válidas de LDP pueden ser derivadas a partir de los siguientes
principios:
1
Todas las tautologı́as proposicionales.
2
[α] (ϕ → ψ) → ([α] ϕ → [α] ψ) para cualquier acción α.
3
Modus ponens (MP): si tienes ϕ y ϕ → ψ, entonces deriva ψ.
(http://www.logicinaction.org/)
22 / 25
Sistema de Derivación
Sistema de derivación (1)
Las fórmulas válidas de LDP pueden ser derivadas a partir de los siguientes
principios:
1
Todas las tautologı́as proposicionales.
2
[α] (ϕ → ψ) → ([α] ϕ → [α] ψ) para cualquier acción α.
3
Modus ponens (MP): si tienes ϕ y ϕ → ψ, entonces deriva ψ.
4
Necessitation (Nec): si tienes ϕ entonces deriva [α] ϕ para cualquier acción
α.
(http://www.logicinaction.org/)
22 / 25
Sistema de Derivación
Sistema de derivación (2)
5
Principios para operaciones sobre acciones:
(http://www.logicinaction.org/)
23 / 25
Sistema de Derivación
Sistema de derivación (2)
5
Principios para operaciones sobre acciones:
Verificaión:
[?ψ] ϕ ↔ (ψ → ϕ)
(http://www.logicinaction.org/)
23 / 25
Sistema de Derivación
Sistema de derivación (2)
5
Principios para operaciones sobre acciones:
Verificaión:
[?ψ] ϕ ↔ (ψ → ϕ)
Composición:
[α; β] ϕ ↔ [α] [β] ϕ
(http://www.logicinaction.org/)
23 / 25
Sistema de Derivación
Sistema de derivación (2)
5
Principios para operaciones sobre acciones:
Verificaión:
[?ψ] ϕ ↔ (ψ → ϕ)
Composición:
[α; β] ϕ ↔ [α] [β] ϕ
Elección:
[α ∪ β] ϕ ↔ ([α] ϕ ∧ [β] ϕ)
(http://www.logicinaction.org/)
23 / 25
Sistema de Derivación
Sistema de derivación (2)
5
Principios para operaciones sobre acciones:
Verificaión:
[?ψ] ϕ ↔ (ψ → ϕ)
Composición:
[α; β] ϕ ↔ [α] [β] ϕ
Elección:
[α ∪ β] ϕ ↔ ([α] ϕ ∧ [β] ϕ)
Repetición:
(http://www.logicinaction.org/)
23 / 25
Sistema de Derivación
Sistema de derivación (2)
5
Principios para operaciones sobre acciones:
Verificaión:
[?ψ] ϕ ↔ (ψ → ϕ)
Composición:
[α; β] ϕ ↔ [α] [β] ϕ
Elección:
[α ∪ β] ϕ ↔ ([α] ϕ ∧ [β] ϕ)
Repetición:
Combinación:
[α∗ ] ϕ ↔ (ϕ ∧ [α] [α∗ ] ϕ)
(http://www.logicinaction.org/)
23 / 25
Sistema de Derivación
Sistema de derivación (2)
5
Principios para operaciones sobre acciones:
Verificaión:
[?ψ] ϕ ↔ (ψ → ϕ)
Composición:
[α; β] ϕ ↔ [α] [β] ϕ
Elección:
[α ∪ β] ϕ ↔ ([α] ϕ ∧ [β] ϕ)
Repetición:
Combinación:
[α∗ ] ϕ ↔ (ϕ ∧ [α] [α∗ ] ϕ)
Inducción:
“
”
ϕ ∧ [α∗ ] (ϕ → [α] ϕ) → [α∗ ] ϕ
(http://www.logicinaction.org/)
23 / 25
Sistema de Derivación
Sistema de derivación (2)
5
Principios para operaciones sobre acciones:
Verificaión:
[?ψ] ϕ ↔ (ψ → ϕ)
Composición:
[α; β] ϕ ↔ [α] [β] ϕ
Elección:
[α ∪ β] ϕ ↔ ([α] ϕ ∧ [β] ϕ)
Repetición:
Combinación:
[α∗ ] ϕ ↔ (ϕ ∧ [α] [α∗ ] ϕ)
Inducción:
“
”
ϕ ∧ [α∗ ] (ϕ → [α] ϕ) → [α∗ ] ϕ
Un teorema es una fórmula que puede ser derivada en un número finito de pasos
siguiendo los principios anteriores.
(http://www.logicinaction.org/)
23 / 25
Sistema de Derivación
Ejemplo
Demuestre que [(α ∪ β); γ] ϕ ↔ ([α; γ] ϕ ∧ [β; γ] ϕ) es válida.
(http://www.logicinaction.org/)
24 / 25
Sistema de Derivación
Ejemplo
Demuestre que [(α ∪ β); γ] ϕ ↔ ([α; γ] ϕ ∧ [β; γ] ϕ) es válida.
De izquierda a derecha:
(http://www.logicinaction.org/)
24 / 25
Sistema de Derivación
Ejemplo
Demuestre que [(α ∪ β); γ] ϕ ↔ ([α; γ] ϕ ∧ [β; γ] ϕ) es válida.
De izquierda a derecha:
1.
[(α ∪ β); γ] ϕ
(http://www.logicinaction.org/)
Suposición
24 / 25
Sistema de Derivación
Ejemplo
Demuestre que [(α ∪ β); γ] ϕ ↔ ([α; γ] ϕ ∧ [β; γ] ϕ) es válida.
De izquierda a derecha:
1.
2.
[(α ∪ β); γ] ϕ
[α ∪ β] [γ] ϕ
(http://www.logicinaction.org/)
Suposición
Composición sobre paso 1
24 / 25
Sistema de Derivación
Ejemplo
Demuestre que [(α ∪ β); γ] ϕ ↔ ([α; γ] ϕ ∧ [β; γ] ϕ) es válida.
De izquierda a derecha:
1.
2.
3.
[(α ∪ β); γ] ϕ
[α ∪ β] [γ] ϕ
[α] [γ] ϕ ∧ [β] [γ] ϕ
(http://www.logicinaction.org/)
Suposición
Composición sobre paso 1
Elección sobre paso 2
24 / 25
Sistema de Derivación
Ejemplo
Demuestre que [(α ∪ β); γ] ϕ ↔ ([α; γ] ϕ ∧ [β; γ] ϕ) es válida.
De izquierda a derecha:
1.
2.
3.
4.
[(α ∪ β); γ] ϕ
[α ∪ β] [γ] ϕ
[α] [γ] ϕ ∧ [β] [γ] ϕ
[α; γ] ϕ ∧ [β; γ] ϕ
(http://www.logicinaction.org/)
Suposición
Composición sobre paso 1
Elección sobre paso 2
Composición sobre paso 3
24 / 25
Sistema de Derivación
Ejemplo
Demuestre que [(α ∪ β); γ] ϕ ↔ ([α; γ] ϕ ∧ [β; γ] ϕ) es válida.
De izquierda a derecha:
1.
2.
3.
4.
[(α ∪ β); γ] ϕ
[α ∪ β] [γ] ϕ
[α] [γ] ϕ ∧ [β] [γ] ϕ
[α; γ] ϕ ∧ [β; γ] ϕ
Suposición
Composición sobre paso 1
Elección sobre paso 2
Composición sobre paso 3
De derecha a izquierda la demostración es similar.
(http://www.logicinaction.org/)
24 / 25
Expresividad
LDP como lenguaje de programación
Con LDP podemos definir acciones representando estructuras de control en
lenguajes de programación.
(http://www.logicinaction.org/)
25 / 25
Expresividad
LDP como lenguaje de programación
Con LDP podemos definir acciones representando estructuras de control en
lenguajes de programación.
1
WHILE ϕ do α:
(http://www.logicinaction.org/)
25 / 25
Expresividad
LDP como lenguaje de programación
Con LDP podemos definir acciones representando estructuras de control en
lenguajes de programación.
1
WHILE ϕ do α:
(?ϕ; α)∗ ; ?¬ϕ
(http://www.logicinaction.org/)
25 / 25
Expresividad
LDP como lenguaje de programación
Con LDP podemos definir acciones representando estructuras de control en
lenguajes de programación.
1
WHILE ϕ do α:
(?ϕ; α)∗ ; ?¬ϕ
2
REPEAT α UNTIL ϕ:
(http://www.logicinaction.org/)
25 / 25
Expresividad
LDP como lenguaje de programación
Con LDP podemos definir acciones representando estructuras de control en
lenguajes de programación.
1
WHILE ϕ do α:
(?ϕ; α)∗ ; ?¬ϕ
2
REPEAT α UNTIL ϕ:
α; (?¬ϕ; α)∗ ; ?ϕ
(http://www.logicinaction.org/)
25 / 25
Expresividad
LDP como lenguaje de programación
Con LDP podemos definir acciones representando estructuras de control en
lenguajes de programación.
1
WHILE ϕ do α:
(?ϕ; α)∗ ; ?¬ϕ
2
REPEAT α UNTIL ϕ:
α; (?¬ϕ; α)∗ ; ?ϕ
3
IF ϕ THEN α ELSE β:
(http://www.logicinaction.org/)
25 / 25
Expresividad
LDP como lenguaje de programación
Con LDP podemos definir acciones representando estructuras de control en
lenguajes de programación.
1
WHILE ϕ do α:
(?ϕ; α)∗ ; ?¬ϕ
2
REPEAT α UNTIL ϕ:
α; (?¬ϕ; α)∗ ; ?ϕ
3
IF ϕ THEN α ELSE β:
(?ϕ; α) ∪ (?¬ϕ; β)
(http://www.logicinaction.org/)
25 / 25
Descargar