Articulo de referencia

Autómata de señales

En la teoría de autómatas , un campo de la informática , un autómata de señales es un autómata finito extendido con un conjunto finito de relojes de valor real. Durante la ejecu...

En la teoría de autómatas , un campo de la informática , un autómata de señales es un autómata finito extendido con un conjunto finito de relojes de valor real. Durante la ejecución de un autómata de señales, los valores de los relojes aumentan a la misma velocidad. A lo largo de las transiciones del autómata, los valores de los relojes se pueden comparar con números enteros. Estas comparaciones forman condiciones que pueden habilitar o deshabilitar las transiciones y, al hacerlo, restringen los posibles comportamientos del autómata. Además, los relojes se pueden reiniciar. [ 1 ]

Ejemplo

Antes de definir formalmente qué es un autómata de señales, se dará un ejemplo. Consideremos el lenguajeL{\displaystyle {\mathcal {L}}}señales, sobre un alfabeto binario{A,B}{\displaystyle \{A,B\}}, que contiene señalesγ{\displaystyle \gamma }de tal manera que:

  • A{\displaystyle A}aparece en intervalos singulares. Es decir, el conjunto de tiempos{tγ(t)=A}{\displaystyle \{t\mid \gamma (t)=A\}}es discreto y
  • A{\displaystyle A}aparece al menos una vez durante cada intervalo de longitud uno.

Este idioma puede ser comprendido por el autómata que se muestra en la imagen cercana.

Un autómata de señales que asegura que A se mantenga discretamente y al menos una vez por unidad de tiempo.

En cuanto a los autómatas finitos, las flechas entrantes representan las ubicaciones iniciales y el doble círculo representa las ubicaciones de aceptación. Sin embargo, a diferencia de los autómatas finitos, las letras aparecen en las ubicaciones y no en las transiciones. Esto se debe a que las letras se emiten continuamente y las transiciones se toman de forma discreta. El símboloincógnita{\displaystyle x}representa un reloj . Este reloj permite medir el tiempo transcurrido desde la última vez queA{\displaystyle A}fue emitido. Por lo tantoincógnita=0{\displaystyle x=0}garantiza queA{\displaystyle A}se emite discretamente. Y1>incógnita{\displaystyle 1>x}garantiza que no pueda pasar más de una unidad de tiempo sinA{\displaystyle A}ocurriendo.

Definición formal

Autómata de señales

Formalmente, un autómata de señales es una tupla.A=Σ,L,L0,do,F,α,β,mi{\displaystyle {\mathcal {A}}=\langle \Sigma ,L,L_{0},C,F,\alpha ,\beta ,E\rangle }que consta de los siguientes componentes:

  • Σ{\displaystyle \Sigma }es un conjunto finito llamado alfabeto o acciones deA{\displaystyle {\mathcal {A}}}.
  • L{\displaystyle L}es un conjunto finito . Los elementos deL{\displaystyle L}se denominan ubicaciones o estados deA{\displaystyle {\mathcal {A}}}.
  • do{\displaystyle C}es un conjunto finito llamado los relojes deA{\displaystyle {\mathcal {A}}}.
  • L0L{\displaystyle L_{0}\subseteq L} es el conjunto de ubicaciones de inicio.
  • FL{\displaystyle F\subseteq L}es el conjunto de ubicaciones de aceptación.
  • α:LΣ{\displaystyle \alpha :L\to \Sigma }que asocia una letra a cada ubicación.
  • β:LB(do){\displaystyle \beta :L\to {\mathcal {B}}(C)}que asocian restricciones de reloj a cada ubicación, y
  • miL×PAG(do)×L{\displaystyle E\subseteq L\times {\mathcal {P}}(C)\times L}es un conjunto de aristas, llamadas transiciones deA{\displaystyle {\mathcal {A}}}, dónde
    • PAG(do){\displaystyle {\mathcal {P}}(C)}es el conjunto potencia dedo{\displaystyle C}.

