Document

Anuncio
Computación bioinspirada
Sistemas de “stickers”
José M. Sempere
Departamento de Sistemas Informáticos y Computación
Universidad Politécnica de Valencia
Sistemas de “stickers”
1.
2.
3.
4.
Operaciones de “sticking”
sticking”
Clasificación de los sistemas de “stickers”
stickers”
Jerarquías de algunas familias de lenguajes
Otros sistemas de “stickers”
stickers” regulares
Bibliografía del tema
•
DNA Computing. G. Păun, G. Rozenberg, A. Salomaa. Springer. 1998
•
Computing with Bio-Molecules. Theory and Experiments. G. Păun (ed.). Springer. 1998
1
Conceptos previos
Partimos de los siguientes conceptos previos ...
V es un alfabeto
γ⊆ V × V es una relación de complementariedad simétrica
V*
V*
es el conjunto de cadenas dobles sobre V* × V*
WKγ(V) = {
[]
x
y
: x,y ∈V*, |x| = |y|, γ(x) = y }
es el dominio de Watson-Crick o conjunto de moléculas completas
Moléculas incompletas (“dominoes
”)
(“dominoes”)
Wγ(V) = Lγ(V) ∪ Rγ(V) ∪ LRγ(V)
Lγ(V) = (
Rγ(V) =
( ) ( ) [ ]*
λ ∪
V*
V* )
λ
V
V
[ ]* ( ) ( )
LRγ(V) = (
V
V
(
λ
V* ∪
V* )
λ
( ) ( ) [ ]* ( ) ( )
λ
V*
∪
V*
λ
)
V
V
(
λ ∪
V*
V* )
λ
2
Operaciones de “sticking
” (I)
“sticking”
La operación de sticking es una operación de enlace entre elementos de Wγ(V)
[]
Tomemos x = x1 x2 x3 con x2 ∈ WK γ(V) – { λ }
λ
y x1 , x3 ∈
() ()
V*
λ
∪
λ
V*
Dados x, y definiremos la operación de sticking µ(x,y) por casos
Caso (I)
x3 =
() () []
[]
u
λ
y=
u
v
µ(x,y) = x1 x2
λ
v y’
y’
u
v
∈ WK γ(V)
y’ ∈ Rγ(V)
u
x
y
v
Operaciones de “sticking
” (II)
“sticking”
Caso (II)
x3 =
() () []
[]
λ
v
µ(x,y) = x1 x2
y=
u
v
u
λ y’
u
v
y’
∈ WK γ(V)
y’ ∈ Rγ(V)
u
y
x
v
3
Operaciones de “sticking
” (III)
“sticking”
Caso (III)
x3 =
() ()
( )
u1
λ
u2
λ
u1u2
λ
µ(x,y) = x1 x2
Caso (IV)
x3 =
y=
() ()
( )
λ
v1
y=
u2
x
y
λ
v2
λ
v1v2
µ(x,y) = x1 x2
u1
x
y
v1
v2
Operaciones de “sticking
” (IV)
“sticking”
Caso (V)
x3 =
( ) ()
[ ]( )
u1u2
y=
λ
u2
λ
u1
v
µ(x,y) = x1 x2
λ
v
[]
u1 ∈ WK (V)
γ
v
u1
x
u2
v
y
( ) ()
[ ]( )
Caso (VI)
λ
x3 = v v
1 2
µ(x,y) = x1 x2
u
v1
y=
λ
v2
u
λ
[]
u
v1
∈ WK γ(V)
y
u
v1
v2
x
4
Operaciones de “sticking
” (V)
“sticking”
Caso (VII)
x3 =
() ( ) [ ]
[ ]( )
λ
u
λ
µ(x,y) = x1 x2
y= v v
1 2
u
v1
λ
v2
u ∈ WK (V)
γ
v1
u
x
v1
Caso (VIII)
x3 =
() ( ) [ ]
[ ]( )
λ
v
uu
y= 1 2
λ
u1
v
µ(x,y) = x1 x2
y
u1 ∈ WK (V)
γ
v
u2
λ
v2
y
u1
u2
v
x
Operaciones de “sticking
” (VI)
“sticking”
Algunas consideraciones sobre la operación de “sticking”
1. Podemos establecer ocho casos más, simétricos a los anteriores,
tomando la cadena y por la izquierda.
2. En los casos (III) y (IV) no se utiliza alineamiento entre cadenas.
Para evitar estos dos casos se utiliza la operación de “sticking
restringido” µ’(x,y)
Dado un elemento z ∈ W γ(V) a la longitud máxima de la hebra (superior o inferior)
sobrante se le denomina retardo de z (por la izquierda o por la derecha) y lo
denotaremos por d(z). Representa el número de símbolos necesarios para completar
una hebra doble.
d(z)
z
d(z)
z
d(z)
d(z)
5
Sistemas de “stickers
” (I)
“stickers”
ρ = (V, γ, A, D)
V alfabeto
γ ⊆ V×V relación simétrica de complementariedad
A ⊂ LRγ(V) conjunto finito de axiomas
D ⊂ Wγ(V) × Wγ(V) conjunto finito de “dominoes”
Sea ρ = (V, γ, A, D) y x,y ∈ LRγ(V)
x ⇒ y sii y = µ(u, µ(x,v)) = µ(µ(u,x),v) con (u,v) ∈ D
Sistemas de “stickers
” (II)
“stickers”
ρ = (V, γ, A, D)
Una computación en ρ es una secuencia
x1 ⇒ x2 ⇒ x3 ⇒ ... ⇒ xk con x1 ∈ A
* x en ρ es completa si x ∈ WK γ(V)
Una computación σ:x1 ⇒
k
k
Lenguaje de moléculas no restringido de ρ
* w, x ∈ A}
LMn(ρ) = { w ∈ WK γ(V) : x ⇒
Lenguaje generado por ρ
[]
Ln(ρ) = { w ∈ V* : w ∈ LMn(ρ), w’ ∈ V*}
w’
6
ρ = (V, γ, A, D)
Sistemas de “stickers
” (III)
“stickers”
* x completa es ...
Una computación σ:x1 ⇒
k
(a) primitiva si (∀ i 1≤ i < k) xi ∉ WK γ(V)
Lp(ρ) lenguaje generado por ρ con computaciones primitivas
(b) con retraso d si (∀ i 1≤ i ≤ k) d(xi) ≤ d
Ld(ρ) lenguaje generado por ρ con retraso d (con d ≥1)
Propiedad (a) Lp(ρ) ⊆ Ln(ρ)
(b) Ld1(ρ) ⊆ Ld2(ρ) si 1 ≤ d1 ≤ d2
(c) Ld(ρ) ⊆ Ln(ρ) ∀ d ≥ 0
Sistemas de “stickers
” (IV)
“stickers”
Un sistema de “stickers” ρ = (V, γ, A, D) tiene retraso acotado si
∃ d ≥ 1 : Ld(ρ) = Ln(ρ)
Un sistema de “stickers” ρ = (V, γ, A, D) es ...
(a) unilateral (one-sided) si ∀ (u, v)∈D u = λ
∨ v=λ
(b) regular si ∀ (u, v)∈D u = λ
(c) simple si para todos los pares (u, v)∈D
u,v ∈
()
V*
λ ∨
u,v ∈
()
λ
V*
7
Familias de lenguajes
Se define ASL(α) con α ∈ {n,p} a la familia de lenguajes
Lα(ρ) siendo ρ un sistema de “stickers” arbitrario.
Se define ASL(b) a la familia de lenguajes generados por
sistemas de “stickers” con retraso acotado.
Se define XSL(α) con α ∈ {n,p,b} y X ∈ {O, R , S, SO, SR}
a la familia de lenguajes Lα(ρ) siendo ρ un sistema de “stickers”
O (unilateral)
R (regular)
S (simple)
SO (simple y unilateral)
SR (simple y regular).
Jerarquías de algunas familias de lenguajes (I)
Lema ∀ α ∈ {n,p,b}
ASL(α)
SSL(α)
OSL(α)
SOSL(α)
RSL(α)
SRSL(α)
8
Jerarquías de algunas familias de lenguajes (II)
Lema ∀ X ∈ {A,O, R , S, SO, SR} XSL(b) ⊆ XSL(n)
Lema ∀ α ∈ {n,p,b}
∀ X ∈ {A,O, R , S, SO, SR} XSL(α) ⊆ CS
Jerarquías de algunas familias de lenguajes (III)
Teorema
CS
ASL(n)
SSL(n)
ASL(b) = LIN
SSL(b)
OSL(b) = RSL(b) = OSL(n) =
= RSL(n) = REG
SOSL(b) = SOSL(n)
SRSL(b) = SRSL(n)
9
Otros sistemas de “stickers
” regulares (I)
“stickers”
ρ = (V, γ, A, Dl, Du)
Dl ⊆
()
λ
V*
Du ⊆
()
V*
λ
finitos
σ : x1 ⇒ x2 ⇒ x3 ⇒ ... ⇒ xk completa
Conjuntos de control
eΠ : DΠ → Lab Π ∈ {l,u}
1
eΠ ( w
w2 ) si x ⇒y utiliza
δ(Π, x ⇒ y) =
λ en cualquier otro caso
()
eΠ (σ) = δ(Π, x1 ⇒ x2) δ(Π, x2 ⇒ x3)
···
()
w1
w2
∈ DΠ
δ(Π, xk-1 ⇒ xk)
Π ∈ {l,u}
Otros sistemas de “stickers
” regulares (II)
“stickers”
Una computación completa σ : x1 ⇒ x2 ⇒ x3 ⇒ ... ⇒ xk es ...
(a) limpia (fair) si |el (σ)| = |eu (σ)|
(b) coherente si el (σ) = eu (σ)
Propiedad Toda computación coherente es limpia
10
Otros sistemas de “stickers
” regulares (III)
“stickers”
Dado ρ = (V, γ, A, Dl, Du) se define
•Lf(ρ) lenguaje generado por ρ con computaciones limpias
define la familia SRSL(f)
•Lc(ρ) lenguaje generado por ρ con computaciones coherentes
define la familia SRSL(c)
•Lpf(ρ) lenguaje generado por ρ con computaciones limpias primitivas
define la familia SRSL(pf)
(pf)
•Lpc(ρ) lenguaje generado por ρ con computaciones coherentes primitivas
define la familia SRSL(pc)
(pc)
Teorema Si L es recursivamente enumerable entonces L = g(L’) donde
L’ ∈ SRSL(c) o L’ ∈ SRSL(pc)
(pc) y g es un homomorfismo
g : V → U ∪ {λ}
11
Descargar