1 Approximate string matching using factor automata J. Holub and B. Melichar Theoretical Computer Science vol.249 p.305-311 Speaker: L. C. Chen Advisor:

Slides:



Advertisements
Similar presentations
Advisor: Prof. R. C. T. Lee Speaker: L. C. Chen
Advertisements

TWO STEP EQUATIONS 1. SOLVE FOR X 2. DO THE ADDITION STEP FIRST
&& Department of nskinfo-i educationwww.nsksofttch.com CS2303-THEORY OF COMPUTATION uChapter: Closure.
Properties of Regular Languages
1 Copyright © 2010, Elsevier Inc. All rights Reserved Fig 2.1 Chapter 2.
By D. Fisher Geometric Transformations. Reflection, Rotation, or Translation 1.
1 Very fast and simple approximate string matching Information Processing Letters, 72:65-70, G. Navarro and R. Baeza-Yates Advisor: Prof. R. C. T.
1 Average Case Analysis of an Exact String Matching Algorithm Advisor: Professor R. C. T. Lee Speaker: S. C. Chen.
1 Fast text searching: allowing errors Sun Wu and Udi Manber, Communications of the ACM, Vol. 35, 1992, pp Advisor: Prof. R. C. T. Lee Reporter:
1 String Matching with Errors The Theory and Computation of Evolutionary Distances: Pattern Recognition, Sellers, P. H., Journal of Algorithms, Vol. 20,
Source of slides: Introduction to Automata Theory, Languages and Computation.
Business Transaction Management Software for Application Coordination 1 Business Processes and Coordination.
Jeopardy Q 1 Q 6 Q 11 Q 16 Q 21 Q 2 Q 7 Q 12 Q 17 Q 22 Q 3 Q 8 Q 13
Jeopardy Q 1 Q 6 Q 11 Q 16 Q 21 Q 2 Q 7 Q 12 Q 17 Q 22 Q 3 Q 8 Q 13
Title Subtitle.
0 - 0.
ALGEBRAIC EXPRESSIONS
DIVIDING INTEGERS 1. IF THE SIGNS ARE THE SAME THE ANSWER IS POSITIVE 2. IF THE SIGNS ARE DIFFERENT THE ANSWER IS NEGATIVE.
MULTIPLYING MONOMIALS TIMES POLYNOMIALS (DISTRIBUTIVE PROPERTY)
ADDING INTEGERS 1. POS. + POS. = POS. 2. NEG. + NEG. = NEG. 3. POS. + NEG. OR NEG. + POS. SUBTRACT TAKE SIGN OF BIGGER ABSOLUTE VALUE.
SUBTRACTING INTEGERS 1. CHANGE THE SUBTRACTION SIGN TO ADDITION
MULT. INTEGERS 1. IF THE SIGNS ARE THE SAME THE ANSWER IS POSITIVE 2. IF THE SIGNS ARE DIFFERENT THE ANSWER IS NEGATIVE.
Addition Facts
ZMQS ZMQS
CSCI 3130: Formal Languages and Automata Theory Tutorial 5
PARIXIT PRASAD December 4, 2013 Parixit Prasad | CSA - IISC 1 Deciding Presburger Arithmetic Using Automata Department of Computer Science and Automaton.
ABC Technology Project
O X Click on Number next to person for a question.
Lexical Analysis Arial Font Family.
Non-Deterministic Finite Automata
Squares and Square Root WALK. Solve each problem REVIEW:
GG Consulting, LLC I-SUITE. Source: TEA SHARS Frequently asked questions 2.
Addition 1’s to 20.
25 seconds left…...
Test B, 100 Subtraction Facts
Week 1.
We will resume in: 25 Minutes.
1 Unit 1 Kinematics Chapter 1 Day
O X Click on Number next to person for a question.
Chapter Eleven: Non-Regular Languages
How Cells Obtain Energy from Food
Chapter 6 Languages: finite state machines
NFAs and DFAs Sipser 1.2 (pages 47-63).
1 Approximate string matching using factor automata Jan Holub and Borivoj Melichar Theoretical Computer Science vol.249 p Speaker: L. C. Chen Advisor:
COMMONWEALTH OF AUSTRALIA Copyright Regulations 1969 WARNING This material has been reproduced and communicated to you by or on behalf of Monash University.
COMMONWEALTH OF AUSTRALIA Copyright Regulations 1969 WARNING This material has been reproduced and communicated to you by or on behalf of Monash University.
COMMONWEALTH OF AUSTRALIA Copyright Regulations 1969 WARNING This material has been reproduced and communicated to you by or on behalf of Monash University.
CS5371 Theory of Computation Lecture 6: Automata Theory IV (Regular Expression = NFA = DFA)
Lecture 3 Goals: Formal definition of NFA, acceptance of a string by an NFA, computation tree associated with a string. Algorithm to convert an NFA to.
Topics Automata Theory Grammars and Languages Complexities
1 Chapter 1 Introduction to the Theory of Computation.
Lecture # 4.
Nondeterministic Finite Automata (NFAs). Reminder: Deterministic Finite Automata (DFA) q For every state q in Q and every character  in , one and only.
1 Section 11.2 Finite Automata Can a machine(i.e., algorithm) recognize a regular language? Yes! Deterministic Finite Automata A deterministic finite automaton.
Set, Alphabets, Strings, and Languages. The regular languages. Clouser properties of regular sets. Finite State Automata. Types of Finite State Automata.
Theory of Languages and Automata By: Mojtaba Khezrian.
Fall 2004COMP 3351 Finite Automata. Fall 2004COMP 3352 Finite Automaton Input String Output String Finite Automaton.
WELCOME TO A JOURNEY TO CS419 Dr. Hussien Sharaf Dr. Mohammad Nassef Department of Computer Science, Faculty of Computers and Information, Cairo University.
Nondeterminism The Chinese University of Hong Kong Fall 2011
Regular Languages, Regular Operations, Closure
Theory of Computation Lecture # 9-10.
Recap lecture 29 Example of prefixes of a language, Theorem: pref(Q in R) is regular, proof, example, Decidablity, deciding whether two languages are equivalent.
Nondeterministic Finite Automata
CS 350 — Fall 2018 gilray.org/classes/fall2018/cs350/
NFAs and Transition Graphs
Instructor: Aaron Roth
Recap Lecture 3 RE, Recursive definition of RE, defining languages by RE, { x}*, { x}+, {a+b}*, Language of strings having exactly one aa, Language of.
Non Deterministic Automata
What is it? The term "Automata" is derived from the Greek word "αὐτόματα" which means "self-acting". An automaton (Automata in plural) is an abstract self-propelled.
Prepared by- Patel priya( ) Guided by – Prof. Archana Singh Gandhinagar Institute of Technology SUBJECT - CD ( ) Introcution to Regular.
Presentation transcript:

