Semántica Denotacional
BCOU[DIV~ = {{I2O}}
4.3 Semántica para Procesos Finitos
Una vez definidos los operadores semánticos, tenemos inmediatamente definida la semán- tica denotacional para los procesos finitos. La misma la definiremos para todos los términos
finitos en FRec(Eseq), de modo que los procesos finitos constituirán un caso particular. Pa-
ra poder definir la semántica de procesos con variables debemos considerar una asignación de valores a las variables, es decir una función
p : Var í—* B~0~
Utilizando las mismas llegamos a lasiguiente
Definición 4.3.1 Si E
e
FRec(Eseq) y ji es una asignación de variables definimosB~05 =
f
p(z) siE = z EVar1.
BconEop]I(BconlEi]Ip,.. .,Bc0~EP»1¡p) siP = op(Eí,. .. ,E2) y op Sseq OSi una determinada variable de proceso z no aparece en E, la semántica del proceso no
dependerá del valor de x en la asignación de variables ji. En consecuencia, para procesos finitos (términos finitos cerrados), podemos hablar tranquilamente de su semántica sin
preocuparnos de ninguna asignación de variables.
Definición 4.3.2 Si E
e
FCRec(Sseq) es un proceso finito definimosBCOn[E~ = BCOn[E~P
dondeji es una asignación cualquiera de variables.
O
Como consecuencia de las propiedades de las funciones semánticas correspondiente a cada operador, podemos probar que, para procesos finitos, la semántica denotacional dada es completamente abstracta con respecto a la semántica de pruebas:
Teorema 4.3.3 Para todo proceso finito E
e
FCRec(S5eq), se tiene Barb(E) ¡3~0~EE]J. Demostración. La demostración es inmediata por inducción estructural, gracias a laspropiedades demostradas para cada uno los operadores: • ParaSTO? y DIV, utilizamos la proposición 4.2.1.
J
74 4.4. Procesos Recursivos
• Para eloperador de prefijo con acción oculta, la proposición 4.2.2.
• Para el operador de prefijo con acción visible, la proposición4.2.4.
u’
• Para la elección interna, la proposición 4.2.8.• Para la elección externa, el teorema 4.2.19.
O
u
4.4
Procesos Recursivos
ej
En esta sección daremos un valor semántico a los procesos recursivos. Para ello utiliza-
u’
remos las técnicas clásicas de punto fijo. Desgraciadamente no hemos podido demostrarque el preorden
«
es completo. Sin embargo hemos podido dar con un orden alternativoej
que silo es, conservando una fuerte relación conel orden
«,
lo que nos permitirá llevar adelante nuestro trabajo de forma coherente. Para definir dicho este preorden necesitamosprimero generalizar la relación-< entre estados definida en la definición 2.4.4.
Definición 4.4.1 Siendo b y b’ dos barbas, diremos que b está menos definida que b’, y
ej
lo escribiremos b-<
19,
si y sólo si se verifica una de las siguientes condiciones:• b=A,19zzA’ yA’-<A.
ej
• b = Aait . b1 , 19 = A’, nd(A’) =
it
y TAct(A’) = Al nd(A’).• b = Aait . b1 , b’ = Aait.
£4
y¿4
—< bí.O
u’
Fijándonos en la definición anterior podemos observar que si tomamos una barba
b
demodo que nd(b) = oc, para que se cumpla b -< 19, se ha de cumplir necesariamente que
ej
b = b’. Sin embargo, sind(b)
.c
oc, más allá del instante de indefinición podemos tenercualquier información, que defina la barba un poco más. A continuación extendemos la
u’
relación -~ sobre conjuntos de barbas.
Definición 4.4.2 Diremos que E~ está menos definido que82, y lo escribiremos E1 -<£2,
si y sólo si se verifican
• Para cada b2
e E2
existe bíe
Bí de modo que bí -< b2.‘ej
• Para cada bs.A1
e
Bí, existe bs.A2 eE2 de modo que A1 -<A2.¡ O La idea que hay debajo de la definición anterior es la siguiente: cuandoSí -« B2 tenemos
que
• Si b1 E B~, está completamente definida, nd(bi) = oc, tendremos que bí también
habrá de pertenecer a E2. En cambio si todavía no está completamente definida, bastará con que exista en
82
otra barba b2 que esté algo tanto o más definida que • Cada barba b2e
£2 proviene de definir algo más alguna barba de Eí.Es fácil comprobar que la relación -< verifica las propiedades reflexiva y transitiva. En
cambio no verifica la propiedad antisimétrica, por lo que la relación -< no es una relación
de orden entre conjuntos consistentes de barbas, sino sólo un preorden. Esto implica que si
trabajamos directamente con esta relación, no podemos esperar en general la unicidad de
las mínimas cotas superiores. No obstante, toda la teoría de cpo’s puede generalizarse sin problemas al caso de preordenes. En particular podemos probar que (Bcon,-<) es cómpleto Para ello consideramos una cadena no decreciente ¡3 de conjuntos consistentes de barbas:
E1 —< B2 .< 133
Hemos de ver que tiene una mínima cota superior, es decir, que existe un conjunto con-
sistente de barbas Iub(B) tal que
• Para cada i EIN se verifica E~ -.< lub(B).
• Si E’ es un conjunto consistente de barbas tal que
Ej
-<E’para cadaie
IN, eiktonceslub(B)
-< E’,Definimos a continuación el conjunto lub(13) quemás tarde comprobaremos que reúne las propiedades deseadas.
Definición 4.4.3 Sea ¡3 = {B~
¡
i E IN} una cadena no decreciente de conjuntos debarbas. Tendremos que bs . A E lub(B) si y sólo si se cumple una de las siguientes
condiciones:
• Si
nd(A) <oc y para todo kE
IN existe! > k de modo que frs~ AEE¿.• Si nd(A)a oc, y para todo it 6 7 existe1E IN y un estado A1 verificando
bsA1ERg y A,1it=Alit
u
u’
76 4.4. Procesos Recursivos
u’
O
Observemos en el segundo punto de la definición anterior, que el estado A, que aparece
u’
hade verificar nd(A¡) > it.
La siguiente proposición es una caracterización del conjunto que acabamos de definir
u’
que resulta más cómoda algunas ocasiones.Proposición 4.4.4 Sea ¡3 = {E~
¡
ie
IN} una cadena no decreciente de conjuntos debarbas. Tendremos que b E lub(B) si y sólo si se cumple una de las siguientes condiciones:
• Si nd(b) <oc y para todo k
e
INexiste 1=k quebsE E,.
ej
• Si nd(b) = oc, y para todo it
e
T existe 1e
IN y una barba b, verificandob¡eE¿ y b¡iit=blt
u’
Demostraczon. El resultado es consecuencia inmediata del siguiente hecho:
ej
tanto nd(bs. A) < oc nd(bs. A) = t(bs) + nd(A)
y por ~ nd(A) <oc.
O
s
Demostramos a continuaciónque lub(13) es en efecto lamenor cota superiorde lacadena
no decreciente 13. Precisamos para ello una serie de lemasauxiliares,
u’
Lema 4.4.5 Dada una secuencia de estados de modo que
u’
entonces tomando A = lub{Aj
¡
ie
IN} (definición 2.4.5) se verifican:u’
• Si nd(A) = oc y
ite
Y, existe1
eIN tal que A,i t=Ai it.• Si nd(A) <oc, existe
le
IN tal que A A,, para todo k >1.<u’
Demostraczon. Observemos en primer lugar que nd(A) = sup{nd (A1)¡
i E
IN}, y portanto para cada
it
=nd(A), habrá de existir ¿e
IN con nd(A,) =it. Puesto que A, -< A,,,u’
para k > ¿tendremos entonces que A, it= A~ it, y por tanto Al it = A, it.
En el caso de que nd(A) = oc, de lo dicho anteriormente se sigue inmediatamente el
u’
resultado buscado correspondiente. Supongamos entonces que it = nd(A)
.c
oc. En talcaso ha de existir 1
e
IN tal que nd(A,) = it, y puesto que A, -~ A,, y nd(A,,) < it parak >1 llegamos aA>, = A,.
ej
O
ej
ej
j
Lema 4.4.6 bs E
Btraz(lub(B))
si y sólo si existe ¿e
IN tal que frsE
Btraz(E¿).Demostración.
rn
Seabs
E
Btraz(lub(B)); entonces por definición existe, una barba b tal que bs.bE 13.Supongamos que b= bs’. A’; distinguimos entonces dos casos:
• nd(A’) < oc, en cuyocaso existe 1
e
IN tal que &s~ (bs’ .A’) E E1.bs
e
Btraz(E¿).Con lo cual
• nd(A’) = oc, en este caso existe 1 E IN y un estado A0 tales que
bs.(bs’.Ao)eE¡ y A010=A’1O
con locual bs
E
Btraz(E¿).Supongamos ahora que existe 1 E IN tal que bs
e
Btraz(E,). Puesto que E, es consistente, existirá un estadoA, tal quebs.A,e
E,, y como quiera queE,, -< ~podemos encontrar una cadena
verificando bs~
A,, e E,,.
Tomamos entonces el estado A = lub{A,,1
k =l} y por ellema 4.4.5 tenemos que bs . A
e
lub(B), con loque llegamos abse
Rtraz(lub(B)). OVeamos ahora que Iub(B) cumple las condiciones necesarias para ser la mínima cota supe-
rior. La primera de ellas es que lub(13), en efecto, es un conjunto consistente de barbas: Proposición 4.4.7 Siendo 13 = {E~
¡
ie
IN} una cadena no decreciente de conjuntosconsistente de barbas
tenemos que el conjunto lub(B) siempre es es un conjunto consistente de barbas
Demostración. Hemos de comprobar que lub(B) verifica las condiciones de l~ defini- ción 4.1.1. Para simplificar la notación tomemos E = lub(13).
Mi
78 4.4. Procesos Recursivos
• E
#
0. Puesto que Ei es consistente existirá alguna barba bs.A~e
E1. Entonces,como E>, -<E,,~í, podemos encontrar una secuencia de estados
de modo que bs. A~
e
B~. Entonces si tomamos elestado A = Iub{A~ji
e
IN}, porLI
el lema 4.4.5 se tiene que bs . A
e E.
• Cerrado tajo prefijos. Consideremos una b-traza
frs = A1ajtí .. .A,,ja,,1it,,~íA,,a,,it,,
e
Btraz(E)ej
Por el lema4.4.6 existe 1
e
IN de manera que frse
Btraz(E¿). Tenemos entonces quebs
e
Btraz(E,,) parak > 1. Entonces para cadak > 1 existirá un estado ~ de modou’
que— A1aíití . . .A,,1a,,1it,,1 .A” E E,,,
ej
- A,, = A~
1
ita.ej
Combinando dichos estados podemos construir un estado Averificando
— Ajaíití
. . .
A,,~1a,,~1it,,~1 .Ae
lub(B),ej
- A,, = Al it,,.
• Cerrado bajo continuaciones. Supongamos ahora que bs . A e E, y que oit
E A.
ej
Según la forma de A dos posibilidades:
— Sind(A) <oc,entoncesparacadak
e
lNexistirál > kdemodoquebs~AEE¿.LI
Puesto que cada E¿ es consistente se tiene
frs . (Al it)ait
E
Rtraz(E¿)u’
y por aplicación del lema 4.4.6 tenemos que frs (Al it)ait
e
Btraz(Iub(B)).ej
— Si nd(A) = oc y tomamos it’> it, tenemos que existirá 1 E IN y un estado A’
tales que bsA’eEp y A’lit’=Alit
LI
Puesto que E, es consistente y A’
1
it = A1
it tenemos queej
bs• (Al t)at
E
Btraz(E,)
Y al igual que que en el caso anterior, por aplicación del lema 4.4.6, tenemos
LI
que bs .
(Al
it)aite
Btraz(lub(B)).LI
LI
• Temporalmente compacto. Seanbs
e
Btraz(E) y A= ..4(E, bs),y tomemos un estadoA tal que nd(A) = oc y verificando que para todo
it e
Tse cumple que existe A,e
Atal que A,it Ait. Entonces, puesto que A,