Semántics de procesos y plicciones Clse 06: Puntos Fijos Qué vimos hst hor? cciones: multicciones: α 3 operdores sobre multicciones: α \ β, α β y α operdor de elección: + operdor de secuenci:. operdor de incción: δ condicionl: c x y generlizción de +: d:d p(d) (Notr que necesitmos dtos) procesos recursivos: en prticulr, procesos recursivos con gurd
Otros elementos del Lenguje de especificción Axioms pr l wek bisimulción Axioms pr l brnching bisimulción El operdor de prlelizción Comunicción entre procesos: operdor Γ C Forzndo l comunicción: el operdor llow V Bloque de cciones Renombre de cciones Ocultmiento de cciones Ejemplos de estos operdores (1)
Ejemplos de estos operdores (2A) 1. Se X un switching buffer. 2. Se B un temporry store de tmño 1. Algún detlle de l especificción? Ejemplos de estos operdores (2B)
Ejercicio Qué vimos hst hor? (1) Hennessy-Milner Logic φ = true flse φ φ φ φ φ φ φ φ []φ Fórmuls de cciones: α ::= ( 1... n ) true flse α α α α α α φ = α φ [α]φ = α []φ
Qué vimos hst hor? (2) Fórmuls de regulres: R ::= ε α R.R R + R R R + ε es l fórmul vci. Luego [ε]φ = ε φ = φ. R 1 + R 2 φ = R 1 φ R 2 φ R 1.R 2 φ = R 1 R 2 φ [R1 + R 2 ]φ = [R 1 ]φ [R 2 ]φ [R1.R 2 ]φ = [R 1 ][R 2 ]φ Modl µ-clculus: H-M Logic + Operdores de máximo y mínimo punto fijo φ =true flse φ φ φ φ φ φ φ φ []φ µx.φ νx.phi X Rzones pr formulr propieddes El comportmiento no es fcilmente crcterizble, entonces pedimos lguns propieddes mínims. Ejemplo: en el protocolo de comunicción sólo hbrá un lider. El comportmiento del sistem no es clro, luego sólo definimos propieddes. Pr verificr el comportmiento del modelo. Si el modelo es correcto deberí stisfcer ls propieddes desebles del sistem. El model checking no es sólo pr verificr propieddes, en muchos csos sirve como herrmient pr rzonr sobre el modelo. Es decir que los problems se encuentrn ntes de relizr el chequeo.
Puntos fijos: intuitivmente. µx.φ represent el conjunto de estdos X más CHICO que stisfce X = φ νx.φ represent el conjunto de estdos X más GRANDE que stisfce X = φ Puntos fijos: ejemplos. En un LTS rbitrrio, cules estdos stisfcen: µx.x y νx.x. En el siguiente LTS,cules estdos stisfcen: µx. X y νx. X :
Sfety nd liveness properties Un propiedd de liveness segur que lgo bueno sí v psr en lgun momento (ejecuciones finits). Pr esto se us el menor punto fijo. Un propiedd de sfety segur que lgo mlo nunc v psr (ejecuciones infinits). Pr esto se us el myor punto fijo. Ejercicio Escribir R φ y [R ]φ usndo puntos fijos. Luego, ls fórmuls regulres no son necesris. Recordemos: α φ = α φ [α]φ = α []φ Escribir R + φ y [R + ]φ en función de R φ y [R ]φ. Cómo escribir φ usndo puntos fijos.
Verificndo fórmuls modles en LTS: fórmuls HM. Recursivmente se vn etiquetndo los nodos con ls fórmuls que stisfce: Verificndo fórmuls modles en LTS: Menor punto fijo. Se etiquetn los nodos con ls fórmuls que stisfce. Si lgún nodo stisfce φ entonces se etiquet el nodo con X. Se repite el proceso hst que no se gregn más X. El menor punto fijo está relciondo con un crcterizción de estdos inductiv.
Verificndo fórmuls modles en LTS: Myor punto fijo. Se sume que todo estdo stisfce X. Luego se verific si cd estdo stisfce φ. Si no stisfce, entonces, de ese estdo se retir X. Se repite el proceso hst que no se scn más X. El menor punto fijo está relciondo con un crcterizción de estdos coinductiv. Firness properties. Ests propieddes se utilizn pr expresr que un cción debe suceder si se encuentr infinitmente hbilitd o que un cción ocurre sólo un número limitdo de veces. Ejemplos: µx.νy.( true [b]x ) ( true [b]y ) νx.µy.( true [b]x ) ( true [b]y )
Alguns definiciones Definition Un poset es un conjunto L no vcio junto un relción l cul es un orden prcil (un relción reflexiv, ntisimétric y trnsitiv). Ddo S L y L es un cot superior de S si x y pr todo x S. El supremo de S, notción sup(s), es l menor de ls cots superiores. x L es un cot inferior de S si x y pr todo y S. El infimo de S, notción ínf(s), es l myor de ls cots inferiores. Alguns definiciones (2) Definition Un endofunción F en L es un función con tipo L L. F es monoton if x y implic F (x) F (y). x es un punto prefijo de F si F (x) x. Dulmente, x es un elemento punto postfijo de F si x F (x). x es un punto fijo si x = F (x). En el conjunto de puntos fijos de F, el menor y el myor elemento son denomindos respectivmente menor punto fijo y menor punto fijo. Definition Un látice completo es un poset L tl que sup(s) y ínf(s) está definido pr todo S L.
Ejercicios Se F un endofunción monóton sobre un látice completo. Si x e y son dos puntos postfijos, entonces sup({x, y}) es un punto postfijo. generlizr el resultdo pr un conjunto rbitrrio de puntos postfijos. Dulizr el resultdo pr puntos prefijos. Teorem del punto fijo Theorem En un látice completo, un endofunción monoton tiene un látice completo de puntos fijos. Además, 1. El menor punto fijo es el meet de todos los puntos prefijos. 2. El myor punto fijo es el join de todos los puntos postfijos.
Teorem del punto fijo (Simplificdo) L versión simplificd pr 2 X y : se F : 2 X 2 X monóton entonces 1. lfp(f ) = {S F (S) S}. 2. gfp(f ) = {S S F (S)}. 1 es nuestr definición de conjunto definido inductivmente. 2 es nuestr definición de conjunto definido coinductivmente. Lemm (Principios de inducción y coinducción pr funciones monótons) Pr un endofunción monóton F en un látice completo tenemos: 1. si F (x) x entonces lfp(f ) x (principio de inducción). 2. si x F (x) entonces x gfp(f ) (principio de coinducción).
LTS y Bisimulción Definition (Lbelled trnsition system) Un LTS (lbelled trnsition system) es un tupl (S, A, ) donde S es un conjunto (de estdos), A es un conjunto (de etiquets) y S A S es un relción ternri (de trnsiciones etiquetds). Definition (Bisimulción y bisimilridd) Un relción R S S es un bisimulción si es simétric y todo pr de estdos s, t tl que s R t vle pr todo s tl que s s, existe t tl que t t y s R t, l condición equivlente pr ls trnsiciones de t. L bisimilridd, es l unión de tods ls bisimulciones. Dos estdos s y t son bisimilres si s t. Ejemplos p 0 q 0 b p 1 c q 1 q 2 b c p 2 p 3 q 3 q 4 r 0 r 1 r 2 c b c r 3 r 4 r 5
Crcterístics positvs de l bisimulción El chequeo sobre los estdos es locl. No existe jerrquí entre los pres de l relción. Esto difiere con respecto ls definiciones inductivs. Ejemplo: Chequeo Locl p 1 q 1 p 0 q 0 b b p 1 c b q 1 c p 2 p 3 q 2 q 3
Coinducción VS Indución. Ejemplo: Un = definido inductivmente (i.e. existe jerrquí). Definition Ddos dos estdos s y t, s = t si pr todo s tl que s s, existe t tl que t t y s = t. l condición equivlente pr ls trnsiciones de t. Definition (Bisimulción y bisimilridd) Un relción R S S es un bisimulción si es simétric y todo pr de estdos s, t tl que s R t vle pr todo s tl que s s, existe t tl que t t y s R t, l condición equivlente pr ls trnsiciones de t. L bisimilridd, es l unión de tods ls bisimulciones. Dos estdos s y t son bisimilres si s t. Ejercicio: Verddero o Flso p 0 p b 1 q 0 q b 1 q 2 q b 3 q 4... 1. p 0 q 0 2. p 0 = q 0
Ejercicio: Verddero o Flso (2) p 0 p b 1 b q 0 q 1 q 2 1. p 0 q 0 2. p 0 = q 0 Otro ejemplo de definicion inductiv: terminción. Terminción definido por medio de regls (de form inductiv): s A s s s s s s vle si es posible construir un prueb finit de s es el menor conjunto de procesos que es closed forwrd pr ls regls. Es decir, el menor conjunto T tl que si s, A entonces s T si s s y s T entonces s T
Otro ejemplo de definición coinductiv: no terminción. No terminción definido por medio de regls (de form coinductiv): s s s s s vle si es posible construir un prueb finit o infinit de s es el myor conjunto de procesos que es closed bckwrd pr ls regls. Es decir, el myor conjunto T tl que si s T entonces existe s tl que s s y s T Ejercicios: p 0 p 1 b b p 2 p 3 1. Verddero o Flso (Justifique): p0 p1 2. Defin y.
Un último ejemplo: Lists finits e infinits Se A un conjunto de elemtos y consideremos ls siguientes regls nil L l L A l L Si utilizmos ls regls con un enfoque inductivo, entonces L es el conjunto de lists finits de A. (i.e. sólo permitimos pruebs finits; o utilizmos l clusur forwrd) Si utilizmos ls regls con un enfoque coinductivo, entonces L es el conjunto de lists finits e infinits de A. (i.e. permitimos pruebs finits e infinits; o utilizmos l clusur bckwrd) Ejercicio: Se, b A y supong que L está defindo coinductivmente. Demuestre que l 1 = b b... L. Endofunciones bsds en regls Notción: denotemos un regl P x con (P, x), donde P y x son términos biertos que se instncin en X. Ddo un conjunto de regls R podemos definir un conjunto de regls cerrds R. Ddo el conjunto de regls cerrds R, se define el funcionl de R sobre el látice completo X 2 como: Φ R (T ) = {x (T, x) R, T T } Φ R es un función monóton.
Endofunciones bsds en regls(2) Por el teorem de punto fijo, el funcionl Φ R tiene un menor y myor punto fijo: lfp(φ R ) gfp(φ R ) denomindos estos, respectivmente, conjuntos definido inductivmente e coinductivmente por ls regls. Además, los principios de prueb inductivo y coinductivo. Respectivmente: si Φ R (T ) T entonces lfp(φ R ) T (1) si T Φ R (T ) entonces T gfp(φ R ) (2) El principio inductivo (...en lenguje nturl) T es l propiedd que queremos verificr vist como conjunto si Φ R (T ) T entonces lfp(φ R ) T Desdoblemos l hipótesis Φ R (T ) T, (teniendo en cuent Φ R (T ) = {x (T, x) R, T T }): Pr tod regl (S, x) R, si S R entonces x T Lo que es equivlente 1. l conclusión de todo xiom está en T 2. si tods ls premiss de un regl están en T, entonces tmbién estrá l conclusión. Finlmente lfp(φ R ) T grntiz que el conjunto definido inductivmente lfp(φ R ) está incluido en T (i.e. stisfce ls propieddes impuests los elementos de T ).
Trzs finits Ls regls (con s, s vribles) s A s s s s s Vists como l segund definición de regl (P y P son procesos) R = {(, P) P A} {({P }, P) P P, A} Y podemos definir el siguiente funcionl: Φ R (T ) = {P (P A) or ( P, : P T, P P } Recordr que Φ R (T ) = {x (T, x) R, T T }. El principio coinductivo (...en lenguje nturl) T es el conjunto de elementos que queremos verificr si pertenecen l conjunto definido coinductivmente. si T Φ R (T ) entonces T gfp(φ R ) Desdoblemos l hipótesis T Φ R (T ), (teniendo en cuent Φ R (T ) = {x (T, x) R, T T }): Pr todo x T existe un regl (S, x) R tl que S T Finlmente T gfp(φ R ) grntiz que el conjunto definido coinductivmente gfp(φ R ) incluye T.
Trzs INfinits Ls regls (con s, s vribles) s s s s Vists como l segund definición de regl (P y P son procesos) R s = {({P }, P) P P } Y podemos definir el siguiente funcionl: Φ s (T ) = {P P : P T, P P } Recordr que Φ R (T ) = {x (T, x) R, T T }. Definition Consideremos l endofunción F : (QxQ) 2 (QxQ) 2 definid por F (R) es el conjunto de todos los pres (p, q) tles que: pr todo p con p p, existe q tq q q y p R q ; pr todo q con q q, existe p tq p p y p R q ; Est función se denomin el funcionl socido l bisimulción.
Lemm R es un bisimulción sii R F (R) Lemm F es monoton Theorem 1. es el myor punto fijo de F 2. es l myor relción R tq R F (R); entonces R pr tod R tlque R F (R)