splicing fusion grammars and their relation to chomsky
play

Splicing/Fusion Grammars and Their Relation to (Chomsky and) - PowerPoint PPT Presentation

Splicing/Fusion Grammars and Their Relation to (Chomsky and) Hypergraph Grammars org Kreowski 1 , Sabine Kuske 1 and Aaron Lye 2 Hans-J University of Bremen 1 Department of Computer Science, 2 Department of Mathematics P.O.Box 33 04 40, 28334


  1. Splicing/Fusion Grammars and Their Relation to (Chomsky and) Hypergraph Grammars org Kreowski 1 , Sabine Kuske 1 and Aaron Lye 2 Hans-J¨ University of Bremen 1 Department of Computer Science, 2 Department of Mathematics P.O.Box 33 04 40, 28334 Bremen, Germany { kreo,kuske,lye } @informatik.uni-bremen.de 25.06.2018 11th International Conference on Graph Transformation (ICGT)

  2. Motivation We introduced fusion grammars at ICGT17. Formal framework for fusion processes in: ◮ DNA computing ◮ chemistry ◮ tiling ◮ fractal geometry ◮ visual modeling ◮ etc

  3. DNA computing fusion (ligation)

  4. DNA computing splicing fusion (ligation) (triggered by enzymes)

  5. Hypergraph We consider hypergraphs over Σ with hyperedges like v 1 v k • • 1 k A 2 v 2 • where A ∈ Σ. The class of all hypergraphs over Σ is denoted by H Σ .

  6. Fusion Let F ⊆ Σ be a fusion alphabet with a type k ( A ) ∈ N for each A ∈ F and with a disjoint complementary copy F ⊆ Σ where k ( A ) = k ( A ). A fusion rule fr ( A ) is defined as 1 ′ 1 = 1 ′ 1 • • • 1 ′ 1 2 ′ 2 • • • • 2 ′ 2 = 2 ′ 2 1 1 • • • 2 2 → ⊇ A A k ( A ) k ( A ) • • • • • k ( A ) ′ k ( A ) ′ k ( A ) = k ( A ) ′ k ( A ) k ( A )

  7. Fusion Let F ⊆ Σ be a fusion alphabet with a type k ( A ) ∈ N for each A ∈ F and with a disjoint complementary copy F ⊆ Σ where k ( A ) = k ( A ). A fusion rule fr ( A ) is defined as 1 ′ 1 = 1 ′ 1 • • • 1 ′ 1 2 ′ 2 • • • • 2 ′ 2 = 2 ′ 2 1 1 • • • 2 2 → ⊇ A A k ( A ) k ( A ) • • • • • k ( A ) ′ k ( A ) ′ k ( A ) = k ( A ) ′ k ( A ) k ( A ) fr ( A ) = ( A • + A � 1 K , 1 K � • in + in ← − − − K + K − − − − − → K ) where K = [ k ( A )], in is the inclusion of K into A • and in is the • . inclusion of K into A

  8. Fusion rule application ◮ The application of fr ( A ) is defined by a double pushout � 1 K , 1 K � in + in • A • + A K + K K c f ′ f e ′ e H ′ H C • → H satisfies the where matching morphism f : A • + A gluing condition always. ◮ C is unique up to isomorphism because in + in is injective. fr ( A ) H ′ . ◮ It is denoted by H = ⇒

  9. Example • • 1 1 • 1 • • • • 1 △ # + • • • = ⇒ • • • △ # 2 3 fr ( △ ) • • 3 3 3 2 2 2 • • • • • • • • 1 1 1 • • • • • 1 △ # ⇐ + • • • = • • • # △ 2 3 ? ( △ ) • • 3 3 3 2 2 2 • • • • • •

  10. Fusion grammar FG = ( Z , F , M , T ) ◮ Z ∈ H F ∪ F ∪ M ∪ T start hypergraph F , M , T ⊆ Σ, fusion, marker, terminal alphabet M ∩ ( F ∪ F ) = ∅ , T ∩ ( F ∪ F ) = ∅ = T ∩ M

  11. Fusion grammar FG = ( Z , F , M , T ) ◮ Z ∈ H F ∪ F ∪ M ∪ T start hypergraph F , M , T ⊆ Σ, fusion, marker, terminal alphabet M ∩ ( F ∪ F ) = ∅ , T ∩ ( F ∪ F ) = ∅ = T ∩ M ◮ A direct derivation is either fr ( A ) H ′ H = ⇒ for some A ∈ F or � H = m m · H = ⇒ m ( C ) · C for some multiplicity m : C ( H ) → N C ∈C ( H ) where C ( H ) is the set of all connected components of H . ◮ A derivation is defined by the reflexive and transitive closure.

  12. Fusion grammar FG = ( Z , F , M , T ) ◮ Z ∈ H F ∪ F ∪ M ∪ T start hypergraph F , M , T ⊆ Σ, fusion, marker, terminal alphabet M ∩ ( F ∪ F ) = ∅ , T ∩ ( F ∪ F ) = ∅ = T ∩ M ◮ A direct derivation is either fr ( A ) H ′ H = ⇒ for some A ∈ F or � H = m m · H = ⇒ m ( C ) · C for some multiplicity m : C ( H ) → N C ∈C ( H ) where C ( H ) is the set of all connected components of H . ◮ A derivation is defined by the reflexive and transitive closure. ◮ The generated language ∗ L ( FG ) = { rem M ( Y ) | Z ⇒ H , Y ∈ C ( H ) ∩ ( H T ∪ M − H T ) } . =

  13. Example • • 1 1 1 • • • • • 1 △ # + = ⇒ • • • • • • # △ 2 3 fr ( △ ) 3 • • 3 3 2 2 2 • • • • • • • • 1 1 • 1 • • • • 1 △ # + ⇐ = • • • △ • • • # 2 3 sr ( △ ) • • 3 3 3 2 2 2 • • • • • •

  14. Splicing Let F ⊆ Σ be a fusion alphabet with a disjoint complementary copy � F ⊆ Σ A splicing rule sr ( A ) is 1 = 1 ′ 1 ′ 1 ′ 1 1 2 ′ • • • • • 2 • • 2 = 2 ′ 2 ′ 2 1 1 • • • 2 2 � ← ⊆ A A k ( A ) k ( A ) • • • • • k ( A ) ′ k ( A ) = k ( A ) ′ k ( A ) ′ k ( A ) k ( A ) in + � � 1 K , 1 K � → A • + � in A • K ← − − − − − K + K − − − where K = [ k ( A )], in is the inclusion of K into A • and � in is the respective inclusion of K into � A • .

  15. Splicing rule application ◮ The application of sr ( A ) is defined by a double pushout � 1 K , 1 K � in + � in A • + � K + K A • K c f ′ f e ′ e H ′ H C ◮ C is not uniquely determined, because lefthand-side morphism is not injective. sr ( A ) H ′ . ◮ It is denoted by H = ⇒

  16. Example Consider sr ( A ) = ( • ← • • → • • A ). � A ◦ • ◦ . Apply sr ( A ) to ◦ The pushout complement objects are: ◦ • ◦ ◦ • ◦ • ◦ • ◦ • ◦ • ◦ ◦ •• ◦ ◦ ◦ ◦ ◦ • ◦ The derived graphs are: A A A A A ◦ • ◦ ◦ • ◦ • ◦ • ◦ • ◦ • ◦ ◦ •• ◦ ◦ ◦ ◦ ◦ • ◦ � � � � A A A A � A � � A A � � ◦ • ◦ • ◦ • ◦ • ◦ • ◦ A ◦ •• ◦ A ◦ ◦ ◦ • ◦ A A A A

  17. Example Consider sr ( A ) = ( • ← • • → • • A ). � A ◦ • ◦ . Apply sr ( A ) to ◦ The pushout complement objects are: ◦ • ◦ ◦ • ◦ • ◦ • ◦ • ◦ • ◦ ◦ •• ◦ ◦ ◦ ◦ ◦ • ◦ The derived graphs are: A A A A A ◦ • ◦ ◦ • ◦ • ◦ • ◦ • ◦ • ◦ ◦ •• ◦ ◦ ◦ ◦ ◦ • ◦ � � � � A A A A � A � � A A � � ◦ • ◦ • ◦ • ◦ • ◦ • ◦ A ◦ •• ◦ A ◦ ◦ ◦ • ◦ A A A A This waste nondeterminism is often undesireable. To cut it down, one may use context conditions.

  18. Splicing rule with fixed disjoint context srfdc ( A , a ) consists of a splicing rule sr ( A ) and a morphism a : K → X for some context X . in + � � 1 K , 1 K � → A • + � a in A • ) ← − K ← − − − − − K + K − − − srfdc ( A , a ) = ( X

  19. Splicing rule with fixed disjoint context srfdc ( A , a ) consists of a splicing rule sr ( A ) and a morphism a : K → X for some context X . in + � � 1 K , 1 K � → A • + � a in A • ) ← − K ← − − − − − K + K − − − srfdc ( A , a ) = ( X It is applicable to H if the pushout complement can be chosen in the following way � 1 K , 1 K � K + K K y + a f � m , b � H Y + X where m : Y → H is injective. ◮ The complement consists of two disjoint parts one of which is X . ◮ It is unique if it exists. ◮ X gets an � A -hyperedge and Y get an A -hyperedge.

  20. Example • 1 • ⊇ [2] ← [2] + [2] ⊆ A • + � A • ) cut = (2 • • • • • • • • • • • • A + � • • • • = ⇒ • • A • • • • • cut • • • •

  21. Splicing/fusion grammar SFG = ( Z , F , M , T , SR ) extends fusion grammars by splicing rules with fixed disjoint context. ◮ F , M , T ⊆ Σ, fusion, marker, terminal alphabet M ∩ ( F ∪ F ) = ∅ , T ∩ ( F ∪ F ) = ∅ = T ∩ M M ∩ ( F ∪ � F ) = ∅ , T ∩ ( F ∪ � F ) = ∅

  22. Splicing/fusion grammar SFG = ( Z , F , M , T , SR ) extends fusion grammars by splicing rules with fixed disjoint context. ◮ F , M , T ⊆ Σ, fusion, marker, terminal alphabet M ∩ ( F ∪ F ) = ∅ , T ∩ ( F ∪ F ) = ∅ = T ∩ M M ∩ ( F ∪ � F ) = ∅ , T ∩ ( F ∪ � F ) = ∅ ◮ A direct derivation is either fr ( A ) H ′ H = ⇒ for some A ∈ F or � H = m m · H = ⇒ m ( C ) · C for some m : C ( H ) → N or C ∈C ( H ) srfdc ( A , a ) H ′ H = ⇒ for some A ∈ F and a : K → X .

  23. Splicing/fusion grammar SFG = ( Z , F , M , T , SR ) extends fusion grammars by splicing rules with fixed disjoint context. ◮ F , M , T ⊆ Σ, fusion, marker, terminal alphabet M ∩ ( F ∪ F ) = ∅ , T ∩ ( F ∪ F ) = ∅ = T ∩ M M ∩ ( F ∪ � F ) = ∅ , T ∩ ( F ∪ � F ) = ∅ ◮ A direct derivation is either fr ( A ) H ′ H = ⇒ for some A ∈ F or � H = m m · H = ⇒ m ( C ) · C for some m : C ( H ) → N or C ∈C ( H ) srfdc ( A , a ) H ′ H = ⇒ for some A ∈ F and a : K → X . ◮ The generated language ∗ L ( SFG ) = { rem M ( Y ) | Z = ⇒ H , Y ∈ C ( H ) ∩ ( H T ∪ M − H T ) }

  24. Generative power ICGT17: ◮ Fusion grammars can simulate hyperedge replacement grammars. ◮ Their membership problem is deciable. How powerful are splicing/fusion grammars?

  25. Transformation of Chomsky grammars into splicing/fusion grammars Let ( N , T , P , S ) be a Chomsky grammar. Let p = ( u 1 . . . u k , v 1 . . . v l ) ∈ P . Let x 1 . . . x n = x 1 . . . x i − 1 u 1 . . . u k x i + k . . . x n Then x 1 . . . x i − 1 u 1 . . . u k x i + k . . . x n = ⇒ p x 1 . . . x i − 1 v 1 . . . v l x i + k . . . x n

Recommend


More recommend