Presentation is loading. Please wait.

Presentation is loading. Please wait.

Implementation of Haskell Modules for Automata and Sticker Systems

Similar presentations


Presentation on theme: "Implementation of Haskell Modules for Automata and Sticker Systems"— Presentation transcript:

1 Implementation of Haskell Modules for Automata and Sticker Systems
        Kissani Perera*, Yoshihiro Mizoguchi**         *Graduate School of Mathematics         **Faculty of Mathematics             Kyushu university.

2 Outline Motivations Objectives Basic notations DNA sequences and Dominos Sticker system Sticker vs Automata Grammar Module Sticker vs Grammar Advantages of Haskell Related works Conclusion and future works

3 1.Motivations DNA computing uses DNA instead of traditional computer technologies. Sticker system is a computing system based on the sticker operations, which in turn, is a model of the techniques used by Adleman[1994] in his DNA experiment. Paun & Rozenberg[1998] introduced a one concrete method to transform the automata into sticker system. We have improved an insufficient parts in their results and introduce more simple efficient transformation using Haskell module functions. Our Haskell module functions can be used as self study materials to learn automata, grammar and language theories.

4 2.Objectives Realize the operations used in Sticker system using Haskell module functions. Discuss the modifications done in our module which gave insufficient results in Paun & Rozenberg[1998]. Discuss the advantages of Haskell module functions.

5 3.Basic notations: Finite Automata :alphabet, natural number
Q: set of states : alphabet q0: initial state FM: set of final states : transition function

6 4.DNA sequences and Dominos
DNA sequences are double stranded sequences composed of four nucleotides A(adenine), C(cytosine),G(guanine), T(thymine). Paired A-T, C-G are called Watson-Crick complementarity. 5’ –AAACTGGAG -3’ + 3’ –TTTGACCTC -5’ “glued” 5’ –AAACTGGAG -3’ ’ –TTTGACCTC -5’ . Double stranded DNA sequence

7 y x y x x y x y y x z y x z y x z y x z We used incomplete double stranded sequences and anneal them to form the double stranded sequences with the same length. x y y x

8 We modify the definition of domino (D)( defined in Paun & Rozenberg) from string of pairs of alphabet to a triple of two strings l, r and integer x. Here is the definition for our domino. Domino be symmetric relation. An element is a domino over If Let be a set of alphabet and Z be a set of integers and

9 Represent domino in our system.
ATGC C TA -1 ATGC TA CGT ATGC

10 Sticker operation is defined as
5.Sticker system Sticker system is a four tuple Starting from A and using pairs (r1,r2) in R we can obtain a set of double stranded sequences using sticker operations.

11 Example 1: Sticker operation
Let ((ATG,TA,0),(GA,CCT,-1))=(ATGGA,TACCT,0) ATG TA GA CCT ATGGA TACCT

12 6.Sticker system vs Automaton
For a finite automaton sticker system defined in our module as follows. (*)

13 Language generated by Automata M
For a sticker system , we define a relation as follows Then

14 Theorem (Paun & Rozenberg[1998])
Example 2: Consider the following stickers with length 5 generated by     which cannot be generated by Paun & Rozenberg` definitions.     ["aaaab","abbab","babab","bbaab","aabaa","abaaa","baaaa","bbbaa","aaaba","abbba","babba","bbaba","aabbb","ababb", "baabb","bbbbb]

15 Corrections for Paun & Rozenberg’s definitions
ab bb a aaa bba aba baa F = Our definition b ab bab a aaa bba aba baa aa aaaa bbaa bb ba aab abbb bbbb aabb baaa abaa babb F =

16 Example 3 : Stickers “abbab” and “bbbbb” in example2 can be generated by our module.
aab a b ab ba baa aba bbb aaa aa abb bab bba bb abbab abb ab + bab A F bbbbb bbb b bb bbbb + A F

17 7.Grammar module Grammar is a four tuple G=(T,N,R,S) where T: termnial symbols N: non terminal symbols R: transformation rules S: start symbol Language generated by G

18 8.Sticker system vs Grammar module
For a linear grammar sticker system is defined in our module as follows:

19

20 Theorem (Paun &Rozenberg[1998]
Example 4: Consider the grammar Stickers generated by G ["","ab","aabb","aaabbb","aaaabbbb","aaaaabbbbb","aaaaaabbbbbb","aaaaaaabbbbbbb", "aaaaaaaabbbbbbbb","aaaaaaaaabbbbbbbbb"]

21 Consider the following sticker generated by
which cannot be generated by the definitions in Paun & Rozenberg[1998] aaaaabbbbb

22 Corrections for Paun & Rozenberg`s definition
Paun & Rozenberg’s definition for Our definition for Similarly for R2 ,R4 ,R5

23 Our module Paun & Rozenberg[1998]
Output for R Our module             Paun & Rozenberg[1998]

24 Now we can generate the sticker “aaaaabbbbb” in our module as:
Output for A ab aabb b abb aab a A1 A2 A3 Now we can generate the sticker “aaaaabbbbb” in our module as: R6 a aa aabb aab bb b bb aaaaabbbbb A3 R4

25 9.Advantages of Haskell Haskell has a description for infinite set (Example 5,6). We can define the dominos using set theoretical notations in Haskell (Example 7). 10. Related works HaLex is a Haskell library enables us to model and manipulate regular languages. HaLex also provide the facilities for defining deterministic and non deterministic finite Automata, Regular expressions etc. Our module use a description for infinite set, which is not used in HaLex.

26 Example 5: Let Then produce the infinite set as follows infinite set {a,b}* is denoted by finite length of expression (sstar ['a','b']). Using (take) function we can view contents of an infinite set *AutomatonEx> take 10 $ sstar['a','b'] ["","a","b","aa","ba","ab","bb","aaa","baa","aba"]

27 *AutomatonEx> Automaton.language m1
Example 6 Produce infinite set. Therefore use take function to retrieve finite set. *AutomatonEx> Automaton.language m1 *AutomatonEx> take 10 $ Automaton.language m1 ["bb","abb","bbb","aabb","babb","abbb","bbbb","aaabb","baabb","ababb"]

28 Example 7 : Consider the following definition for domino
We can use Haskell set theoretical notation as follows

29 11.Conclusion and future works
Based on the facts in Paun & Rozenberg [1998] we have modified an insufficient results in there, and introduced a more simple technique to transform Automata into Sticker module using Haskell module functions. We suppose to publish an online tutorial, which can be used as a study material to learn Automata and language theories.


Download ppt "Implementation of Haskell Modules for Automata and Sticker Systems"

Similar presentations


Ads by Google