KR101926977B1 - Method for Creating Automata for determination of Nested-duplication - Google Patents

Method for Creating Automata for determination of Nested-duplication Download PDF

Info

Publication number
KR101926977B1
KR101926977B1 KR1020170066232A KR20170066232A KR101926977B1 KR 101926977 B1 KR101926977 B1 KR 101926977B1 KR 1020170066232 A KR1020170066232 A KR 1020170066232A KR 20170066232 A KR20170066232 A KR 20170066232A KR 101926977 B1 KR101926977 B1 KR 101926977B1
Authority
KR
South Korea
Prior art keywords
state
states
read
automata
characters
Prior art date
Application number
KR1020170066232A
Other languages
Korean (ko)
Inventor
한요섭
조다정
김휘
Original Assignee
연세대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 연세대학교 산학협력단 filed Critical 연세대학교 산학협력단
Priority to KR1020170066232A priority Critical patent/KR101926977B1/en
Application granted granted Critical
Publication of KR101926977B1 publication Critical patent/KR101926977B1/en

Links

Images

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B20/00ICT specially adapted for functional genomics or proteomics, e.g. genotype-phenotype associations
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B25/00ICT specially adapted for hybridisation; ICT specially adapted for gene or protein expression
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B40/00ICT specially adapted for biostatistics; ICT specially adapted for bioinformatics-related machine learning or data mining, e.g. knowledge discovery or pattern finding

