BR112019016236A2 - método e aparelho para a representação compacta de dados de bioinformática usando descritores genômicos múltiplos referência cruzada a pedidos relacionados - Google Patents

método e aparelho para a representação compacta de dados de bioinformática usando descritores genômicos múltiplos referência cruzada a pedidos relacionados Download PDF

Info

Publication number
BR112019016236A2
BR112019016236A2 BR112019016236A BR112019016236A BR112019016236A2 BR 112019016236 A2 BR112019016236 A2 BR 112019016236A2 BR 112019016236 A BR112019016236 A BR 112019016236A BR 112019016236 A BR112019016236 A BR 112019016236A BR 112019016236 A2 BR112019016236 A2 BR 112019016236A2
Authority
BR
Brazil
Prior art keywords
readings
class
fact
reading
data
Prior art date
Application number
BR112019016236A
Other languages
English (en)
Inventor
Alberti Claudio
Renzi Daniele
Zoia Giorgio
Khoso Baluch Mohamed
Original Assignee
Genomsys Sa
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
Priority claimed from PCT/EP2016/074301 external-priority patent/WO2018068828A1/en
Priority claimed from PCT/EP2016/074307 external-priority patent/WO2018068829A1/en
Priority claimed from PCT/EP2016/074311 external-priority patent/WO2018068830A1/en
Priority claimed from PCT/EP2016/074297 external-priority patent/WO2018068827A1/en
Application filed by Genomsys Sa filed Critical Genomsys Sa
Priority claimed from PCT/US2018/018092 external-priority patent/WO2018152143A1/en
Publication of BR112019016236A2 publication Critical patent/BR112019016236A2/pt