Una ventaja(,r,){\displaystyle (\ell ,r,\ell ')}demi{\displaystyle E}es una transición desde ubicaciones{\displaystyle \ell }a{\displaystyle \ell '}que reinician los relojes der{\displaystyle r}.

estado extendido

Un par con una ubicación{\displaystyle \ell }y una valoración del relojν{\displaystyle \nu }se denomina estado extendido o estado .

Nótese que la palabra estado es, por lo tanto, ambigua, ya que, dependiendo del autor, puede significar tanto un par como un elemento deL{\displaystyle L}. Para mayor claridad, este artículo utilizará el término ubicación para referirse al elemento deL{\displaystyle L}y el término ubicación extendida para pares.

Aquí radica una de las mayores diferencias entre los autómatas de señales y los autómatas finitos . En un autómata finito, en algún punto de la ejecución, el estado se describe completamente por el número de letras leídas y por un número finito de valores posibles, que en realidad se denominan "estados". Esto significa que, dado un estado y el sufijo de la palabra a leer, el resto de la ejecución está totalmente determinado. De ahí el término "finito" en el nombre "autómata finito". Sin embargo, como se explica en la sección "ejecución" más adelante, para reanudar la ejecución se utilizan relojes para determinar qué transiciones se pueden realizar. Por lo tanto, para conocer el estado del autómata, es necesario saber tanto en qué posición se encuentra como el valor del reloj.

Correr

En el caso de los autómatas finitos, una ejecución consiste esencialmente en una secuencia de ubicaciones, de modo que existe una transición entre dos de ellas. Sin embargo, cabe destacar dos diferencias. La letra no está determinada por la transición, sino por las ubicaciones; esto se debe a que las letras se emiten de forma continua, mientras que las transiciones se realizan de forma discreta. En cada ubicación transcurre cierto tiempo; las restricciones de reloj que identifican una ubicación o su sucesora pueden limitar el tiempo que se permanece en ella.

Una carrera es una secuencia de la formaν0do(0,I0)ν1r1(1,I1){\displaystyle {\xrightarrow[{\nu _{0}}]{C}}(\ell _{0},I_{0}){\xrightarrow[{\nu _{1}}]{r_{1}}}(\ell _{1},I_{1})\dots }que satisfacen ciertas restricciones. Antes de enunciar esas restricciones, se introducen algunas notaciones. Las secuencias son discretas pero representan eventos continuos. Una versión continua de las secuencias(σi){\displaystyle (\sigma _{i})},(νi){\displaystyle (\nu _{i})},(i){\displaystyle (\ell _{i})}Ahora se presentan. Dejemosi0{\displaystyle i\geq 0}integral ytIi{\displaystyle t\in I_{i}}, entonces

  • dejarσt{\displaystyle \sigma '_{t}}ser igual aσi{\displaystyle \sigma _{i}},
  • dejarνt{\displaystyle \nu '_{t}}serνi+tIi{\displaystyle \nu _{i}+t-\lceil I_{i}\rceil }conIi{\displaystyle \lceil I_{i}\rceil }siendo el límite inferior del intervaloIi{\displaystyle I_{i}},
  • dejart=i{\displaystyle \ell '_{t}=\ell _{i}}.

Las restricciones satisfechas por la ejecución son, para cadai0{\displaystyle i\geq 0}integral yt0{\displaystyle t\geq 0}real:

  • 0L0{\displaystyle \ell _{0}\in L_{0}},
  • (i,ri,i+1)mi{\displaystyle (\ell _{i},r_{i},\ell _{i+1})\in E},
  • νi+1=(νi+Ii)[ri0]{\displaystyle \nu _{i+1}=(\nu _{i}+\mid I_{i}\mid )[r_{i}\rightarrow 0]},
  • νtβ(t){\displaystyle \nu '_{t}\models \beta (\ell '_{t})}.

La señal definida por esta ejecución es la funciónσ{\displaystyle \sigma '}definido anteriormente. Se dice que la carrera definida anteriormente es una carrera para la señalσ{\displaystyle \sigma '}.

La noción de aceptar una secuencia se define como en los autómatas finitos para palabras finitas, y como en los autómatas de Büchi para palabras infinitas. Es decir, siw{\displaystyle w}es de longitud finitanorte{\displaystyle n}, entonces la ejecución es aceptable sinorteF{\displaystyle \ell _{n}\in F}. Si la palabra es infinita, entonces la secuencia solo acepta si existe un número infinito de posiciones.i{\displaystyle i}de tal manera queiF{\displaystyle \ell _{i}\in F}.

Señales y lenguaje aceptados

Una señalγ{\displaystyle \gamma }Se dice que es aceptado por un autómata de señales.A{\displaystyle {\mathcal {A}}}si existe una racha deA{\displaystyle {\mathcal {A}}}enγ{\displaystyle \gamma }aceptándolo. El conjunto de señales aceptadas porA{\displaystyle {\mathcal {A}}}se denomina el idioma aceptado porA{\displaystyle {\mathcal {A}}}y se denota porS(A){\displaystyle {\mathcal {S(A)}}}.

Autómata de señales determinista

Al igual que en el caso de los autómatas finitos y de Büchi, un autómata de señales puede ser determinista o no determinista. Intuitivamente, ser determinista tiene el mismo significado en ambos casos. Significa que el conjunto de ubicaciones de inicio es un conjunto único y que, dado un estado extendidos{\displaystyle s}y una cartaa{\displaystyle a}, solo hay un estado extendido posible al que se puede llegar desdes{\displaystyle s}leyendoa{\displaystyle a}Más precisamente, o bien es posible permanecer en el lugar durante más tiempo, o bien existe como máximo un posible lugar sucesor.

Formalmente, esto se puede definir de la siguiente manera:

  • L0{\displaystyle L_{0}}es un singleton
  • para cada ubicaciónL{\displaystyle \ell \in L}, para cada transición(,r,)mi{\displaystyle (\ell ,r,\ell ')\in E}Las dos zonas siguientes son disjuntas:
    • la zona definida por la restricción del relojβ(){\displaystyle \beta (\ell )},
    • la zona definida por la restricción del relojβ(){\displaystyle \beta (\ell ')}donde las restricciones en los relojes der{\displaystyle r}se eliminan,
  • para cada transición de ubicación(,r,)mi{\displaystyle (\ell ,r',\ell ')\in E}y(,r,)mi{\displaystyle (\ell ,r'',\ell '')\in E}Las dos zonas siguientes son disjuntas:
    • la zona definida por la restricción del relojβ(){\displaystyle \beta (\ell ')}donde las restricciones en los relojes der{\displaystyle r'}se eliminan,
    • la zona definida por la restricción del relojβ(){\displaystyle \beta (\ell '')}donde las restricciones en los relojes der{\displaystyle r''}se eliminan,

Autómatas de señales simplificados

Según los autores, la definición exacta de autómata de señales puede variar ligeramente. A continuación se presentan dos de dichas definiciones.

intervalos semiabiertos

Para simplificar la definición de una secuencia, algunos autores requieren que cada intervalo de una secuencia esté cerrado por la derecha y abierto por la izquierda. Esto restringe los autómatas a aceptar solo señales cuya partición subyacente satisface la misma propiedad. Sin embargo, garantiza que en cada momentot0{\displaystyle t\geq 0},límitetincógnita+F(incógnita)=F(t){\displaystyle \lim _{t\leftarrow x^{+}}f(x)=f(t)}paraF{\displaystyle f}representando cualquiera de las funcionesσ{\displaystyle \sigma '},ν{\displaystyle \nu '}o{\displaystyle \ell '}presentado anteriormente.

Autómata de señales bipartito

Un autómata de señales bipartito es un autómata de señales en el que la ejecución alterna entre intervalos abiertos e intervalos singulares (es decir, intervalos que son singletons). Garantiza que el grafo subyacente al autómata sea un grafo bipartito y, por lo tanto, que el conjunto de ubicaciones se pueda particionar en{Lo,Ls}{\displaystyle \{L^{o},L^{s}\}}, el conjunto de ubicaciones abiertas y de ubicaciones singulares. Dado que el primer intervalo contiene 0, no puede ser una ubicación abierta, por lo que se deduce queL0Ls{\displaystyle L_{0}\subseteq L^{s}}. Para asegurar que cada ubicación singular sea realmente singular, para cada ubicación{\displaystyle \ell }, debe haber un relojincógnita{\displaystyle x_{\ell }}que se restablece al entrar{\displaystyle \ell }y de tal manera que la restricción del reloj de{\displaystyle \ell }contieneincógnita=0{\displaystyle x=0}.

Cualquier autómata de señales puede transformarse en un autómata de señales bipartito equivalente. Basta con reemplazar cada ubicación.{\displaystyle \ell }por un par de ubicaciones(o,s){\displaystyle (\ell ^{o},\ell ^{s})}y presentar un nuevo relojincógnita{\displaystyle x}, de tal manera que para cada{\displaystyle \ell },incógnitas=incógnita{\displaystyle x_{\ell ^{s}}=x}.

Cerca de allí se muestra un autómata bipartito equivalente al autómata de señales de la sección de ejemplos. Los estados rectangulares representan ubicaciones singulares.

Un autómata de señales bipartito que garantiza que A se cumple discretamente y al menos una vez por unidad de tiempo.

Sincronización de autómatas

La noción de producto de autómatas finitos se extiende a los autómatas de señales. Sin embargo, dicho producto se denomina sincronización de autómatas para enfatizar que el tiempo transcurre de forma similar en ambos autómatas considerados. La principal diferencia entre sincronización y producto radica en que, cuando dos autómatas finitos leen la misma palabra, realizan la transición simultáneamente. Esto no ocurre con los autómatas de señales, ya que pueden realizar la transición en cualquier momento. Por lo tanto, la relación de transición de un autómata de señales puede permitir que la transición se realice en uno o dos autómatas.

DejarA1=Σ,L1,L01,do1,F1,α1,β1,mi1{\displaystyle {\mathcal {A}}^{1}=\langle \Sigma ,L^{1},L_{0}^{1},C^{1},F^{1},\alpha ^{1},\beta ^{1},E^{1}\rangle }yA2=Σ,L2,L02,do2,F2,α2,β2,mi2{\displaystyle {\mathcal {A}}^{2}=\langle \Sigma ,L^{2},L_{0}^{2},C^{2},F^{2},\alpha ^{2},\beta ^{2},E^{2}\rangle }dos autómatas de señales, su sincronización es el autómata de señalesA1A2=Σ,{(1,2)L1L2α1(1)=α2(2)},L01L02,do1do2,F1F2,(1,2)α1(1),(1,2)β1(1)β2(2),mi{\displaystyle {\mathcal {A}}1\otimes {\mathcal {A}}^{2}=\langle \Sigma ,\{(\ell ^{1},\ell ^{2})\in L^{1}\otimes L^{2}\mid \alpha ^{1}(\ell ^{1})=\alpha ^{2}(\ell ^{2})\},L_{0}^{1}\otimes L_{0}^{2},C^{1}\cup C^{2},F^{1}\otimes F^{2},(\ell ^{1},\ell ^{2})\mapsto \alpha ^{1}(\ell ^{1}),(\ell ^{1},\ell ^{2})\mapsto \beta ^{1}(\ell ^{1})\land \beta ^{2}(\ell ^{2}),E\rangle }, dóndemi{\displaystyle E}Contiene las siguientes transiciones:

  • ((1,2),r1,(1,2){\displaystyle ((\ell ^{1},\ell ^{2}),r^{1},(\ell ^{\prime 1},\ell ^{2})}para(1,r,1)mi1{\displaystyle (\ell ^{1},r,\ell ^{\prime 1})\in E^{1}}y de manera similar parami2{\displaystyle E^{2}},
  • ((1,2),r1r2,(1,2){\displaystyle ((\ell ^{1},\ell ^{2}),r^{1}\cup r^{2},(\ell ^{\prime 1},\ell ^{\prime 2})}para(1,r,1)mi1{\displaystyle (\ell ^{1},r,\ell ^{\prime 1})\in E^{1}}y(2,r,2)mi2{\displaystyle (\ell ^{2},r,\ell ^{\prime 2})\in E^{2}}.

Diferencia con los autómatas temporizados

Los autómatas temporizados son otra extensión de los autómatas finitos, que añaden la noción de tiempo a las palabras. A continuación, exponemos algunas de las principales diferencias entre los autómatas temporizados y los autómatas de señales.

En los autómatas temporizados, las letras se emiten en las transiciones, no en las ubicaciones. Como se explicó anteriormente, al comparar los autómatas de señales con los autómatas finitos, las letras se emiten en las transiciones cuando las palabras se emiten de forma discreta, como en el caso de las palabras y las palabras temporizadas, mientras que se emiten en ubicaciones cuando las letras se emiten de forma continua, como en el caso de las señales.

En los autómatas temporizados, las condiciones de guarda solo se comprueban en las transiciones. Esto simplifica la definición de autómata determinista , ya que implica que la restricción debe cumplirse antes de que se reinicien los relojes.

Véase también

Notas

  1. Brihaye, Thomas; Geeraerts, Gilles; Ho, Hsi-Ming; Monmege, Benjamin (2017). "Verificación basada en autómatas temporizados de MITL sobre señales" . 24º Simposio Internacional sobre Representación Temporal y Razonamiento (TIME 2017) . 90 : 7:1–7:19. doi : 10.4230/LIPIcs.TIME.2017.7 .