Landscapes

  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Medical Informatics (AREA)
  • General Health & Medical Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Biophysics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Biotechnology (AREA)
  • Molecular Biology (AREA)
  • Genetics & Genomics (AREA)
  • Bioethics (AREA)
  • Chemical & Material Sciences (AREA)
  • Analytical Chemistry (AREA)
  • Artificial Intelligence (AREA)
  • Proteomics, Peptides & Aminoacids (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Epidemiology (AREA)
  • Evolutionary Computation (AREA)
  • Public Health (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Disclosed is a method for generating automata for determining nested-duplication. The method includes: a step of generating first depth automata comprising transfer conditions and states to make a transfer to the next state when sequentially reading a reference sequence comprising N characters; a step of selecting states, in which the number of early read characters is no less than a preset number, from among the states of the first depth automata, and then, generating second depth automata comprising transfer conditions and states to read characters as many as or fewer than the characters read from each of the selected states; a step of selecting states, in which the number of early read characters is no less than a preset number, from among states newly generated in the same process as the generation of the second depth automata, and then, generating N^th depth automata by repetitively generating transfer conditions and states to read characters as many as or fewer than the characters read from each of the selected states; and a step of adding a self-cycle transfer condition to repeat transfer conditions to states generated through the first to N^th depth automata. When a final state of the first depth automata is reached, nested-duplication is determined. According to the present invention, the method is capable of simply and effectively determining whether a specific sequence having a complex shape is a nested-duplication sequence of a specific reference sequence or not.

Description

내포복제 판단을 위한 오토마타 생성 방법{Method for Creating Automata for determination of Nested-duplication}[0001] The present invention relates to a method of generating an automata for determining a nested copy,

본 발명의 실시예들은 오토마타 생성 방법에 관한 것으로서, 더욱 상세하게는 내포복제 판단을 위한 오토마타 생성 방법에 관한 것이다. Embodiments of the present invention relate to a method of generating an automata, and more particularly, to a method of generating an automata for determining an embedded copy.

복제(Duplication)란 DNA, RNA 등의 염기 서열에서 서열의 일부분이 복제되는 현상으로서 일종의 돌연 변이에 해당된다. 예를 들어, 레퍼런스 염기 서열 x=AGCTTTAGA와 대상 염기 서열 y=AGCTGCTTTAGA을 비교해볼 때 대상 염기 서열 y는 레퍼런스 염기 서열 x로부터 복제된 염기 서열로 정의할 수 있다. 이는 염기 서열 y에 x의 부분 염기 중 GCT가 복제되었기 때문이다. 이와 같이, 복제는 레퍼런스 염기 서열의 일부가 대상 염기 서열에 추가적으로 부가되는 현상이다. 이러한 복제는 반복적으로 발생할 수 있다. Duplication is a phenomenon in which a part of a sequence is duplicated in a base sequence such as DNA or RNA, which is a kind of mutation. For example, when comparing the reference sequence x = A GCT TTAGA with the target sequence y = A GCTGCT TTAGA, the target sequence y can be defined as a base sequence replicated from the reference sequence x. This is because the GCT was replicated in the partial base of x in the base sequence y. Thus, replication is a phenomenon in which a part of the reference nucleotide sequence is additionally added to the target nucleotide sequence. Such replication may occur repeatedly.

복제 중 내포 복제(nested duplication)는 다양한 복제 현상 중 복제 위치와 복제 길이에 제한을 두고 발생하는 현상을 의미한다. 이러한 내포 복제는 복제의 근원에 비해 작거나 같은 길이만이 복제가 가능하며, 복제 위치에 있어서도 복제의 근원 이후에 복제 서열이 위치하게 된다. Nested duplication refers to a phenomenon occurring in a variety of replication phenomena, with restrictions on the replication location and replication length. Such a nested replica can be replicated only in a length less than or equal to the origin of replication, and even in the replicated position, the replicated sequence is located after the source of the replicated.

예를 들어, 레퍼런스 염기 서열을 x=AGCTTTAGA라고 하고 대상 염기 서열을 y=AGCTGCTTTAGA라고 하자. 이때, y는 레퍼런스 염기 서열 x로부터 내포복제된 염기 서열이라고 할 수 있으며, 복제의 근원은 GCT이다. For example, let the reference nucleotide sequence be x = A GCT TTAGA and the target nucleotide sequence y = A GCTGCT TTAGA. At this time, y can be regarded as a nucleotide sequence replicated from the reference nucleotide sequence x, and the origin of replication is GCT.

한편, 염기 서열 z=AGCTGCTCTTTAGA라고 할 때, z는 y로부터 내포복제된 염기 서열이라고 할 수 있다. 이때, z는 복제의 근원인 GCT로부터 CT 부분이 다시 복제된 서열이라고 할 수 있으며, 복제의 위치는 GCT 다음이 된다. On the other hand, when the base sequence z = AGCTG CTCT TTAGA, z is a base sequence replicated from y. In this case, z is a sequence in which the CT portion is replicated from GCT, which is the origin of replication, and the position of replication is next to GCT.

이아 같이, 일반 복제는 복제의 근원에 비해 더 긴 길이의 복제가 가능한 반면 내포 복제는 이전에 발생한 복제의 근원과 비교하여 작거나 같은 길이의 복제만이 가능하며, 그 위치에 있어서도 제약이 있는 복제 현상이다. Like iA, a normal copy can be longer in length than the origin of a copy, whereas a nested copy can only be a copy of a smaller or equal length compared to the origin of a previous copy, Phenomenon.

특정 대상 염기 서열이 레퍼런스 염기 서열로부터 내포 복제된 염기 서열인지 여부에 대한 판단은 돌연변이와 특정 질병 및 증상의 진단에 중요하나, 다수에 걸쳐 내포 복제된 서열은 매우 복잡한 형태를 가지므로 특정 염기 서열이 레퍼런스 염기 서열로부터 내포 복제된 서열인지 여부에 대한 판단은 매우 어려운 실정이다. The determination of whether a particular target sequence is a cloned nucleotide sequence from a reference nucleotide sequence is important for the diagnosis of a mutation and the diagnosis of a specific disease or symptom. However, since a plurality of cloned sequences have a very complicated form, It is very difficult to judge whether or not it is a cloned sequence from the reference nucleotide sequence.

한편, 오토마타는 상태와 전이 조건으로 이루어지며, 도 1은 일반적인 비결정적 유한 오토마타의 일례를 도시한 도면이다. On the other hand, an automata is made up of states and transition conditions, and FIG. 1 is a diagram showing an example of a general nondeterministic finite automata.

도 1에서, 원은 비결정 유한 오토마타의 상태(state)를 나타내고, 화살표에 병기된 문자는 상태 전이 조건을 나타낸다. 입력된 문자가 상태 전이 조건을 만족할 경우 화살표 방향으로 상태가 전이된다. 0이 표시된 원은 시작 상태를 나타내며, 두개의 동심원으로 이루어진 원은 최종 상태(final state)를 나타낸다.In Fig. 1, a circle indicates a state of an amorphous finite automata, and a character indicated by an arrow indicates a state transition condition. If the input character satisfies the state transition condition, the state transitions in the arrow direction. A circle with zero indicates the starting state, and a circle with two concentric circles indicates the final state.

시작 상태에서부터 출발하여, 상태가 전이(transition)된 결과 종료 상태에 도달하면 최종 상태에 도달하였음을 의미한다. Starting from the starting state, it means that the final state is reached when the state reaches the end state as a result of the transition.

보다 구체적으로 설명하면, 시작 상태인 상태 0에서부터 시작하여 입력 문자열을 한 글자씩 읽어 들이면서 어떤 상태가 다른 상태로 이동하는지 여부를 오토 마타에 의해 판단하게 된다. 입력 문자열이 “gjekf3jmbab0d1f”인 경우, 첫 번째 문자는 “g”이지만, “g”가 입력되는 것에 대응하여 상태 0을 다른 상태로 이동시키는 전이 조건은 없으므로 계속 하여 0에 머무르게 된다. 두 번째 문자인 “j” 역시 해당하는 전이 조건이 없으므로 상태 0에 머무르면서 그 다음 문자를 읽게 된다. 따라서, 이러한 경우에는, 상태 천이 여부 검사가 필요한 상태, 즉, 활성 상태는 상태 0으로서 총 1개가 된다.이런 식으로 계속하여 상태 0에 머무르는 상황에서 "gjekf3jm"까지 입력되고 나면 그 다음에 입력되는 문자는 "b"가 되는데, 도 1의 NFA에는 "b"는 상태 0을 상태 1 및 상태 2로 이동시키는 상태 전이 조건이므로, 상태 0은 상태 1 및 상태 2로 각각 이동하게 된다. 그 다음에 입력되는 문자는 "a"이며, "a"는 활성 상태인 상태 0을 상태 1로 이동시키는 상태 전이 조건, 활성 상태인 상태 1을 상태 3으로 이동시키는 상태 전이 조건 및 활성 상태인 상태 2를 상태 4로 이동시키는 상태 전이 조건이므로, 상태 0, 상태 1 및 상태 2는 각각 상태 1, 상태 3 및 상태 4로 이동하게 된다.More specifically, the automata determines whether a state changes to another state by reading the input character string one by one starting from the state 0, which is the starting state. If the input string is " gjekf3jmbab0d1f ", the first character is " g ", but since there is no transition condition for moving state 0 to another state corresponding to input of " g " The second character "j" also has no transition condition, so it remains in state 0 and reads the next character. Therefore, in this case, a state in which the state transition check is required, that is, the active state is a total of one, that is, state 0. In this state where the state continues in state 0, "gjekf3jm" Quot; b "in the NFA shown in Fig. 1 moves to state 1 and state 2, respectively, since" b " is a state transition condition for moving state 0 to state 1 and state 2, respectively. The next character to be entered is "a "," a "is a state transition condition that moves the active state 0 to state 1, a state transition condition that moves the active state 1 to state 3, 2 is changed to state 4, state 0, state 1 and state 2 are moved to state 1, state 3 and state 4, respectively.

이와 같이, 입력 문자열이 상태 전이 조건을 만족할 경우 상태가 전이되며, "bab"가 입력된 후 최종 상태로 전이되기 때문에, 입력 문자열에서 원하는문자열 "bab"를 찾은 것으로 판단할 수 있다. Thus, when the input string satisfies the state transition condition, the state transitions, and since the input state is transitioned to the final state after "bab " is input, it can be determined that the desired string" bab "

본 발명은 복잡한 형태를 가지는 특정 서열이 특정 레퍼런스 서열로부터 내포 복제된 서열인지 여부를 판단하기 위한 오토마타 생성 방법을 제안한다. The present invention proposes a method of generating an automata for determining whether a specific sequence having a complex form is a sequence replicated from a specific reference sequence.

본 발명의 일 측면에 따르면, N개의 문자로 이루어진 레퍼런스 서열을 순차적으로 읽어 들이면 다음 상태로 전이하도록 하는 전이 조건과 상태들로 구성되는 제1 깊이 오토마타를 생성하는 단계; 상기 제1 깊이 오토마타를 구성하는 다수의 상태들 중 선행하여 읽어 들인 문자들이 미리 설정된 수 이상인 상태들을 선택하고, 선택된 상태들 각각으로부터 읽어 들인 문자에 비해 같거나 적은 수의 문자를 읽어 들이도록 하는 전이 조건과 상태들로 구성되는 제2 깊이 오토마타를 생성하는 단계; 상기 제2 깊이 오토마타를 생성하는 과정과 동일하게 새롭게 생성된 상태들 중 선행하여 읽어 들인 문자가 미리 설정된 수 이상인 상태들을 선택하고, 선택된 상태를 각각으로부터 읽어 들인 문자에 비해 같거나 적은 수의 문자를 읽어 들이도록 하는 전이 조건과 상태들을 반복적으로 생성하여 제N 깊이 오토마타를 생성하는 단계; 및 상기 제1 내지 제N 깊이 오토마타를 통해 생성된 상태들에 대해 전이 조건을 반복하도록 하는 셀프 사이클 전이 조건을 추가하는 단계를 포함하되, 상기 제1 깊이 오토마타의 마지막 상태에 도달하면 내포 복제로 판단하도록 설정하는 내포 복제 판단을 위한 오토마타 생성 방법이 제공된다. According to an aspect of the present invention, there is provided a method for generating a first depth automata, the method comprising: generating a first depth automata including transition conditions and states for sequentially reading reference sequences of N characters to transition to a next state; Selecting a state in which a plurality of states that constitute the first depth automaton are read in a predetermined number or more and reading the same or a smaller number of characters than the read character from each of the selected states, Generating a second depth automata consisting of conditions and states; The second depth automata may be configured to select the states of the newly generated states that are read in advance to be equal to or larger than a predetermined number and to select the same or fewer number of characters Generating an Nth depth automata by repeatedly generating transition conditions and states to be read; And adding a self-cycling transition condition for repeating a transition condition for states generated through the first through the N-th deep automata, wherein when the final state of the first deep automata is reached, A method of generating an automata for judging an embedded copy is provided.

상기 제1 깊이 오토마타의 첫 번째 상태에는 상기 셀프 사이클 전이 조건이 추가되지 않는다. The self-cycle transition condition is not added to the first state of the first depth automata.

상기 제1 깊이 내지 제N 깊이의 오토마타를 구성하는 상태들이 생성될 경우, 해당 상태에 기초하여 생성되는 상태들의 수는 해당 상태에서 읽어들인 문자의 수에 기초한다. When the states constituting the automata of the first depth to the Nth depth are generated, the number of states generated based on the state is based on the number of characters read in the state.

특성 상태로부터 생성되는 상태들은 상기 특정 상태에서 읽어들인 문자들 중 적어도 일부를 순차적으로 읽어 들이면서 최후에 읽어들인 문자를 포함하도록 전이 조건이 설정된다.The states generated from the characteristic state are set to transition states such that at least some of the characters read in the specific state are sequentially read and the last read character is included.

특정 상태로부터 새로운 상태의 생성은 더 이상 새로운 상태를 생성할 수 없는 조건인 상기 특정 상태가 선행하여 읽어 들인 문자의 수가 미리 설정된 수 이상인 경우가 존재하지 않을 때까지 반복된다. The generation of a new state from a specific state is repeated until there is no case where the number of characters read in advance by the specific state is more than a preset number, which is a condition in which a new state can no longer be generated.

특정 상태로부터 생성되는 상태들은 상기 특정 상태에서 선행하여 읽어들인 문자 수 및 현재 읽어 들인 문자 수에 기초하여 네이밍된다. The states generated from the specific state are named based on the number of characters read in advance in the specific state and the number of characters read in the present state.

본 발명의 다른 측면에 따르면, N개의 문자로 이루어진 레퍼런스 서열을 순차적으로 읽어 들이면 다음 상태로 전이하도록 하는 전이 조건과 상태들을 생성하는 단계(a); 상기 단계(a)에서 생성된 상태들 중 선행하여 읽어 들인 문자가 미리 설정된 수 이상인 상태들을 선택하고 선택된 상태들 각각으로부터 읽어 들인 문자에 비해 같거나 적은 수의 문자를 읽어 들이도록 하는 전이 조건과 상태들을 생성하는 단계(b); 새롭게 생성되는 상태에 대해 해당 상태가 미리 설정된 수 이상의 문자를 읽어 들이도록 설정된 경우 읽어 들인 문자에 비해 같거나 적은 수의 문자를 읽어 들이도록 하는 전이 조건과 상태들을 반복적으로 생성하는 단계(c); 및 상기 단계(a) 내지 (c)에서 생성된 상태들에 대해 전이 조건을 반복하도록 하는 셀프 사이클 전이 조건을 추가하는 단계(d)를 포함하되, 상기 단계(a)에서 생성되는 상태들 중 마지막 상태에 도달하면 내포 복제로 판단하도록 설정하는 내포 복제 판단을 위한 오토마타 생성 방법이 제공된다. According to another aspect of the present invention, there is provided a method comprising: (a) generating transition conditions and states for transitioning to a next state by sequentially reading reference sequences of N characters; A transition condition for selecting a state where the number of the previously read characters is equal to or greater than a predetermined number among the states generated in the step (a) and reading the same number or less number of characters from the read state from each of the selected states, (B); (C) repeatedly generating transition conditions and states to read the same or smaller number of characters compared to the read character if the state is set so as to read a predetermined number of characters with respect to the newly created state; And (d) adding a self-cycling transition condition to repeat the transition condition for the states generated in steps (a) to (c), wherein the last cycle of the states generated in step (a) State is reached, it is determined to be an implicit replica.

본 발명에 의하면, 복잡한 형태를 가지는 특정 서열이 특정 레퍼런스 서열로부터 내포 복제된 서열인지 여부를 단순하고 효과적으로 판단할 수 있는 장점이 있다. According to the present invention, there is an advantage that it is possible to simply and effectively determine whether a specific sequence having a complex form is a cloned sequence from a specific reference sequence.

도 1은 일반적인 비결정적 유한 오토마타의 일례를 도시한 도면.
도 2는 본 발명의 일 실시예에 따라 생성되는 오토마타의 일례를 도시한 도면.
도 3은 도 2의 오토마타 생성 방법을 설명하기 위한 순서도.
도 4는 본 발명의 일 실시예에 따른 내포 복제 판단을 위한 오토마타 생성 방법의 전체적인 흐름을 도시한 순서도.
1 shows an example of a general nondeterministic finite automata;
2 is a diagram illustrating an example of an automata generated according to an embodiment of the present invention;
3 is a flowchart for explaining an automata generating method of FIG.
4 is a flowchart showing an overall flow of a method of generating an automata for determining an embedded copy according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail. It should be understood, however, that the invention is not intended to be limited to the particular embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. Like reference numerals are used for like elements in describing each drawing.

이하에서, 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. Hereinafter, embodiments according to the present invention will be described in detail with reference to the accompanying drawings.

본 실시예에서는 레퍼런스 서열로부터 가능한 모든 종류의 내포 복제를 판단할 수 있는 오토마타 생성 방법을 제안하며, 먼저 특정 레퍼런스 서열로부터 발생할 수 있는 내포 복제를 판단할 수 있는 오토마타를 예로 설명하고, 오토 마타를 생성할 수 있는 방법을 설명한다. In the present embodiment, an automata generation method capable of judging all possible types of nested replications from a reference sequence is proposed. First, an automata that can determine nested replication that can occur from a specific reference sequence is described as an example. Explain how you can do it.

도 2는 본 발명의 일 실시예에 따라 생성되는 오토마타의 일례를 도시한 도면으로서, 레퍼런스 서열 “abcd”로부터 가능한 내포 복제를 판단할 수 있는 오토마타를 도시한 도면이다. 도 2는 일례로 대상 서열 “abcbcd”가 “abcd”로부터 내포 복제된 서열인지 여부를 판단하기 위한 오토마타인 것이다. Fig. 2 is a diagram showing an example of an automata generated according to an embodiment of the present invention. Fig. 2 is a diagram showing an automata capable of determining possible nested replica from the reference sequence " abcd ". 2 is an automata for judging whether the target sequence " abcbcd " is a sequence cloned from " abcd ".

도 2에 도시된 오토마타에서 원은 상태를 나타내며, 원 사이에 표시된 화살표 및 화살표에 병기된 문자는 전이 조건을 나타낸다. In the automata shown in Fig. 2, circles indicate states, and arrows indicated between circles and characters indicated by arrows indicate transition conditions.

도 3은 도 2의 오토마타 생성 방법을 설명하기 위한 순서도이다. FIG. 3 is a flow chart for explaining the automata generation method of FIG.

이하에서는 도 2 및 도 3을 참조하여, abcd로부터 가능한 내포 복제 서열을 판단하기 위한 오토마타를 생성하는 과정을 구체적으로 설명한다. Hereinafter, with reference to FIG. 2 and FIG. 3, a process of generating an automata for determining a nested replicated sequence possible from abcd will be described in detail.

본 발명의 일 실시예에 따른 내포 복제를 판단하기 위한 오토마타는 레퍼런스 염기 서열에 기초하여 레퍼런스 염기 서열을 그대로 읽어들이는 것을 전이 조건으로 하는 제1 깊이 오토마타를 포함한다. The automata for judging nested replication according to an embodiment of the present invention includes a first depth automata in which a reference sequence is read as it is based on a reference sequence.

따라서, 우선 abcd를 그대로 읽어들이는 제1 깊이 오토마타를 생성한다(단계 300). Therefore, first, a first depth automaton that reads abcd as it is is created (step 300).

도 3에서, 제1 깊이 오토마타는 00 상태, 10, 상태, 30 상태 및 40 상태와 해당 상태들을 연결하는 전이 조건을 포함한다. In Figure 3, the first depth automaton comprises a transition conditions linking the states 0 0, 1 0, state, 30 state and 40 state and its condition.

제1 깊이 오토마타는 상태 00에서, a를 읽어들이면 10으로 상태로 전이되고, 10 상태에서 b를 읽어 들이면 20 상태로 전이하며, 20 상태에서 c를 읽어 들이면 30 상태로 전이하고, 30 상태에서 d를 읽어 들이면 40 상태로 전이하는 오토마타이다. First depth automaton is in state 0, If you read in the a and transitions to state 10, If you read the b in the 10 state, and transitions to the 20 state, If you read the c in the 20 state transitions to the 30 state And it is an automata that transitions to 4 0 state when d is read from 3 0 state.

한편, 40 상태는 두 개의 동심원으로 표현되어 있으며, 이는 40 상태가 오토마타의 종료 상태라는 것을 의미한다. 결국, 내포 복제인지 여부를 판단하기 위한 서열이 40 상태에서 종료된다면 내포 복제된 서열이라는 것을 의미하며, 그렇지 않을 경우 내포 복제된 서열이 아니라는 것을 의미한다. On the other hand, the 4 0 state is represented by two concentric circles, which means that the 4 0 state is the end state of the automata. As a result, if the sequence for judging whether or not it is a nested replicate is terminated at the 4 0 state, it means that it is a nested replicated sequence, otherwise it means that it is not a nested replicated sequence.

이와 같은 제1 깊이 오토마타는 대상 서열이 레퍼런스 서열과 동일한 “abcd”일 경우 해당 서열이 내포 복제된 서열이라는 점을 판단할 수 있는 오토마타이다. Such a first depth automata is an automata that can judge that the target sequence is a cloned sequence when the target sequence is " abcd " which is the same as the reference sequence.

제1 깊이 오토마타가 생성되면, 제1 깊이 오토마타를 구성하는 상태들 중 상태, 30 상태, 40 상태로부터 파생되는 제2 깊이 오토마타를 생성한다(단계 302). When a first depth automata is generated, a second depth automaton is generated (step 302), which is derived from the state among the states constituting the first depth automaton, the 3 0 state, and the 4 0 state.

제2 깊이 오토마타는 레퍼런스 서열로부터 1차적으로 복제 가능한 서열인지 여부를 판단하기 위한 오토마타이다. 제2 깊이 오토마타를 구성하는 상태 및 전이 조건은 제1 깊이 오토마타를 구성하는 상태들로부터 파생되어 생성된다. The second depth automata is an automata for judging whether or not it is a sequence that is primarily replicable from a reference sequence. The state and the transition condition constituting the second depth automata are derived from the states constituting the first depth automaton.

이때, 제2 깊이 오토마타가 기초하는 제1 깊이 오토마타의 상태들은 제1 깊이 오토마타에서 선행하여 읽어들인 문자의 수가 3개 이상인 경우이다. 따라서, 30 상태 및 40 상태에서 제2 깊이 오토마타를 구성하기 위한 상태 및 전이조건이 추가적으로 생성되며, 10 상태에서는 상태 및 전이 조건이 추가적으로 파생되어 생성되지 않는다. 한편, 20 상태로부터는 추가적인 상태가 파생되지는 않으며, a를 다시 읽어들이는 전이 조건만이 추가적으로 파생된다. At this time, the states of the first depth automata on which the second depth automata are based are those in which the number of characters read in advance in the first depth automaton is three or more. Therefore, states and transition conditions for constructing the second depth automata are additionally generated in the 3 0 state and the 4 0 state, and the state and transition condition are not additionally generated in the 10 state. On the other hand, no additional states are derived from the 20 state, and only the transition conditions that re-read a are additionally derived.

30 상태에서는 2개의 파생 상태가 추가적으로 생성된다. 30 상태는 제1 깊이 오토마타에서 abc를 읽어들인 후 도달하는 상태이므로, abc를 다시 읽어들이는 상태와 bc를 다시 읽어들이는 상태가 추가적으로 생성되며, abc를 다시 읽어들이는 상태는 3013 상태이고, bc를 다시 읽어들이는 상태는 3012 상태이다. In the 3 0 state, two additional states are additionally generated. 3 0 state is the state after reading abc in the first depth automata, so state of reloading abc and state of reloading of bc are additionally generated, and state of reloading abc is 3 0 1 3 state, and the state in which bc is read back is 3 0 1 2 state.

40 상태는 abcd를 읽어 들이고 도달하는 상태이므로, abcd, bcd 및 cd를 읽어 들이는 상태가 40 상태에 기초하여 추가적으로 파생되어 생성된다. 4 0 state is a state in which abcd is read and reached, so that the state of reading abcd, bcd, and cd is additionally derived based on the state of 4 0 .

abcd를 읽어 들이는 상태는 4014 상태, 4024상태이고, bcd를 읽어들이는 상태는 4013 상태 및 4023상태이다. cd를 읽어들이는 상태는 4012상태이다. The state in which abcd is read is 4 0 1 4 state, 4 0 2 4 state, and the reading state of bcd is 4 0 1 3 state and 4 0 2 3 state. The state in which the CD is read is 4 0 1 2 .

내포 복제인지 여부를 판단하기 위해 제1 깊이 오토마타에서 추가적으로 생성되는 제2 깊이 오토마타의 상태 및 전이 조건은 선행하여 읽어들인 문자에 기초하게 된다. 따라서, 40 상태에서는 선행하여 읽어들인 abcd에 기초하여 추가적인 상태 및 전이 조건을 생성하게 되며, 30 상태에서는 선행하여 읽어들인 abc에 기초하여 추가적인 상태 및 전이 조건을 생성하게 되는 것이다. The state and transition conditions of the second depth automaton, which is additionally generated in the first depth automaton to determine whether it is a clone replica, is based on the previously read character. Therefore, in the 40 states, which are based on prior to reading abcd are creating an additional state and transition conditions 30, which are based on the state prior to reading abc it would be to create an additional state and transition conditions.

이때, 특정 상태로부터 파생되어 생성되는 상태는 선행하여 읽어들인 문자열의 부분 집합 중 순차적이면서 마지막 문자열을 포함하는 부분집합만을 추가적으로 읽어 들이도록 설정된다. In this case, a state derived from a specific state is set so that only a subset including the last character string is sequentially read out among the subset of the previously read character strings.

예를 들어, 30 상태는 abc를 읽어 들인 후 도달하는 상태이기에, abc 및 bc 만을 추가적으로 읽어 들이도록 하는 상태 및 전이 조건만이 추가적으로 생성된다. 30 상태로부터 ab를 읽어 들이도록 하는 상태 및 전이 조건이 추가적으로 생성되지는 않는 것이다. For example, the 3 0 state is a state that arrives after reading abc, so only states and transition conditions are additionally created to allow additional reads of abc and bc. A state and transition condition to read ab from 3 0 state are not additionally generated.

40 상태는 abcd를 읽어 들인 후 도달하는 상태이기에 abcd, bcd 및 cd 상태만을 추가적으로 읽어 들이도록 하는 상태 및 전이 조건만이 추가적으로 생성된다. 40 상태로부터, ab, abc, ac, ad, abd 등을 추가적으로 읽어 들이도록 하는 상태 및 전이 조건이 추가적으로 생성되지는 않는다. 4 0 state is a state that arrives after reading abcd, so only states and transition conditions are additionally created that further read only the abcd, bcd, and cd states. State and transitional conditions are not additionally created to read additional ab, abc, ac, ad, abd, etc. from the 4 0 state.

한편, 본 발명의 일 실시예에 따라 생성되는 오토마타의 상태들은 기초하는 상태, 파생 횟수 및 읽어들이는 문자 수(주어진 abcd에 대해서 최대 길이 4까지 고려)에 기초하여 상태에 대한 네이밍이 이루어진다. Meanwhile, the states of the automata generated according to an embodiment of the present invention are named based on the state based on the number of derivations and the number of characters to be read (considering the maximum length 4 for a given abcd).

예를 들어, 30 상태로부터 파생되는 3012 상태는 두 개의 숫자 조합으로 이루어져 있으므로 제2 깊이 오토마타를 구성하는 상태라는 것을 확인할 수 있다. 첫 번째 수인 30로부터 30 상태로부터 파생된 상태라는 것을 확인할 수 있다. 또한, 12에서, 1이 의미하는 것은 30 상태로부터 1차적으로 생성된 상태라는 것을 의미한다. 또한, 아래 첨자 2는 읽어 들이는 문자 수를 의미한다. 3012 상태는 bc 두 개의 문자를 읽어 들이기 위한 상태이므로 아래 첨자를 2로 표시하게 된다. For example, 3 0 1 2 state which is derived from the 30 state, so consists of two number combination can be confirmed that the state constituting the second depth automata. You can see that it is a state derived from the first number 3 0 to 3 0 . Also, in 1 2 , 1 means that the state is generated primarily from the 3 0 state. Subscript 2 indicates the number of characters to be read. The 3 0 1 2 state is for reading two characters of bc, so the subscript is displayed as 2.

또 다른 예로 30 상태로부터 파생되는 3013 상태 역시 두 개의 숫자 조합으로 이루어져 있으므로 제2 깊이 오토마타를 구성하는 상태라는 것을 확인할 수 있다. 첫 번째 수인 30로부터 30 상태로부터 파생된 상태라는 것을 확인할 수 있다. 또한, 13에서, 1이 의미하는 것은 30 상태로부터 1차적으로 생성된 상태라는 것을 의미한다. 또한, 아래 첨자 3은 읽어 들이는 문자 수를 의미한다. 3013 상태는 abc 세 개의 문자를 읽어 들이기 위한 상태이므로 아래 첨자를 3으로 표시하게 된다. In 30 13 Another example is derived from the 30 state conditions because also consists of two number combination can be confirmed that the state constituting the second depth automata. We can see that the state is derived from the first number from 30 to 30 states. Also, in 1 3 , 1 means that the state is generated primarily from the 3 0 state. Subscript 3 indicates the number of characters to be read. The 3 0 1 3 state is for reading the three characters abc, so the subscript is displayed as 3.

또 다른 예로, 40 상태로부터 bcd를 추가적으로 읽어 들이기 위한 4013 상태 및 4023 상태 역시 동일한 방식으로 상태가 네이밍되었다는 것을 확인할 수 있다. As another example, the 4 0 1 3 state and the 4 0 2 3 state for further reading the bcd from the 4 0 state can be confirmed in the same way that the state is named.

4013 상태는 두 개의 숫자 조합으로 이루어진 상태이기에 제2 깊이 오토마타를 구성하는 상태라는 것을 확인할 수 있다. 숫자 1은 40 상태로부터 1차적으로 파상된 상태라는 것을 의미하며, 3은 읽어 들이는 문자가 3이기에 아래 첨자로 표시된 것이다. 4 0 1 3 The state is a combination of two numbers, so you can see that it is the state that constitutes the second depth automata. The number 1 means that it is in a state of being primarily waved from the state of 4 0 , and 3 is the subscript of 3 because the character to be read is 3.

4023 상태는 두 개의 숫자 조합으로 이루어진 상태이기에 제2 깊이 오토마타를 구성하는 상태라는 것을 확인할 수 있다. 숫자 2는 40 상태로부터 1차적으로 파생된 4013 상태에서 2차적으로 파생된 상태라는 것을 의미하며, 3은 읽어들이는 문자가 3이기에 아래 첨자로 표시된 것이다. 4 0 2 3 state is a combination of two numbers, so it can be confirmed that it is the state constituting the second depth automata. The number 2 means that derived from the 40 to the 13 states derived primarily from the 40 state secondary status, and 3 are indicated by 3 because the character is a subscript read.

제2 깊이 오토마타를 구성하는 상태 및 전이 조건이 완료되면, 제2 깊이 오토마타를 구성하는 상태들로부터 제3 깊이 오토마타를 구성하는 상태 및 전이 조건을 생성한다(단계 304). When the state and the transition condition constituting the second depth automaton are completed, a state and a transition condition constituting the third depth automaton are generated from the states constituting the second depth automaton (step 304).

도 2에서, 제3 깊이 오토마타를 구성하는 상태들은 세 개의 숫자 조합으로 표시되어 있다. 예를 들어, 도 2에서 301312 상태, 401312 상태가 제3 깊이 오토마타를 구성하는 상태들이다. In Fig. 2, the states constituting the third depth automata are represented by a combination of three numbers. For example, in Fig. 2, states 3 0 1 3 1 2 and 4 0 1 3 1 2 constitute the third deep automata.

제3 깊이 오토마타를 구성하는 상태 및 전이 조건은 제2 깊이 오토마타의 경우와 동일한 방식으로 생성된다. 결국, 제2 깊이 오토마타에서 읽어들인 문자 수에 기초하여 제3 깊이 오토마타를 구성하는 상태 및 전이 조건이 결정되는 것이다. The state and transition conditions constituting the third depth automata are generated in the same manner as in the case of the second depth automata. Finally, based on the number of characters read in the second depth automata, the state and transition conditions that constitute the third depth automata are determined.

제2 깊이 오토마타에서 3012 상태는 읽어들인 문자 수가 2개이므로 추가적인 상태가 제3 깊이 오토마타를 위해 생성되지 않는다. 그러나, 제2 깊이 오토마타에서 3013 상태는 읽어들인 문자 수가 3개이므로 3013 상태로부터 제3 깊이 오토마타를 위한 301312 상태가 생성된다. In the second depth automata, the 3 0 1 2 state is not created for the third depth automata because the number of characters read is two. However, in the second depth automata, the 3 0 1 3 state is generated from the 3 0 1 3 state to the 3 0 1 3 1 2 state for the third depth automata since the number of characters read is three.

301312 상태는 제2 깊이 오토마타에서 ca를 선행하여 읽어 들이도록 설정된 3013 상태로부터 파생되었기 때문에 301312 상태는 ca를 읽어 들이도록 전이 조건이 설정되는 것이다. Since the 3 0 1 3 1 2 state is derived from the 3 0 1 3 state set to be read ahead of ca in the second depth automaton, the transition condition is set so that 3 0 1 3 1 2 state reads ca.

제2 깊이 오토마타에서 4013 상태는 읽어 들인 무자 수가 3개이므로 4013 상태로부터 제3 깊이 오토마타를 위한 401312 상태가 생성된다. In the second depth automaton, the 4 0 1 3 state is generated from the 4 0 1 3 state to the 4 0 1 3 1 2 state for the third deep automata, because the number of read errors is three.

401312 상태는 제2 깊이 오토마타에서 db를 선행하여 읽어 들이도록 설정된 4013 상태로부터 파생되었기 때문에 401312 상태는 db를 읽어 들이도록 전이 조건이 설정되는 것이다. 4 0 1 3 1 2 Since the state is derived from the 4 0 1 3 state set to read ahead of db in the second depth automaton, the transition condition is set so that 4 0 1 3 1 2 state reads db.

제3 깊이 오토마타를 구성하는 상태 및 전이 조건이 완료되면, 제3 깊이 오토마타를 구성하는 상태들로부터 제4 깊이 오토마타를 구성하는 상태 및 전이 조건을 생성한다(단계 306). When the state and transition conditions constituting the third depth automaton are completed, a state and a transition condition constituting the fourth depth automaton are generated from the states constituting the third depth automaton (step 306).

도 2에서, 제4 깊이 오토마타를 구성하는 상태들은 네 개의 숫자 조합으로 표시되어 있다. 예를 들어, 도 2에서 40141312 상태, 40241312 상태가 제4 깊이 오토마타를 구성하는 상태들이다. In Fig. 2, the states constituting the fourth depth automata are indicated by a combination of four numbers. For example, the states 4 0 1 4 1 3 1 2 and 4 0 2 4 1 3 1 2 in FIG. 2 constitute the fourth deep automata.

제4 깊이 오토마타를 구성하는 상태 및 전이 조건은 제3 깊이 오토마타의 경우와 동일한 방식으로 생성된다. 결국, 제3 깊이 오토마타에서 읽어들인 문자 수에 기초하여 제4 깊이 오토마타를 구성하는 상태 및 전이 조건이 결정되는 것이다. The state and transition conditions constituting the fourth depth automata are generated in the same manner as in the case of the third depth automata. As a result, the state and transition conditions of the fourth depth automata are determined based on the number of characters read in the third depth automata.

제3 깊이 오토마타에서 301312 상태는 읽어들인 문자 수가 2개이므로 추가적인 상태가 제4 깊이 오토마타를 위해 생성되지 않는다. 그러나, 제3 깊이 오토마타에서 401413 상태는 읽어들인 문자 수가 3개이므로 401413 상태로부터 제4 깊이 오토마타를 위한 40141312 상태가 생성된다. In the third depth automata, the state 3 0 1 3 1 2 does not create an additional state for the fourth deep automata because the number of characters read is two. However, in the third depth automata, 4 0 1 4 1 3 states are generated from 4 0 1 4 1 3 states to 4 0 1 4 1 3 1 2 states for the 4th deep automata since the number of read characters is 3.

40141312 상태는 제3 깊이 오토마타에서 ca를 선행하여 읽어 들이도록 설정된 401413 상태로부터 파생되었기 때문에 40141312 상태는 ca를 읽어 들이도록 전이 조건이 설정되는 것이다. 40 1 4 1 3 1 2 state because derived from 40 1 4 1 3 state is set to load the preceding ca in a third depth automata 4 0 1 4 1 3 1 2 state transition to load the ca Condition is set.

도 2 및 도 3의 예를 위해 주어진 서열인 abcd는 제4 깊이 오토마타까지만 생성되나, 서열을 구성하는 문자가 많을 경우 더 많은 깊이의 오토마타가 생성될 수 있다는 점은 당업자에게 있어 자명할 것이다. It will be obvious to those skilled in the art that abcd, a given sequence for the examples of FIGS. 2 and 3, is generated only up to the fourth depth automata, but more depth automata can be generated when there are many characters constituting the sequence.

추가적인 상태가 파생되지 않을 때까지 상태 생성이 이루어지면 생성된 모든 상태들에 대해 자신의 전이 조건을 반복하도록 하는 셀프 사이클 전이 조건 추가한다(단계 308). If state creation is performed until no additional state is derived, a self-cycling transition condition is added (step 308) to repeat the transition condition for all states created.

도 2 및 도 3을 참조하여 abcd가 레퍼런스 서열인 경우에 대해 내포 복제인지 여부를 판단하기 위한 오토마타 생성 방법에 대해 설명하였다. 이하에서는 특정 서열이 레퍼런스 서열로부터 내포 복제된 서열인지 여부를 판단하기 위한 오토마타 생성 방법을 도 4를 참조하여 설명하기로 한다. Referring to FIGS. 2 and 3, a description has been given of a method of generating an automata for determining whether or not an abcd is a reference sequence in the case where abcd is a reference sequence. Hereinafter, an automata generating method for determining whether a specific sequence is a cloned sequence from a reference sequence will be described with reference to FIG.

도 4는 본 발명의 일 실시예에 따른 내포 복제 판단을 위한 오토마타 생성 방법의 전체적인 흐름을 도시한 순서도이다. FIG. 4 is a flowchart showing an overall flow of an automata generating method for determining a nested copy according to an embodiment of the present invention.

도 4를 참조하면, 우선 레퍼런스 서열들의 문자들을 순차적으로 읽어들이는 제1 깊이 오토마타를 생성한다(단계 400). 제1 깊이 오토마타를 위해 생성되는 상태의 수는 주어진 레퍼런스 서열의 문자 수에 기초하며, 각 상태들의 전이 조건은 레퍼런스 서열의 문자들을 순차적으로 읽어들이도록 설정된다. 전술한 바와 같이, 제1 깊이 오토마타의 마지막 상태는 생성할 오토마타의 종료 상태로 설정된다. Referring to FIG. 4, first, a first depth automata that sequentially reads characters of reference sequences is generated (step 400). The number of states generated for the first depth automata is based on the number of characters in a given reference sequence, and the transition condition of each state is set to sequentially read the characters of the reference sequence. As described above, the final state of the first depth automata is set to the end state of the automata to be generated.

제1 깊이 오토마타가 생성되면, 제1 깊이 오토마타를 구성하는 상태들로부터 읽어들인 문자 수가 3개 이상인 상태들로부터 제2 깊이 오토마타를 위한 추가적인 상태를 생성한다(단계 402). 제1 깊이 오토마타를 구성하는 상태들로부터 파생되는 상태들은 기초하는 상태가 제1 깊이 오토마타에서 읽어들인 문자 수에 기초한다. 예를 들어, 제1 깊이 오토마타에서 3개의 문자를 읽어 들이도록 설정된 상태로부터는 2개의 상태가 추가적으로 생성된다. 또 다른 에로, 제2 깊이 오토마타에서 4개의 문자를 읽어 들이도록 설정된 상태로부터는 3개의 상태가 추가적으로 생성된다. When the first depth automata is generated, an additional state for the second depth automata is generated from the states having three or more characters read from the states constituting the first depth automaton (step 402). The states derived from the states constituting the first depth automata are based on the number of characters read from the first depth automaton. For example, two states are additionally generated from a state in which the first depth automata is set to read three characters. In another era, three states are additionally generated from the state set to read four characters in the second depth automata.

앞서 설명한 바와 같이, 추가적으로 생성되는 상태 및 전이 조건은 선행하여 읽어들인 문자열 중 마지막 문자를 포함하면서 순차적인 부분집합을 읽어들이도록 설정된다. 즉, 마지막으로 읽어들인 문자를 포함하면서 기초하는 상태로부터 읽어들인 문자들 중 적어도 일부를 순차적으로 읽어들이도록 상태 및 전이 조건이 설정되는 것이다. As previously described, the additionally generated state and transition conditions are set to read a sequential subset including the last character of the previously read string. That is, the state and transition conditions are set so that at least some of the characters read from the underlying state, including the last read character, are sequentially read.

이와 같은 추가적인 상태 및 전이 조건에 대한 생성은 추가적인 상태가 더 이상 생성되지 않을 때까지 제N 깊이 오토마타를 구성하도록 반복적으로 이루어진다(단계 404). The generation of such additional states and transition conditions is repeated (step 404) to construct an Nth deep automaton until no further states are created.

각 깊이별 상태 및 전이 조건으로 이루어진 오토마타가 완성되면, 생성된 상태들이 전이 조건을 반복하도록 하는 셀프 사이클 전이 조건이 각 상태별로 추가된다(단계 406). 이때, 제1 깊이 오토마타의 첫 번째 상태는 하나의 문자만을 읽어들인 상태이므로 셀프 사이클 전이 조건이 추가되지 않는다. When the automata consisting of the state of each depth and the transition condition is completed, a self-cycle transition condition is created (step 406) in which the generated states repeat the transition condition. At this time, since the first state of the first depth automaton reads only one character, the self-cycle transition condition is not added.

도 4와 같은 방법을 통해 생성된 오토마타로는 내포 복제된 서열인지 여부를 판단하기 위한 대상 서열이 입력된다. 입력된 대상 서열이 제1 깊이 오토마타의 마지막 상태에서 종료되지 않을 경우 입력된 대상 서열은 내포 복제된 서열이 아니라고 판단된다. 그러나, 입력된 대상 서열이 제1 깊이 오토마타의 마지막 상태에서 종료될 경우 입력된 대상 서열은 내포 복제된 서열이라고 판단된다. A target sequence for determining whether the target sequence is a nested replicated sequence is input into the automata generated through the method as shown in FIG. If the inputted target sequence is not terminated in the last state of the first depth automata, it is judged that the inputted target sequence is not a nested cloned sequence. However, when the inputted target sequence ends in the last state of the first depth automata, the inputted target sequence is determined to be a nested cloned sequence.

이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.As described above, the present invention has been described with reference to particular embodiments, such as specific elements, and specific embodiments and drawings. However, it should be understood that the present invention is not limited to the above- And various modifications and changes may be made thereto by those skilled in the art to which the present invention pertains. Accordingly, the spirit of the present invention should not be construed as being limited to the embodiments described, and all of the equivalents or equivalents of the claims, as well as the following claims, belong to the scope of the present invention .

Claims (13)

N개의 문자로 이루어진 레퍼런스 서열을 순차적으로 읽어 들이면 다음 상태로 전이하도록 하는 전이 조건과 상태들로 구성되는 제1 깊이 오토마타를 생성하는 단계;
상기 제1 깊이 오토마타를 구성하는 다수의 상태들 중 선행하여 읽어 들인 문자들이 미리 설정된 수 이상인 상태들을 선택하고, 선택된 상태들 각각으로부터 읽어 들인 문자에 비해 같거나 적은 수의 문자를 읽어 들이도록 하는 전이 조건과 상태들로 구성되는 제2 깊이 오토마타를 생성하는 단계;
상기 제2 깊이 오토마타를 생성하는 과정과 동일하게 새롭게 생성된 상태들 중 선행하여 읽어 들인 문자가 미리 설정된 수 이상인 상태들을 선택하고, 선택된 상태를 각각으로부터 읽어 들인 문자에 비해 같거나 적은 수의 문자를 읽어 들이도록 하는 전이 조건과 상태들을 반복적으로 생성하여 제N 깊이 오토마타를 생성하는 단계; 및
상기 제1 내지 제N 깊이 오토마타를 통해 생성된 상태들에 대해 전이 조건을 반복하도록 하는 셀프 사이클 전이 조건을 추가하는 단계를 포함하되,
상기 제1 깊이 오토마타의 마지막 상태에 도달하면 내포 복제로 판단하도록 설정하되,
상기 제1 깊이 오토마타의 첫 번째 상태에는 상기 셀프 사이클 전이 조건이 추가되지 않는 것을 특징으로 하는 내포 복제 판단을 위한 오토마타 생성 방법.

Generating a first depth automaton comprising a transition condition and states for reading a reference sequence consisting of N characters sequentially to transition to the next state;
Selecting a state in which a plurality of states that constitute the first depth automaton are read in a predetermined number or more and reading the same or a smaller number of characters than the read character from each of the selected states, Generating a second depth automata consisting of conditions and states;
The second depth automata may be configured to select the states of the newly generated states that are read in advance to be equal to or larger than a predetermined number and to select the same or fewer number of characters Generating an Nth depth automata by repeatedly generating transition conditions and states to be read; And
Adding a self-cycling transition condition that causes the transition conditions to be repeated for states generated through the first through the N-th deep automata,
And when it reaches the final state of the first depth automata,
Wherein the self-cycling transition condition is not added to the first state of the first depth automata.

삭제delete 제1항에 있어서,
상기 제1 깊이 내지 제N 깊이의 오토마타를 구성하는 상태들이 생성될 경우, 해당 상태에 기초하여 생성되는 상태들의 수는 해당 상태에서 읽어들인 문자의 수에 기초하는 것을 특징으로 하는 내포 복제 판단을 위한 오토마타 생성 방법.
The method according to claim 1,
Wherein when the states constituting the automata of the first depth to the Nth depth are generated, the number of states generated based on the state is based on the number of characters read in the corresponding state. Automata generation method.
제1항에 있어서,
특정 상태로부터 생성되는 상태들은 상기 특정 상태에서 읽어들인 문자들 중 적어도 일부를 순차적으로 읽어 들이면서 최후에 읽어들인 문자를 포함하도록 전이 조건이 설정되는 것을 특징으로 하는 내포 복제 판단을 위한 오토마타 생성 방법.
The method according to claim 1,
Wherein the transition condition is set such that at least some of the characters read from the specific state are sequentially read while the states generated from the specific state include the last read character.
제1항에 있어서,
특정 상태로부터 새로운 상태의 생성은 더 이상 새로운 상태를 생성할 수 없는 조건인 상기 특정 상태가 선행하여 읽어 들인 문자의 수가 미리 설정된 수 이상인 경우가 존재하지 않을 때까지 반복되는 것을 특징으로 하는 내포 복제 판단을 위한 오토마타 생성 방법.
The method according to claim 1,
Wherein the generation of the new state from the specific state is repeated until there is no case where the number of characters read in advance by the specific state is equal to or greater than a preset number, A method for generating an automata for a vehicle.
제1항에 있어서,
특정 상태로부터 생성되는 상태들은 상기 특정 상태에서 선행하여 읽어들인 문자 수 및 현재 읽어 들인 문자 수에 기초하여 네이밍되는 것을 특징으로 하는 내포 복제 판단을 위한 오토마타 생성 방법.
The method according to claim 1,
Wherein the states generated from the specific state are named on the basis of the number of characters read in advance in the specific state and the number of characters read in the specific state.
N개의 문자로 이루어진 레퍼런스 서열을 순차적으로 읽어 들이면 다음 상태로 전이하도록 하는 전이 조건과 상태들을 생성하는 단계(a);
상기 단계(a)에서 생성된 상태들 중 선행하여 읽어 들인 문자가 미리 설정된 수 이상인 상태들을 선택하고 선택된 상태들 각각으로부터 읽어 들인 문자에 비해 같거나 적은 수의 문자를 읽어 들이도록 하는 전이 조건과 상태들을 생성하는 단계(b);
새롭게 생성되는 상태에 대해 해당 상태가 미리 설정된 수 이상의 문자를 읽어 들이도록 설정된 경우 읽어 들인 문자에 비해 같거나 적은 수의 문자를 읽어 들이도록 하는 전이 조건과 상태들을 반복적으로 생성하는 단계(c); 및
상기 단계(a) 내지 (c)에서 생성된 상태들에 대해 전이 조건을 반복하도록 하는 셀프 사이클 전이 조건을 추가하는 단계(d)를 포함하되,
상기 단계(a)에서 생성되는 상태들 중 마지막 상태에 도달하면 내포 복제로 판단하도록 설정하되,
상기 단계(a)의 첫 번째 상태에는 상기 셀프 사이클 전이 조건이 추가되지 않는 것을 특징으로 하는 내포 복제 판단을 위한 오토마타 생성 방법.

(A) generating transition conditions and states for sequentially transitioning to a next state by sequentially reading N reference sequences;
A transition condition for selecting a state where the number of the previously read characters is equal to or greater than a predetermined number among the states generated in the step (a) and reading the same number or less number of characters from the read state from each of the selected states, (B);
(C) repeatedly generating transition conditions and states to read the same or smaller number of characters compared to the read character if the state is set so as to read a predetermined number of characters with respect to the newly created state; And
(D) adding a self-cycling transition condition to repeat the transition condition for the states generated in the steps (a) to (c)
Wherein when the final state of the states generated in step (a) is reached,
Wherein the self-cycling transition condition is not added to the first state of the step (a).

삭제delete 제7항에 있어서,
특정 상태로부터 생성되는 상태들의 수는 해당 상태에서 읽어 들인 문자의 수에 기초하는 것을 특징으로 하는 내포 복제 판단을 위한 오토마타 생성 방법.
8. The method of claim 7,
Wherein the number of states generated from a particular state is based on the number of characters read in the state.
제7항에 있어서,
특정 상태로부터 생성되는 상태들은 상기 특정 상태에서 읽어 들인 문자들 중 적어도 일부를 순차적으로 읽어 들이면서 최후에 읽어 들인 문자를 포함하도록 설정되는 것을 특징으로 하는 내포 복제 판단을 위한 오토마타 생성 방법.
8. The method of claim 7,
Wherein the states generated from the specific state are set so as to include at least one of the characters read in the specific state and sequentially read at least a part of the characters read in the specific state.
제7항에 있어서,
특정 상태로부터 새로운 상태의 생성은 더 이상 새로운 상태를 생성할 수 없는 조건인 상기 특정 상태가 선행하여 읽어 들인 문자의 수가 미리 설정된 수 이상인 경우가 존재하지 않을 때까지 반복되는 것을 특징으로 하는 내포 복제 판단을 위한 오토마타 생성 방법.
8. The method of claim 7,
Wherein the generation of the new state from the specific state is repeated until there is no case where the number of characters read in advance by the specific state is equal to or greater than a preset number, A method for generating an automata for a vehicle.
제7항에 있어서,
특정 상태로부터 생성되는 상태들은 상기 특정 상태에서 선행하여 읽어들인 문자 수 및 현재 읽어 들인 문자 수에 기초하여 네이밍되는 것을 특징으로 하는 내포 복제 판단을 위한 오토마타 생성 방법.
8. The method of claim 7,
Wherein the states generated from the specific state are named on the basis of the number of characters read in advance in the specific state and the number of characters read in the specific state.
제1항 및 제7항 중 어느 한 항의 방법을 실행하기 위한 프로그램이 기록된 컴퓨터에 의해 판독 가능한 기록 매체.

A recording medium readable by a computer on which a program for executing the method of any one of claims 1 and 7 is recorded.

KR1020170066232A 2017-05-29 2017-05-29 Method for Creating Automata for determination of Nested-duplication KR101926977B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170066232A KR101926977B1 (en) 2017-05-29 2017-05-29 Method for Creating Automata for determination of Nested-duplication

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170066232A KR101926977B1 (en) 2017-05-29 2017-05-29 Method for Creating Automata for determination of Nested-duplication

Publications (1)

Publication Number Publication Date
KR101926977B1 true KR101926977B1 (en) 2019-03-07

Family

ID=65760754

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170066232A KR101926977B1 (en) 2017-05-29 2017-05-29 Method for Creating Automata for determination of Nested-duplication

Country Status (1)

Country Link
KR (1) KR101926977B1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003065179A2 (en) * 2002-02-01 2003-08-07 John Fairweather A system and method for mining data
JP2009146348A (en) * 2007-12-18 2009-07-02 Action Research:Kk Device and method for simulating artificial life
JP2011238197A (en) * 2010-05-11 2011-11-24 Kosuke Amakatsu Method and system for classifying biological species based on sequence information of gene
WO2012158621A1 (en) * 2011-05-13 2012-11-22 Indiana University Reaserch And Technology Coporation Secure and scalable mapping of human sequencing reads on hybrid clouds
KR20170000744A (en) * 2015-06-24 2017-01-03 사회복지법인 삼성생명공익재단 Method and apparatus for analyzing gene

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003065179A2 (en) * 2002-02-01 2003-08-07 John Fairweather A system and method for mining data
JP2009146348A (en) * 2007-12-18 2009-07-02 Action Research:Kk Device and method for simulating artificial life
JP2011238197A (en) * 2010-05-11 2011-11-24 Kosuke Amakatsu Method and system for classifying biological species based on sequence information of gene
WO2012158621A1 (en) * 2011-05-13 2012-11-22 Indiana University Reaserch And Technology Coporation Secure and scalable mapping of human sequencing reads on hybrid clouds
KR20170000744A (en) * 2015-06-24 2017-01-03 사회복지법인 삼성생명공익재단 Method and apparatus for analyzing gene

Similar Documents

Publication Publication Date Title
CN111611274A (en) Database query optimization method and system
Shin et al. Evolutionary sequence generation for reliable DNA computing
Kahng Advancing placement
CN102893529B (en) For the method and system of the decoding of LDPC code
JP7306463B2 (en) MATERIAL DESIGN DEVICE, MATERIAL DESIGN METHOD, AND MATERIAL DESIGN PROGRAM
CN113468044B (en) Test case generation method based on improved grey predictive evolution algorithm
CN105264488A (en) Merging of sorted lists using array pair
KR20100081351A (en) Logical structure design surface
KR101926977B1 (en) Method for Creating Automata for determination of Nested-duplication
CN116663491B (en) Method, equipment and medium for covering group condition constraint statement based on BDD solving function
Berger Toward a third industrial divide?
CN104539298A (en) Polarity fast conversion method for Reed-Muller logic circuit
JP5516880B2 (en) Sequence analysis apparatus, sequence analysis method, and computer program
JP4419633B2 (en) Logic circuit design system, logic circuit design method and program thereof
De B. Nogueira et al. An efficient methodology of production strategy optimization based on genetic algorithms
CN110928253B (en) Dynamic weighting heuristic scheduling method for automatic manufacturing system
KR100916946B1 (en) The method of selecting a nuclear reactor loading pattern using gui
JP2006039621A (en) Method and system for preparing timing constraint library
CN105224249B (en) A kind of write operation method and device
CN110750449A (en) Test-driven webpage component function extraction method
Waziruddin et al. Coercion through optimization: A classification of optimization techniques
CN112397211B (en) Plugging analysis method for water reactor fuel related assembly at any control rod position
TWI783773B (en) Method for establishing variation model related to circuit characteristics for performing circuit simulation, and associated circuit simulation system
CN114840545B (en) Block chain fine-grained editing method supporting rapid state updating
US20240232058A9 (en) Method, device, and computer program product for generating test case