Links

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
    • G16B45/00ICT specially adapted for bioinformatics-related data visualisation, e.g. displaying of maps or networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • 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
    • G16B20/10Ploidy or copy number detection
    • 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
    • G16B20/20Allele or variant detection, e.g. single nucleotide polymorphism [SNP] detection
    • 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
    • G16B30/00ICT specially adapted for sequence analysis involving nucleotides or amino acids
    • 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
    • G16B30/00ICT specially adapted for sequence analysis involving nucleotides or amino acids
    • G16B30/10Sequence alignment; Homology search
    • 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
    • G16B30/00ICT specially adapted for sequence analysis involving nucleotides or amino acids
    • G16B30/20Sequence assembly
    • 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
    • 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
    • G16B40/10Signal processing, e.g. from mass spectrometry [MS] or from PCR
    • 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
    • G16B50/00ICT programming tools or database systems specially adapted for bioinformatics
    • 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
    • G16B50/00ICT programming tools or database systems specially adapted for bioinformatics
    • G16B50/10Ontologies; Annotations
    • 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
    • G16B50/00ICT programming tools or database systems specially adapted for bioinformatics
    • G16B50/30Data warehousing; Computing architectures
    • 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
    • G16B50/00ICT programming tools or database systems specially adapted for bioinformatics
    • G16B50/40Encryption of genetic data
    • 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
    • G16B50/00ICT programming tools or database systems specially adapted for bioinformatics
    • G16B50/50Compression of genetic data
    • 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
    • G16B99/00Subject matter not provided for in other groups of this subclass
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3084Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method
    • H03M7/3086Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method employing a sliding window, e.g. LZ77
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/70Type of the data to be coded, other than image and sound

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Biotechnology (AREA)
  • Evolutionary Biology (AREA)
  • Biophysics (AREA)
  • Databases & Information Systems (AREA)
  • Bioethics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Chemical & Material Sciences (AREA)
  • Analytical Chemistry (AREA)
  • Proteomics, Peptides & Aminoacids (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Genetics & Genomics (AREA)
  • Molecular Biology (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Epidemiology (AREA)
  • Evolutionary Computation (AREA)
  • Public Health (AREA)
  • Human Computer Interaction (AREA)
  • Signal Processing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Measuring Or Testing Involving Enzymes Or Micro-Organisms (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Labeling Devices (AREA)
  • Television Signal Processing For Recording (AREA)
  • Apparatus Associated With Microorganisms And Enzymes (AREA)

Abstract

é revelado um método e um aparelho para a compressão de dados de sequência do genoma produzidos por máquinas de sequenciamento de genoma. as leituras de sequência são codificadas alinhando-as com sequências de referência pré-existentes ou construídas, o processo de codificação é composto por uma classificação das leituras em classes de dados, seguida pela codificação de cada classe em termos de uma multiplicidade de blocos de descritores. modelos de origem específicos e codificadores de entropia são usados para cada classe de dados na qual os dados são particionados e cada bloco de descritores associado.

Description

MÉTODO E APARELHO PARA A REPRESENTAÇÃO COMPACTA DE DADOS DE BIOINFORMÁTICA USANDO DESCRITORES GENÔMICOS MÚLTIPLOS REFERÊNCIA CRUZADA A PEDIDOS RELACIONADOS [001] Este pedido reivindica a prioridade e o benefício dos pedidos de patente PCT / US2017 / 017842 depositado em 14 de fevereiro de 2017 e PCT / US2017 / 041591 depositado em 11 de julho de 2017.
CAMPO TÉCNICO DA INVENÇÃO [002] Esta invenção proporciona um novo método de representação de dados de sequenciamento do genoma que reduz o espaço de armazenamento utilizado e melhora o desempenho de acesso, proporcionando nova funcionalidade que não estava disponível com métodos conhecidos de representação do estado da técnica.
ANTECEDENTES DA INVENÇÃO [003] Uma representação apropriada dos dados de sequenciamento do genoma é fundamental para permitir aplicações de análise genômica eficiente, como a chamada de variantes do genoma e todas as outras análises realizadas com vários objetivos, processando os dados de sequenciamento e os metadados.
[004] O sequenciamento do genoma humano tornou-se acessível pelo surgimento de tecnologias de sequenciamento de baixo custo e alta produtividade. Tal oportunidade abre novas perspectivas em diversos campos, desde o diagnóstico e tratamento do câncer até a identificação de doenças genéticas, desde a vigilância de patógenos para a identificação de anticorpos até a criação de novas vacinas, medicamentos e a personalização de tratamentos sob medida.
[005] Hospitais, provedores de análise de dados genômicos, bioinformáticos e grandes centros de armazenamento de dados biológicos estão à procura de soluções de processamento de informações genômicas acessíveis, rápidas, confiáveis e interconectadas que permitam o dimensionamento da medicina genômica em escala mundial. Como um dos gargalos no processo de sequenciamento tornou-se armazenamento de dados, métodos para representar
Petição 870190075603, de 06/08/2019, pág. 118/387
2/68 dados de sequenciamento do genoma em uma forma compactada são cada vez mais investigados.
[006] As representações de informação de genoma mais utilizadas nos dados de sequenciamento são baseadas nos formatos FASTQ e SAM. O objetivo é compactar os formatos de arquivo usados tradicionalmente (respectivamente FASTQ e SAM para dados não alinhados e alinhados). Tais arquivos são constituídos por caracteres de texto simples e são compactados, como mencionado acima, usando abordagens de propósito geral, tais como esquemas LZ (de Lempel e Ziv, os autores que publicaram as primeiras versões) (o conhecido zip, gzip etc). Quando compressores de uso geral, como o gzip, são usados, o resultado da compactação é geralmente um único blob de dados binários. A informação em tal forma monolítica se toma bastante difícil de arquivar, transferir e elaborar particularmente quando, como no caso de sequenciamento de alto rendimento, o volume de dados é extremamente grande. O formato BAM é caracterizado por baixo desempenho de compactação devido ao foco na compactação do formato SAM ineficiente e redundante, em vez de extrair as informações genômicas reais transmitidas pelos arquivos SAM e devido à adoção de algoritmos de compressão de texto de uso geral, como gzip explorando a natureza específica de cada fonte de dados (os próprios dados genômicos).
[007] Uma abordagem mais sofisticada à compactação de dados genômicos que é menos usada, mas mais eficiente que a BAM é a CRAM. O CRAM fornece compactação mais eficiente para a adoção de codificação diferencial em relação a uma referência (explora parcialmente a redundância da fonte de dados), mas ainda não possui recursos como atualizações incrementais, suporte para streaming e acesso seletivo a classes específicas de dados compactados.
[008] Essas abordagens geram baixas taxas de compactação e estruturas de dados que são difíceis de navegar e manipular quando compactadas. A análise a jusante pode ser muito lenta devido à necessidade de lidar com estruturas de dados grandes e rígidas, mesmo para executar operações simples ou para
Petição 870190075603, de 06/08/2019, pág. 119/387
3/68 acessar regiões selecionadas do conjunto de dados genômicos. O CRAM conta com o conceito do registro CRAM. Cada registro CRAM representa uma única leitura mapeada ou não mapeada, codificando todos os elementos necessários para reconstruí-la.
[009] O CRAM apresenta as seguintes desvantagens e limitações que são resolvidas e superadas pela invenção descrita neste documento:
1. O CRAM não suporta indexação de dados e acesso aleatório a subconjuntos de dados que compartilham recursos específicos. A indexação de dados está fora do escopo da especificação (consulte a seção 12 da especificação CRAM v 3.0) e ela é implementada como um arquivo separado. Inversamente, a abordagem da invenção descrita neste documento emprega um método de indexação de dados que é integrado com o processo de codificação e os índices são incorporados no fluxo de bits codificado (isto é, comprimido).
2. O CRAM é construído por blocos de dados centrais que podem conter qualquer tipo de leitura mapeada (leituras perfeitamente correspondentes, leituras somente com substituições, leituras com inserções ou exclusões (também chamadas de indels”)). Não há noção de classificação de dados e agrupamento de leituras em classes de acordo com o resultado do mapeamento em relação a uma sequência de referência. Isso significa que todos os dados precisam ser inspecionados, mesmo que apenas leituras com recursos específicos sejam pesquisadas. Tal limitação é resolvida pela invenção, classificando e particionando dados em classes antes da codificação.
3. O CRAM é baseado no conceito de encapsular cada um lido em um registro CRAM Isto implica a necessidade de inspecionar cada registrocompleta quando lê caracterizada por características biológicas específicas (por exemplo, lê com substituições, mas sem indels”, ou perfeitamente mapeados lê) são pesquisados.
Inversamente, na presente invenção existe a noção de classes de dados codificadas separadamente em blocos de informação separados e não há noção de registro encapsulando cada leitura. Isso permite um acesso mais eficiente ao
Petição 870190075603, de 06/08/2019, pág. 120/387
4/68 conjunto de leituras com características biológicas específicas (por exemplo, leituras com substituições, mas sem indels ou leituras perfeitamente mapeadas) sem a necessidade de decodificar cada (bloco) leitura (s) para inspecionar seus recursos.
4. Em um registro CRAM, cada campo de registro é associado a um sinalizador específico e cada sinalizador deve sempre ter o mesmo significado, pois não há noção de contexto, pois cada registro CRAM pode conter qualquer tipo diferente de dados. Esse mecanismo de codificação introduz informações redundantes e impede o uso de codificação de entropia baseada em contexto eficiente.
Em vez disso, na presente invenção, não há noção de denotação de flag porque esta é intrinsecamente definida pelo bloco de informação ao qual os dados pertencem. Isto implica um número largamente reduzido de símbolos a serem utilizados e uma consequente redução da entropia da fonte de informação que resulta numa compressão mais eficiente. Essa melhoria é possível porque o uso de diferentes blocos permite ao codificador reutilizar o mesmo símbolo em cada bloco com diferentes significados de acordo com o contexto. No CRAM, cada sinalizador deve sempre ter o mesmo significado, pois não há noção de contexto e cada registro CRAM pode conter qualquer tipo de dado.
5. Nas substituições, inserções e exclusões de CRAM são representadas usando diferentes descritores, opção que aumenta o tamanho do alfabeto da fonte de informação e produz uma entropia de fonte mais alta. Por outro lado, a abordagem da invenção divulgada usa um único alfabeto e codifica para substituições, inserções e deleções. Isso toma o processo de codificação e decodificação mais simples e produz um modelo de fonte de entropia mais baixa, cuja codificação gera fluxos de bits caracterizados por um alto desempenho de compactação.
[010] A presente invenção tem por objetivo compactar sequências genômicas através da classificação e particionamento de dados de sequenciamento de modo que a informação redundante a ser codificada seja minimizada e recursos como
Petição 870190075603, de 06/08/2019, pág. 121/387
5/68 acesso seletivo e suporte para atualizações incrementais sejam ativados diretamente no domínio compactado.
[011] Um dos aspectos da abordagem apresentada é a definição de classes de dados e metadados estruturados em diferentes blocos e codificados separadamente. As melhorias mais relevantes dessa abordagem em relação aos métodos existentes consistem em:
1. aumento do desempenho de compressão devido à redução da entropia fonte de informação constituída pelo fornecimento de um modelo de fonte eficiente para cada classe de dados ou metadados;
2. possibilidade de realizar acessos seletivos a partes dos dados compactados e metadados para qualquer outra finalidade de processamento diretamente no domínio compactado;
3. possibilidade de incrementalmente (ou seja, sem a necessidade de decodificação e recodificação) atualiza dados compactados e metadados com novos dados de sequenciamento e/ou metadados e/ou novos resultados de análise associados a conjuntos específicos de leituras de sequenciamento. BREVE DESCRIÇÃO DOS DESENHOS [012] A Figura 1 mostra como a posição da leitura de pares mapeados é codificada no bloco pos”, como diferença da posição absoluta da primeira leitura mapeada.
[013] A Figura 2 mostra como duas leituras em um par podem se originar das duas fitas de DNA.
[014] A Figura 3 mostra como o complemento reverso da leitura 2 é codificado se a cadeia 1 for usada como referência.
[015] A Figura 4 mostra as quatro combinações possíveis de leituras compondo uma leitura de par e a respectiva codificação no bloco rcomp”.
[016] A Figura 5 mostra como calcular a distância de pareamento no caso de leituras constantes para três pares de leitura.
Petição 870190075603, de 06/08/2019, pág. 122/387
6/68 [017] A Figura 6 mostra como os erros de emparelhamento codificados no bloco “par permite que o decodificador reconstrua o emparelhamento de leitura correcta utilizando o “MPPPD codificado.
[018] A Figura 7 mostra a codificação de uma distância de pareamento quando uma leitura é mapeada em uma referência de diferença que sua correspondência. Nesse caso, descritores adicionais são adicionados à distância de pareamento. Um é um sinalizador de sinalização, o segundo é um identificador de referência e, em seguida, a distância de pareamento.
[019] A Figura 8 mostra a codificação de erros de emparelhamento tipo n” num bloco NMIs”.
[020] A Figura 9 mostra um par de leitura mapeado que apresenta substituições em relação a uma sequência de referência.
[021] A Figura 10 mostra como calcular as posições de substituições como valores absolutos ou diferenciais.
[022] A Figura 11 mostra como calcular os símbolos que substituem os tipos de substituição quando nenhum código IUPAC é usado. Os símbolos representam a distância - em um vetor de substituição circular - entre a molécula presente na leitura e a presente na referência nessa posição.
[023] A Figura 12 mostra como codificar as substituições no bloco snpt”.
[024] A Figura 13 mostra como calcular códigos de substituição quando códigos de ambiguidade IUPAC são usados.
[025] A Figura 14 mostra como o bloco “snpt é codificado quando códigos IUPAC são utilizados.
[026] A Figura 15 mostra como para leituras da classe I o vetor de substituição usado é o mesmo que para a classe M com a adição de códigos especiais para inserções dos símbolos A, C, G, T, N.
[027] A Figura 16 mostra alguns exemplos de codificação de incompatibilidades e indels no caso de códigos de ambiguidade da IUPAC. O vetor de substituição é muito mais longo neste caso e, portanto, os símbolos calculados possíveis são maiores do que no caso de cinco símbolos.
Petição 870190075603, de 06/08/2019, pág. 123/387
7/68 [028] A Figura 17 mostra um modelo de origem diferente para incompatibilidades e indels, em que cada bloco contém a posição das diferenças ou inserções de um único tipo. Neste caso, nenhum símbolo é codificado para o tipo indelicado ou indel.
[029] A Figura 18 mostra um exemplo de incompatibilidade e codificação indels. Quando não há incompatibilidades ou indels de um determinado tipo para uma leitura, um 0 é codificado no bloco correspondente. O 0 atua como separador de leituras e terminador em cada bloco.
[030] A Figura 19 mostra como uma modificação na sequência de referência pode transformar leituras em leituras P. Essa operação pode reduzir a entropia de informações da estrutura de dados, especialmente no caso de dados de alta cobertura.
[031] A Figura 20 mostra um codificador genômico de 2010 de acordo com uma forma de realização desta invenção.
[032] A Figura 21 mostra um decodificador genômico 218 de acordo com uma forma de realização desta invenção.
[033] A Figura 22 mostra como uma referência de “interna pode ser construída por agrupamento de leitura e montagem dos segmentos tomados a partir de cada conjunto.
[034] A Figura 23 mostra como uma estratégia de construção de uma referência consiste em armazenar as leituras mais recentes depois que uma classificação específica (por exemplo, ordem lexicográfica) foi aplicada às leituras.
[035] A Figura 24 mostra como uma leitura que pertence à classe de não mapeado” lê-se (Classe L) pode ser codificada utilizando seis descritores armazenados ou transportados nos blocos correspondentes.
[036] A Figura 25 mostra como uma codificação alternativa de leituras pertencentes à Classe II, onde um descritor pos assinado é usado para codificar a posição de mapeamento de uma leitura na referência construída.
[037] A Figura 26 mostra como as transformações de referência podem ser aplicadas para remover incompatibilidades de leituras. Em alguns casos, as
Petição 870190075603, de 06/08/2019, pág. 124/387
8/68 transformações de referência podem gerar novas incompatibilidades ou alterar o tipo de incompatibilidades encontradas ao se referir à referência antes que a transformação tenha sido aplicada.
[038] A Figura 27 mostra como as transformações de referência podem alterar as leituras de classe quando todas ou um subconjunto de incompatibilidades são removidas (isto é, a leitura pertencente à classe M antes da transformação ser atribuída à Classe P após a transformação da referência ter sido aplicada).
[039] A Figura 28 mostra como pares de leitura semi-mapeados (classe HM) podem ser usados para preencher regiões desconhecidas de uma sequência de referência, montando contigs mais longos com leituras não mapeadas.
[040] A Figura 29 mostra como os codificadores de dados das classes N, M e I são configurados com vetores de limites e geram subclasses separadas de classes de dados N, M e I.
[041] A Figura 30 mostra como todas as classes de dados podem usar a mesma referência transformada para recodificação ou uma transformação diferente pode ser usada para cada classe N, M e I, ou qualquer combinação delas.
[042] A Figura 31 mostra a estrutura de um Cabeçalho do Conjunto de Dados Genômico.
A Figura 32 mostra a estrutura genérica de uma tabela de índices mestre em que cada linha contém intervalos genômicos das várias classes de dados P, N, Μ, I, U, HM e outros indicadores para metadados e anotações. As colunas referem-se a posições específicas nas sequências de referência relacionadas aos dados genômicos codificados.
[043] A Figura 33 mostra um exemplo de uma linha do MIT contendo intervalos genômicos relacionados a leituras de Classe P. Regiões genômicas relacionadas a diferentes sequências de referência são separadas por um sinalizador especial ('S' no exemplo).
[044] A Figura 34 mostra a estrutura genérica da Tabela de índice Local (LIT) e como ela é usada para armazenar ponteiros para a localização física da informação genômica codificada nos dados armazenados ou transmitidos.
Petição 870190075603, de 06/08/2019, pág. 125/387
9/68 [045] A Figura 35 mostra um exemplo de LIT usado para acessar as Unidades de Acesso no. 7 e 8 na carga útil do bloco.
[046] A Figura 36 mostra a relação funcional entre as várias linhas do MIT e o LIT contido nos cabeçalhos dos blocos genômicos.
[047] A Figura 37 mostra como uma Unidade de Acesso é composta por vários blocos de dados genômicos carregados por diferentes fluxos genômicos contendo dados pertencentes a diferentes classes. Cada bloco é ainda composto por pacotes de dados usados como unidades de transmissão de dados.
[048] A Figura 38 mostra como as Unidades de Acesso são compostas por um cabeçalho e blocos multiplexados pertencentes a um ou mais blocos de dados homogêneos. Cada bloco pode ser composto por um ou mais pacotes contendo os descritores reais da informação genômica.
[049] A Figura 39 mostra Alinhamentos Múltiplos sem emenda. A leitura mais à esquerda tem N alinhamentos. N é o primeiro valor do mmap a ser decodificado e sinaliza o número de alinhamentos da primeira leitura. Os valores seguintes N do descritor mmap são decodificados e são usados para calcular P, que é o número de alinhamentos da segunda leitura.
[050] A Figura 40 mostra como os descritores pos, pair e mmap são usados para codificar vários alinhamentos sem emendas. A leitura mais à esquerda tem N alinhamentos.
[051] A Figura 41 mostra vários alinhamentos com emendas.
[052] A Figura 42 mostra o uso dos descritores pos, pair, mmap e msar para representar vários alinhamentos com emendas.
SUMÁRIO DA INVENÇÃO [053] As características das reivindicações abaixo resolvem o problema das soluções existentes do estado da técnica, fornecendo um método para codificar dados da sequência do genoma, os referidos dados da sequência do genoma compreendendo leituras de sequências de nucleotídeos, o referido método compreendendo as etapas de:
Petição 870190075603, de 06/08/2019, pág. 126/387
10/68 alinhar as referidas leituras a uma ou mais sequências de referência, criando assim leituras alinhadas, classificar as referidas leituras alinhadas de acordo com regras de correspondência especificadas com a dita uma ou mais sequências de referência, criando desse modo classes de leituras alinhadas, codificar os classificados alinhados como uma multiplicidade de blocos de descritores, em que codificar as referidas listas alinhadas classificadas como uma multiplicidade de blocos de descritores compreende selecionar os referidos descritores de acordo com as referidas classes de leituras alinhadas, estruturar os referidos blocos de descritores com informações de cabeçalho, criando sucessivas Unidades de Acesso.
[054] Num outro aspecto, o método de codificação compreende ainda a classificação adicional das ditas leituras que não satisfazem as referidas regras de correspondência especificadas numa classe de leituras não mapeadas:
construir um conjunto de sequências de referência usando pelo menos algumas leituras não mapeadas alinhar a dita classe de leituras não mapeadas ao conjunto de sequências de referência construídas codificar os classificados alinhados como uma multiplicidade de blocos de descritores, codificar o dito conjunto de sequências de referência construídas, estruturar os referidos blocos de descritores e as referidas sequências de referência codificadas com informação de cabeçalho, criando assim Unidades de Acesso sucessivas.
[055] Em outro aspecto, o método de codificação compreende ainda a identificação de leituras genômicas sem qualquer incompatibilidade na sequência de referência como primeira Classe P.
[056] Em outro aspecto, o método de codificação compreende ainda identificar leituras genômicas como uma segunda Classe N quando diferenças são
Petição 870190075603, de 06/08/2019, pág. 127/387
11/68 encontradas somente nas posições onde a máquina de sequenciamento não foi capaz de chamar qualquer “base e o número de incompatibilidades em cada leitura não excede um determinado limite.
[057] Em outro aspecto, o método de codificação compreende ainda a identificação de leituras genômicas como uma terceira Classe M” quando não encontradas correspondências nas posições onde a máquina de sequenciamento não foi capaz de chamar qualquer base, denominada tipo n” incompatível, e / ou chamado de “base” diferente da sequência de referência, denominado tipo s” de incompatibilidades, e o número de incompatibilidades não excede determinados limites para o número de discordâncias de tipo n, tipo s” e um limite obtido de um dada função (f (n, s)), calculado sobre o número de tipo ne erros de emparelhamento de tipo s”.
[058] Num outro aspecto, o modo de codificação compreende ainda a identificação de leitura genômica como uma quarta Classe I” quando elas podem, eventualmente, ter o mesmo tipo de erros de emparelhamento de Classe M”, e, além disso, pelo menos um erro de emparelhamento do tipo: “inserção (tipo i) “supressão (tipo d) clips suaves (tipo c), e em que o número de incompatibilidades para cada tipo não excede o limite dado correspondente e um limite fornecido por uma dada função (w (n, s, i, d, c)) calculado sobre o número de tipo n, tipo s, tipo i, tipo d“ e tipo c” incompatíveis.
[059] Num outro aspecto, o método de codificação compreende ainda a identificação de leituras genômicas como uma quinta Classe II” como compreendendo todas as leituras que não encontram qualquer classificação nas Classes P, N, Μ, I, como previamente definido.
[060] Num outro aspecto, o método de codificação compreende ainda que as leituras da sequência genômica a codificar estão emparelhadas.
[061] Num outro aspecto, o método de codificação compreende ainda que a referida classificação compreende ainda a identificação de leituras genômicas como uma sexta Classe HM como compreendendo todos os pares de leituras
Petição 870190075603, de 06/08/2019, pág. 128/387
12/68 onde uma leitura pertence à Classe P, N, M ou I e a outra leitura pertence a Classe U [062] Em outro aspecto, o método de codificação compreende ainda as etapas de identificar se as duas leituras de mate são classificadas na mesma classe (cada uma de: P, N, Μ, I, II), então atribuindo o par à mesma classe identificada, identificar se as duas leituras de posicionamento são classificadas em classes diferentes e se nenhuma delas pertence à Classe II” e, em seguida, atribuir o par de leituras à classe com a prioridade mais alta definida de acordo com a seguinte expressão:
P < N < Μ < I em que Classe P” tem a prioridade mais baixa e Classe I” tem a prioridade mais alta;
identificando se apenas uma das duas leituras de parceiro foi classificada como pertencente à Classe II” e classificando o par de leituras como pertencentes às sequências Class HM.
[063] Em outro aspecto, o método de codificação compreende ainda que cada classe de leituras N, Μ, I de leituras N, Μ, I é adicionalmente particionada em duas ou mais subclasses (296, 297, 298) de acordo com um vetor de limites (292, 293, 294) definidas, respectivamente, para cada uma das classes N, H e I, pelo número de erros de emparelhamento tipo n” (292), a função f (n, s) (293) e a função w (n, s, i, d, c) (294).
identificando se as duas leituras de mate são classificadas na mesma subclasse, então atribuindo o par à mesma subclasse identificando se as duas leituras de posicionamento são classificadas em subclasses de Classes diferentes e, em seguida, atribuindo o par à subclasse pertencente à Classe de prioridade mais alta de acordo com a seguinte expressão:
N < Μ < I onde N tem a prioridade mais baixa e I tenho a prioridade mais alta;
Petição 870190075603, de 06/08/2019, pág. 129/387
13/68 identificando se as duas leituras de mate são classificadas na mesma classe, e tal classe é N ou M ou I, mas em subclasses diferentes, então atribuindo o par à subclasse com a maior prioridade de acordo com as seguintes expressões:
Ni < N2 < ... < Nk
Mi < M2 < ... < Mj li < b < < lh onde o índice mais alto tem a prioridade mais alta.
[064] Em outro aspecto, as informações sobre a posição de mapeamento de cada leitura são codificadas por meio de um bloco de descritores de posição.
[065] Em outro aspecto, a informação sobre o encalhamento (isto é, a fita de DNA da qual a leitura foi sequenciada) de cada leitura é codificada por meio de um bloco descritor rcomp.
[066] Num outro aspecto, a informação de emparelhamento das leituras de extremidade emparelhada é codificada por meio de um bloco de descritores de pares.
[067] Em outro aspecto, as informações de alinhamento adicionais, como se a leitura fosse mapeada em um par adequado, falha na verificação de qualidade de plataforma / fornecedor, é uma PCR ou duplicata óptica ou é um alinhamento suplementar que é codificado por meio de um bloco descritor de flags.
[068] Em outro aspecto, a informação sobre bases desconhecidas é codificada por meio de um bloco descritor de nmis.
[069] Em outro aspecto, a informação sobre a posição das substituições é codificada por meio de um bloco descritor snpp.
[070] Em outro aspecto, as informações sobre o tipo de substituições são codificadas por meio de um bloco descritor snpt específico.
[071] Num outro aspecto, a informação sobre a posição de desemparelhamentos de substituições, inserções ou deleções de tipo é codificada por meio de um bloco descritor indp.
Petição 870190075603, de 06/08/2019, pág. 130/387
14/68 [072] Num outro aspecto, a informação sobre o tipo de desemparelhamentos, tais como substituições, inserções ou deleções, é codificada por meio de um bloco descritor de indt.
[073] Em outro aspecto, a informação sobre bases cortadas de uma leitura mapeada é codificada por meio de um bloco de descritor indo.
[074] Em outro aspecto, as informações sobre leituras não mapeadas são codificadas por meio de um bloco de descritores ureads.
[075] Num outro aspecto, a informação sobre o tipo de sequência de referência utilizada para codificação é codificada por meio de um bloco descritor de tipo.
[076] Em outro aspecto, as informações sobre múltiplos alinhamentos das leituras mapeadas são codificadas por meio de um bloco descritor mmap.
[077] Em outro aspecto, as informações sobre alinhamentos combinados e múltiplos alinhamentos da mesma leitura são codificadas por meio de um descritor msar e um bloco descritor mmap.
[078] Num outro aspecto, a informação sobre pontuações de alinhamento de leitura é codificada por meio de um bloco descritor mscore.
[079] Em outro aspecto, as informações sobre as leituras dos grupos pertencem a elas são codificadas por meio de um bloco descritor rgroup específico.
[080] Num outro aspecto, o método de codificação compreende ainda que os referidos blocos de descritores compreendem uma tabela de índices mestre, contendo uma seção para cada Classe e subclasse de leituras alinhadas, compreendendo a referida seção as posições de mapeamento na referida uma ou mais sequências de referência da primeira leitura de cada Unidade de Acesso de cada Classe ou subclasse de dados; codificação conjunta da referida tabela de índice principal e dos referidos dados da unidade de acesso.
[081] Num outro aspecto, o método de codificação compreende ainda que os referidos blocos de descritores compreendem ainda informação relacionada com o tipo de referência utilizada (pré-existente ou construída) e os segmentos da leitura que não correspondem à sequência de referência.
Petição 870190075603, de 06/08/2019, pág. 131/387
15/68 [082] Num outro aspecto, o método de codificação compreende ainda que as referidas sequências de referência sejam primeiro transformadas em diferentes sequências de referência aplicando substituições, inserções, deleções e cortes, sendo depois a codificação das referidas leituras alinhadas classificada como uma multiplicidade de blocos de descritores que se refere às sequências de referência transformadas.
[083] Num outro aspecto, o método de codificação compreende ainda que a mesma transformação é aplicada às sequências de referência para todas as classes de dados.
[084] Num outro aspecto, o método de codificação compreende ainda que diferentes transformações são aplicadas às sequências de referência por cada classe de dados.
[085] Num outro aspecto, o método de codificação compreende ainda que as transformações de sequências de referência são codificadas como blocos de descritores e estruturadas com informação de cabeçalho, criando assim Unidades de Acesso sucessivas.
[086] Num outro aspecto, o método de codificação compreende ainda que a codificação das referidas leituras alinhadas classificadas e as transformações de sequências de referência relacionadas como multiplicidade de blocos de descritores compreende o passo de associar um modelo de fonte específico e um codificador de entropia específica a cada bloco de descritores.
[087] Num outro aspecto, o método de codificação compreende ainda que o referido codificador de entropia é um de um codificador aritmético adaptativo de contexto, um codificador de comprimento variável ou um codificador de golomb.
[088] A presente invenção proporciona ainda um método para descodificar dados genômicos codificados compreendendo as etapas de:
analisar Unidades de Acesso contendo os dados genômicos codificados para extrair vários blocos de descritores empregando informações de cabeçalho,
Petição 870190075603, de 06/08/2019, pág. 132/387
16/68 decodificar a referida multiplicidade de blocos de descritores para extrair leituras alinhadas de acordo com regras de correspondência específicas que definem a sua classificação em relação a uma ou mais sequências de referência. [089] Num outro aspecto, o método de descodificação compreende ainda a descodificação de leituras genômicas não mapeadas.
[090] Em outro aspecto, o método de decodificação compreende ainda a decodificação de leituras genômicas classificadas.
[091] Num outro aspecto, o método de descodificação compreende ainda a descodificação de uma tabela de índice principal contendo uma seção para cada classe de leituras e as posições de mapeamento relevantes associadas.
[092] Num outro aspecto, o método de descodificação compreende ainda informação de descodificação relacionada com o tipo de referência utilizada: preexistente, transformada ou construída.
[093] Num outro aspecto, o método de descodificação compreende ainda informação de descodificação relacionada com uma ou mais transformações a serem aplicadas às sequências de referência pré-existentes.
[094] Num outro aspecto, o método de descodificação compreende ainda leituras genômicas que estão emparelhadas.
[095] Num outro aspecto, o método de descodificação compreende ainda o caso em que os referidos dados genômicos são descodificados por entropia.
[096] A presente invenção proporciona ainda um codificador genômico (2010) para a compressão de dados da sequência do genoma 209, os dados da sequência do genoma 209 compreendendo leituras de sequências de nucleotídeos, o referido codificador genômico (2010) compreendendo:
uma unidade de alinhamento (201), configurada para alinhar as referidas leituras a uma ou mais sequências de referência, criando assim leituras alinhadas, uma unidade geradora de referência construída (202), configurada para produzir sequências de referência construídas, uma unidade de classificação de dados (204), configurada para classificar as referidas leituras alinhadas de acordo com as regras de correspondência
Petição 870190075603, de 06/08/2019, pág. 133/387
17/68 especificadas com uma ou mais sequências de referência pré-existentes ou sequências de referência construídas, criando assim classes de leituras alinhadas (208);
uma ou mais unidades de codificação de blocos (205-207), configuradas para codificar as referidas leituras alinhadas classificadas como blocos de descritores selecionando os referidos descritores de acordo com as referidas classes de leituras alinhadas;
um multiplexador (2016) para multiplexer os dados genômicos e metadados comprimidos.
[097] Em outro aspecto, o codificador genômico compreende uma unidade de transformação de sequência de referência (2019) configurada para transformar as referências e classes de dados preexistentes (208) em classes de dados transformadas (2018).
[098] Em outro aspecto, o codificador genômico compreende uma unidade de classificação de dados (204) contém codificadores de classes de dados N, M e I configurados com vetores de limites gerando subclasses de classes de dados N, M e I.
[099] Em outro aspecto, o codificador genômico compreende ainda o recurso que a unidade de transformação de referência (2019) aplica a mesma transformação de referência (300) para todas as classes e subclasses de dados.
[100] Em outro aspecto, o codificador genômico compreende ainda a característica de que o decodificador de transformação de referência (2019) aplica diferentes transformações de referência (301, 302, 303) para as diferentes classes e subclasses de dados.
[101] Num outro aspecto, o codificador genômico compreende ainda as características adequadas para executar todos os aspectos dos modos de codificação mencionados anteriormente.
[102] A presente invenção proporciona ainda um decodificador genômico (218) para a descompressão de uma corrente genômica comprimida (211) do referido decodificador genômico (218) compreendendo:
Petição 870190075603, de 06/08/2019, pág. 134/387
18/68 um demultiplexador (210) para desmultiplexar dados genômicos e metadados comprimidos, meios de análise (212-214) configurados para analisar a referida corrente genômica comprimida em blocos genômicos de descritores (215), um ou mais decodificadores de bloco (216-217), configurados para decodificar os blocos genômicos em leituras classificadas de sequências de nucleotideos (2111), decodificadores de classes de dados genômicos (219) configurados para decodificar seletivamente as referidas leituras classificadas de sequências de nucleotideos numa ou mais sequências de referência, de modo a produzir leituras não comprimidas de sequências de nucleotideos.
[103] Num outro aspecto, o decodificador genômico compreende ainda um decodificador de transformação de referência (2113) configurado para descodificar descritores de transformação de referência (2112) e produzir uma referência transformada (2114) a ser utilizada por decodificadores da classe de dados genômicos (219).
[104] Num outro aspecto, o decodificador genômico compreende ainda que uma ou mais sequências de referência são armazenadas no fluxo de genoma comprimido (211).
[105] Num outro aspecto, o decodificador genômico compreende ainda que uma ou mais sequências de referência são fornecidas ao decodificador através de um mecanismo fora de banda.
[106] Num outro aspecto, o decodificador genômico compreende ainda que uma ou mais sequências de referência são construídas no decodificador.
[107] Num outro aspecto, o decodificador genômico compreende ainda que uma ou mais sequências de referência s transformadas no decodificador por um decodificador de transformação de referência (2113).
[108] A presente invenção proporciona ainda um meio legível por computador compreendendo instruções que, quando executadas, fazem com que pelo menos
Petição 870190075603, de 06/08/2019, pág. 135/387
19/68 um processador execute todos os aspectos dos métodos de codificação mencionados anteriormente.
[109] A presente invenção proporciona ainda um meio legível por computador compreendendo instruções que, quando executadas, fazem com que pelo menos um processador realize todos os aspectos dos métodos de descod if icação anteriormente mencionados.
[110] A presente invenção proporciona ainda dados de suporte que armazenam codificação genômica de acordo com o desempenho de todos os aspectos dos métodos de codificação anteriormente mencionados.
DESCRIÇÃO DETALHADA DA INVEÇÃO [111] As sequências genômicas ou proteômicas referidas na presente invenção incluem, por exemplo, e não como limitação, sequências nucleotídicas, sequências de ácido desoximbonucleico (DNA), ácido ribonucleico (RNA) e sequências de aminoácidos. Embora a descrição aqui seja em detalhes consideráveis com relação à informação genômica na forma de uma sequência de nucleotideos, será entendido que os métodos e sistemas para compressão podem ser implementados também para outras sequências genômicas ou proteômicas, embora com algumas variações, como será entendido por um técnico no assunto.
[112] A informação de sequenciamento do genoma é gerada por máquinas de High Throughput Sequencing (HTS) na forma de sequências de nucleotideos (i.e. bases) representadas por sequências de letras de um vocabulário definido. O menor vocabulário é representado por cinco símbolos: {A, C, G, T, N} representando os 4 tipos de nucleotideos presentes no DNA: adenina, citosina, guanina e timina. Em RNA, timina é substituída por uracila (U). N indica que a máquina de sequenciamento não foi capaz de chamar qualquer base e, portanto, a natureza real da posição é indeterminada. Caso os códigos de ambiguidade da IUPAC sejam adotados pela máquina sequenciadora, o alfabeto usado para os símbolos é (A, C, G, T, U, W, S, Μ, K, R, Y, B, D, Η, V, N ou -).
Petição 870190075603, de 06/08/2019, pág. 136/387
20/68 [113] As sequências de nucleotídeos produzidas por máquinas de sequenciamento são chamadas de leituras. As leituras de sequência podem ter entre algumas dezenas e milhares de nucleotídeos de comprimento. Algumas tecnologias produzem leituras sequenciais em pares, onde uma leitura é de uma cadeia de DNA e a segunda é da outra. No sequenciamento do genoma, o termo “cobertura é usado para expressar o nível de redundância dos dados da sequência em relação a uma sequência de referência. Por exemplo, para alcançar uma cobertura de 30x em um genoma humano (3,2 bilhões de bases), uma máquina de sequenciamento deverá produzir um total de 30 x 3,2 bilhões de bases para que, em média, cada posição na referência seja “coberta 30 vezes.
[114] Ao longo desta invenção, uma sequência de referência é qualquer sequência na qual as sequências de nucleotídeos produzidas pelas máquinas de sequenciação são alinhadas / mapeadas. Um exemplo de sequência podería ser, na verdade, um genoma de referência, uma sequência reunida por cientistas como um exemplo representativo do conjunto de genes de uma espécie. Por exemplo, GRCh37, o genoma humano do Consórcio de Referência do Genoma (build 37) é derivado de treze voluntários anônimos de Buffalo, Nova York. No entanto, uma sequência de referência também pode consistir numa sequência sintética concebida e construída para apenas melhorar a compressibilidade das leituras tendo em vista o seu processamento posterior. Isto é descrito em mais detalhes na seção Descriptors of Class U and construction of an “internal” references for unmapped reads of “Class U” and “Class HM” e representadas na figura 22 e 23.
[115] Os dispositivos de sequenciamento podem introduzir erros nas leituras de sequência, como:
1. a decisão de pular uma chamada de base devido à falta de confiança em chamar qualquer base específica. Isso é chamado de base desconhecida e rotulado como N (denotado como incompatibilidade de tipo n);
2. o uso de um símbolo errado (ou seja, representando um ácido nucleico diferente) para representar o ácido nucleico realmente presente na amostra
Petição 870190075603, de 06/08/2019, pág. 137/387
21/68 sequenciada; isso é geralmente chamado de erro de substituição (denotado como incompatibilidade de tipo s”);
3. a inserção em uma sequência de símbolos adicionais que não se referem a nenhum ácido nucleico realmente presente; isso é geralmente chamado de erro de inserção (denotado como incompatibilidade de tipo i”);
4. a deleção de uma sequência lida de símbolos que representam ácidos nucleicos que estão realmente presentes na amostra sequenciada; isso geralmente é chamado de erro de exclusão (denotado como incompatibilidade de tipo d”);
5. a recombinação de um ou mais fragmentos em um único fragmento que não reflete a realidade da sequência de origem; isso geralmente resulta na decisão dos alinhadores de recortar bases (denotadas como incompatibilidade de tipo c).
[116] O termo “cobertura é usado na literatura para quantificar até que ponto um genoma de referência ou parte dele pode ser coberto pelas leituras de sequência disponíveis. Diz-se que a cobertura é:
- parcial (menor que 1X) quando algumas partes do genoma de referência não são mapeadas por qualquer sequência disponível lida;
- simples (1X) quando todos os nucleotideos do genoma de referência são mapeados por um e apenas um símbolo presente nas leituras da sequência;
- múltipla (2X, 3X, NX) quando cada nucleotídeo do genoma de referência é mapeado várias vezes.
[117] Esta invenção visa definir um formato de representação de informação genômica no qual a informação relevante é eficientemente acessível e transportável e o peso da informação redundante é reduzido.
[118] Os principais aspectos inovadores da invenção divulgada são os seguintes:
1. As leituras de sequência são classificadas e particionadas em classes de dados de acordo com os resultados do alinhamento em relação às sequências de referência. Essa classificação e particionamento permitem o acesso seletivo aos
Petição 870190075603, de 06/08/2019, pág. 138/387
22/68 dados codificados de acordo com os critérios relacionados aos resultados do alinhamento e à precisão da correspondência.
2. A sequência classificada lê e os metadados associados são representados por blocos homogêneos de descritores para obter fontes de informação distintas caracterizadas por uma baixa entropia de informação.
3. A possibilidade de modelar cada fonte de informação separada com modelo de fonte distinto adaptado às características estatísticas de cada classe e a possibilidade de alterar o modelo de origem dentro de cada classe de leituras e dentro de cada bloco descritor para unidades de acesso acessíveis separadamente (Unidades de Acesso). A adoção dos modelos adequados de probabilidade adaptativa de contexto e codificadores de entropia associados de acordo com as propriedades estatísticas de cada modelo de fonte.
4. A definição de correspondências e dependências entre os blocos de descritores para permitir o acesso seletivo aos dados de sequenciamento e metadados associados sem a necessidade de decodificar todos os blocos de descritores, se não todas as informações, é necessária.
5. A codificação de cada uma das classes de dados de sequência e blocos de metadados associados com respeito a sequências de referência pré-existente (também denotada como externa) ou no que diz respeito a sequências de referência “transformadas obtidas pela aplicação de transformações apropriadas de sequências de referência “pré-existente de modo a reduzir a entropia dos descritores bloqueia as fontes de informação. Os referidos descritores representam as leituras particionadas nas diferentes classes de dados. Seguindo qualquer codificação de leituras utilizando os descritores correspondentes com referência a uma sequências de referência “pré-existente ou sequências de referência “transformada pré-existente, a ocorrência dos vários os emparelhamentos errados podem ser utilizadas para definir as transformações adequadas para as sequências de referência para encontrar uma representação codificada final com baixa entropia e obter maior eficiência de compactação.
Petição 870190075603, de 06/08/2019, pág. 139/387
23/68
6. A construção de uma ou mais sequências de referência (também referidos como “internas para distinguir a partir da sequências de referência préexistente, também referida aqui como sequências de referência externas) utilizadas para codificar a classe de leituras que apresentam um grau de precisão correspondentes em relação às sequências de referência pré-existentes que não satisfazem um conjunto de restrições. Tais restrições são definidas com o objetivo de que os custos de codificação de representar, em forma comprimida a classe de leituras alinhados no que diz respeito às sequências de referência “internas e o custo de representar as sequências de referência “internas é menor do que codifica a classe de leitura desalinhada textualmente, ou utilizando sequências de referência “externas sem ou com transformações.
[119] A seguir, cada um dos aspectos acima será descrito em detalhes. Classificação da sequência de leitura de acordo com regras de correspondência [120] A sequência de leitura gerada pelas máquinas de sequenciação são classificadas pela invenção revelada em seis diferentes “classes de acordo com os resultados correspondentes do alinhamento em relação a um ou mais sequências de referência “pré-existentes de referência.
[121] Ao alinhar uma sequência de nucleotídeos de DNA em relação a uma sequência de referência, os seguintes casos podem ser identificados:
1. Uma região na sequência de referência é encontrada para coincidir com a sequência de leitura sem qualquer erro (ou seja, mapeamento perfeito). Essa sequência de nucleotídeos é referenciada como leitura perfeitamente correspondente ou denotada como Classe P”.
2. Verifica-se que uma região na sequência de referência coincide com a sequência lida com um tipo e um número de desemparelhamentos determinado apenas pelo número de posições em que a máquina de sequenciação que gera a leitura não foi capaz de chamar qualquer base (ou nucleotídeo). Esse tipo de incompatibilidade é denotado por um N, a letra usada para indicar uma base de nucleotídeos indefinida. Neste documento, esse tipo de incompatibilidade é chamado de incompatibilidade de tipo n. Essas sequências pertencem às
Petição 870190075603, de 06/08/2019, pág. 140/387
24/68 leituras de Classe N. Uma vez que a leitura é classificada como pertencente à Classe N, é útil limitar o grau de imprecisão de correspondência a um determinado limite superior e estabelecer um limite entre o que é considerado uma correspondência válida e o que não é. Portanto, as leituras atribuídas à Classe N também são restringidas pela configuração de um limite (MAXN) que define o número máximo de bases indefinidas (isto é, bases chamadas como N) que uma leitura pode conter. Essa classificação define implicitamente a precisão mínima correspondente (ou o grau máximo de incompatibilidade) de que todas as leituras pertencentes à participação da Classe N se referem à sequência de referência correspondente, que constitui um critério útil para aplicar pesquisas de dados seletivas aos dados compactados.
3. Constata-se que uma região na sequência de referência corresponde à sequência lida com tipos e número de desemparelhamentos determinados pelo número de posições em que a máquina de sequenciamento que gera a leitura não foi capaz de chamar qualquer base de nucleotídeo, se presente (isto é, tipo n” de incompatibilidade), mais o número de incompatibilidades em que uma base diferente, do que a presente na referência, foi chamada. Esse tipo de incompatibilidade denotado como “substituição também é chamado de Variação Nucleotídica Única (SNV) ou Polimorfismo de Nucleotídeo Único (SNP - Single Nucleotide Polymorphism). Neste documento, esse tipo de incompatibilidade também é chamado de incompatibilidade do tipo s. A sequência lida é então referenciada como M leituras não correspondentes” e atribuída à Classe M. Como no caso da Classe N, também para todas as leituras pertencentes à Classe M” é útil limitar o grau de imprecisão de correspondência a um determinado limite superior e estabelecer um limite entre o que é considerado uma correspondência válida e o que é não é. Portanto, as leituras atribuídas à Classe M também são restritas definindo um conjunto de limites, um para o número “n de incompatibilidades de tipo n” (MAXN) se presente, e outro para o número de substituições “s (MAXS). Uma terceira restrição é um limite definido por qualquer função dos números “n e s, f(n, s). Essa terceira restrição permite
Petição 870190075603, de 06/08/2019, pág. 141/387
25/68 gerar classes com um limite superior de imprecisão de correspondência de acordo com qualquer critério de acesso seletivo significativo. Por exemplo, e não como limitação, f (n, s) pode ser (n + s) 1/2 ou (n + s) ou qualquer expressão linear ou não linear que defina um limite com o nível máximo de imprecisão correspondente é admitido para uma leitura pertencente à Classe M. Tal limite constitui um critério muito úteis para aplicar as buscas de dados seletiva desejada para os dados comprimidos ao analisar sequência lê para vários fins, uma vez que toma possível definir uma nova fronteira de qualquer combinação possível do número de tipo N erros de emparelhamento e “tipo s” de incompatibilidades (substituições) além do limite simples aplicado a um tipo ou ao outro.
4. Uma quarta classe é constituída por leituras de sequenciamento apresentando pelo menos uma incompatibilidade de qualquer tipo entre inserção, “deleção (i.e. indels) e recortada, mais, se presente, qualquer tipo de incompatibilidade pertencente à classe N ou M. são referidos como leituras incompatíveis” e atribuídas a uma Classe I. As inserções são constituídas por uma sequência adicional de um ou mais nucleotídeos não presentes na referência, mas presentes na sequência lida. Neste documento, esse tipo de incompatibilidade é chamado de incompatibilidade “tipo i. Na literatura, quando a sequência inserida é nas bordas da sequência que é também referido como suave cortado” (isto é, os nucleotídeos não são correspondentes a referência mas são mantidas na leitura alinhada ao contrário de nucleotídeos duro cortados que são rejeitados). Neste documento, esse tipo de incompatibilidade é chamado de incompatibilidade de tipo c. Manter ou descartar nucleotídeos é uma decisão tomada pelo estágio de alinhamento e não pelo classificador de leituras divulgadas nesta invenção que recebe e processa as leituras conforme elas são determinadas pela máquina de sequenciamento ou pelo estágio de alinhamento a seguir. Deleção são “buracos (falta de nucleotídeos) na leitura em relação à referência. Neste documento, esse tipo de incompatibilidade é chamado de incompatibilidade de tipo d. Como no caso das classes N e M, é possível e apropriado definir um limite para a imprecisão correspondente. A definição do
Petição 870190075603, de 06/08/2019, pág. 142/387
26/68 conjunto de restrições para Classe I” é baseada nos mesmos princípios usados para Classe M” e é reportada na Tabela 1 nas últimas linhas da tabela. Além de um limite para cada tipo de incompatibilidade admissível para dados de Classe I, uma restrição adicional é definida por um limite determinado por qualquer função do número de discordâncias n, s, d, “i e c, W (n, s, d, i, c). Tal restrição adicional possibilita gerar classes com um limite superior de imprecisão de correspondência de acordo com qualquer critério de acesso seletivo definido pelo usuário significativo. Por exemplo, e não como limitação, w (n, s, d, i, c) pode ser (n + s + d + i + c) 1/5 ou (n + s + d + i + c) ou qualquer expressão linear ou não linear que defina um limite para o nível máximo de imprecisão correspondente admitido para uma leitura pertencente à Classe I. Tal limite constitui um critério muito útil para aplicar as pesquisas de dados seletivos desejados para os dados comprimidos ao analisar sequência lê para diversos fins, pois permite definir um novo limite para qualquer combinação possível do número de incompatibilidades admissíveis em uma leitura de Classe I além o limite simples aplicado a cada tipo de divergência admissível.
5. Uma quinta classe inclui todas as leituras que não encontram nenhum mapeamento considerado válido (ou seja, não satisfazendo o conjunto de regras de correspondência que definem um limite superior à imprecisão máxima correspondente, conforme especificado na Tabela 1) para cada classe de dados quando se referem à sequência de referência. Essas sequências são chamadas de Não mapeadas” quando se referem às sequências de referência e são classificadas como pertencentes à Classe U.
Classificação de pares de leitura de acordo com regras de correspondência [122] A classificação especificada na seção anterior refere-se a leituras de sequência única. No caso de tecnologias de sequenciamento que geram leitura em pares (ou seja, Illumina Inc.) em que duas leituras são conhecidas por serem separadas por uma sequência desconhecida de comprimento variável, é apropriado considerar a classificação do par inteiro para uma única classe de dados. Uma leitura que é acoplada a outra é dita como sua companheira.
Petição 870190075603, de 06/08/2019, pág. 143/387
27/68 [123] Se ambas as leituras pareadas pertencerem à mesma classe, a atribuição a uma classe do par inteiro é óbvia: o par inteiro é atribuído à mesma classe para qualquer classe (por exemplo, P, N, Μ, I, II). No caso em que as duas leituras pertencem a uma classe diferente, mas nenhuma delas pertence à Classe II, o par inteiro é atribuído à classe com a prioridade mais alta definida de acordo com a seguinte expressão:
P < N < Μ < I em que Classe P” tem a prioridade mais baixa e Classe I” tem a prioridade mais alta.
[124] No caso de apenas uma das leituras pertencer à Classe II” e sua correspondência a qualquer uma das Classes P, N, Μ, I, uma sexta classe é definida como Classe HM, que significa Half Mapped”.
[125] A definição dessa classe específica de leituras é motivada pelo fato de que é usada para tentar determinar lacunas ou regiões desconhecidas existentes em genomas de referência (também conhecidas como regiões pouco conhecidas ou desconhecidas). Essas regiões são reconstruídas por pares de mapeamento nas bordas usando o par lido que pode ser mapeado nas regiões conhecidas. O mate não mapeado é então usado para construir os chamados “contigs da região desconhecida, conforme mostrado na Figura 28. Portanto, fornecer um acesso seletivo somente a esse tipo de pares de leitura reduz enormemente a carga computacional associada, permitindo um processamento muito eficiente de tais dados originados por grandes quantidades de conjuntos de dados que, usando as soluções de última geração, precisariam ser totalmente inspecionados.
[126] A tabela abaixo resume as regras de correspondência aplicadas às leituras para definir a classe de dados a que cada leitura pertence. As regras são definidas nas cinco primeiras colunas da tabela em termos de presença ou ausência de tipos de incompatibilidade (diferenças de tipo n, s, d, i e c). A sexta coluna fornece regras em termos de limite máximo para cada tipo de incompatibilidade e qualquer função f (n, s) e w ( n, s, d, i, c) dos possíveis tipos de incompatibilidade.
Petição 870190075603, de 06/08/2019, pág. 144/387
28/68
Tabela 1. 0 tipo de discordâncias e o conjunto de restrições que cada sequência lê deve satisfazer para ser classificado nas classes de dados definidas nesta invenção da invenção.
Numero e tipos de discordância encontrados quando se alinha uma leitura com uma sequencia de referencia Conjunto de restrições de precisão de alinhamento Classe de alinhamento
No. de bases desconhe cidas (“N”) No. de substituicoe s No. de deleções No. de insercoe s No. de bases clip
0 0 0 0 0 0 P
n > 0 0 0 0 0 n < MAXN N
n > MAXN U
n > 0 s > 0 0 0 0 n < MAXN e s < MAXS e f(n,s) < MAXM M
n > MAXN ou s > MAXS ou f(n,s) > MAXM U
n > 0 s > 0 d>0* i > 0* c > 0* n < MAXN e s < MAXS e d <MAXDe i < MAXI e c < MAXC w(n,s,d,i,c) < MAXTOT 1
*pelo menos uma discordância de tipo d, i, c precisa estar presente (i.e. d>0 or i>0 or c>0)
d > 0 i > 0 c > 0 n > MAXN ou s > MAXS ou d > MAXD ou i > MAXI ou c > MAXC w(n,s,d,i,c) > MAXTOT U
Partição de regras correspondentes de dados de leitura de sequência Classes N, M e I em subclasses com diferentes graus de precisão de correspondência [127] As classes de dados do tipo N, M e I, conforme definido nas seções anteriores, podem ser ainda mais decompostas em um número arbitrário de subclasses distintas com diferentes graus de precisão de correspondência. Essa
Petição 870190075603, de 06/08/2019, pág. 145/387
29/68 opção é uma vantagem técnica importante em fornecer uma granularidade mais fina e, como consequência, um acesso seletivo muito mais eficiente a cada classe de dados. Como um exemplo e não como uma limitação, a partição da classe N para um número k de subclasses (Sub-classes Ni,..., Sub-classe Nk) que é necessário para definir um vetor com os componentes correspondentes MAXN-i, MAXN2, ..., MAXN^.i), MAXN^), com a condição de que MAXNi < MAXN2 < ... < MAXN(k_i) < MAXN e atribua cada leitura à subclasse de classificação mais baixa que satisfaça restrições especificadas na Tabela 1 quando avaliadas para cada elemento do vetor. Isto é mostrado na Figura 29, onde uma unidade 291 de classificação de dados contém codificadores e codificadores de Classe P, N, Μ, I, U, HM para anotações e metadados. O codificador de classe N é configurado com um vetor de limites, MAXNi a MAXNk 292, que gera k subclasses de N dados (296).
[128] No caso das classes do tipo M e I, o mesmo princípio é aplicado definindo um vetor com as mesmas propriedades para MAXM e MAXTOT, respectivamente, e usa cada componente do vetor como limite para verificar se as funções f (n, s) e w ( n, s, d, I, c) satisfazem a restrição. Como no caso de subclasses do tipo N, a atribuição é dada à subclasse mais baixa para a qual a restrição é satisfeita. O número de subclasses para cada tipo de classe é independente e qualquer combinação de subdivisões é admissível. Isto é mostrado na figura 29, em que um codificador 293 de Classe M e um codificador 294 de Classe I são configurados, respectivamente, com um vetor de limites MAXMi a MAXMj e MAXTOTi a MAXTOTh. Os dois codificadores geram respectivamente j subclasses de dados M (297) e h subclasses de dados I (298).
[129] Quando duas leituras de um par são classificadas na mesma subclasse, o par pertence à mesma subclasse.
[130] Quando duas leituras em um par são classificadas em subclasses de classes diferentes, o par pertence à subclasse da classe de prioridade mais alta, de acordo com a seguinte expressão:
N < Μ < I
Petição 870190075603, de 06/08/2019, pág. 146/387
30/68 onde N tem a prioridade mais baixa e eu tenho a maior prioridade.
[131] Quando duas leituras pertencem a diferentes subclasses de uma das classes N ou M ou I, o par pertence à subclasse com a maior prioridade, de acordo com as seguintes expressões:
Ni < N2 < ... < Nk
Mi < M2< ... < Mj li < l2 < < Ih onde o índice mais alto tem a prioridade mais alta. Transformações das sequências de referência externas [132] Os desemparelhamentos encontrados para leituras classificadas nas classes de n, m e I podem ser utilizados para criar referências “transformadas a serem usadas para comprimir de forma mais eficiente a representação de leitura.
[133] Leituras classificadas como pertencendo às Classes de N, M ou I (em relação à sequência de referência pré-existente (ou seja, “externa, denotada como RSo) pode ser codificada com respeito às sequência de referência “transformadas RSi de acordo para a ocorrência dos erros de emparelhamento reais com a referência transformada. Por exemplo, se leituraMim pertencentes à classe M (denotado como a i ésima leitura da classe M) contendo desemparelhamentos com respeito à sequência de referência RSn, em seguida, depois de “transformação leituraHim = leituraPj (n + υ pode ser obtida com A (Refn) = Ref n + 1 onde A é a transformação da sequência de referência RS n para a sequência de referência RSn +1.
[134] A Figura 19 mostra um exemplo de como as leituras contendo incompatibilidades (pertencentes à Classe M) em relação à sequência de referência 1 (RSi) podem ser transformadas em leituras perfeitamente correspondentes em relação à sequência de referência 2 (RS2) obtida da RSi modificando as bases correspondentes às posições de incompatibilidade. Eles permanecem classificados e são codificados juntos com as outras leituras na mesma unidade de acesso de classe de dados, mas a codificação é feita usando
Petição 870190075603, de 06/08/2019, pág. 147/387
31/68 apenas os descritores e os valores do descritor necessários para uma leitura de Classe P. Essa transformação pode ser denotada como:
RS 2 = A(RSi) [135] Quando a representação da transformação A que gera RS2 quando aplicada a RS1 mais a representação das leituras versus RS2 corresponde a uma entropia mais baixa que a representação das leituras da classe M versus RSi. é vantajoso transmitir a representação da transformação a e a representação correspondente da leitura versus RS2 porque uma maior compressão da representação de dados é conseguida.
[136] A codificação da transformação A para transmissão no fluxo de bits compactado requer a definição de dois descritores adicionais, conforme definido na tabela abaixo.
Descritores Semântica Comentários
rftp Posição de transformação de referencia Posição da diferença entre a referencia e contig usados para predição
rftt Tipo de transformação de referencia Tipo da diferença entre a referencia e contig usados para predição. A mesma sintaxe descrita para o descritor mmtype definido aqui, mais abaixo.
[137] A Figura 26 mostra um exemplo de como uma transformação de referência é aplicada para reduzir o número de incompatibilidades a serem codificadas nas leituras mapeadas.
[138] Deve-se observar que, em alguns casos, a transformação se aplica à referência:
- Pode introduzir incompatibilidades nas representações das leituras que não estavam presentes ao se referir à referência antes de aplicar a transformação.
- Pode modificar os tipos de incompatibilidade, uma leitura pode conter A em vez de G enquanto todas as outras leituras contêm C em vez de G), mas as incompatibilidades permanecem na mesma posição.
- Diferentes classes de dados e subconjuntos de dados de cada uma das classes de dados podem referir-se ás mesmas sequências de referência
Petição 870190075603, de 06/08/2019, pág. 148/387
32/68 transformadas ou para fazer referência a sequências obtidas através da aplicação de diferentes transformações para a mesma sequência de referência pré-existente.
[139] A Figura 27 mostra ainda um exemplo de como as leituras podem alterar o tipo de codificação de uma classe de dados para outra por meio do conjunto apropriado de descritores (por exemplo, usando os descritores de uma Classe P para codificar uma leitura da Classe M) após uma transformação de referência é aplicada e a leitura é representada usando a referência transformada. Isto ocorre por exemplo quando a transformação muda todas as bases correspondentes aos desfasamentos de uma leitura nas bases, na verdade, presente na leitura, assim, praticamente transformar uma leitura pertencentes à classe H (quando se refere à sequência de referência não de origem “transformada) numa leitura virtual da Classe P (quando se refere à referência transformada). A definição do conjunto de descritores usados para cada classe de dados é fornecida nas seções a seguir.
[140] A Figura 30 mostra como as diferentes classes de dados pode utilizar o mesmo transformada de referência Ri = Ao (Ro) (300) para voltar a codificar a leitura, ou diferentes transformações AN (301), AH (302), Ai (303) podem ser aplicadas separadamente a cada classe de dados.
Definição das informações necessárias para representar as sequências lidas em blocos de descritores [141] Uma vez que a classificação de leituras é completada com a definição das Classes, o processamento adicional consiste em definir um conjunto de descritores distintos que representam a informação restante permitindo a reconstrução da sequência lida quando representada como sendo mapeada em uma dada sequência de referência. A estrutura de dados desses descritores requer o armazenamento de parâmetros globais e metadados a serem usados pelo mecanismo de decodificação. Esses dados são estruturados em um Cabeçalho do Conjunto de Dados do Genoma descrito na tabela abaixo. Um conjunto de dados é definido como o conjunto de elementos de codificação
Petição 870190075603, de 06/08/2019, pág. 149/387
33/68 necessários para reconstruir as informações genômicas relacionadas a uma única execução de sequenciamento genômico e todas as análises a seguir. Se a mesma amostra genômica for sequenciada duas vezes em duas execuções distintas, os dados obtidos serão codificados em dois conjuntos de dados distintos.
Tabela 1 - Estrutura do Cabeçalho do Conjunto de Dados Genômico.
Elemento Tipo Descrição
Unique ID Seq. Byte Identificador único para o conteúdo codificado
Major_Brand Seq. Byte Versão maior + minor do algoritmo de codificação
Minor_Version Seq. Byte
Header Size Inteiro Tamanho, em bytes, do conteúdo total codificado
Reads Length Inteiro Tamanho de leituras, no caso de comprimentos de leituras constantes. Um valor especial (e.g. 0) corresponde a leituras de comprimento variável
Ref count Inteiro Número de sequências de referencia usadas
Access Units counters Seq. Byte (e.g. Inteiro) Número total de Unidades de Acesso codificadas por sequencia de
Petição 870190075603, de 06/08/2019, pág. 150/387
34/68
referencia
Ref ids Seq. Byte Identificador único para sequências de referencia
for (i=0; i<Ref_count; i++) {
Reference_genome:Ref_ID string:string ID não ambígua, como sequencia de caracteres, iidentificando as sequências de referencia usadas no Dataset
}
for (i=0; i<Ref_count; i++) {
Ref blocks Seq. Byte Número de blocos codificados por referencia
}
Dataset label size Inteiro Tamanho do elemento a seguir
Dataset label String Sequencia de caracteres usada para identificar o dataset
Dataset type Inteiro Tipo de dados codificados dataset (e.g. alinhado ou não alinhado)
Master index table Posições de alinhamento na primeira leitura de cada bloco (Unidades de Acesso). I.e. menor posição da primeira leitura no genoma Seq. Byte Sequencia multidimensional que permite acesso aleatório a Unidades
Petição 870190075603, de 06/08/2019, pág. 151/387
35/68
de referencia por cada bloco de seis classes, 1 por classe pos (seis) por referencia de Acesso
Label List Sub-parte da leitura principal indicando • número de Labeis • para cada Labei: o o Label ID o o número de sequências de referencia relativas ao labei o para cada sequencia de referencia o reference identifier o número de regiões cobertas pelo labei, para cada região: • o class ID • a posição de começo na faixa do genoma • a posição de fim na faixa do genoma As posições de começo e fim podem ser trocadas por “block numbers”, formando, junto com a sequence ID e class ID, um vetor tridimensional que acessa as coordenadas da Master Index Table. Seq. Byte Lista de Labeis, cada um representado como uma sequencia multidimensional para permitir acesso seletivo a regiões genéticas ou subregioes ou agregados de regiões ou subregiões.
Conjunto de parâmetros Seq. Byte Parâmetros de codificação usados para configurar o processo de codificação enviados para o decodificador
[142] Uma sequência lida (isto é, um segmento de DNA) referente a uma dada sequência de referência pode ser totalmente expressa por:
- A posição inicial na sequência de referência (pos)
Petição 870190075603, de 06/08/2019, pág. 152/387
36/68
- Um sinalizador sinalizando se a leitura deve ser considerada como um complemento reverso versus a referência (rcomp).
- Uma distância, para o par de pareamento em caso de leituras pareadas (par).
- O valor do comprimento de leitura no caso da tecnologia de sequenciamento produz leituras de comprimento variável (len). No caso do comprimento de leituras constantes, o comprimento de leitura associado a cada leitura pode obviamente ser omitido e pode ser armazenado no cabeçalho do arquivo principal.
- Para cada incompatibilidade:
- posição de incompatibilidade ( nmis para classe N, snpp para classe M e indp para classe I)
- tipo de incompatibilidade (não presente na classe N, snpt na classe M, indt na classe I)
- Sinalizadores indicando características específicas da sequência lidas como:
- modelo com vários segmentos no sequenciamento
- cada segmento devidamente alinhado de acordo com o alinhador
- segmento não mapeado
- próximo segmento no modelo não mapeado
- sinalização do primeiro ou último segmento
- falha no controle de qualidade
- PCR ou duplicado óptico
- alinhamento secundário
- alinhamento suplementar;
- Sequência de nucleotideos cortantes moles quando presentes (indc na classe I)
- flag indicando a referência usado para o alinhamento e a compressão (por exemplo, interno referência de classe L) se for o caso (descritor Rtype).
Petição 870190075603, de 06/08/2019, pág. 153/387
37/68
- Para a classe II, descritor INDC identifica as partes da lê (tipicamente as bordas) que não correspondem, com um conjunto específico de correspondência restrições de precisão, com as referências internas.
- O descritor llreads é usado para codificar textualmente a lê que não pode ser mapeado em qualquer referência disponível sendo que uma referência preexistente (ou seja, externa, como um genoma de referência real) ou uma sequência de referência “interna.
[143] Essa classificação cria grupos de descritores (descritores) que podem ser usados para representar univocamente leituras de sequências do genoma. A tabela abaixo resume os descritores necessários para cada classe de leituras alinhadas com referências “externas (ou seja, pré-existentes) ou “internas (ou seja, “construídas).
Tabela 2 - Blocos descritores definidos por classe de dados.
P N M 1 u HM
pos X X X X X X
pair X X X X
rcomp X X X X X X
flags X X X X X X
rlen X X X X X X
nmis X
snpp X X
snpt X X
indp X X
indt X X
indc X X X
u reads X X
rtype X
rgroup X X X X X X
mmap X X X X X
msar X X X X X
mscore X X X X X
[144] As leituras pertencentes à classe P são caracterizadas e podem ser perfeitamente reconstruídas apenas por uma posição, uma informação de complemento reverso e um deslocamento entre pares, caso tenham sido obtidos
Petição 870190075603, de 06/08/2019, pág. 154/387
38/68 por uma tecnologia de sequenciamento que produza pares acoplados, alguns sinalizadores e um comprimento de leitura.
[145] A próxima seção detalha como esses descritores são definidos para as classes P, N, M e I enquanto que para a classe U eles são descritos em uma seção seguinte.
[146] A classe HM é aplicada somente para leitura de pares e é um caso especial para o qual uma leitura pertence à classe P, N, M ou I e a outra para a classe II.
Descritor de posição [147] No bloco de posição (pos), apenas a posição de mapeamento da primeira leitura codificada é armazenada como valor absoluto na sequência de referência. Todos os outros descritores de posição assumem um valor que expressa a diferença em relação à posição anterior. Tal modelagem da fonte de informação definida pela sequência de descritores de posição de leitura é em geral caracterizada por uma entropia reduzida particularmente para processos de sequenciamento que geram resultados de alta cobertura.
[148] Por exemplo, a figura 1 mostra como depois de descrever a posição inicial do primeiro alinhamento como posição “10000 na sequência de referência, a posição da segunda leitura iniciada na posição 10180 é descrita como 180. Com altas coberturas ( > 50x), a maioria dos descritores do vetor de posição apresenta ocorrências muito altas de valores baixos como 0 e 1 e outros inteiros pequenos. A Figura 1 mostra como as posições de três pares lidos são descritas em um bloco pos.
Descritor de complemento reverso [149] Cada leitura dos pares de leitura produzidos pelas tecnologias de sequenciamento pode ser originada a partir de cadeias de genoma da amostra orgânica sequenciada. No entanto, apenas uma das duas cadeias é utilizada como sequência de referência. A Figura 2 mostra como em um par de leituras uma leitura (leitura 1) pode ser originada de uma cadeia e a outra (leitura 2) pode ser originada da outra cadeia.
Petição 870190075603, de 06/08/2019, pág. 155/387
39/68 [150] Quando a cadeia 1 é usada como sequência de referência, a leitura 2 pode ser codificada como complemento reverso do fragmento correspondente na cadeia 1. Isso é mostrado na figura 3.
[151] No caso de leituras acopladas, quatro são as combinações possíveis de pares de posicionamento de complemento direto e reverso. Isso é mostrado na figura 4. O bloco rcomp codifica as quatro combinações possíveis.
[152] A mesma codificação é usada para as informações de complemento reverso de leituras pertencentes às classes N, M, P e I. Para permitir acesso seletivo às diferentes classes de dados, as informações de complemento reverso das leituras pertencentes às quatro classes são codificadas em diferentes blocos descritos na Tabela 2.
Descritor de informação de emparelhamento [153] O descritor de emparelhamento é armazenado no bloco de pares. Tal bloco armazena descritores que codificam a informação necessária para reconstruir os pares de leitura de origem quando a tecnologia de sequenciamento empregada produz leituras por pares. Embora na data da invenção da invenção a grande maioria dos dados de sequenciação seja gerada usando uma tecnologia que gera leituras pareadas, não é o caso de todas as tecnologias. Esta é a razão pela qual a presença deste bloco não é necessária para reconstruir todas as informações de dados de sequenciamento se a tecnologia de sequenciamento dos dados genômicos considerados não gerar informações de leituras pareadas.
Definições
- par de parceiros: leitura associada a outra leitura em um par de leituras (por exemplo, Read 2 é o par de leituras de Read 1 no exemplo anterior)
- distância de emparelhamento: número de posições de nucleotideos na sequência de referência que separam uma posição na primeira leitura (âncora de emparelhamento, por exemplo, último nucleotídeo da primeira leitura) de uma posição da segunda leitura (por exemplo, o primeiro nucleotídeo da segunda leitura)
Petição 870190075603, de 06/08/2019, pág. 156/387
40/68
- distância de pareamento mais provável (MPPD): esta é a distância de pareamento mais provável expressa em número de posições de nucleotídeos.
- distância de pareamento de posicionamento (PPD): o PPD é uma maneira de expressar uma distância de pareamento em termos do número de leituras que separam uma leitura de sua respectiva posição presente em um bloco descritor de posição específica.
- distância de emparelhamento de posição mais provável (MPPPD): é o número mais provável de leituras que separa uma leitura de seu par de posicionamento presente em um bloco de descritor de posição específico.
- erro de pareamento de posição (PPE): é definido como a diferença entre o MPPD ou o MPPPD e a posição real do posicionamento.
- âncora de emparelhamento: posição do primeiro último nucleotídeo lido em um par usado como referência para calcular a distância do par de parceiros em termos de número de posições de nucleotídeos ou número de posições de leitura.
[154] A Figura 5 mostra como a distância de pareamento entre pares de leitura é calculada.
[155] O bloco de descritores de pares é o vetor de erros de pareamento calculado como o número de leituras a serem puladas para alcançar o par de pareamento da primeira leitura de um par com relação à distância de pareamento de decodificação definida.
[156] A Figura 6 mostra um exemplo de como os erros de pareamento são calculados, tanto como valor absoluto quanto como vetor diferencial (caracterizado pela menor entropia para altas coberturas).
[157] Os mesmos descritores são usados para as informações de emparelhamento de leituras pertencentes às classes N, M, P e I. Para permitir o acesso seletivo às diferentes classes de dados, as informações de emparelhamento das leituras pertencentes às quatro classes são codificadas em blocos diferentes como mostrado nas figuras 8 (classe N), figuras 10, 12 e 14 (classe M) e figuras 15 e 16 (classe I).
Petição 870190075603, de 06/08/2019, pág. 157/387
41/68
Informação de emparelhamento no caso de leituras mapeadas em diferentes sequências de referência [158] No processo de mapeamento de leituras de sequência em uma sequência de referência, não é incomum ter a primeira leitura em um par mapeado em uma sequência de referência (por exemplo, cromossomo 1) e a segunda em uma sequência de referência diferente (por exemplo, cromossomo 4). Neste caso, as informações de emparelhamento descritas acima devem ser integradas por informações adicionais relacionadas à sequência de referência usada para mapear uma das leituras. Isto é conseguido através da codificação:
1. Um valor reservado (flag) indicando que o par é mapeado em duas sequências diferentes (valores diferentes indicam se readl ou read2 são mapeados na sequência que não está atualmente codificada).
2. Um identificador de referência exclusivo referente aos identificadores de referência codificados na estrutura do cabeçalho principal, conforme descrito na Tabela 1.
3. O terceiro elemento contém as informações de mapeamento na referência identificada no ponto 2 e expressas como offset em relação à última posição codificada.
[159] A Figura 7 fornece um exemplo desse cenário.
[160] Na figura 7, uma vez que a leitura 4 não está mapeada na sequência de referência atualmente codificada, o codificador genômico sinaliza essa informação criando descritores adicionais no bloco de pares. No exemplo mostrado abaixo, a leitura 4 do par 2 é mapeada na referência no. 4 enquanto a referência atualmente codificada é não. 1. Esta informação é codificada usando 3 componentes:
1. Um valor reservado especial é codificado como distância de pareamento (neste caso, Oxffffff).
2. Um segundo descritor fornece um ID de referência, conforme listado no cabeçalho principal (neste caso, 4).
Petição 870190075603, de 06/08/2019, pág. 158/387
42/68
3. 0 terceiro elemento contém as informações de mapeamento na referência em questão (170).
Descritores de incompatibilidade para a leitura de classe N [161] A classe N inclui todas as leituras em que apenas as diferenças de tipo “n estão presentes, no lugar de uma base A, C, G ou T, um N é encontrado como base. Todas as outras bases da leitura combinam perfeitamente com a sequência de referência.
[162] A figura 8 mostra como:
as posições de “N na leitura 1 são codificadas como
- posição absoluta em leitura 1 ou
- como posição diferencial em relação ao anterior N na mesma leitura;
as posições de N na leitura 2 são codificadas como
- posição absoluta na leitura 2 + ler 1 comprimento ou
- posição diferencial em relação ao N anterior.
[163] No bloco nmis, a codificação de cada par de leituras é terminada por um símbolo especial “separador.
Descritores que codificam Substituições (Mismatches ou SNPs), Inserções e Exclusões [164] Uma substituição é definida como a presença, numa leitura mapeada, de uma base nucleotídica diferente em relação à que está presente na sequência de referência na mesma posição.
[165] A Figura 9 mostra exemplos de substituições em um par de leitura mapeado. Cada substituição é codificada como posição (bloco snpp) e tipo (bloco snpt). Dependendo da ocorrência estatística de substituições, inserções ou delecções, podem ser definidos diferentes modelos de fontes dos descritores associados e os símbolos gerados codificados no bloco associado.
Modelo de origem 1: substituições como posições e tipos
Descritores de Posições de Substituições [166] Uma posição de substituição é calculada como os valores do bloco nmis, ou seja,
Petição 870190075603, de 06/08/2019, pág. 159/387
43/68
Na leitura 1, as substituições são codificadas
- como posição absoluta na leitura 1 ou
- como posição diferencial em relação à substituição anterior na mesma leitura,
Na leitura 2 as substituições são codificadas
- como posição absoluta na leitura 2 + ler 1 comprimento ou
- como posição diferencial em relação à substituição anterior [167] A Figura 10 mostra h ow substituições (em que, numa dada posição de mapeamento, um símbolo de uma leitura é diferente do símbolo na sequência de referência) são codificados como
1. a posição do desencontro
- em relação ao início da leitura ou
- em relação à incompatibilidade anterior (codificação diferencial);
2. o tipo de incompatibilidade representado como um código calculado conforme descrito na Figura 10.
[168] No bloco snpp, a codificação de cada par de leituras é terminada por um símbolo especial de separador.
Descritores de Tipos de Substituições [169] Para a classe M (e I, como descrito nas próximas seções), as incompatibilidades são codificadas por um índice (movendo-se da direita para a esquerda) do símbolo real presente na referência ao símbolo de substituição correspondente presente na leitura {A, C, G, T, N, Z}. Por exemplo, se a leitura alinhada apresentar um C ao invés de um T que está presente na mesma posição na referência, o índice de incompatibilidade será denotado como 4 O processo de decodificação lê o descritor codificado, o nucleotídeo na posição dada na referência e se move da esquerda para a direita para recuperar o símbolo decodificado. Por exemplo, um 2 recebido para uma posição onde um G está presente na referência será decodificado como N. A Figura 11 mostra todas as substituições possíveis e os respectivos símbolos de codificação. Obviamente, modelos de probabilidade adaptativos de contexto e diferentes podem ser
Petição 870190075603, de 06/08/2019, pág. 160/387
44/68 atribuídos a cada índice de substituição de acordo com as propriedades estatísticas de cada tipo de substituição para cada classe de dados para minimizar a entropia dos descritores.
[170] No caso da adopção dos códigos de ambiguidade da IIIPAC, o mecanismo de substituição resulta exactamente o mesmo, no entanto, o vetor de substituição é alargado como: S = {A, C, G, T, N, Ζ, M, R, W, S, Y, Κ, V, H, D, B}.
[171] A Figura 12 fornece um exemplo de codificação de tipos de substituição no bloco snpt.
[172] Alguns exemplos de substituições que codificam quando códigos de ambiguidade IIIPAC são adotados são fornecidos na Figura 13. Um outro exemplo de índices de substituição é fornecido na Figura 14.
Codificação de inserções e exclusões [173] Para a classe I, as incompatibilidades e exclusões são codificadas por um índice (movendo-se da direita para a esquerda) do símbolo atual presente na referência ao símbolo de substituição correspondente presente na leitura: {A, C, G, T, N, Z}. Por exemplo, se a leitura alinhada apresentar um C ao invés de um T presente na mesma posição na referência, o índice de incompatibilidade será 4. Caso a leitura apresente uma exclusão onde um A esteja presente na referência, o símbolo codificado será 5. O processo de decodificação lê o descritor codificado, o nucleotídeo na posição dada na referência e se move da esquerda para a direita para recuperar o símbolo decodificado. Por exemplo, um “3 recebido por uma posição onde um G está presente na referência será decodificado como Z.
[174] Insertos são codificados como 6, 7, 8, 9, 10, respectivamente para A, C, G, T, N.
[175] A Figura 15 mostra um exemplo de como codificar substituições, inserções e exclusões em um par de leituras da classe I. Para suportar todo o conjunto de códigos de ambiguidade IUPAC, o vetor de substituição S = {A, C, G, T, N, Z} deve ser substituído por S = {A, C, G, T, N, Ζ, M, R, W, S, Y, Κ, V, H, D e B}, conforme descrito no parágrafo anterior, quanto a incompatibilidades. Neste caso,
Petição 870190075603, de 06/08/2019, pág. 161/387
45/68 os códigos de inserção precisam ter valores diferentes, a saber 16, 17, 18, 19, 20, no caso de o vetor de substituição ter 16 elementos. O mecanismo é ilustrado na Figura 16.
Modelo de origem 2: um bloco por tipo de substituição e indels [176] Para algumas estatísticas de dados, um modelo de codificação diferente do descrito na seção anterior pode ser desenvolvido para substituições e indels resultando em uma fonte com entropia mais baixa. Tal modelo de codificação é uma alternativa às técnicas descritas acima para incompatibilidades apenas e para incompatibilidades e indels.
[177] Nesse caso, um bloco de dados é definido para cada símbolo de substituição possível (5 sem códigos IIIPAC, 16 com códigos IIIPAC), mais um bloco para exclusões e mais 4 blocos para inserções. Para simplificar a explicação, mas não como uma limitação para a aplicação do modelo, a descrição a seguir se concentrará no caso em que nenhum código IIIPAC é suportado.
[178] A Figura 17 mostra como cada bloco contém a posição das diferenças ou inserções de um único tipo. Se não houver incompatibilidades ou inserções para esse tipo no par de leitura codificado, um 0 será codificado no bloco correspondente. Para permitir que o decodificador inicie o processo de decodificação para os blocos descritos nesta seção, o cabeçalho de cada Unidade de Acesso contém um sinalizador que sinaliza o primeiro bloco a ser decodificado. No exemplo da figura 18, o primeiro elemento a ser decodificado é a posição 2 no bloco C. Quando não há incompatibilidades ou indels de um determinado tipo em um par de leitura, um 0 é adicionado aos blocos correspondentes. No lado da descodificação, quando o ponteiro de descodificação para cada bloco aponta para um valor de 0, o processo de descodificação move-se para o próximo par de leitura.
Codificação de sinalizadores adicionais de sinalização [179] Cada classe de dados introduzida acima (P, Μ, N, I) pode requerer a codificação de informação adicional sobre a natureza das leituras codificadas. Esta informação pode estar relacionada, por exemplo, com a experiência de
Petição 870190075603, de 06/08/2019, pág. 162/387
46/68 sequenciamento (por exemplo, indicando uma probabilidade de duplicação de uma leitura) ou pode expressar alguma característica do mapeamento de leitura (por exemplo, primeiro ou segundo no par). No contexto desta invenção, esta informação é codificada em um bloco separado para cada classe de dados. A principal vantagem de tal abordagem é a possibilidade de acessar seletivamente esta informação somente em caso de necessidade e somente na região de sequência de referência requerida. Outros exemplos do uso de tais flags são:
- leitura emparelhada
- leitura mapeada em par adequado
- leitura ou alinhamento não mapeado
- leitura ou alinhamento de vertente reversa
- primeiro / segundo no par
- alinhamento não primário
- leitura com testes de qualidade de plataforma / fornecedor com falha
- leitura é PCR ou duplicado óptico
- alinhamento suplementar
Descritores para classe L e construção de referências internas para leitura não mapeada de Classe U“ e Classe HM [180] No caso das leituras pertencentes à classe L ou o par não mapeado de Classe HM, uma vez que não pode ser mapeado para qualquer sequência de referência “externa satisfazer o conjunto especificado de correspondentes restrições de precisão por pertencer a qualquer das classes P, N, H, ou I, um ou mais sequências de referência “internas são “construídas e utilizado para a representação comprimida das leituras pertencentes a estas classes de dados.
[181] Várias abordagens são possíveis para construir referências “internas apropriadas, como por exemplo e não como limitação:
- o particionamento das leituras não mapeadas em clusters contendo leituras que compartilham uma sequência genômica contígua comum de pelo menos um tamanho mínimo (assinatura). Cada cluster pode ser identificado exclusivamente por sua assinatura, conforme mostrado na figura 22.
Petição 870190075603, de 06/08/2019, pág. 163/387
47/68
- a triagem de leituras em qualquer forma significativa (por exemplo, a fim lexicographic) e a utilização da última N lê como interna de referência para a codificação do N + 1. Este método é mostrado na figura 23.
- realizar um chamado arranjo de novo” num subconjunto das leituras da classe U de modo a ser capaz de alinhar e codificar todos ou um subconjunto relevante das leituras pertencentes à referida classe de acordo com as restrições de precisão correspondentes ou um novo conjunto de restrições.
[182] Se a leitura a ser codificada pode ser mapeada na referência “interna e satisfazer o conjunto especificado de correspondentes restrições de precisão, a informação necessária para reconstruir a leitura após a compressão é codificada utilizando descritores que podem ser dos seguintes tipos:
1. Posição inicial da parte correspondente na referência interna em termos de número de leitura na referência interna (pos block). Essa posição pode ser codificada como valor absoluto ou diferencial em relação à leitura codificada anteriormente.
2. Deslocamento da posição inicial desde o início da leitura correspondente na referência interna (par bloco). Por exemplo, no caso de um comprimento de leitura constante, a posição real é pos * length + pair.
3. Possivelmente, apresentar inconsistências codificadas como posição de incompatibilidade (bloco snpp) e tipo (bloco snpt)
4. As partes das leituras (normalmente as arestas identificadas por par) que não correspondem à referência interna (ou fazem isso, mas com um número de discordâncias acima de um limite definido) são codificadas no bloco indo. Uma operação de preenchimento pode ser executada nas bordas da parte da referência interna usada para reduzir a entropia das inconsistências codificadas no bloco indo, como mostrado na figura 24. A estratégia de preenchimento mais apropriada pode ser escolhida pelo encoder de acordo às propriedades estatísticas dos dados genômicos que estão sendo processados. Possíveis estratégias de preenchimento incluem:
a. Sem preenchimento
Petição 870190075603, de 06/08/2019, pág. 164/387
48/68
b. Padrão de preenchimento constante escolhido de acordo com sua freqüência nos dados atualmente codificados.
c. Padrão de preenchimento variável de acordo com as propriedades estatísticas do contexto atual definido em termos das últimas N leituras codificada
d. O tipo específico de estratégia de preenchimento será sinalizado por valores especiais no cabeçalho do bloco indo
5. Um sinalizador que indica se a leitura foi codificada usando um bloco interno auto-gerado, externo ou sem referência (bloco rtype)
6. Leitura de quais são codificados textualmente (ureads).
[183] A Figura 24 fornece um exemplo de tal procedimento de codificação.
[184] A Figura 25 mostra uma codificação alternativa de leituras não mapeadas na referência interna onde os descritores pós + par são substituídos por uma posição assinada. Neste caso, pos expressaria a distância - em termos de posições na sequência de referência - da posição de nucleotídeo mais à esquerda de read n em relação à posição do nucleotídeo mais à esquerda de read n-1.
[185] No caso de leituras da classe U apresentarem comprimento variável, um descritor adicional rlen é usado para armazenar cada comprimento de leitura.
[186] Essa abordagem de codificação pode ser estendida para suportar N posições iniciais por leitura, de modo que as leituras possam ser divididas em duas ou mais posições de referência. Isso pode ser particularmente útil para codificar leituras geradas por essa tecnologia de sequenciamento (por exemplo, da Pacific Bioscience) produzindo leituras muito longas (50K + bases) que geralmente apresentam padrões repetidos gerados por loops na metodologia de sequenciamento. A mesma abordagem também pode ser utilizada para codificar leituras de sequências quiméricas definidas como leituras que se alinham a duas porções distintas do genoma com pouca ou nenhuma sobreposição.
[187] A abordagem descrita acima pode ser claramente aplicada além da classe simples U e podería ser aplicada a qualquer bloco contendo descritores relacionados a leituras de posições (pos blocks).
Petição 870190075603, de 06/08/2019, pág. 165/387
49/68
Descritor de pontuação de alinhamento [188] 0 descritor mscore fornece uma pontuação por alinhamento. No contexto deste invento, é utilizado para representar a pontuação de mapeamento / alinhamento por leitura gerada por alinhadores de leitura de sequência genômica.
[189] A pontuação é expressa usando um expoente e uma parte fracionária. O número de bits usados para representar o expoente e a parte fracionária são transmitidos como parâmetros de configuração. Como exemplo, mas não como uma limitação, a Tabela 2 mostra como isso é especificado no IEEE RFC 754 para um expoente de 11 bits e uma parte fracionária de 52 bits.
[190] A pontuação de cada alinhamento pode ser representada por:
- Um bit de sinal (S)
-11 bits para o expoente (E)
- 53 bits para a mantissa (M)
Tabela 2. Pontuações de alinhamento podem ser expressas como valores de ponto flutuante de precisão dupla de 64 bits
1 11 52
+-+-------- —+---------------- —+
|S| Exp | Mantissa |
+_+-------- —+---------------- —+
63 62 51 0
[191] A base (radix) a ser usada para o cálculo das pontuações é 10, portanto:
pontuação = -1sx 10Ex M
Grupos de leituras [192] Durante o processo de sequenciamento, diferentes tipos de leituras sequenciadas podem ser produzidos. Como exemplo, mas não como limitação, os tipos podem estar relacionados a diferentes amostras sequenciadas, experimentos diferentes, configurações diferentes da máquina de sequenciamento. Após o sequenciamento e alinhamento, esta informação é preservada, de acordo com a invenção divulgada, por meio de um descritor dedicado denominado rgroup. rgroup é um rótulo associado a cada leitura
Petição 870190075603, de 06/08/2019, pág. 166/387
50/68 codificada e permite que um aparelho de decodificação particione as leituras decodificadas em grupos após a decodificação.
Descritores para múltiplos alinhamentos [193] Os seguintes descritores são especificados para o suporte de múltiplos alinhamentos. Em caso de presença de leituras emendadas, esta invenção define uma flag global spliced_reads_flag para ser definida como 1.
Descritor mmap [194] O descritor mmap é usado para sinalizar quantas posições a leitura ou a leitura mais à esquerda de um par foi alinhada. Um registro genômico contendo vários alinhamentos está associado a um descritor mmap de vários bytes. Os dois primeiros bytes de um descritor mmap representam um inteiro não assinado N, que se refere à leitura como um único segmento (se não houver emendas no conjunto de dados codificado) ou a todos os segmentos nos quais a leitura foi unida para os vários possíveis alinhamentos (se as emendas estiverem presentes no conjunto de dados). O valor de N indica quantos valores do descritor pos são codificados para o modelo neste registro. N é seguido por um ou mais inteiros sem sinal M jcomo descrito abaixo.
Encalhamento de alinhamentos múltiplos [195] O descritor rcomp descrito nesta invenção é utilizado para especificar o encalhamento de cada alinhamento de leitura utilizando a sintaxe especificada nesta invenção.
Pontuações de múltiplos alinhamentos [196] No caso de múltiplos alinhamentos, um mscore, conforme especificado nesta invenção, é atribuído a cada alinhamento.
Alinhamentos múltiplos sem emendas [197] Se não houver emendas na unidade de acesso, spliced_reads_flag não será definido.
[198] No sequenciamento emparelhado, o descritor mmap é composto de um inteiro não assinado de 16 bits N seguido por um ou mais inteiros não assinados de 8 bits Mj, com / assumindo valores de 1 para o número de primeiro completo
Petição 870190075603, de 06/08/2019, pág. 167/387
51/68 (aqui, o esquerdo mais) leia os alinhamentos. Para cada primeiro alinhamento de leitura, emendado ou não, M, é usado para sinalizar quantos segmentos são usados para alinhar a segunda leitura (nesse caso, sem emendas, isso é igual ao número de alinhamentos) e quantos valores de o descritor de pares é codificado para esse alinhamento da primeira leitura.
[199] Os valores de M , devem ser usados para calcular P =yTv / / Mi que indica o número de alinhamentos da segunda leitura.
[200] Um valor especial de M, ( = 0) indica que o i ésimo alinhamento de mais à esquerda ler está emparelhado com um alinhamento de mais à direita ler que já está emparelhado com um k ésimo alinhamento de mais à esquerda ler com k < i (então não há nenhum novo alinhamento detectado, o que é consistente com a equação acima).
[201] Por exemplo, nos casos mais simples:
1. Se houver um único alinhamento para a leitura mais à esquerda e dois alinhamentos alternativos para a direita, N será 1 e Mi será 2.
2. Se dois alinhamentos alternativos forem detectados para a leitura mais à esquerda, mas somente um para a direita, N será 2, Mi será 1 e M2será 0.
[202] Quando M, for 0, o valor associado do par será vinculado a um segundo alinhamento de leitura existente; um erro de sintaxe será levantado de outra forma e o alinhamento será considerado quebrado.
Exemplo: se a primeira leitura tiver duas posições de mapeamento e a segunda for somente uma, N é 2, Mi será 1 e M2 será 0 como foi dito anteriormente. Se isso for seguido por outro mapeamento secundário alternativo para o modelo inteiro, N será 3 e M3 será 1.
ilustra o significado de N, P e M , no caso de múltiplos alinhamentos sem emendas e a mensagem erro! Fonte de referência não encontrada, mostra como os descritores pos, pair e mmap são usados para codificar as informações de múltiplos alinhamentos.
[203] Em relação a 40, aplica-se o seguinte:
- A leitura mais à direita tem P = alinhamentos
Petição 870190075603, de 06/08/2019, pág. 168/387
52/68
- Alguns valores de /W/pode ser = 0 quando o i ésimo alinhamento de mais à esquerda ler está emparelhado com um alinhamento de leitura mais à direita que já está emparelhado com um k ésimo alinhamento de leitura mais à esquerda com k < i
- Um valor reservado do descritor de par pode estar presente para sinalizar alinhamentos pertencentes a outros intervalos de AUs. Se presente é sempre o primeiro par descritor para o registro atual
Alinhamentos múltiplos com emendas [204] Se o conjunto de dados for codificado com leituras emendadas, o descritor msar permitirá a representação do comprimento e do encalhamento das uniões.
[205] Depois de decodificar o mmap e os descritores msar, o decodificador sabe quantos pares de leituras ou leitura foram codificados para representar os múltiplos mapeamentos e quantos segmentos estão compondo cada mapeamento de pares de leitura ou leitura. Isso é mostrado na Figura 41 e Figura 42.
[206] Com referência à figura 41, aplica-se o seguinte:
- A leitura mais à esquerda tem alinhamentos Ni com emendas N (Ni < N).
- N representa o número de junções presentes em todos os alinhamentos da leitura mais à esquerda e é codificado como primeiro valor do descritor mmap.
- A leitura mais à direita tem P = splices, onde M ,é o número de uniões da leitura mais à direita que estão associadas em um par com o i ésimo alinhamento da leitura mais à esquerda (1 < i < Ni ). Em outras palavras, P representa o número de emendas da leitura mais à direita e é calculado usando os N valores após o primeiro valor do descritor mmap.
- Ni e N2 representam o número de alinhamentos da primeira e segunda leitura e são calculados utilizando os valores de n + p do descritor RAEM.
[207] Com referência à Figura 42, aplica-se o seguinte:
- A leitura mais à esquerda tem alinhamentos Ni com emendas N (Ni < N). Se Ni = N e N2 = P não havería emendas.
Petição 870190075603, de 06/08/2019, pág. 169/387
53/68
- A leitura mais à direita tem alinhamentos P = splices tj 1 < j < P e N2(N2^ P).
- O número de descritores de pares pode ser calculado como NP = Max (N1, P) + Mo onde
- Μ o é o número de M , com valor 0
- O NP deve ser incrementado em 1 caso um descritor de par especial indique a presença de alinhamentos em outras Alls.
Pontuação de alinhamento [208] O descritor mscore permite sinalizar a pontuação do mapeamento de um alinhamento. No sequenciamento simples, ele terá valores Ni por gabarito; no sequenciamento pareado, terá um valor para cada alinhamento do modelo inteiro (número de alinhamentos diferentes da primeira leitura possivelmente + o número de outros segundos alinhamentos de leitura, isto é, quando M, -1> 0).
Número de pontuações = MAX (Ny N2) + Mo onde Mo representa o número total de M , = 0.
[209] Nesta invenção, mais de um valor de pontuação pode ser associado a cada alinhamento. O número de alinhamentos é sinalizado por um parâmetro de configuração as_depth.
Descritores para múltiplos alinhamentos sem emendas
Tabela 3. Determinação do número de descritores necessários para representar múltiplos alinhamentos em um Registro Genômico no caso de múltiplos alinhamentos sem emendas.
Semântica mmap mscore Efeito
Leitura com múltiplos mapeamentos (ou pareada), não spliced Leitura única: N Leitura par: N, Mi Onde 1 < i < N Leitura única: valores N Leitura par: valores MAX(N, Z(Mi)) + Σ(Μι = 0) Introdução de separador permitiría ter número arbitrário de scores. Se não, 0 deve ser usado se não estiver presente. Valores floating point, como aqui definidos. Leitura única múltiplos mapeamentos e codificação como seq. de segmentos N consecutivos da classe com maior ID. Descritores N pos usados Leitura par: múltiplos mapeamentos e
Petição 870190075603, de 06/08/2019, pág. 170/387
54/68
codificação como seq.de • segmentos N para a primeira leitura • pareamentos P =Σ(Μί) para o alinhamento da segunda leitura Descritores N pos são usados Descritores Ν x P pair são usados com NP = + (no. de = 0) + (opcional) 1 O descritor de pareamento opcional e utilizado quando alinhamentos se encontram em sequências de referencia diferentes que aquela codificada com o descritor N+1 mmap
Leitura (par) mapeada unicamente 0 0
Descritores para múltiplos alin hamentos com emendas
[210] A Tabela 4 mostra a determinação do número de descritores necessários para representar múltiplos alinhamentos em um Registro Genômico no caso de múltiplos alinhamentos com emendas.
Tabela 4. Descritores usados para representar vários alinhamentos e pontuações associadas.
Semântica mmap mscore Efeito
Leitura com múltiplos mapeamentos Leitura única: N Leitura par: Leitura única: valores Nt Leitura par: valores Max^, N2) + Σ(Μί== 0) Leitura única: a leitura tem múltiplos
Petição 870190075603, de 06/08/2019, pág. 171/387
55/68
(ou pareada), spliced N, Mi onde 1 < i < N Nt e N2 s’ao calculados com o descritor N + P msar P = Valores floating point, como aqui definidos. mapeamentos e codificada como uma seq. de N segmentos consecutivos de mesma classe com ID maior. Descritores N pos usados Leitura par: A leitura par tem mapeamentos múltiplos e codificada como uma seq. de • segmentos N para a primeira leitura • pares P =Σ(Μι) para alinhamento da segunda leitura Descritores N pos usados
Leitura (par) mapeada unicamente 0 0
Alinhamentos múltiplos em diferentes sequências [211] Pode acontecer que o processo de alinhamento encontre mapeamentos alternativos para outra sequência de referência que aquela em que o mapeamento primário está posicionado.
[212] Para pares lidos que são unicamente alinhados, um descritor de par deve ser usado para representar as posições absolutas de leitura quando há, por exemplo, um alinhamento quimérico com o posicionamento em outro cromossomo. O descritor de par deve ser usado para sinalizar a referência e a posição do próximo registro contendo outros alinhamentos para o mesmo modelo. O último registro (por exemplo, o terceiro caso os mapeamentos alternativos
Petição 870190075603, de 06/08/2019, pág. 172/387
56/68 sejam codificados em 3 Alls diferentes) deve conter a referência e a posição do primeiro registro.
[213] No caso de um ou mais alinhamentos para a leitura mais à esquerda em um par estarem presentes em uma sequência de referência diferente daquela relacionada à AU atualmente codificada, então um valor reservado é usado para o descritor de par. O valor reservado é seguido pelo identificador da sequência de referência e pela posição do alinhamento mais à esquerda entre todos os contidos na próxima AU (ou seja, o primeiro valor decodificado do pos descritor para aquele registro).
Alinhamentos múltiplos com inserções, deleções, porções não mapeadas [214] Quando um mapeamento secundário alternativo não preserva a contiguidade da região de referência em que a sequência está alinhada, pode ser impossível reconstruir o mapeamento exato gerado pelo alinhador porque a sequência real (e, em seguida, os descritores relacionados a incompatibilidades, como substituições ou indels) é codificado apenas para o alinhamento primário. O descritor msar deve ser usado para representar como os alinhamentos secundários são mapeados na sequência de referência, no caso de conterem indels e/ou clipes suaves. Se msar é representado pelo símbolo especial para um alinhamento secundário, o decodificador irá reconstruir o alinhamento secundário a partir do alinhamento primário e a posição do mapeamento de alinhamento secundário.
Descritor msar [215] O descritor msar (Registro de Alinhamento de Segmentos Múltiplos) suporta leituras emendadas e alinhamentos secundários alternativos que contêm indels ou clipes suaves.
[216] msar destina-se a transmitir informações sobre:
- um comprimento de segmento mapeado
- uma contiguidade de mapeamento diferente (isto é, presença de inserções, deleções ou bases recortadas) para um alinhamento secundário e/ou leitura splicing
Petição 870190075603, de 06/08/2019, pág. 173/387
57/68 [217] msar é usado com a sintaxe da sequência CIGAR estendida descrita abaixo, mais o símbolo adicional descrito na Tabela 5.
Tabela 5. Símbolo especial usado para o descritor msar além da sintaxe descrita na tabela 6.
Symbol Semântica Descrição
O alinhamento secundário não compreende indels ou clips suaves Utilizado quando a reconstrução de um alinhamento secundário não precisa de informação adicional em adição a uma posição de alinhamento e do primeiro alinhamento
Sintaxe de CIGAR estendida [218] Esta seção especifica uma sintaxe CIGAR (E-CIGAR) estendida para que strings sejam associadas a sequências e incompatibilidades relacionadas, indels, bases recortadas e informações sobre múltiplos alinhamentos e leituras combinadas.
[219] As operações de edição descritas nesta invenção estão listadas na Tabela
6.
Tabela 6. Sintaxe da sequência MPEG-G E-CIGAR.
Operação Semântica Representação E-CIGAR Representação equivalente SAM CIGAR
Incremento em ambos ponto-referencia R quanto ponto-leitura r com n posições (match) n bases com match n= nM em versões antigas (não equivalente), = em versões novas
Incremento em ambos ponto-referencia R quanto ponto-leitura room 1 Substituição de caractere C (C presente na leitura e não na referencia) C M em versões antigas, X em versões novas (não
Petição 870190075603, de 06/08/2019, pág. 174/387
58/68
equivalente)
Incremento ponto-leitura r por n posições (inserção da leitura t) n bases são inseridas na leitura (não presente na referencia) n+ nl
Incremento ponto- referencia R por n posições (deleção da sequencia S na leitura) n bases são deletadas na leitura (mas presentes na referencia) n- nD
Incremento ponto- referencia R por n posições (inserção na leitura). Somente pode ocorrer no começo ou final da leitura n clips suaves (n) nS
Corte rígido. Somente pode ocorrer no começo ou final da leitura n clips rígidos [n] nH
Incremento ponto- referencia R por n posições, consenso splice observado (splice na leitura) Splice não dirigido de n bases n* nN
Incremento ponto- referencia R por n posições, consenso splice observado na cadeia posterior (splice para frente na leitura) Splice para frente de n bases n/ Não existente
Incremento ponto- referencia R por n posições, consenso splice Splice reverso de n bases n% Não existente
Petição 870190075603, de 06/08/2019, pág. 175/387
59/68
observado na cadeia reversa (splice reverso na leitura)
Modelos de código-fonte, codificadores de entropia e modos de codificação [220] Para cada classe de dados, subclasse e bloco de descritor associado da estrutura de dados genômicos divulgados nesta invenção, diferentes algoritmos de codificação podem ser adotados de acordo com as características específicas dos dados ou metadados transportados por cada bloco e suas propriedades estatísticas. O algoritmo de codificação” deve entender-se como a associação de um determinado modelo de fonte” do bloco descritor com um específico codificador entropia. O específico modelo de origem” pode ser especificado e selecionado para obter a codificação mais eficiente dos dados em termos de minimização do entropia fonte. A seleção do codificador de entropia pode ser conduzida por considerações de eficiência de codificação e/ou recursos de distribuição de probabilidade e problemas de implementação associados. Cada selecção de um determinado algoritmo de codificação, também referido como modo de codificação” pode ser aplicado a todo um bloco descritor” associado a uma classe de dados ou sub-classe para a totalidade do conjunto de dados, ou diferentes modos de codificação” pode ser aplicado para cada porção de descritores particionados em Unidades de Acesso.
[221] Cada modelo de fonte” associado a um modo de codificação é caracterizado por:
- A definição dos descritores emitidos por cada fonte (isto é, o conjunto de descritores usados para representar uma classe de dados, como a posição de leituras, leituras de informações de emparelhamento, incompatibilidades em relação a uma sequência de referência, conforme definido na Tabela 2).
- A definição do modelo de probabilidade associado.
- A definição do codificador de entropia associado.
Outras vantagens
Petição 870190075603, de 06/08/2019, pág. 176/387
60/68 [222] A classificação de dados de sequência nas classes e subclasses de dados definidas permite a implementação de modos de codificação eficientes explorando a caracterização de entropia de fonte de informação inferior modelando as sequências de descritores por fontes de dados separadas únicas (por exemplo, distância, posição, etc.).
[223] Outra vantagem da invenção é a possibilidade de acessar apenas o subconjunto do tipo de dados de interesse. Por exemplo, uma das aplicações mais importantes em genômica consiste em encontrar as diferenças de uma amostra genômica em relação a uma referência (SNV) ou uma população (SNP). Hoje tal tipo de análise requer o processamento da sequência completa lê enquanto que ao adoptar a representação de dados divulgado pela invenção os desfasamentos já são isolados em apenas uma a três classes de dados (dependendo do interesse na considerando também tipo n” e “tipo i” de incompatibilidades.
[224] Uma outra vantagem é a possibilidade de realizar a transcodificação eficiente de dados e metadados comprimidos com referência a um específico externo sequência de referência para outro diferente externo sequência de referência quando novas sequências de referência estão publicados ou quando re-mapeamento é realizado na já mapeado dados (por exemplo, usando um algoritmo de mapeamento diferente) obtendo novos alinhamentos.
[225] A Figura 20 mostra um aparelho de codificação 207 de acordo com os princípios desta invenção. O aparelho de codificação 207 recebe como entrada dados de sequência bruta 209, por exemplo, produzidos por um aparelho de sequenciação do genoma 200. Os aparelhos de sequenciação de genomas 200 são conhecidos na técnica, como os dispositivos Illumina HiSeq 2500 ou ThermoFisher Ion Torrent. Os dados de sequência bruta 209 são introduzidos numa unidade de alinhamento 201, que prepara as sequências para codificação alinhando as leituras com uma sequência de referência 2020. Em alternativa, um módulo dedicado 202 pode ser utilizado para gerar uma sequência de referência a partir das leituras disponíveis utilizando diferentes estratégias descritas neste
Petição 870190075603, de 06/08/2019, pág. 177/387
61/68 documento na seção Construção de referências internas para leituras não mapeadas de Classe II” e Classe HM. Depois de ter sido processado pelo gerador de referência 202, as leituras podem ser mapeadas na sequência mais longa obtida. As sequências alinhadas são então classificadas pelo módulo de classificação de dados 204. Um passo adicional da transformação de referência é então aplicado na referência de modo a reduzir a entropia dos dados gerados pela unidade de classificação de dados 204. Isto implica processar a referência externa 2020 numa unidade de transformação de referência 2019 que produz classes de dados transformadas 2018 e descritores de transformação de referência 2021. As classes de dados transformadas 2018 são então alimentadas para blocos de codificadores 205-207 juntamente com os descritores de transformação de referência 2021. Os blocos genômicos 2011 são então alimentados para codificadores aritméticos 2012- 2014 que codificam os blocos de acordo com as propriedades estatísticas dos dados ou metadados transportados pelo bloco. O resultado é um fluxo genômico de 2015.
[226] A Figura 21 mostra um aparelho de descodificação 218 de acordo com os princípios desta invenção. Um aparelho de descodificação 218 recebe um fluxo de bits genômico multiplexado 2110 de uma rede ou de um elemento de armazenamento. O fluxo de bits genômico multiplexado 2110 é alimentado a um desmultiplexador 210, para produzir fluxos separados 211 que são então alimentados para os decodificadores de entropia 212-214, para produzir blocos genômicos 215 e descritores de transformação de referência 2112. Os blocos genômicos extraídos são alimentados para bloquear os decodificadores 216- 217 para descodificar adicionalmente os blocos em classes de dados e os descritores de transformação de referência s alimentados a uma unidade de transformação de referência 2113. Os decodificadores de classe 219 processam ainda os descritores genômicos 2111 e a referência 2114 transformada e fundem os resultados para produzir leituras descomprimidas de sequências, que pode então ser ainda armazenado nos formatos conhecidos na arte, por exemplo, um arquivo de texto ou arquivo compactado zip, ou arquivos FASTQ ou SAM / BAM.
Petição 870190075603, de 06/08/2019, pág. 178/387
62/68 [227] Os decod if icadores de classe 219 são capazes de reconstruir as sequências genômicas originais alavancando a informação nas sequências de referência originais transportadas por um ou mais fluxos genômicos e os descritores de transformação de referência 2112 transportados no fluxo de bits codificado. Caso as sequências de referência não sejam transportadas pelos fluxos genômicos, elas devem estar disponíveis no lado de decodificação e acessíveis pelos decodificadores de classe.
[228] As técnicas inventivas aqui divulgadas podem ser implementadas em hardware, software, firmware ou qualquer combinação das mesmas. Quando implementadas em software, elas podem ser armazenadas em um meio de computação e executadas por uma unidade de processamento de hardware. A unidade de processamento de hardware pode compreender um ou mais processadores, processadores de sinal digital, microprocessadores de uso geral, circuitos integrados específicos da aplicação ou outros circuitos lógicos discretos.
[229] As técnicas desta invenção podem ser implementadas numa variedade de dispositivos ou dispositivos, incluindo telemóveis, computadores de secretária, servidores, tablets e dispositivos semelhantes.
Formato de arquivo: acesso seletivo a regiões de dados genômicos usando a tabela de índices mestre [230] Para suportar o acesso seletivo a regiões específicas dos dados alinhados, a estrutura de dados descrita neste documento implementa uma ferramenta de indexação chamada Tabela de índices mestre (MIT). Este é um array multidimensional que contém o loci no qual as leituras específicas mapeiam as sequências de referência associadas. Os valores contidos no MIT são as posições de mapeamento da primeira leitura em cada bloco pos de modo que o acesso não sequencial a cada Unidade de Acesso seja suportado. O MIT contém uma seção para cada classe de dados (P, N, Μ, I, U e HM) e por cada sequência de referência. O MIT está contido no cabeçalho do conjunto de dados genômico dos dados codificados. A Figura 31 mostra a estrutura do Cabeçalho do Conjunto de Dados do Genoma, a Figura 32 mostra uma representação visual genérica do
Petição 870190075603, de 06/08/2019, pág. 179/387
63/68
MIT e a Figura 33 mostra um exemplo do MIT para a classe P de leituras codificadas.
[231] Os valores contidos no MIT ilustrado na figura 33 são utilizados para acessar diretamente a região de interesse (e o All correspondente) no domínio compactado.
[232] Por exemplo, com referência à figura 33, se for necessário acessar a região compreendida entre as posições 150.000 e 250.000 na referência 2, um aplicativo de decodificação passaria para a segunda referência no MIT e procuraria os dois valores k1 e k2 que k1 <150.000 e k2> 250.000. Onde k1 e k2 são 2 índices lidos do MIT. No exemplo da figura 33 este iria resultar nas 3o e 4o posições do segundo vetor do MIT. Esses valores retornados serão então usados pelo aplicativo de decodificação para buscar as posições dos dados apropriados da tabela de índices locais pos block, conforme descrito na próxima seção.
[233] Juntamente com ponteiros para o bloco contendo os dados pertencentes às quatro classes de dados genômicos descritos acima, o MIT pode ser usado como um índice de metadados adicionais e/ou anotações adicionadas aos dados genômicos durante seu ciclo de vida.
Tabela de índice local [234] Cada bloco de dados genômicos é prefixado com uma estrutura de dados chamada de cabeçalho local. O cabeçalho local contém um identificador exclusivo do bloco, um vetor de contadores de Unidades de Acesso para cada sequência de referência, uma Tabela de índice Local (LIT) e, opcionalmente, alguns metadados específicos de bloco. O LIT é um vetor de ponteiros para a posição física dos dados pertencentes a cada Unidade de Acesso na carga útil do bloco. A Figura 34 representa o cabeçalho de bloco genérico e a carga útil em que o LIT é utilizado para acessar regiões específicas dos dados codificados de uma maneira não sequencial.
[235] No exemplo anterior, para acessar a região de 150.000 a 250.000 de leituras alinhadas na sequência de referência no. 2, o aplicativo de decodificação recuperou as posições 3 e 4 do MIT. Estes valores devem ser usados pelo
Petição 870190075603, de 06/08/2019, pág. 180/387
64/68 processo de decodificação para acessar o 3o e 4o elementos da seção correspondente do LIT. No exemplo mostrado na figura 35, os contadores Total Access Units contidos no cabeçalho do bloco são usados para pular os índices LIT relacionados aos AUs relacionados à referência 1 (5 no exemplo). Os índices que contêm as posições físicas das UAs solicitadas no fluxo codificado são, portanto, calculados como:
posição dos blocos de dados pertencentes aos AU = blocos de dados solicitados pertencentes às UAs de referência 1 a serem pulados + posição recuperada usando o MIT, i.e.
Posição do primeiro bloco: 5 + 3 = 8
Última posição do bloco: 5 + 4 = 9 [236] Os blocos de dados recuperados usando o mecanismo de indexação chamado Tabela de índices Locais, são parte das Unidades de Acesso solicitadas.
[237] A figura 36 mostra como os blocos contidos na tabela MIT correspondem aos blocos do LIT para cada classe ou subclasse de dados.
[238] A Figura 37 mostra como os blocos de dados recuperados usando o MIT e o LIT compõem uma ou mais Unidades de Acesso, conforme definido na seção a seguir.
[239] Numa forma de realização desta invenção, o LIT pode ser integrado como uma subestrutura do MIT. A vantagem dessa abordagem é a velocidade de acesso aos dados indexados no caso de análise sequencial do arquivo compactado. Se o LIT estiver integrado no MIT no cabeçalho do arquivo, um dispositivo de decodificação precisaria analisar apenas uma pequena parte dos dados para recuperar as informações compactadas solicitadas no caso de acesso seletivo. Outra vantagem evidente para um perito na arte, no caso de streaming numa rede, quando a informação de indexação contida no MIT e LIT seria fornecida entre os primeiros blocos de dados, permitindo assim que o dispositivo receptor execute operaes tais como ordenar e acesso seletivo antes que toda a transferência de dados seja concluída.
Petição 870190075603, de 06/08/2019, pág. 181/387
65/68
Unidades de Acesso [240] Os dados genômicos classificados em classes de dados e estruturados em blocos compactados ou descompactados são organizados em diferentes Unidades de Acesso.
[241] Unidades de Acesso Genômico (AU) são definidas como seções de dados do genoma (numa forma comprimida ou não comprimida) que reconstrói sequências nucleotídicas e / ou os metadados relevantes e/ou sequência de DNA / RNA (por exemplo, a referência virtual) e/ou anotação dados gerados por uma máquina de sequenciamento do genoma e / ou um dispositivo de processamento genômico ou aplicativo de análise. Um exemplo de Access Unit é fornecido na figura 37.
[242] Uma Unidade de Acesso é um bloco de dados que pode ser decodificado independentemente de outras Unidades de Acesso usando somente dados disponíveis globalmente (por exemplo, configuração do decodificador) ou usando informações contidas em outras Unidades de Acesso.
[243] Unidades de Acesso são diferenciadas por:
- tipo, caracterizando a natureza dos dados genômicos e conjuntos de dados que eles carregam e a maneira como eles podem ser acessados,
- ordem, fornecendo uma ordem única para as Unidades de Acesso pertencentes ao mesmo tipo.
[244] Unidades de acesso de qualquer tipo podem ser classificadas em diferentes categorias.
[245] A seguir segue uma lista não exaustiva de definição de diferentes tipos de Unidades de Acesso genômicas:
1. As unidades de acesso do tipo 0 não precisam se referir a nenhuma informação proveniente de outras Unidades de Acesso a serem acessadas ou decodificadas e acessadas. Toda a informação transportada pelos dados ou conjuntos de dados que eles contêm pode ser independentemente lida e processada por um dispositivo de decodificação ou aplicativo de processamento.
Petição 870190075603, de 06/08/2019, pág. 182/387
66/68
2. Unidades de acesso do tipo 1 contêm dados referentes a dados transportados por Unidades de Acesso do tipo 0. Ler ou decodificar e processar os dados contidos em Unidades de Acesso do tipo 1 requer acesso a uma ou mais Unidades de Acesso do tipo 0. Unidade de acesso do tipo 1 codifica dados genômicos relacionados a leituras de sequência de Classe P “
3. As Unidades de Acesso do tipo 2 contêm dados referentes a dados transportados por Unidades de Acesso do tipo 0. Ler ou decodificar e processar os dados contidos em Unidades de Acesso do tipo 2 requer acesso a uma ou mais Unidades de Acesso do tipo 0. Unidade de acesso do tipo 2 codificam dados genômicos relacionados a leituras sequenciais de Classe N“
4. As Unidades de Acesso do tipo 3 contêm dados referentes a dados transportados por Unidades de Acesso do tipo 0. Ler ou decodificar e processar os dados contidos em Unidades de Acesso do tipo 3 requer acesso a uma ou mais Unidades de Acesso do tipo 0. Unidade de Acesso do Tipo 3 codificam dados genômicos relacionados a leituras sequenciais de Classe M”
5. As Unidades de Acesso do tipo 4 contêm dados referentes a dados transportados por Unidades de Acesso do tipo 0. Ler ou decodificar e processar os dados contidos em Unidades de Acesso do tipo 4 requer acesso a uma ou mais Unidades de Acesso do tipo 0. Unidade de acesso do tipo 4 codificam dados genômicos relacionados a leituras sequenciais de Classe I”
6. As Unidades de Acesso do tipo 5 contêm leituras que não podem ser mapeadas em nenhuma sequência de referência disponível (Classe U) e são codificadas utilizando uma sequência de referência construída internamente. As Unidades de Acesso do tipo 5 contêm dados referentes a dados transportados por Unidades de Acesso do tipo 0. Ler ou decodificar e processar os dados contidos em Unidades de Acesso do tipo 5 requer acesso a uma ou mais Unidades de Acesso do tipo 0.
7. As Unidades de Acesso do tipo 6 contêm pares de leituras onde uma leitura pode pertencer a qualquer uma das quatro classes P, N, Μ, I e a outra não pode ser mapeada em nenhuma sequência de referência disponível ( Class HM
Petição 870190075603, de 06/08/2019, pág. 183/387
67/68
). As Unidades de Acesso do tipo 6 contêm dados que se referem a dados transportados por Unidades de Acesso do tipo 0. Ler ou decodificar e processar os dados contidos em Unidades de Acesso do tipo 6 requer acesso a uma ou mais Unidades de Acesso do tipo 0.
8. As Unidades de Acesso do tipo 7 contêm metadados (por exemplo, índices de qualidade) e/ou dados de anotação associados aos dados ou conjuntos de dados contidos na unidade de acesso do tipo 1. Unidades de Acesso do tipo 7 podem ser classificadas e rotuladas em blocos diferentes.
9. As Unidades de Acesso do tipo 8 contêm dados ou conjuntos de dados classificados como dados de anotação. Unidades de Acesso do tipo 8 podem ser classificadas e rotuladas em blocos.
10. Unidades de Acesso de tipos adicionais podem estender a estrutura e os mecanismos descritos aqui. Como exemplo, mas não como limitação, os resultados da chamada de variantes genômicas, análise estrutural e funcional podem ser codificados em Unidades de Acesso de novos tipos. A organização de dados nas Unidades de Acesso aqui descritas não impede que qualquer tipo de dados seja encapsulado nas Unidades de Acesso, sendo o mecanismo completamente transparente em relação à natureza dos dados codificados.
[246] As unidades de acesso do tipo 0 são ordenadas (por exemplo, numeradas), mas não precisam ser armazenadas e/ou transmitidas de forma ordenada (vantagem técnica: processamento paralelo / fluxo paralelo, multiplexação) [247] Unidades de acesso do tipo 1, 2, 3, 4, 5 e 6 não precisam ser encomendadas e não precisam ser armazenadas e/ou transmitidas de forma ordenada (vantagem técnica: processamento paralelo / streaming paralelo).
[248] A Figura 37 mostra como as Unidades de Acesso são compostas por um cabeçalho e um ou mais blocos de dados homogêneos. Cada bloco pode ser composto por um ou mais blocos. Cada bloco contém vários pacotes e os pacotes são uma sequência estruturada dos descritores introduzidos acima para representar, por exemplo, posições de leituras, informações de emparelhamento,
Petição 870190075603, de 06/08/2019, pág. 184/387
68/68 informações de complemento reverso, posições e tipos de desemparelhamentos, etc.
[249] Cada unidade de acesso pode ter um número diferente de pacotes em cada bloco, mas dentro de uma unidade de acesso todos os blocos têm o mesmo número de pacotes.
Cada pacote de dados pode ser identificado pela combinação de 3 identificadores XYZ onde:
- X identifica a unidade de acesso a que pertence
- Y identifica o bloco ao qual pertence (ou seja, o tipo de dados que ele encapsula)
- Z é um identificador que expressa a ordem do pacote em relação a outros pacotes no mesmo bloco [250] A Figura 38 mostra um exemplo de Unidades de Acesso e rotulagem de pacotes, onde AU_T_N é uma unidade de acesso do tipo T com identificador N, que pode ou não implicar uma noção de ordem de acordo com o Tipo de Unidade de Acesso. Os identificadores são usados para associar exclusivamente unidades de acesso de um tipo aos de outros tipos necessários para decodificar completamente os dados genômicos transportados.
[251] Unidades de Acesso de qualquer tipo podem ser classificadas e rotuladas em diferentes “categorias de acordo com diferentes processos de sequenciamento. Por exemplo, mas não como limitação, a classificação e a rotulagem podem ocorrer
1. sequenciamento do mesmo organismo em alturas diferentes (unidades de acesso contém informação genômica com uma conotação de “temporais),
2. sequenciamento de amostras orgânicas de diferentes naturezas dos mesmos organismos (por exemplo, pele, sangue, cabelo para amostras humanas). Estes são unidades de acesso com uma conotação biológica.

Claims (66)

  1. REIVINDICAÇÕES
    1. Método para codificar dados da sequência do genoma, compreendendo os dados da sequência do genoma as leituras de sequências de nucleotídeos, o referido método caracterizado pelo fato de compreender as etapas de:
    alinhar as referidas leituras a uma ou mais sequências de referência, criando assim leituras alinhadas, classificar as referidas leituras alinhadas de acordo com regras de correspondência especificadas com a dita uma ou mais sequências de referência, criando desse modo classes de leituras alinhadas, codificar os classificados alinhados como uma multiplicidade de blocos de descritores, em que codificar as referidas listas alinhadas classificadas como uma multiplicidade de blocos de descritores compreende selecionar os referidos descritores de acordo com as referidas classes de leituras alinhadas, estruturar os ditos blocos de descritores com informação de cabeçalho, criando assim Unidades de Acesso sucessivas.
  2. 2. Método de codificação, de acordo com a reivindicação 1, caracterizado pelo fato de compreender ainda:
    classificação adicional das leituras que não satisfazem as regras de correspondência especificadas em uma classe de leituras não mapeadas, construir um conjunto de sequências de referência usando pelo menos algumas leituras não mapeadas, alinhar a dita classe de leituras não mapeadas ao conjunto de sequências de referência construídas, codificar os classificados alinhados como uma multiplicidade de blocos de descritores, codificação do dito conjunto de sequências de referência construídas, estruturar os referidos blocos de descritores e as referidas sequências de referência codificadas com informação de cabeçalho, criando assim Unidades de Acesso sucessivas.
    Petição 870190075603, de 06/08/2019, pág. 105/387
    2/13
  3. 3. Método, de acordo com a reivindicação 2, caracterizado pelo fato de que a referida classificação compreende a identificação de leituras genômicas sem qualquer incompatibilidade na sequência de referência como primeira Classe P” quando não há incompatibilidades presentes na leitura mapeada em relação à sequência de referência usada para mapeamento.
  4. 4. Método, de acordo com a reivindicação 3, caracterizado pelo fato de que a dita classificação compreende adicionalmente a identificação de leituras genômicas como uma segunda Classe N” quando incompatibilidades são encontradas somente nas posições onde a máquina de sequenciamento não era capaz de chamar qualquer “base e o número de desemparelhamentos de cada leitura não excede um determinado limite.
  5. 5. Método, de acordo com a reivindicação 4, caracterizado pelo fato de que a referida classificação compreende ainda a identificação da leitura genômica como uma terceira Classe H” quando desemparelhamentos são encontrados nas posições onde a máquina de sequenciação não foi capaz de chamar qualquer base de, com o nome tipo n” de desemparelhamentos, e/ou que chamado um diferente de base” do que a sequência de referência, com o nome tipo s” de desemparelhamentos, e o número de erros de emparelhamento não exceder determinados limites para o número de erros de emparelhamento de tipo n, de tipo s” e um limite obtido de uma dada função (f (n, s)).
  6. 6. Método, de acordo com a reivindicação 5, caracterizado pelo fato de que a dita classificação compreende ainda a identificação de leituras genômicas como uma quarta Classe I” quando elas podem possivelmente ter o mesmo tipo de desemparelhamentos de Classe M” e, além disso, pelo menos uma incompatibilidade de tipo: “inserção (“tipo i) “supressão (tipo d) clips suaves (tipo c), e em que o número de incompatibilidades para cada tipo não excede o limite dado correspondente e um limite fornecido por uma dada função (w (n, s, i, d, c)).
  7. 7. Método, de acordo com a reivindicação 6, caracterizado pelo fato de que a referida classificação compreende ainda a identificação de leituras genômicas
    Petição 870190075603, de 06/08/2019, pág. 106/387
    3 / 13 como uma quinta Classe II” como compreendendo todas as leituras que não encontram qualquer classificação nas Classes P, N, Μ, I.
  8. 8. Método de codificação, de acordo com a reivindicação 7, caracterizado pelo fato de que as leituras da sequência genômica a codificar estão emparelhadas.
  9. 9. Método, de acordo com a reivindicação 8, caracterizado pelo fato de que a referida classificação compreende ainda a identificação de leituras genômicas como uma sexta Classe HM” como compreendendo todos os pares de leituras onde uma leitura pertence à Classe P, N, M ou I e a outra leitura pertence a Classe U”.
  10. 10. Método de codificação, de acordo com a reivindicação 9, caracterizado pelo fato de compreender ainda as etapas de:
    identificar se as duas leituras de posicionamento são classificadas na mesma classe (cada uma delas: P, N, Μ, I, II) e, em seguida, atribuir o par à mesma classe identificada, identificar se as duas leituras de posicionamento são classificadas em classes diferentes e se nenhuma delas pertence à Classe II” e, em seguida, atribuir o par de leituras à classe com a prioridade mais alta definida de acordo com a seguinte expressão:
    P < N < Μ < I em que a Classe P” tem a prioridade mais baixa e a Classe I” tem a prioridade mais alta;
    identificar se apenas uma das duas leituras de posicionamento foi classificada como pertencente à Classe II” e classificar o par de leituras como pertencendo às sequências Classe HM.
  11. 11. Método, de acordo com a reivindicação 11, caracterizado pelo fato de que cada classe de leituras N, Μ, I é dividida em duas ou mais subclasses (296, 297, 298) de acordo com um vetor de limites (292, 293, 294) definidos respectivamente para cada classe. N, M e I, pelo número de discordâncias do tipo n (292), a função f (n, s) (293) e a função w (n, s, i, d, c) (294).
    Petição 870190075603, de 06/08/2019, pág. 107/387
    4/13
  12. 12. Método de codificação, de acordo com a reivindicação 11, caracterizado pelo fato de compreender ainda as etapas de:
    identificar se as duas leituras de parceiros são classificadas na mesma subclasse e, em seguida, atribuir o par à mesma subclasse, identificar se as duas leituras de posicionamento são classificadas em subclasses de Classes diferentes e, em seguida, atribuindo o par à subclasse pertencente à Classe de prioridade mais alta de acordo com a seguinte expressão:
    N <M <l onde N tem a prioridade mais baixa e eu tenho a prioridade mais alta;
    identificar se as duas leituras de alinhamento são classificadas na mesma classe, e tal classe é N ou M ou I, mas em subclasses diferentes, então atribuindo o par à subclasse com a maior prioridade de acordo com as seguintes expressões:
    Ni < N2 < ... < Nk
    Mi < M2< ... < Mj l-i < I2< ... < lh onde o índice mais alto tem a prioridade mais alta.
  13. 13. Método, de acordo com a reivindicação 12, caracterizado pelo fato de que a informação sobre a posição de mapeamento de cada leitura é codificado por meio de um bloco descritor “pos.
  14. 14. Método, de acordo com a reivindicação 13, caracterizado pelo fato de que a informação sobre o encalhamento (isto é, a fita de DNA da qual a leitura foi sequenciada) de cada leitura é codificada por meio de um bloco descritor rcomp.
  15. 15. Método, de acordo com a reivindicação 14, caracterizado pelo fato de que as informações de emparelhamento de emparelhado-fim lê é codificado por meio de um bloco descritor “par.
  16. 16. Método, de acordo com a reivindicação 15, caracterizado pelo fato de que a informação de alinhamento adicional, tal como se a leitura está mapeado no par adequado, ele falha controlos de qualidade plataforma / fornecedor, que é um
    Petição 870190075603, de 06/08/2019, pág. 108/387
    5 / 13 duplicado de PCR ou óptico ou é um alinhamento complementar é codificado por meio de um bloco descritor de flags.
  17. 17. Método, de acordo com a reivindicação 16, caracterizado pelo fato de que as informações em bases desconhecidas é codificado por meio de um bloco descritor “NMIs.
  18. 18. Método, de acordo com a reivindicação 17, caracterizado pelo fato de que a informação sobre a posição de substituições é codificado por meio de um bloco descritor SNPP.
  19. 19. Método, de acordo com a reivindicação 18, caracterizado pelo fato de que a informação sobre o tipo de substituições é codificada por meio de um bloco descritor snpt específico.
  20. 20. Método, de acordo com a reivindicação 19, caracterizado pelo fato de que a informação sobre a posição de desemparelhamentos de tipo substituições, inserções ou deleções são codificados por meio de um bloco descritor “INDP.
  21. 21. Método, de acordo com a reivindicação 20, caracterizado pelo fato de que as informações sobre o tipo de erros de emparelhamento, tais como substituições, inserções ou deleções são codificados por meio de um bloco descritor INdT.
  22. 22. Método, de acordo com a reivindicação 21, em que as informações em bases cortadas de uma leitura mapeado é codificado por meio de um bloco descritor INDO
  23. 23. Método, de acordo com a reivindicação 22, caracterizado pelo fato de que a informação em leituras não mapeado é codificado por meio de um bloco descritor ureads.
  24. 24. Método, de acordo com a reivindicação 23, caracterizado pelo fato de que as informações sobre o tipo de sequência de referência usado para a codificação é codificado por meio de um bloco descritor Rtype.
  25. 25. Método, de acordo com a reivindicação 24, caracterizado pelo fato de que a informação em vários alinhamentos da mapeado lê é codificado por meio de um bloco descritor mapeamento de memória.
    Petição 870190075603, de 06/08/2019, pág. 109/387
    6/13
  26. 26. Método, de acordo com a reivindicação 25, caracterizado pelo fato de que a informação sobre os alinhamentos de splicing e alinhamentos múltiplos da mesma leitura é codificado por meio de um bloco descritor RAEM“ e um bloco descritor mapeamento de memória.
  27. 27. Método, de acordo com a reivindicação 26, caracterizado pelo fato de que a informação na pontuação de alinhamento de leitura é codificado por meio de um bloco descritor mscore.
  28. 28. Método, de acordo com a reivindicação 27, caracterizado pelo fato de que a informação sobre os grupos lê pertencem é codificado por meio de um bloco descritor rgroup.
  29. 29. Método, de acordo com a reivindicação 28, caracterizado pelo fato de que as Unidades de Acesso da classe P são construídas utilizando blocos de descritores do tipo pos, “rcomp e flags.
  30. 30. Método, de acordo com a reivindicação 29, caracterizado pelo fato de que as ditas Unidades de Acesso da classe P codificam a informação de emparelhamento da extremidade emparelhada usando um bloco de descritores de par.
  31. 31. Método, de acordo com a reivindicação 30 caracterizado pelo fato de que o acesso unidades de classe N são construídos utilizando os mesmos blocos de descritores de uma unidade de acesso de classe P mais um bloco descritor “NMIs para a informação sobre a posição de bases desconhecidas.
  32. 32. Método, de acordo com a reivindicação 30, caracterizado pelo fato de que unidades de acesso de classe H são construídos utilizando os mesmos blocos de descritores de unidades de acesso de classe P mais os blocos descritores “SNPP e “snpt para a informação sobre a posição e tipo de substituições.
  33. 33. Método, de acordo com a reivindicação 30, caracterizado pelo fato de que unidades de acesso de classe I são construídos utilizando os mesmos blocos de descritores de unidades de acesso de classe P mais os blocos descritores
    Petição 870190075603, de 06/08/2019, pág. 110/387
    7/13
    INDP, “INdT e “INDC para a informação sobre a posição e tipo de substituições, inserções, deleções e bases recortadas.
  34. 34. Método, de acordo com a reivindicação 33, caracterizado pelo fato de que as Unidades de Acesso de classe HM são construídos utilizando os mesmos blocos de descritores de unidades de acesso de classe I para a leitura mapeado, e utilizando blocos descritores “ureads para a leitura não mapeada.
  35. 35. Método, de acordo com a reivindicação 33, caracterizado pelo fato de que a informação sobre múltiplos alinhamentos é transmitida usando blocos do descritor “mmap e msar.
  36. 36. Método, de acordo com a reivindicação 35, caracterizado pelo fato de que a informação sobre os alinhamentos combinados é transmitida usando uma cadeia de charuto estendida compreendendo:
    - o símbolo = para indicar bases correspondentes
    - o símbolo + para indicar inserções
    - o símbolo - para indicar exclusões
    - o símbolo / para indicar uma emenda na linha de frente
    - o símbolo % para indicar uma emenda na cadeia reversa
    - o símbolo * para indicar uma emenda não direcionada
    - um caractere textual dos códigos IUPAC para DNA para indicar uma substituição
    - o símbolo (n) para indicar n bases recortadas em que n é um número inteiro
    - o símbolo [n] para indicar n bases recortadas em que n é um número inteiro.
  37. 37. Método, de acordo com a reivindicação 36, caracterizado por os ditos blocos de descritores compreenderem uma tabela de índices mestre, contendo uma seção para cada Classe e subclasse de leituras alinhadas, compreendendo a seção as posições de mapeamento na dita uma ou mais sequências de referência da primeira, ler de cada Unidade de Acesso de cada Classe ou subclasse de
    Petição 870190075603, de 06/08/2019, pág. 111/387
    8/13 dados; codificação conjunta da referida tabela de índices mestre” e dos referidos dados da Unidade de Acesso.
  38. 38. Método, de acordo com a reivindicação 37, caracterizado pelo fato de que os ditos blocos de descritores compreendem adicionalmente informação sobre o tipo de referência usado (pré-existente ou construído), e os segmentos da leitura que não mapeiam na sequência de referência.
  39. 39. Método, de acordo com a reivindicação 38, caracterizado pelo fato de que as referidas sequências de referência são primeiro transformadas em diferentes sequências de referência através da aplicação de substituições, inserções, deleções e cortes, depois a codificação das referidas leituras alinhadas classificadas como uma multiplicidade de blocos de descritores refere-se às sequências de referência transformadas.
  40. 40. Método, de acordo com a reivindicação 39, caracterizado pelo fato de que a mesma transformação é aplicada às sequências de referência usadas para todas as classes de dados.
  41. 41. Método, de acordo com a reivindicação 40, caracterizado pelo fato de que diferentes transformações são aplicadas às sequências de referência usadas para cada classe de dados.
  42. 42. Método, de acordo com a reivindicação 41, caracterizado pelo fato de que as transformações das sequências de referência são codificadas como blocos de descritores e estruturadas com informação de cabeçalho, criando assim Unidades de Acesso sucessivas.
  43. 43. Método, de acordo com a reivindicação 42, caracterizado pelo fato de que a codificação das referidas leituras alinhadas classificadas e as transformações de sequências de referência relacionadas como multiplicidade de blocos de descritores compreende a etapa de associar um modelo de fonte específico e um codificador de entropia específica a cada bloco de descritores.
  44. 44. Método, de acordo com a reivindicação 43, caracterizado pelo fato de que o dito codificador de entropia é um de um codificador aritmético adaptativo de contexto, um codificador de comprimento variável ou um codificador golomb.
    Petição 870190075603, de 06/08/2019, pág. 112/387
    9/13
  45. 45. Método para decodificar dados genômicos codificados caracterizado pelo fato de compreender as etapas de:
    analisar Unidades de Acesso contendo os ditos dados genômicos codificados para extrair vários blocos de descritores empregando informações de cabeçalho, decodificar a referida multiplicidade de blocos de descritores para extrair leituras de acordo com regras de correspondência específicas que definem a sua classificação em relação a uma ou mais sequências de referência.
  46. 46. Método de decodificação, de acordo com a reivindicação 45, caracterizado pelo fato de compreender adicionalmente decodificar uma tabela de índice mestre contendo uma seção para cada classe de leituras e as posições de mapeamento relevantes associadas.
  47. 47. Método de decodificação, de acordo com a reivindicação 46, caracterizado pelo fato de compreender adicionalmente informações de decodificação relacionadas ao tipo de referência utilizado: pré-existente, transformado ou construído.
  48. 48. Método de descodificação, de acordo com a reivindicação 47, caracterizado pelo fato de compreender adicionalmente informação de descodificação relacionada com uma ou mais transformações a serem aplicadas às sequências de referência pré-existentes.
  49. 49. Método de decodificação, de acordo com a reivindicação 48, caracterizado pelo fato de que o dito bloco descritor é decodificado por entropia.
  50. 50. Método de decodificação, de acordo com a reivindicação 49, caracterizado pelo fato de que:
    - as leituras de classe P são obtidas por blocos de decodificação de descritores do tipo: pos, rcomp, “flags e rlen,
    - as leituras de classe N são obtidas por decodificação de blocos de descritores do tipo: pos, rcomp, flags, “rlen e nmis,
    - as leituras de classe M são obtidas por decodificação de blocos de descritores do tipo: pos, rcomp, flags, rlen, “snpp e snpt,
    Petição 870190075603, de 06/08/2019, pág. 113/387
    10/13
    - as leituras de classe I são obtidas por decodificação de blocos de descritores do tipo: pos, rcomp, flags, rlen, indp, “indt e indo,
    - as leituras de classe U são obtidas por decodificação de blocos de descritores do tipo: pos, rcomp, flags, rlen, snpp, snpt, indo, “ureads e “rtype.
  51. 51. Método de decodificação, de acordo com a reivindicação 50, caracterizado pelo fato de que leituras pareadas de:
    - classes P, N, M e I são obtidas também por decodificação de blocos de descritores do tipo: par,
    - classes HM são obtidas por decodificação de blocos de descritores do tipo: pos, rcomp, flags, rlen, indp, indt, “indo e ureads.
  52. 52. Codificador genômico (2010) para a compressão dos dados da sequência do genoma 209, os referidos dados da sequência do genoma 209 compreendendo leituras de sequências de nucleotídeos, o referido codificador genômico (2010) caracterizado pelo fato de compreender:
    uma unidade de alinhamento (201), configurada para alinhar as referidas leituras a uma ou mais sequências de referência, criando assim leituras alinhadas, uma unidade geradora de referência construída (202), configurada para produzir sequências de referência construídas uma unidade de classificação de dados (204), configurada para classificar as referidas leituras alinhadas de acordo com as regras de correspondência especificadas com uma ou mais sequências de referência pré-existentes ou sequências de referência construídas, criando assim classes de leituras alinhadas (208);
    uma ou mais unidades de codificação de blocos (205-207), configuradas para codificar as referidas leituras alinhadas classificadas como blocos de descritores selecionando os referidos descritores de acordo com as referidas classes de leituras alinhadas,
    Petição 870190075603, de 06/08/2019, pág. 114/387
    11 / 13 um multiplexador (2016) para multiplexar os dados genômicos e metadados comprimidos.
  53. 53. Codificador genômico, de acordo com a reivindicação 52, caracterizado pelo fato de compreender ainda uma unidade de transformação de sequência de referência (2019) configurada para transformar as referências e classes de dados preexistentes (208) em classes de dados transformadas (2018).
  54. 54. Codificador genômico, de acordo com a reivindicação 53, caracterizado pelo fato de que a unidade de classificação de dados (204) contém codificadores de classes de dados N, M e I configurados com vetores de limites gerando subclasses de classes de dados N, M e I.
  55. 55. Codificador genômico, de acordo com a reivindicação 54, caracterizado pelo fato de que a unidade de transformação de referência (2019) aplica a mesma transformação de referência (300) para todas as classes e subclasses de dados.
  56. 56. Codificador genômico, de acordo com a reivindicação 54, caracterizado pelo fato de que a unidade de transformação de referência (2019) aplica diferentes transformações de referência (301, 302, 303) para as diferentes classes e subclasses de dados.
  57. 57. Codificador genômico, de acordo com a reivindicação 54, caracterizado pelo fato de compreendendo adicionalmente meios de codificação adequados para executar o método de codificação da reivindicação 12.
  58. 58. Decodificador genômico (218) para a descompressão de uma corrente genômica comprimida (211), o referido decodificador genômico (218) caracterizado pelo fato de compreender:
    um desmultiplexador (210) para desmultiplexar dados genômicos e metadados comprimidos, meios de análise (212-214) configurados para analisar a referida corrente genômica comprimida em blocos genômicos de descritores (215),
    Petição 870190075603, de 06/08/2019, pág. 115/387
    12/13 um ou mais decodificadores de bloco (216-217), configurados para decodificar os blocos genômicos de descritores em leituras classificadas de sequências de nucleotídeos (2111), decodificadores de classes de dados genômicos (219) configurados para decodificar seletivamente as referidas listas classificadas de sequências, de nucleotídeos numa ou mais sequências de referência, de modo a produzir leituras não comprimidas de sequências de nucleotídeos.
  59. 59. Decodificador genômico, de acordo com a reivindicação 58, caracterizado pelo fato de compreender ainda um decodificador de transformação de referência (2113) configurado para descodificar descritores de transformação de referência (2112) e produzir uma referência transformada (2114) a ser utilizada por decodificadores de classe de dados genômicos (219).
  60. 60. Decodificador genômico, de acordo com a reivindicação 59, caracterizado pelo fato de que uma ou mais sequências de referência são armazenadas na corrente de genoma comprimido (211).
  61. 61. Decodificador genômico, de acordo com a reivindicação 59, caracterizado pelo fato de que uma ou mais sequências de referência são fornecidas ao decodificador através de um mecanismo fora de banda.
  62. 62. Decodificador genômico, de acordo com a reivindicação 59, caracterizado pelo fato de que uma ou mais sequências de referência são construídas no decodificador.
  63. 63. Decodificador genômico, de acordo com a reivindicação 59, caracterizado pelo fato de que uma ou mais sequências de referência são transformadas no decodificador por um decodificador de transformação de referência (2113).
  64. 64. Meio legível por computador caracterizado pelo fato de compreender instruções que, quando executadas, fazem com que pelo menos um processador execute o método de codificação conforme definido na reivindicação 12.
  65. 65. Meio legível por computador caracterizado pelo fato de compreender instruções que, quando executadas, fazem com que, pelo menos, um
    Petição 870190075603, de 06/08/2019, pág. 116/387
    13 / 13 processador execute o método de descod if icação conforme definido na reivindicação 59.
  66. 66. Dados de suporte caracterizados pelo fato de que armazenam uma leitura genômica codificada de acordo com o método conforme definido na reivindicação 12.
BR112019016236A 2016-10-11 2018-02-14 método e aparelho para a representação compacta de dados de bioinformática usando descritores genômicos múltiplos referência cruzada a pedidos relacionados BR112019016236A2 (pt)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
PCT/EP2016/074301 WO2018068828A1 (en) 2016-10-11 2016-10-11 Method and system for storing and accessing bioinformatics data
PCT/EP2016/074307 WO2018068829A1 (en) 2016-10-11 2016-10-11 Method and apparatus for compact representation of bioinformatics data
PCT/EP2016/074311 WO2018068830A1 (en) 2016-10-11 2016-10-11 Method and system for the transmission of bioinformatics data
PCT/EP2016/074297 WO2018068827A1 (en) 2016-10-11 2016-10-11 Efficient data structures for bioinformatics information representation
PCT/US2017/017842 WO2018071055A1 (en) 2016-10-11 2017-02-14 Method and apparatus for the compact representation of bioinformatics data
PCT/US2017/041591 WO2018071080A2 (en) 2016-10-11 2017-07-11 Method and systems for the representation and processing of bioinformatics data using reference sequences
PCT/US2018/018092 WO2018152143A1 (en) 2017-02-14 2018-02-14 Method and apparatus for the compact representation of bioinformatics data using multiple genomic descriptors

Publications (1)

Publication Number Publication Date
BR112019016236A2 true BR112019016236A2 (pt) 2020-04-07

Family

ID=61905752

Family Applications (7)

Application Number Title Priority Date Filing Date
BR112019007359A BR112019007359A2 (pt) 2016-10-11 2017-02-14 método e sistema para acesso seletivo dos dados bioinformáticos armazenados ou transmitidos
BR112019007357A BR112019007357A2 (pt) 2016-10-11 2017-07-11 método e sistemas para a indexação de dados de bioinformática
BR112019007363A BR112019007363A2 (pt) 2016-10-11 2017-07-11 método e aparelho para o acesso aos dados bioinformáticos estruturados nas unidades de acesso
BR112019007360A BR112019007360A2 (pt) 2016-10-11 2017-07-11 método e sistemas para a representação e processamento de dados de bioinformática utilizando sequências de referência
BR112019016230A BR112019016230A2 (pt) 2016-10-11 2017-12-14 método e sistemas para a reconstrução de sequências de referência genômicas a partir de leituras de sequência genômica comprimidas
BR112019016232A BR112019016232A2 (pt) 2016-10-11 2017-12-15 método e sistemas para a compressão eficiente de leituras de sequencia genômica
BR112019016236A BR112019016236A2 (pt) 2016-10-11 2018-02-14 método e aparelho para a representação compacta de dados de bioinformática usando descritores genômicos múltiplos referência cruzada a pedidos relacionados

Family Applications Before (6)

Application Number Title Priority Date Filing Date
BR112019007359A BR112019007359A2 (pt) 2016-10-11 2017-02-14 método e sistema para acesso seletivo dos dados bioinformáticos armazenados ou transmitidos
BR112019007357A BR112019007357A2 (pt) 2016-10-11 2017-07-11 método e sistemas para a indexação de dados de bioinformática
BR112019007363A BR112019007363A2 (pt) 2016-10-11 2017-07-11 método e aparelho para o acesso aos dados bioinformáticos estruturados nas unidades de acesso
BR112019007360A BR112019007360A2 (pt) 2016-10-11 2017-07-11 método e sistemas para a representação e processamento de dados de bioinformática utilizando sequências de referência
BR112019016230A BR112019016230A2 (pt) 2016-10-11 2017-12-14 método e sistemas para a reconstrução de sequências de referência genômicas a partir de leituras de sequência genômica comprimidas
BR112019016232A BR112019016232A2 (pt) 2016-10-11 2017-12-15 método e sistemas para a compressão eficiente de leituras de sequencia genômica

Country Status (17)

Country Link
US (6) US20200042735A1 (pt)
EP (3) EP3526694A4 (pt)
JP (4) JP2020505702A (pt)
KR (4) KR20190073426A (pt)
CN (6) CN110168651A (pt)
AU (3) AU2017342688A1 (pt)
BR (7) BR112019007359A2 (pt)
CA (3) CA3040138A1 (pt)
CL (6) CL2019000968A1 (pt)
CO (6) CO2019003638A2 (pt)
EA (2) EA201990916A1 (pt)
IL (3) IL265879B2 (pt)
MX (2) MX2019004130A (pt)
PE (7) PE20191058A1 (pt)
PH (6) PH12019550060A1 (pt)
SG (3) SG11201903270RA (pt)
WO (4) WO2018071054A1 (pt)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2526598B (en) * 2014-05-29 2018-11-28 Imagination Tech Ltd Allocation of primitives to primitive blocks
US11574287B2 (en) 2017-10-10 2023-02-07 Text IQ, Inc. Automatic document classification
US11030324B2 (en) * 2017-11-30 2021-06-08 Koninklijke Philips N.V. Proactive resistance to re-identification of genomic data
WO2019191083A1 (en) * 2018-03-26 2019-10-03 Colorado State University Research Foundation Apparatuses, systems and methods for generating and tracking molecular digital signatures to ensure authenticity and integrity of synthetic dna molecules
MX2020012672A (es) * 2018-05-31 2021-02-09 Koninklijke Philips Nv Sistema y metodo para interpretacion de alelos usando un genoma de referencia basado en graficos.
CN108753765B (zh) * 2018-06-08 2020-12-08 中国科学院遗传与发育生物学研究所 一种构建超长连续dna序列的基因组组装方法
US20200058379A1 (en) * 2018-08-20 2020-02-20 The Board Of Trustees Of The Leland Stanford Junior University Systems and Methods for Compressing Genetic Sequencing Data and Uses Thereof
GB2585816A (en) * 2018-12-12 2021-01-27 Univ York Proof-of-work for blockchain applications
US20210074381A1 (en) * 2019-09-11 2021-03-11 Enancio Method for the compression of genome sequence data
CN110797087B (zh) * 2019-10-17 2020-11-03 南京医基云医疗数据研究院有限公司 测序序列处理方法及装置、存储介质、电子设备
JP2022553199A (ja) 2019-10-18 2022-12-22 コーニンクレッカ フィリップス エヌ ヴェ 多様な表形式データの効果的な圧縮、表現、および展開のためのシステムおよび方法
CN111243663B (zh) * 2020-02-26 2022-06-07 西安交通大学 一种基于模式增长算法的基因变异检测方法
CN111370070B (zh) * 2020-02-27 2023-10-27 中国科学院计算技术研究所 一种针对大数据基因测序文件的压缩处理方法
US20210295949A1 (en) * 2020-03-17 2021-09-23 Western Digital Technologies, Inc. Devices and methods for locating a sample read in a reference genome
US11837330B2 (en) 2020-03-18 2023-12-05 Western Digital Technologies, Inc. Reference-guided genome sequencing
EP3896698A1 (en) * 2020-04-15 2021-10-20 Genomsys SA Method and system for the efficient data compression in mpeg-g
CN111459208A (zh) * 2020-04-17 2020-07-28 南京铁道职业技术学院 针对地铁供电系统电能的操纵系统及其方法
AU2021342166A1 (en) * 2020-09-14 2023-01-05 Illumina, Inc. Custom data files for personalized medicine
CN112836355B (zh) * 2021-01-14 2023-04-18 西安科技大学 一种预测采煤工作面顶板来压概率的方法
ES2930699A1 (es) * 2021-06-10 2022-12-20 Veritas Intercontinental S L Metodo de analisis genomico en una plataforma bioinformatica
CN113670643B (zh) * 2021-08-30 2023-05-12 四川虹美智能科技有限公司 智能空调测试方法及系统
CN113643761B (zh) * 2021-10-13 2022-01-18 苏州赛美科基因科技有限公司 一种用于解读二代测序结果所需数据的提取方法
US20230187020A1 (en) * 2021-12-15 2023-06-15 Illumina Software, Inc. Systems and methods for iterative and scalable population-scale variant analysis
CN115391284B (zh) * 2022-10-31 2023-02-03 四川大学华西医院 基因数据文件快速识别方法、系统和计算机可读存储介质
CN116541348B (zh) * 2023-03-22 2023-09-26 河北热点科技股份有限公司 数据智能存储方法及终端查询一体机
CN116739646B (zh) * 2023-08-15 2023-11-24 南京易联阳光信息技术股份有限公司 网络交易大数据分析方法及分析系统
CN117153270B (zh) * 2023-10-30 2024-02-02 吉林华瑞基因科技有限公司 一种基因二代测序数据处理方法

Family Cites Families (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6303297B1 (en) * 1992-07-17 2001-10-16 Incyte Pharmaceuticals, Inc. Database for storage and analysis of full-length sequences
JP3429674B2 (ja) 1998-04-28 2003-07-22 沖電気工業株式会社 多重通信システム
EP1410301A4 (en) * 2000-04-12 2008-01-23 Cleveland Clinic Foundation SYSTEM FOR IDENTIFYING AND ANALYZING GENE EXPRESSION CONTAINING ELEMENTS RICH IN ADENYLATE URIDYLATE (ARE)
FR2820563B1 (fr) * 2001-02-02 2003-05-16 Expway Procede de compression/decompression d'un document structure
US20040153255A1 (en) * 2003-02-03 2004-08-05 Ahn Tae-Jin Apparatus and method for encoding DNA sequence, and computer readable medium
DE10320711A1 (de) * 2003-05-08 2004-12-16 Siemens Ag Verfahren und Anordnung zur Einrichtung und Aktualisierung einer Benutzeroberfläche zum Zugriff auf Informationsseiten in einem Datennetz
WO2005024562A2 (en) * 2003-08-11 2005-03-17 Eloret Corporation System and method for pattern recognition in sequential data
US7805282B2 (en) * 2004-03-30 2010-09-28 New York University Process, software arrangement and computer-accessible medium for obtaining information associated with a haplotype
US8340914B2 (en) * 2004-11-08 2012-12-25 Gatewood Joe M Methods and systems for compressing and comparing genomic data
US20130332133A1 (en) * 2006-05-11 2013-12-12 Ramot At Tel Aviv University Ltd. Classification of Protein Sequences and Uses of Classified Proteins
SE531398C2 (sv) 2007-02-16 2009-03-24 Scalado Ab Generering av en dataström och identifiering av positioner inuti en dataström
KR101369745B1 (ko) * 2007-04-11 2014-03-07 삼성전자주식회사 비동기화된 비트스트림들의 다중화 및 역다중화 방법 및장치
US8832112B2 (en) * 2008-06-17 2014-09-09 International Business Machines Corporation Encoded matrix index
GB2477703A (en) * 2008-11-14 2011-08-10 Real Time Genomics Inc A method and system for analysing data sequences
US20100217532A1 (en) * 2009-02-25 2010-08-26 University Of Delaware Systems and methods for identifying structurally or functionally significant amino acid sequences
DK2494060T3 (en) * 2009-10-30 2016-08-01 Synthetic Genomics Inc Coding of text for nucleic acid sequences
EP2362657B1 (en) * 2010-02-18 2013-04-24 Research In Motion Limited Parallel entropy coding and decoding methods and devices
US20140228223A1 (en) * 2010-05-10 2014-08-14 Andreas Gnirke High throughput paired-end sequencing of large-insert clone libraries
CA2797645C (en) * 2010-05-25 2020-09-22 The Regents Of The University Of California Bambam: parallel comparative analysis of high-throughput sequencing data
JP6420543B2 (ja) * 2011-01-19 2018-11-07 コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. ゲノムデータ処理方法
US9215162B2 (en) * 2011-03-09 2015-12-15 Annai Systems Inc. Biological data networks and methods therefor
CN103797486A (zh) * 2011-06-06 2014-05-14 皇家飞利浦有限公司 用于组装核酸序列数据的方法
PL2721819T3 (pl) * 2011-06-16 2024-02-19 Ge Video Compression, Llc Kodowanie entropijne obsługujące przełączanie trybów
US8707289B2 (en) * 2011-07-20 2014-04-22 Google Inc. Multiple application versions
CN104081772B (zh) * 2011-10-06 2018-04-10 弗劳恩霍夫应用研究促进协会 熵编码缓冲器配置
EP2776962A4 (en) * 2011-11-07 2015-12-02 Ingenuity Systems Inc METHODS AND SYSTEMS FOR IDENTIFICATION OF CAUSAL GENOMIC VARIANTS
KR101922129B1 (ko) * 2011-12-05 2018-11-26 삼성전자주식회사 차세대 시퀀싱을 이용하여 획득된 유전 정보를 압축 및 압축해제하는 방법 및 장치
KR20190016149A (ko) * 2011-12-08 2019-02-15 파이브3 제노믹스, 엘엘씨 게놈 데이터의 동적 인덱싱 및 시각화를 제공하는 분산 시스템
EP2608096B1 (en) * 2011-12-24 2020-08-05 Tata Consultancy Services Ltd. Compression of genomic data file
US9600625B2 (en) * 2012-04-23 2017-03-21 Bina Technologies, Inc. Systems and methods for processing nucleic acid sequence data
CN103049680B (zh) * 2012-12-29 2016-09-07 深圳先进技术研究院 基因测序数据读取方法及系统
US9679104B2 (en) * 2013-01-17 2017-06-13 Edico Genome, Corp. Bioinformatics systems, apparatuses, and methods executed on an integrated circuit processing platform
WO2014145503A2 (en) * 2013-03-15 2014-09-18 Lieber Institute For Brain Development Sequence alignment using divide and conquer maximum oligonucleotide mapping (dcmom), apparatus, system and method related thereto
JP6054790B2 (ja) * 2013-03-28 2016-12-27 三菱スペース・ソフトウエア株式会社 遺伝子情報記憶装置、遺伝子情報検索装置、遺伝子情報記憶プログラム、遺伝子情報検索プログラム、遺伝子情報記憶方法、遺伝子情報検索方法及び遺伝子情報検索システム
GB2512829B (en) * 2013-04-05 2015-05-27 Canon Kk Method and apparatus for encoding or decoding an image with inter layer motion information prediction according to motion information compression scheme
WO2014186604A1 (en) * 2013-05-15 2014-11-20 Edico Genome Corp. Bioinformatics systems, apparatuses, and methods executed on an integrated circuit processing platform
KR101522087B1 (ko) * 2013-06-19 2015-05-28 삼성에스디에스 주식회사 미스매치를 고려한 염기 서열 정렬 시스템 및 방법
CN103336916B (zh) * 2013-07-05 2016-04-06 中国科学院数学与系统科学研究院 一种测序序列映射方法及系统
US20150032711A1 (en) * 2013-07-06 2015-01-29 Victor Kunin Methods for identification of organisms, assigning reads to organisms, and identification of genes in metagenomic sequences
KR101493982B1 (ko) * 2013-09-26 2015-02-23 대한민국 품종인식 코드화 시스템 및 이를 이용한 코드화 방법
CN104699998A (zh) * 2013-12-06 2015-06-10 国际商业机器公司 用于对基因组进行压缩和解压缩的方法和装置
US10902937B2 (en) * 2014-02-12 2021-01-26 International Business Machines Corporation Lossless compression of DNA sequences
US9916313B2 (en) * 2014-02-14 2018-03-13 Sap Se Mapping of extensible datasets to relational database schemas
US9886561B2 (en) * 2014-02-19 2018-02-06 The Regents Of The University Of California Efficient encoding and storage and retrieval of genomic data
US9354922B2 (en) * 2014-04-02 2016-05-31 International Business Machines Corporation Metadata-driven workflows and integration with genomic data processing systems and techniques
US20150379195A1 (en) * 2014-06-25 2015-12-31 The Board Of Trustees Of The Leland Stanford Junior University Software haplotying of hla loci
GB2527588B (en) * 2014-06-27 2016-05-18 Gurulogic Microsystems Oy Encoder and decoder
US20160019339A1 (en) * 2014-07-06 2016-01-21 Mercator BioLogic Incorporated Bioinformatics tools, systems and methods for sequence assembly
US10230390B2 (en) * 2014-08-29 2019-03-12 Bonnie Berger Leighton Compressively-accelerated read mapping framework for next-generation sequencing
US10116632B2 (en) * 2014-09-12 2018-10-30 New York University System, method and computer-accessible medium for secure and compressed transmission of genomic data
US20160125130A1 (en) * 2014-11-05 2016-05-05 Agilent Technologies, Inc. Method for assigning target-enriched sequence reads to a genomic location
WO2016202918A1 (en) * 2015-06-16 2016-12-22 Gottfried Wilhelm Leibniz Universität Hannover Method for compressing genomic data
CN105956417A (zh) * 2016-05-04 2016-09-21 西安电子科技大学 云环境下基于编辑距离的相似碱基序列查询方法
CN105975811B (zh) * 2016-05-09 2019-03-15 管仁初 一种智能比对的基因序列分析装置

Also Published As

Publication number Publication date
PE20191056A1 (es) 2019-08-06
JP2020505702A (ja) 2020-02-20
CL2019000972A1 (es) 2019-08-23
AU2017341685A1 (en) 2019-05-02
CO2019003595A2 (es) 2019-08-30
CO2019009920A2 (es) 2020-01-17
EP3526707A4 (en) 2020-06-17
PH12019550059A1 (en) 2019-12-16
SG11201903272XA (en) 2019-05-30
WO2018071080A3 (en) 2018-06-28
PH12019501881A1 (en) 2020-06-29
KR20190062541A (ko) 2019-06-05
CL2019000968A1 (es) 2019-08-23
EP3526694A1 (en) 2019-08-21
PE20191227A1 (es) 2019-09-11
BR112019016232A2 (pt) 2020-04-07
BR112019007360A2 (pt) 2019-07-09
US20190385702A1 (en) 2019-12-19
IL265928A (en) 2019-05-30
PE20191057A1 (es) 2019-08-06
EA201990917A1 (ru) 2019-08-30
JP2020500382A (ja) 2020-01-09
CL2019000973A1 (es) 2019-08-23
CL2019002277A1 (es) 2019-11-22
IL265928B (en) 2020-10-29
EP3526694A4 (en) 2020-08-12
CO2019003639A2 (es) 2020-02-28
BR112019007363A2 (pt) 2019-07-09
JP7079786B2 (ja) 2022-06-02
PH12019550058A1 (en) 2019-12-16
WO2018071079A1 (en) 2018-04-19
US20200051665A1 (en) 2020-02-13
US11404143B2 (en) 2022-08-02
MX2019004128A (es) 2019-08-21
CN110678929B (zh) 2024-04-16
BR112019007357A2 (pt) 2019-07-16
CO2019003842A2 (es) 2019-08-30
CN110603595B (zh) 2023-08-08
CN110603595A (zh) 2019-12-20
PH12019550057A1 (en) 2020-01-20
CL2019002276A1 (es) 2019-11-29
AU2017341684A1 (en) 2019-05-02
PE20200323A1 (es) 2020-02-13
WO2018071055A1 (en) 2018-04-19
AU2017342688A1 (en) 2019-05-02
CA3040147A1 (en) 2018-04-19
JP2019537172A (ja) 2019-12-19
IL265972A (en) 2019-06-30
CN110168651A (zh) 2019-08-23
CA3040145A1 (en) 2018-04-19
WO2018071080A2 (en) 2018-04-19
IL265879B2 (en) 2024-01-01
KR20190073426A (ko) 2019-06-26
CN110114830B (zh) 2023-10-13
EP3526707A2 (en) 2019-08-21
CN110121577B (zh) 2023-09-19
JP2020500383A (ja) 2020-01-09
US20200035328A1 (en) 2020-01-30
IL265879A (en) 2019-06-30
CL2019002275A1 (es) 2019-11-22
US20190214111A1 (en) 2019-07-11
EP3526657A1 (en) 2019-08-21
CO2019009922A2 (es) 2020-01-17
CN110506272A (zh) 2019-11-26
BR112019007359A2 (pt) 2019-07-16
CN110678929A (zh) 2020-01-10
EP3526657A4 (en) 2020-07-01
PE20200226A1 (es) 2020-01-29
CA3040138A1 (en) 2018-04-19
US20200042735A1 (en) 2020-02-06
MX2019004130A (es) 2020-01-30
BR112019016230A2 (pt) 2020-04-07
US20200051667A1 (en) 2020-02-13
CO2019003638A2 (es) 2019-08-30
KR20190069469A (ko) 2019-06-19
SG11201903271UA (en) 2019-05-30
WO2018071054A1 (en) 2018-04-19
EA201990916A1 (ru) 2019-10-31
PE20191058A1 (es) 2019-08-06
SG11201903270RA (en) 2019-05-30
PE20200227A1 (es) 2020-01-29
PH12019550060A1 (en) 2019-12-16
CN110121577A (zh) 2019-08-13
PH12019501879A1 (en) 2020-06-29
CN110114830A (zh) 2019-08-09
KR20190117652A (ko) 2019-10-16
CN110506272B (zh) 2023-08-01
IL265879B1 (en) 2023-09-01

Similar Documents

Publication Publication Date Title
BR112019016236A2 (pt) método e aparelho para a representação compacta de dados de bioinformática usando descritores genômicos múltiplos referência cruzada a pedidos relacionados
KR102421458B1 (ko) 액세스 유닛으로 구조화된 생물정보학 데이터에 액세스하기 위한 방법 및 장치
JP7362481B2 (ja) ゲノムシーケンスデータをコード化する方法、コード化されたゲノムデータをデコード化する方法、ゲノムシーケンスデータをコード化するためのゲノムエンコーダ、ゲノムデータをデコードするためのゲノムデコーダ、及びコンピュータ読み取り可能な記録媒体
US11386979B2 (en) Method and system for storing and accessing bioinformatics data
AU2018221458B2 (en) Method and apparatus for the compact representation of bioinformatics data using multiple genomic descriptors
JP6949970B2 (ja) バイオインフォマティクスデータを送信する方法及びシステム
EP3526711B1 (en) Method and apparatus for compact representation of bioinformatics data
CN110663022B (zh) 使用基因组描述符紧凑表示生物信息学数据的方法和设备
NZ757185B2 (en) Method and apparatus for the compact representation of bioinformatics data using multiple genomic descriptors
EA043338B1 (ru) Способ и устройство для компактного представления биоинформационных данных с помощью нескольких геномных дескрипторов

Legal Events

Date Code Title Description
B350 Update of information on the portal [chapter 15.35 patent gazette]