1 Approximate string matching using factor automata J. Holub and B. Melichar Theoretical Computer Science vol.249 p Speaker: L. C. Chen Advisor: R. C. T. Lee

2 Problem D L (P, X) between strings P and X is the minimum number of edit operations (substitution, insertion and deletion) needed to convert string P to X. Given a text T, a pattern P, and an integer k, k m n, approximate string matching can be defined as determining whether string X occurs in text T such that edit distance D L (P, X) between pattern P and string X is less than or equal to k.

3 An example of Edit Distance To convert P into T: P = abcde T = bcfeg P = abcde T = bcfeg P 1 = bcde P 2 = bcfe f g Delete a Substitute d with f Insert

4 Basic definition Fac(T): a set contains all the substrings of text T. A nondeterministic finite automaton (NFA) is a five- tuple M=(Q, Σ, δ, q 0, F), where Q is a finite set of states, Σ is a finite input alphabet, δ is a mapping from Q×(Σ {ε}) into the set of subsets of Q, q 0 Q is an initial state, and F Q is a set of final states. M(Fac(T)): a factor automaton accepts Fac(T).

5 T=aabbabd Fac(T)={a,b,d,aa,ab,bb,ba,bd,aab,abb,bba,bab,abd,aabb,abba,bbab,babd aabba,abbab,bbabd,aabbab,abbabd,aabbabd} Factor automaton Factor automation M(Fac(T)): a deterministic finite automaton (DFA) accepts all substrings of the given text T.

6 A suffix tree can also be used to recognize all substrings of T=aabbabd, Fac(T)={a,b,d,aa,ab,bb,ba,bd,aab,abb,bba,bab,abd,aabb,abba,bbab,babd aabba,abbab,bbabd,aabbab,abbabd,aabbabd}

7 P = bab, k=1. The finite automaton M(L k (P)) accepts L k (P). Lk(P)={ab, bb, ba, aab, bab, dab, bbb, bdb baa, bad, bbab, bdab, baab, badb}. One matched, 0 error. One matched, one error. Three matched, 0 error.

8 P = bab, k=1. The finite automaton M(L k (P)) accepts L k (P). Lk(P)={ab, bb, ba, aab, bab, dab, bbb, bdb baa, bad, bbab, bdab, baab, badb}. Recognize ab

9 P = bab, k=1. The finite automaton M(L k (P)) accepts L k (P). Lk(P)={ab, bb, ba, aab, bab, dab, bbb, bdb baa, bad, bbab, bdab, baab, badb}. Recognize aab

10 P = bab, k=1. The finite automaton M(L k (P)) accepts L k (P). Lk(P)={ab, bb, ba, aab, bab, dab, bbb, bdb baa, bad, bbab, bdab, baab, badb}. Recognize bbab

11 Definition Let An automaton for intersection of M 1 and M 2 is an automaton

12 T=aabbabd P = bab, k=1 Intersection of M(Lk(P)) and M(Fac(T)). Solutions : {ba, bab, bb, bbab, aab, ab} (All end with {3,0} or {3,1}.)

13 T=aabbabd P = bab, k=1 Intersection of M(Lk(P)) and M(Fac(T)).

14 Intersection aabbabd T D L (P,ba)=1 P=bab

15 Intersection aabbabd T D L (P,bab)=0 P=bab

16 Intersection aabbabd T PP=bab D L (P,bb)=1

17 Intersection aabbabd T P=bab D L (P,bbab)=1

18 Intersection aabbabd T P=bab D L (P,aab)=1

19 Intersection aabbabd T P=bab D L (P,ab)=1

20 Lemma The number of automaton is always lower than.

21 T=aabbabd P = bab, k=1. The finite automaton M(L k (P)) accepts L k (P). Lk(P)={ab, bb, ba, aab, bab, dab, bbb, bdb baa, bad, bbab, bdab, baab, badb}.

22 Thank you!