SLIDE 1 1/20
Generating Hypergraph Languages by (Context-dependent) Fusion Grammars and Splitting/Fusion Grammars
Hans-J¨
- rg Kreowski, Sabine Kuske and Aaron Lye
University of Bremen, Germany {kreo, kuske, lye}@informatik.uni-bremen.de
26.10.2019
- 29. GI-Theorietag: Automaten und Formale Sprachen
SLIDE 2 2/20
DNA computing
Adleman’s experiment (1994): solution of the NP-hard Hamiltonian-path problem by a polynomial number of steps ◮ constructing short DNA double strands ◮ doubling by polymerase chain reaction: n repetitions yield 2n copies ◮ fusion of complementary sticky ends complementarity: (A, T) and (C, G) ◮ reading (sequencing): filtering of DNA molecules
- f certain lengths and with
certain substrands
SLIDE 3 3/20
DNA computing ❀ Fusion grammar (ICGT 2017)
◮ constructing short DNA double strands ◮ doubling by polymerase chain reaction: n repetitions yield 2n copies ◮ fusion of complementary sticky ends complementarity: (A, T) and (C, G) ◮ reading (sequencing): filtering of DNA molecules
- f certain lengths and with
certain substrands
SLIDE 4 3/20
DNA computing ❀ Fusion grammar (ICGT 2017)
◮ constructing short DNA double strands ◮ doubling by polymerase chain reaction: n repetitions yield 2n copies ◮ fusion of complementary sticky ends complementarity: (A, T) and (C, G) ◮ reading (sequencing): filtering of DNA molecules
- f certain lengths and with
certain substrands constructing initial hypergraph; connected components acting as molecules multiplication of connected components fusion of complementary labeled hyperedges complementarity: (A, A) for each fusion label A reading: filtering of connected components with certain labeling
SLIDE 5
4/20
Hypergraph
We consider hypergraphs over Σ with hyperedges like vk1 . . . v1 A wk2 . . . w1 k1 1 k2 1 where v1 · · · vk1 is a sequence of source nodes w1 · · · wk2 is a sequence of target nodes A ∈ Σ is a label. The class of all hypergraphs over Σ is denoted by HΣ.
SLIDE 6
5/20
Fusion rule
Let F ⊆ Σ be a fusion alphabet. Let type : F → N × N. Each A ∈ F has a complement A ∈ F where type(A) = type(A). fr(A) = vk1 . . . v1 v′
1 . . .
v′
k1
A A wk2 . . . w1 w′
1
. . . w′
k2
k1 1 k2 1 k1 1 k2 1 type(A) = (k1, k2) fr(A) represents a fusion rule corresponding to A
SLIDE 7 6/20
Rule application
- 1. find a matching morphism g of fr(A) in the hypergraph H
H vk1 . . . v1 v′
1 . . .
v′
k1
A A wk2 . . . w1 w′
1
. . . w′
k2
k1 1 k2 1 k1 1 k2 1
SLIDE 8 6/20
Rule application
- 1. find a matching morphism g of fr(A) in the hypergraph H
- 2. remove the images of the two hyperedges of fr(A)
I vk1 . . . v1 v′
1 . . .
v′
k1
wk2 . . . w1 w′
1
. . . w′
k2
SLIDE 9 6/20
Rule application
- 1. find a matching morphism g of fr(A) in the hypergraph H
- 2. remove the images of the two hyperedges of fr(A)
- 3. identify corresponding source and target vertices of the
removed edges H′ vk1 = v′
k1
. . . v1 = v′
1
wk2 = w′
k2
. . . w1 = w′
1
SLIDE 10 6/20
Rule application
- 1. find a matching morphism g of fr(A) in the hypergraph H
- 2. remove the images of the two hyperedges of fr(A)
- 3. identify corresponding source and target vertices of the
removed edges H′ vk1 = v′
k1
. . . v1 = v′
1
wk2 = w′
k2
. . . w1 = w′
1
SLIDE 11 6/20
Rule application
- 1. find a matching morphism g of fr(A) in the hypergraph H
- 2. remove the images of the two hyperedges of fr(A)
- 3. identify corresponding source and target vertices of the
removed edges H′ vk1 = v′
k1
. . . v1 = v′
1
wk2 = w′
k2
. . . w1 = w′
1
Rule application is denoted by H = ⇒
fr(A) H′.
SLIDE 12
7/20
Fusion grammar FG = (Z, F, M, T)
◮ Z ∈ HF∪F∪M∪T finite start hypergraph F, M, T ⊆ Σ, fusion, marker, terminal alphabet (all finite) M ∩ (F ∪ F) = ∅, T ∩ (F ∪ F) = ∅ = T ∩ M
SLIDE 13
7/20
Fusion grammar FG = (Z, F, M, T)
◮ Z ∈ HF∪F∪M∪T finite start hypergraph F, M, T ⊆ Σ, fusion, marker, terminal alphabet (all finite) M ∩ (F ∪ F) = ∅, T ∩ (F ∪ F) = ∅ = T ∩ M ◮ A direct derivation is either H = ⇒
fr(A) H′
for some A ∈ F or H = ⇒
m m · H = C∈C(H)
m(C) · C for some multiplicity m: C(H) → N. where C(H) denotes the set of connected components of H. ◮ Derivations are defined by the reflexive and transitive closure.
SLIDE 14
7/20
Fusion grammar FG = (Z, F, M, T)
◮ Z ∈ HF∪F∪M∪T finite start hypergraph F, M, T ⊆ Σ, fusion, marker, terminal alphabet (all finite) M ∩ (F ∪ F) = ∅, T ∩ (F ∪ F) = ∅ = T ∩ M ◮ A direct derivation is either H = ⇒
fr(A) H′
for some A ∈ F or H = ⇒
m m · H = C∈C(H)
m(C) · C for some multiplicity m: C(H) → N. where C(H) denotes the set of connected components of H. ◮ Derivations are defined by the reflexive and transitive closure. ◮ The generated language L(FG) = {remM(Y ) | Z
∗
= ⇒ H, Y ∈ C(H) ∩ (HT∪M − HT)}, where remM(Y ) removes all marker hyperedges from Y .
SLIDE 15 8/20
Pseudotori
Let F = {N, W } with k(N) = k(W ) = 1 and N = S, W = E. PSEUDOTORI = (
W S E N
, F, {µ}, {∗})
SLIDE 16 8/20
Pseudotori
Let F = {N, W } with k(N) = k(W ) = 1 and N = S, W = E. PSEUDOTORI = (
W S E N
, F, {µ}, {∗})
W S E N
= ⇒
m 20·
W S E N
SLIDE 17 8/20
Pseudotori
Let F = {N, W } with k(N) = k(W ) = 1 and N = S, W = E. PSEUDOTORI = (
W S E N
, F, {µ}, {∗})
W S E N
= ⇒
m 20·
W S E N
fr(N), fr(W ) 22
W W E E N S N S S N N S N S N S N S W E W E W E N N W S E W E S W S E N
SLIDE 18 9/20
Pseudotori
Let F = {N, W } with k(N) = k(W ) = 1 and N = S, W = E. PSEUDOTORI = (
W S E N
, F, {µ}, {∗})
W S E N
= ⇒
m 12·
W S E N
fr(N), fr(W ) 17
N S N S N S N S W E W E W E
SLIDE 19 9/20
Pseudotori
Let F = {N, W } with k(N) = k(W ) = 1 and N = S, W = E. PSEUDOTORI = (
W S E N
, F, {µ}, {∗})
W S E N
= ⇒
m 12·
W S E N
fr(N), fr(W ) 17
N S N S N S N S W E W E W E
∗ ∗
SLIDE 20
10/20
Transformation of hyperedge replacement grammars into fusion grammars
HRG = (N, T, P, S) N, T, non-terminal, terminal alphabet, P set of rules (all finite), S ∈ N Rules of the form r = (A, R, ext) A ∈ N, R ∈ HΣ, ext sequence of k(A) vertices of R.
SLIDE 21 10/20
Transformation of hyperedge replacement grammars into fusion grammars
HRG = (N, T, P, S) N, T, non-terminal, terminal alphabet, P set of rules (all finite), S ∈ N Rules of the form r = (A, R, ext) A ∈ N, R ∈ HΣ, ext sequence of k(A) vertices of R. Application of r:
2 1 k(A)
= ⇒
r
SLIDE 22 10/20
Transformation of hyperedge replacement grammars into fusion grammars
HRG = (N, T, P, S) N, T, non-terminal, terminal alphabet, P set of rules (all finite), S ∈ N Rules of the form r = (A, R, ext) A ∈ N, R ∈ HΣ, ext sequence of k(A) vertices of R. Application of r:
2 1 k(A)
= ⇒
r
L(HRG) = {H | S
∗
= ⇒ H, H ∈ HT}
SLIDE 23 10/20
Transformation of hyperedge replacement grammars into fusion grammars
HRG = (N, T, P, S) N, T, non-terminal, terminal alphabet, P set of rules (all finite), S ∈ N Rules of the form r = (A, R, ext) A ∈ N, R ∈ HΣ, ext sequence of k(A) vertices of R. Application of r:
2 1 k(A)
= ⇒
r
L(HRG) = {H | S
∗
= ⇒ H, H ∈ HT} Idea of the transformation: F = N
R A
1 k(A)
fusion component
grammar’s start hypergraph S with marker
Theorem
L(HRG) = L(FG(HRG))
SLIDE 24 11/20
The converse is not possible
Theorem
Fusion grammars are more powerful than hyperedge replacement grammars. Proof: L(pseudotori) contain tori of arbitrary size with underlying rectangular grids. Therefore, the language has unbounded treewidth whereas hyperedge replacement languages have bounded treewidth (Courcelle/Engelfriet).
N S N S N S N S W E W E W E
SLIDE 25
12/20
Context-dependent fusion grammar CDFG = (Z, F, M, T, P) (LATA 2019)
◮ (Z, F, M, T) fusion grammar P finite set of context-dependent fusion rules with rules of the form (fr(A), PC, NC) where PC, NC: sets of hypergraph morphisms with domain fr(A)
SLIDE 26
12/20
Context-dependent fusion grammar CDFG = (Z, F, M, T, P) (LATA 2019)
◮ (Z, F, M, T) fusion grammar P finite set of context-dependent fusion rules with rules of the form (fr(A), PC, NC) where PC, NC: sets of hypergraph morphisms with domain fr(A) ◮ A direct derivation is either H = ⇒
cdfr H′ for some cdfr ∈ P,
i.e.. application of fr(A) provided that the PC-contexts are present, and the NC-contexts not present (in the usual way of context conditions), or H = ⇒
m m · H = C∈C(H)
m(C) · C for some multiplicity m: C(H) → N. ◮ derivations and generated languages as before.
SLIDE 27
13/20
Generative power of context-dependent fusion grammars (GCM 2019)
Transformation of Turing machines into corresponding context-dependent fusion grammars.
Theorem
Let TM be a Turing machine. Let CDFG(TM) be the corresponding context-dependent fusion grammar. L(CDFG(TM)) = {sg(w) | w ∈ L(TM)} generated language recognized language sg(w) graph representation of a string w.
SLIDE 28 14/20
Transformation of Turing Machines into Context-Dependent Fusion Grammars
Main construction steps:
- 1. Representation of the TM by a hypergraph (using the usual
state graph representation)
- 2. Generation of arbitrary inputs on the tape (using the string
graph representation of strings)
- 3. Simulation of a transition step of the TM
SLIDE 29 14/20
Transformation of Turing Machines into Context-Dependent Fusion Grammars
Main construction steps:
- 1. Representation of the TM by a hypergraph (using the usual
state graph representation)
- 2. Generation of arbitrary inputs on the tape (using the string
graph representation of strings)
- 3. Simulation of a transition step of the TM
(Context-dependent) fusion rules can only consume two complementary labeled hyperedges by a rule application. All modifications must be expressed in this way.
SLIDE 30
15/20
Splitting rule with fixed disjoint context (ICGT 2018)
splitting is the inverse of fusion srfdc(A, a) consists of a splitting rule sr(A) and a morphism a: [k(A)] → X for some context X.
SLIDE 31
15/20
Splitting rule with fixed disjoint context (ICGT 2018)
splitting is the inverse of fusion srfdc(A, a) consists of a splitting rule sr(A) and a morphism a: [k(A)] → X for some context X. It is applicable to H if H can be split into H′ and X (with an additional A-hyperedge)
SLIDE 32 15/20
Splitting rule with fixed disjoint context (ICGT 2018)
splitting is the inverse of fusion srfdc(A, a) consists of a splitting rule sr(A) and a morphism a: [k(A)] → X for some context X. It is applicable to H if H can be split into H′ and X (with an additional A-hyperedge) Example cut = (A, 2• 1•
⇒
cut
A •
SLIDE 33
16/20
Splitting/fusion grammar SFG = (Z, F, M, T, SR)
◮ (Z, F, M, T) fusion grammar SR finite set of splitting rules with fixed disjoint context.
SLIDE 34 16/20
Splitting/fusion grammar SFG = (Z, F, M, T, SR)
◮ (Z, F, M, T) fusion grammar SR finite set of splitting rules with fixed disjoint context. ◮ A direct derivation is either H = ⇒
fr(A) H′
for some A ∈ F or H = ⇒
m m · H =
m(C) · C for some m: C(H) → N or H = ⇒
srfdc(A,a) H′
for some A ∈ F and a: K → X.
SLIDE 35 16/20
Splitting/fusion grammar SFG = (Z, F, M, T, SR)
◮ (Z, F, M, T) fusion grammar SR finite set of splitting rules with fixed disjoint context. ◮ A direct derivation is either H = ⇒
fr(A) H′
for some A ∈ F or H = ⇒
m m · H =
m(C) · C for some m: C(H) → N or H = ⇒
srfdc(A,a) H′
for some A ∈ F and a: K → X. ◮ derivation and generated language as before
SLIDE 36
17/20
Transformation of Chomsky grammars into splitting/fusion grammars
Let (N, T, P, S) be a Chomsky grammar. Let p = (u1 . . . uk, v1 . . . vl) ∈ P. Let x1 . . . xn = x1 . . . xi−1u1 . . . ukxi+k . . . xn Then x1 . . . xi−1u1 . . . ukxi+k . . . xn = ⇒
p x1 . . . xi−1v1 . . . vlxi+k . . . xn
SLIDE 37
17/20
Transformation of Chomsky grammars into splitting/fusion grammars
Let (N, T, P, S) be a Chomsky grammar. Let p = (u1 . . . uk, v1 . . . vl) ∈ P. Let x1 . . . xn = x1 . . . xi−1u1 . . . ukxi+k . . . xn Then x1 . . . xi−1u1 . . . ukxi+k . . . xn = ⇒
p x1 . . . xi−1v1 . . . vlxi+k . . . xn
Adapting a transformation of Chomsky grammars into iterated splicing systems (cf. [P˘ aun,Rozenberg,Salomaa:1998]). cyc(x1 . . . xn) = u1 uk xn x1 xi−1 xi+k be
∗
= ⇒ v1 vl xn x1 xi−1 xi+k be
SLIDE 38
18/20
Simulating a direct derivation
p = (u1 . . . uk, v1 . . . vl) ∈ P cyc(x1 . . . xn)act,i = xn x1 x2 be xi−1 xi xi+1 xn x1 x2 act = u1 uk xn x1 xi−1 xi+k be act
SLIDE 39 18/20
Simulating a direct derivation
p = (u1 . . . uk, v1 . . . vl) ∈ P cyc(x1 . . . xn)act,i = xn x1 x2 be xi−1 xi xi+1 xn x1 x2 act = u1 uk xn x1 xi−1 xi+k be act
cyc(x1 . . . xn)act,i = ⇒
sr(Ap,u1...,uk)
xi−1 xi+k xn x1 Ap be +
uk
act u1 . . . uk =
act u1 uk ⊇
SLIDE 40 18/20
Simulating a direct derivation
p = (u1 . . . uk, v1 . . . vl) ∈ P cyc(x1 . . . xn)act,i = xn x1 x2 be xi−1 xi xi+1 xn x1 x2 act = u1 uk xn x1 xi−1 xi+k be act
cyc(x1 . . . xn)act,i = ⇒
sr(Ap,u1...,uk)
xi−1 xi+k xn x1 Ap be +
uk
act u1 . . . uk =
act u1 uk ⊇
- 1
- 2
- 2. fusion, i.e.,
- . . . •
- v1
vl Ap act = ⇒
fr(Ap)
+ cyc(x1 . . . xi−1Apxi+k . . . xn) v1 vl xn x1 xi−1 xi+k be act
SLIDE 41
19/20
Generative power of splitting/fusion grammars
Theorem
Let CG = (N, T, P, S) be a Chomsky grammar and SFG(CG) the corresponding splitting/fusion grammar. Then cyc(L(CG)) = L(SFG(CG)). CG SFG(CG) L(CG) cyc(L(CG)) = L(SFG(CG)) transform generate generate cyc
SLIDE 42 20/20
Conclusion
- 1. Fusion grammars can simulate hyperedge replacement
grammars; but are more powerful.
- 2. Context-dependent fusion grammars and splitting/fusion
grammars can generate all recursively enumerable string languages (up to representation) and are universal in this respect.
SLIDE 43 20/20
Conclusion
- 1. Fusion grammars can simulate hyperedge replacement
grammars; but are more powerful.
- 2. Context-dependent fusion grammars and splitting/fusion
grammars can generate all recursively enumerable string languages (up to representation) and are universal in this respect. Future work
- 1. Is it true (as we conjecture) that fusion grammars are not
universal?
- 2. Is it true (as we conjectiure) that fusion grammars with only
positive context conditions (or only negative ones) are universal?
- 3. How does a natural transformation of context-dependent
fusion grammars into splitting/fusion grammars or the other way round look like?
SLIDE 44 20/20
Conclusion
- 1. Fusion grammars can simulate hyperedge replacement
grammars; but are more powerful.
- 2. Context-dependent fusion grammars and splitting/fusion
grammars can generate all recursively enumerable string languages (up to representation) and are universal in this respect. Future work
- 1. Is it true (as we conjecture) that fusion grammars are not
universal?
- 2. Is it true (as we conjectiure) that fusion grammars with only
positive context conditions (or only negative ones) are universal?
- 3. How does a natural transformation of context-dependent
fusion grammars into splitting/fusion grammars or the other way round look like? Thank you! Questions?