Fixed-point number representation and calculation circuit
Patent Information
- Application Number
- JP2023557329
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2021-03-24
- Filing Date
- 2022-03-18
- Publication Date
- 2025-03-26
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
Current methods for encoding digital information in nucleic acid sequences are costly and error-prone due to the reliance on base-by-base nucleic acid synthesis, leading to high costs and inefficiencies in accessing stored data.
The method involves selecting component nucleic acid molecules and linking them to form identifier nucleic acid molecules, which are structurally organized to self-assemble in a predetermined order, allowing for efficient representation and retrieval of digital data using combinatorial assembly techniques such as OEPCR, sticky end ligation, and template-directed ligation.
This approach reduces the need for de novo synthesis, lowers costs, and enhances the speed and accuracy of data retrieval by enabling parallel processing and error reduction in nucleic acid-based data storage.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
[Technical field]
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims priority to and the benefit of U.S. Provisional Patent Application No. 63 / 165,507, filed March 24, 2021, entitled "FIXED POINT NUMBER REPRESENTATION AND COMPUTATION CIRCUITS." [Background technology]
[0002] background
[0002] Nucleic acid digital data storage is a stable method for encoding and storing information for long periods of time, and data can be stored at higher densities than magnetic tape or hard drive storage systems. Furthermore, digital data stored in nucleic acid molecules stored in low temperature, dry conditions can be retrieved for periods of time as long as 60,000 years or more.
[0003]
[0003] To access the digital data stored in the nucleic acid molecule, the nucleic acid molecule can be sequenced. Thus, nucleic acid digital data storage can be an ideal method for storing data that is not accessed frequently, but can store or archive large amounts of information for long periods of time.
[0004]
[0004] Current methods rely on encoding digital information (e.g., binary code) into nucleic acid sequences base by base, so that the relationship between bases in the sequence is directly translated into digital information (e.g., binary code). Because the cost of de novo synthesis of nucleic acids base by base can be high, sequencing digital data stored in base by base sequences that can be read into a bit stream or byte of digitally encoded information can be prone to errors and expensive to encode. Opportunities for new methods of implementing nucleic acid digital data storage can provide approaches to encoding and searching data that are less expensive and easier to implement commercially. Summary of the Invention [Means for solving the problem]
[0005] overview
[0005] The present disclosure provides systems and methods for storing digital information in nucleic acid molecules in various ways to improve the efficiency of searching and accessing the digital information. For example, component nucleic acid molecules (e.g., components) are selected and linked together to form an identifier nucleic acid molecule (e.g., identifier), where each identifier nucleic acid molecule corresponds to a particular symbol (e.g., a bit or series of bits) or the position (e.g., rank or address) of that symbol in a string (e.g., a bit stream). The components can be organized structurally to provide an efficient way to represent digital data. For example, the structure of the components can cause the component molecules to self-organize or otherwise sort themselves in a predetermined order after multiple component molecules are placed or dispensed into the same compartment.
[0006]
[0006] In one aspect, the disclosure provides a method for writing information into a nucleic acid sequence. The method includes obtaining a first fixed point number. The method includes obtaining a library of component nucleic acid sequences that define a combinatorial space of identifier nucleic acid sequences, each of which includes an ordered subset of the component nucleic acid sequences. The method includes identifying a first subset of the identifier nucleic acid sequences in the combinatorial space as a first codeword having a codeword size corresponding to the number of identifier nucleic acid sequences in the first subset. The method includes forming a first set of one or more identifier nucleic acid molecules having the distinct identifier nucleic acid sequences of the first subset, where the ratio of the number of distinct identifier nucleic acid sequences represented in the first set to the codeword size approximates the first fixed point number.
[0007] In some implementations, the library of component nucleic acid sequences includes multiple layers, each layer including a subset of the component nucleic acid sequences, and each identifier nucleic acid sequence can include one component nucleic acid sequence from each layer.
[0008] In some implementations, the first fixed-point number has a value x, a codeword size is w, and k identifier nucleic acid molecules are formed in the first set in a ratio k / w and approximately equal to x. In some implementations, k / w is within plus or minus 20% of x. In some implementations, the codeword size is at least 8. In some implementations, the codeword size is at least 256. In some implementations, the codeword size is at least 512. In some implementations, the codeword size is at least 1024.
[0009] In some implementations, the method includes obtaining a second fixed-point number, identifying a second subset of the identifier nucleic acid sequences in the combination space as a second codeword having a codeword size of the first codeword and corresponding to the number of identifier nucleic acid sequences in the second subset, and forming a second set of one or more identifier nucleic acid molecules having the distinct identifier nucleic acid sequences of the second subset. The ratio of the number of distinct identifier nucleic acid sequences in the second set to the codeword size can approximate the second fixed-point number.
[0010]
[0010] In some implementations, the method includes summing the first fixed-point numbers and the second fixed-point numbers by pooling the first set and the second set to obtain a combined pool, and diluting the pooled set to obtain a scaled combined pool.
[0011]
[0011] In some implementations, the method includes multiplying a first fixed-point number and a second fixed-point number by pooling the first set and the second set to obtain a factor pool and applying a chemical AND operation to the first and second sets of identifier nucleic acid molecules to obtain a product pool.
[0012]
[0012] In some implementations, the chemical AND operation includes converting an identifier nucleic acid molecule into a single-stranded identifier nucleic acid molecule, hybridizing complementary identifier nucleic acid molecules, and selecting fully hybridized double-stranded nucleic acid molecules to obtain a product pool.
[0013]
[0013] In some implementations, the selecting includes using at least one of an enzyme that selectively degrades single-stranded nucleic acid molecules or an enzyme that selectively degrades double-stranded nucleic acid molecules having sequence mismatches.
[0014] In some implementations, the method includes pooling the first set and the second set to obtain a factor pool, and applying a chemical OR operation to the first and second sets of identifier nucleic acid molecules to obtain a product pool. In some implementations, the method includes mixing the first set and the second set.
[0015] In some implementations, the method includes pooling the first and second sets to obtain a factor pool, and applying a chemical NIMPLY operation to the first and second sets of identifier nucleic acid molecules to obtain a product pool. In some implementations, the chemical NIMPLY operation includes converting the identifier nucleic acid molecules into single-stranded identifier nucleic acid molecules, where the single-stranded identifier nucleic acid molecules of the second set include affinity tags, providing a molar excess of the single-stranded identifier nucleic acid molecules of the second set, hybridizing the complementary identifier nucleic acid molecules, and using a specific capture mechanism for the affinity tags to select fully hybridized double-stranded nucleic acid molecules to obtain a product pool.
[0016] In some implementations, the method includes pooling the first and second sets to obtain a factor pool, and applying a chemical NOT operation to the first and second sets of identifier nucleic acid molecules to obtain a product pool. In some implementations, the chemical NOT operation includes converting the identifier nucleic acid molecules into single-stranded identifier nucleic acid molecules, where the single-stranded identifier nucleic acid molecules of the first set include affinity tags, providing a molar excess of the single-stranded identifier nucleic acid molecules of the first set, hybridizing the complementary identifier nucleic acid molecules, and selecting fully hybridized double-stranded nucleic acid molecules using a specific capture mechanism for the affinity tags to obtain a product pool.
[0017] In some implementations, the method includes pooling the first and second sets to obtain a factor pool, and applying a chemical XOR operation to the first and second sets of identifier nucleic acid molecules to obtain a product pool. In some implementations, the chemical XOR operation includes performing two NIMPLY operations followed by an OR operation.
[0018] Incorporation by Reference
[0018] All published patents, patents, and patent applications mentioned in this specification are incorporated herein by reference to the same extent as if each individual published patent, patent, or patent application was specifically and individually indicated to be incorporated by reference. To the extent that the published patents and patents or patent applications incorporated by reference conflict with the disclosure contained herein, it is intended that the present specification supersedes and / or takes precedence over any such conflicting matter.
[0019] BRIEF DESCRIPTION OF THE DRAWINGS
[0019] The novel features of the invention are set forth with particularity in the appended claims. A better understanding of the features and advantages of the present invention will be obtained by reference to the following detailed description that sets forth illustrative embodiments, in which the principles of the invention are utilized, and the accompanying drawings (also referred to herein as "Figure" and "FIG.") in which: [Brief description of the drawings]
[0020] [Figure 1]
[0020] An overview of the process for encoding, writing, accessing, querying, reading and decoding digital information stored in nucleic acid sequences is shown generally. [Figure 2A]
[0021] 1 illustrates generally an example method for using an object or identifier (e.g., a nucleic acid molecule) to encode digital data, referred to as "data-at-address," and shows combining a byte value object (or data object) with a rank object (or address object) to create an identifier. [Figure 2B]
[0021] An example method for encoding digital data, referred to as a "data-at-address," using objects or identifiers (e.g., nucleic acid molecules) is generally shown, and an embodiment of the data-at-address method is shown in which rank objects and byte value objects are themselves combinatorial concatenations of other objects. [Figure 3A]
[0022] FIG. 1 is a schematic diagram of an example method for encoding digital information using an object or identifier (e.g., a nucleic acid sequence), illustrating encoding the digital information using a rank object as an identifier. [Figure 3B]
[0022] FIG. 1 is a schematic diagram of an example method for encoding digital information using objects or identifiers (e.g., nucleic acid sequences), illustrating an embodiment of the encoding method in which the address object is itself a combinatorial concatenation of other objects. [Figure 4]
[0023] 1 shows a contour plot in logarithmic space of the relationship between the space of possible identifier combinations (C, x-axis) that can be constructed to store information of a given size (contour) and the average number of identifiers (k, y-axis). [Diagram 5]
[0024] 1 shows a schematic overview of a method for writing information into a nucleic acid sequence (eg, deoxyribonucleic acid). [Figure 6A]
[0025] An example method, called a "product approach," for constructing an identifier (e.g., a nucleic acid molecule) by combinatorially assembling separate components (e.g., nucleic acid sequences) is shown, and the architecture of an identifier constructed using the product approach is shown. [Figure 6B]
[0025] An example method, called the "product approach," for constructing identifiers (e.g., nucleic acid molecules) by combinatorially assembling separate components (e.g., nucleic acid sequences) is presented, and an example of the combinatorial space of identifiers that can be constructed using the product approach is presented. [Figure 7]
[0026] 1 illustrates generally the use of overlap extension polymerase chain reaction to construct an identifier (e.g., a nucleic acid molecule) from components (e.g., a nucleic acid sequence). [Figure 8]
[0027] 1 illustrates generally the use of sticky end ligation to construct an identifier (e.g., a nucleic acid molecule) from components (e.g., a nucleic acid sequence). [Figure 9]
[0028] 1 illustrates generally the use of recombinase assembly to construct an identifier (e.g., a nucleic acid molecule) from components (e.g., nucleic acid sequences). [Figure 10A]
[0029] 1 demonstrates template-directed ligation and illustrates generally its use to construct an identifier (e.g., a nucleic acid molecule) from components (e.g., a nucleic acid sequence). [Figure 10B]
[0029] Template-directed ligation is demonstrated, showing a histogram of copy numbers (abundances) of 256 distinct nucleic acid sequences each assembled combinatorially from six nucleic acid sequences (e.g., moieties) in one pooled template-directed ligation reaction. [Figure 11A]
[0030] 1 illustrates generally an example method, referred to as the "permutation scheme," for constructing an identifier (e.g., a nucleic acid molecule) using permuted components (e.g., nucleic acid sequences), and shows the architecture of an identifier constructed using the permutation scheme. [Figure 11B]
[0030] An example method, referred to as a "permutation scheme," for constructing an identifier (e.g., a nucleic acid molecule) using permuted components (e.g., nucleic acid sequences) is shown generally, and an example of a combinatorial space of identifiers that can be constructed using the permutation scheme is shown. [Figure 11C]
[0030] An example method, referred to as the "permutation method," for constructing an identifier (e.g., a nucleic acid molecule) using permuted components (e.g., nucleic acid sequences) is shown generally, and an example implementation of the permutation method using template-directed ligation is shown. [Figure 11D]
[0030] FIG. 11 illustrates generally an example method, referred to as the "permutation method," for constructing an identifier (e.g., a nucleic acid molecule) using permuted components (e.g., a nucleic acid sequence), and shows an example of how the implementation from FIG. 11C can be modified to construct an identifier having permuted and repeated components. [Figure 11E]
[0030] An example method, called the "permutation method," for constructing an identifier (e.g., a nucleic acid molecule) using permuted components (e.g., nucleic acid sequences) is shown generally, and an example implementation from Figure 11D shows how this can lead to unwanted by-products that can be removed using nucleic acid size selection. [Figure 11F]
[0030] An example method, referred to as the "permutation method," for constructing an identifier (e.g., a nucleic acid molecule) with permuted components (e.g., nucleic acid sequences) is generally shown, and another example is shown of how template-directed ligation and size selection can be used to construct an identifier having permuted and repeated components. [Figure 11G]
[0030] An example method, referred to as the "permutation method," for constructing an identifier (e.g., a nucleic acid molecule) using permuted components (e.g., nucleic acid sequences) is shown generally, along with an example in which size selection may fail to separate a specific identifier from unwanted by-products. [Figure 12A]
[0031] 1 illustrates generally an example method, referred to as the "MchooseK" scheme, for constructing an identifier (e.g., a nucleic acid molecule) having any number K of assembled components (e.g., nucleic acid sequences) from a large number M of possible components, and shows the architecture of an identifier constructed using the MchooseK scheme. [Figure 12B]
[0031] An example method, referred to as the "MchooseK" scheme, for constructing an identifier (e.g., a nucleic acid molecule) having any number K of assembled components (e.g., nucleic acid sequences) from a large number M of possible components is shown generally, and an example of a combinatorial space of identifiers that can be constructed using the MchooseK scheme is shown. [Figure 12C]
[0031] An example method, referred to as the "MchooseK" scheme, for constructing an identifier (e.g., a nucleic acid molecule) having any number K of assembled components (e.g., nucleic acid sequences) from a large number M of possible components is shown generally, and an example implementation of the MchooseK scheme using template-directed ligation is shown. [Figure 12D]
[0031] FIG. 12C illustrates generally an example method, called the "MchooseK" scheme, for constructing an identifier (e.g., a nucleic acid molecule) having any number K of assembled components (e.g., nucleic acid sequences) from a large number M of possible components, and shows how the example implementation from FIG. 12C can lead to unwanted by-products that can be removed using nucleic acid size selection. [Figure 13A]
[0032] 1 illustrates generally an example method, called the "compartment approach," for constructing identifiers having compartmentalized components, and shows an example of a combinatorial space of identifiers that may be constructed using the compartment approach. [Figure 13B]
[0032] An example method, referred to as the "compartment approach," for constructing an identifier having compartmentalized components is shown generally, and an example implementation of the compartment approach using template-directed ligation is shown. [Figure 14A]
[0033] 1 shows a schematic diagram of an example method, called the "unconstrained sequence" (or USS) method, for constructing an identifier composed of an arbitrary sequence of components from several possible components, and shows an example of a combinatorial space of identifiers that can be constructed using the USS method. [Figure 14B]
[0033] A schematic showing an example method, called the "unconstrained string" (or USS) method, for constructing an identifier composed of an arbitrary string of components from several possible components is shown, and an example implementation of the USS method using template-directed ligation is shown. [Figure 15A]
[0034] 1 illustrates generally an example method, called "component elimination," for constructing identifiers by removing components from parent identifiers, and shows an example of a combinatorial space of identifiers that may be constructed using the component elimination scheme. [Figure 15B]
[0034] An example method called "component deletion" for constructing an identifier by removing components from a parent identifier is shown generally, and an example implementation of the component deletion scheme using double-stranded target cleavage and repair is shown. [Figure 16]
[0035] 1 shows a schematic representation of a parent identifier with recombinase recognition sites from which further identifiers may be constructed by applying a recombinase to the parent identifier. [Figure 17A]
[0036] FIG. 1 shows a schematic overview of an example method for accessing a portion of the information stored in a nucleic acid sequence by accessing a few specific identifiers from a larger number of identifiers, and illustrates an example method for accessing identifiers containing specified components using polymerase chain reaction, affinity tagged probes and degraded target probes. [Figure 17B]
[0036] An overview of an example method for accessing a portion of information stored in a nucleic acid sequence by accessing several specific identifiers from a larger number of identifiers is shown, and an example method is shown using the polymerase chain reaction to perform an "OR" or "AND" operation to access identifiers containing multiple specified components. [Figure 17C]
[0036] An overview of an example method for accessing a portion of information stored in a nucleic acid sequence by accessing several specific identifiers from a larger number of identifiers is shown, and an example method is shown for using affinity tags to perform an "OR" or "AND" operation to access identifiers containing multiple specified components. [Figure 18A]
[0037] 1 shows an example of encoding, writing and reading data encoded in a nucleic acid molecule, with an example of encoding, writing and reading 5,856 bits of data. [Figure 18B]
[0037] An example of encoding, writing and reading data encoded in a nucleic acid molecule is given, and an example of encoding, writing and reading 62,824 bits of data is given. [Figure 19]
[0038] 1 illustrates a computer system programmed or otherwise configured to perform the methods provided herein. [Figure 20]
[0039] An example of a scheme for combining any two selected double-stranded components from a single parental set of double-stranded components is shown. [Figure 21]
[0040] 1 shows possible sticky end moiety structures made from two oligos X and Y. [Figure 22]
[0041] 1 shows an example of constructing an identifier from a component having multiple functionalities. [Figure 23A]
[0042] 1 shows an example of the effect of identifier rank on PCR-based random access. [Figure 23B]
[0042] An example of the effect of identifier rank on PCR-based random access is shown. [Figure 24A]
[0043] 1 shows an example of the impact of an identifier architecture with a non-uniform component distribution on PCR-based random access. [Figure 24B]
[0043] An example of the impact of an identifier architecture with a non-uniform component distribution on PCR-based random access is shown. [Diagram 25]
[0044] 1 shows an example of the impact of increasing layers in an identifier architecture on PCR-based random access. [Figure 26]
[0045] An example of a multi-bin positional coding scheme across an alphabet of nine symbols is shown. [Figure 27]
[0046] 1 shows an example of a multi-bin identifier distribution coding scheme with an identifier library of two identifiers and a bin set of three bins that can encode any of nine possible messages in a four-bit string. [Figure 28]
[0047] An example of a multi-bin identifier distribution encoding scheme that reuses an identifier library of two identifiers and a bin set of three bins that can encode any of 64 possible messages in a 6-bit string is shown. [Figure 29]
[0048] An example of encoding information in DNA using integer partitioning is presented. [Diagram 30]
[0049] 1 illustrates an example of an encoding pipeline that includes algorithmic modules for preparing a source bitstream and converting it into a build program specification that is interpreted by a writer. [Diagram 31]
[0050] 1 illustrates an example of an embodiment of a data structure for representing an identifier library in serialized form. [Diagram 32]
[0051] 1 shows an example of two source bitstreams and a generic identifier library prepared for computation using operations defined in an identifier pool. [Diagram 33]
[0052] 1 shows the inputs and results for three examples of logical operations performed on a pool of identifiers, illustrating how the identifier library can be used as in vitro computation. [Figure 34A]
[0053] 1 shows an example of storing and retrieving image files at multiple resolutions. [Figure 34B]
[0053] An example of storing and retrieving image files at multiple resolutions is given. [Figure 34C]
[0053] An example of storing and retrieving image files at multiple resolutions is given. [Fig. 34D]
[0053] An example of storing and retrieving image files at multiple resolutions is given. [Figure 34E]
[0053] An example of storing and retrieving image files at multiple resolutions is given. [Fig. 34F]
[0053] An example of storing and retrieving image files at multiple resolutions is given. [Figure 34G]
[0053] An example of storing and retrieving image files at multiple resolutions is given. [Diagram 35]
[0054] Here is one example of a method for generating entropy that can be used to create a random bit string. [Figure 36A]
[0055] Here is an example of how to generate and store entropy (random bit strings). [Figure 36B]
[0055] An example of how entropy (random bit strings) can be generated and stored is given below. [Figure 36C]
[0055] An example of how entropy (random bit strings) can be generated and stored is given below. [Figure 37A]
[0056] An example of how to use an input to organize and access a random bit string is given. [Figure 37B]
[0056] An example of how to use an input to organize and access a random bit string is given below. [Figure 38]
[0057] We present an example of how a physical DNA key can be used to secure and authenticate access to artifacts. [Figure 39]
[0058] 1 shows a schematic overview of one example of how data can be encoded into DNA in FPN format using the product method, and examples of operations on such data. [Diagram 40]
[0059] 1 shows a schematic overview of an example mechanism for an AND gate using nuclease protection of dsDNA. [Figure 41A]
[0060] 1 shows a schematic overview of an example of the mechanism of an OR gate using dsDNA. [Figure 41B]
[0060] An overview of an example of the mechanism of an OR gate using ssDNA is shown. [Figure 42A]
[0061] Schematic showing an overview of one example of the mechanism of NIMPLY gating using affinity tags: a molar excess of B with a biotin tag is provided; any identifiers in A that match B are hybridized and removed by B; and the surviving identifiers from A are part of the A-NIMPLY-B return product. [Figure 42B]
[0061] An overview of an example of the mechanism of a NIMPLY gate using a nuclease is shown. [Figure 43A]
[0062] 1 shows a schematic overview of one example of the mechanism of a NOT gate using affinity tags: a molar excess of A with a biotin tag is provided; any identifiers in B that match A are hybridized and removed by A; and the surviving identifiers from B are part of the NOT-A return product. [Figure 43B]
[0062] A schematic overview of one example of the mechanism of a NOT gate using affinity tags is shown: a molar excess of A is provided, any identifiers in B that match A are hybridized and removed by A, and the surviving identifiers from B are part of the NOT-A return product. [Figure 44A]
[0063] 1 shows a schematic overview of one example of the mechanism of an XOR gate using affinity tags, where a molar excess of B with a biotin tag is provided, any identifiers in A that match B are hybridized and removed by B, and the surviving identifiers from A are part of the A-NIMPLY-B return product. [Figure 44B]
[0063] A schematic showing an overview of one example of the mechanism of an XOR gate using affinity tags: a molar excess of A with a biotin tag is provided, any identifiers in B that match A are hybridized and removed by A, and the surviving identifiers from B are part of the B-NIMPLY-A return product. [Figure 44C]
[0063] An example of an XOR gate mechanism using affinity tags is shown in schematic overview, with the final XOR step shown. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0021]
[0064] While various embodiments of the present invention have been shown and described herein, it will be apparent to those skilled in the art that such embodiments are provided by way of example only. Numerous variations, changes and substitutions will occur to those skilled in the art without departing from the invention. It should be understood that various alternatives to the embodiments of the present invention described herein are available.
[0022]
[0065] The term "symbol," as used herein, generally refers to a representation of a unit of digital information. Digital information may be divided or converted into strings of symbols. In one example, a symbol may be a bit, and a bit may have a value of "0" or "1."
[0023]
[0066] The terms "distinct" or "unique" as used herein generally refer to an entity that can be distinguished from other entities in a group. For example, a distinct or unique nucleic acid sequence can be a nucleic acid sequence that does not have the same sequence as any other nucleic acid sequence. A distinct or unique nucleic acid molecule does not have the same sequence as any other nucleic acid molecule. A distinct or unique nucleic acid sequence or molecule can share regions of similarity with another nucleic acid sequence or molecule.
[0024]
[0067] The term "component" as used herein generally refers to a nucleic acid sequence. A component may be a separate sequence. A component may be linked or assembled with one or more other components to generate other nucleic acid sequences or molecules.
[0025]
[0068] The term "stratum" as used herein generally refers to a group or pool of components. Each stratum may contain a distinct set of components such that the components in one stratum differ from the components in another stratum. Components from one or more stratums may be assembled to generate one or more identifiers.
[0026]
[0069] The term "identifier" as used herein generally refers to a nucleic acid molecule or sequence that represents the position and value of a bit string within a larger bit string. More generally, an identifier may refer to any object that represents or corresponds to a symbol in a symbol string. In some embodiments, an identifier may include one or more concatenated components.
[0027]
[0070] The term "combinatorial space," as used herein, generally refers to the set of all possible distinct identifiers that can be generated from a starting set of objects, such as components, and an allowed set of rules for how to modify those objects to form identifiers. The size of the combinatorial space of identifiers created by assembling or linking components can depend on the number of layers of components, the number of components in each layer, and the particular assembly method used to generate the identifiers.
[0028]
[0071] The term "identifier rank," as used herein, generally refers to a relationship that defines the ordering of identifiers within a set.
[0029]
[0072] The term "identifier library," as used herein, generally refers to a collection of identifiers that correspond to symbols in a string representing digital information. In some embodiments, the absence of a given identifier in an identifier library may indicate a symbol value at a particular location. One or more identifier libraries may be combined in a pool, group, or set of identifiers. Each identifier library may include a unique barcode that identifies the identifier library.
[0030]
[0073] The term "nucleic acid" as used herein generally refers to deoxyribonucleic acid (DNA), ribonucleic acid (RNA) or variants thereof. Nucleic acids may include one or more subunits selected from adenosine (A), cytosine (C), guanine (G), thymine (T) and uracil (U) or variants thereof. Nucleotides may include A, C, G, T, U or variants thereof. Nucleotides may include any subunit that can be incorporated into a growing nucleic acid chain. Such subunits may be specific to A, C, G, T, U or one or more complementary A, C, G, T or U, or any other subunit that may be complementary to a purine (i.e., A or G or variants thereof) or complementary to a pyrimidine (i.e., C, T or U or variants thereof). In some instances, nucleic acids may be single-stranded or double-stranded, and in some cases, the nucleic acid is circular.
[0031]
[0074] The term "nucleic acid molecule" or "nucleic acid sequence" as used herein generally refers to a polymeric form of nucleotides or polynucleotides that can be of various lengths, either deoxyribonucleotides (DNA) or ribonucleotides (RNA) or analogs thereof. The term "nucleic acid sequence" can refer to the alphabetical representation of a polynucleotide, or alternatively, the term can be applied to the physical polynucleotide itself. This alphabetical representation can be entered into a database in a computer having a central processing unit, and used to map the nucleic acid sequence or nucleic acid molecule to symbols or bits and encode digital information. A nucleic acid sequence or oligonucleotide can also include one or more non-standard nucleotides, nucleotide analogs and / or modified nucleotides.
[0032]
[0075] "Oligonucleotide," as used herein, generally refers to a single-stranded nucleic acid sequence, typically composed of a specific sequence of the four nucleotide bases adenine (A), cytosine (C), guanine (G), and thymine (T), or, if the polynucleotide is RNA, adenine (A), cytosine (C), guanine (G), and uracil (U).
[0033]
[0076] Examples of modified nucleotides include, but are not limited to, diaminopurine, 5-fluorouracil, 5-bromouracil, 5-chlorouracil, 5-iodouracil, hypoxanthine, xanthine, 4-acetylcytosine, 5-(carboxyhydroxymethyl)uracil, 5-carboxymethylaminomethyl-2-thiouridine, 5-carboxymethylaminomethyluracil, dihydrouracil, beta-D-galactosylqueosine, inosine, N6-isopentenyladenine, 1-methylguanine, 1-methylinosine, 2,2-dimethylguanine, 2-methyladenine, 2-methylguanine, 3-methylcytosine, 5-methylcytosine, N6-adenine, 7-methylguanine, 5-methylguanine, ethylaminomethyluracil, 5-methoxyaminomethyl-2-thiouracil, beta-D-mannosylqueuosine, 5'-methoxycarboxymethyluracil, 5-methoxyuracil, 2-methylthio-D46-isopentenyladenine, uracil-5-oxyacetic acid (v), wybutoxocine, pseudouracil, queuosine, 2-thiocytosine, 5-methyl-2-thiouracil, 2-thiouracil, 4-thiouracil, 5-methyluracil, uracil-5-oxyacetic acid methyl ester, uracil-5-oxyacetic acid (v), 5-methyl-2-thiouracil, 3-(3-amino-3-N-2-carboxypropyl)uracil, (acp3)w, 2,6-diaminopurine, and the like. Nucleic acid molecules may also have modified base moieties (e.g., one or more atoms normally available to form hydrogen bonds with a complementary nucleotide and / or one or more atoms normally not available to form hydrogen bonds with a complementary nucleotide), modified sugar moieties, or modified phosphate backbones. Nucleic acid molecules may also include amine-modifying groups, such as aminoallyl-dUTP (aa-dUTP) and aminohexylacrylamide-dCTP (aha-dCTP), to allow for covalent attachment of amine-reactive moieties, such as N-hydroxysuccinimide ester (NHS).
[0034]
[0077] The term "primer," as used herein, generally refers to a nucleic acid strand that serves as the starting point for nucleic acid synthesis, such as in polymerase chain reaction (PCR). In one example, during replication of a DNA sample, an enzyme that catalyzes replication initiates replication at the 3' end of a primer bound to the DNA sample and copies the opposite strand. For more information on PCR, including details on primer design, see Chemical Methods Section D.
[0035]
[0078] The term "polymerase" or "polymerase enzyme" as used herein generally refers to any enzyme capable of catalyzing a polymerase reaction. Examples of polymerases include, but are not limited to, nucleic acid polymerases. Polymerases can be naturally occurring or synthetic. An example of a polymerase is Φ29 polymerase or a derivative thereof. In some cases, a transcriptase or a ligase (i.e., an enzyme that catalyzes the formation of bonds) is used in conjunction with or as a replacement for a polymerase to construct new nucleic acid sequences. Examples of polymerases include DNA polymerase, RNA polymerase, thermostable polymerase, wild-type polymerase, modified polymerase, E. coli DNA polymerase I, T7 DNA polymerase, bacteriophage T4 Examples of DNA polymerases include Φ29 (phi 29) DNA polymerase, Taq polymerase, Tth polymerase, Tli polymerase, Pfu polymerase, Pwo polymerase, VENT polymerase, DEEPVENT polymerase, Ex-Taq polymerase, LA-Taw polymerase, Sso polymerase, Poc polymerase, Pab polymerase, Mth polymerase, ES4 polymerase, Tru polymerase, Tac polymerase, Tne polymerase, Tma polymerase, Tca polymerase, Tih polymerase, Tfi polymerase, platinum Taq polymerase, Tbr polymerase, Tfl polymerase, Pfutubo polymerase, Pyrobest polymerase, KOD polymerase, Bst polymerase, Sac polymerase, Klenow fragment polymerase having 3' to 5' exonuclease activity, and variants, modified products, and derivatives thereof. For additional polymerases that can be used with PCR and details regarding how polymerase properties can affect PCR, see Chemical Methods Section D.
[0036]
[0079] The term "species" as used herein generally refers to one or more DNA molecules of the same sequence. When "species" is used in the plural sense, it can be assumed that every species within the plural species has a distinct sequence, which is sometimes made clear by writing "distinct species" instead of "species."
[0037]
[0080] The terms "about" and "approximately" should be understood to mean within ±20% of the value following said term.
[0038]
[0081] Digital information, such as computer data in the form of binary code, may include an array or string of symbols. Binary code may, for example, encode or represent text or computer processor instructions using a binary system having two binary symbols called bits, typically 0 and 1. Digital information may be represented in the form of a non-binary code, which may include an array of non-binary symbols. Each encoded symbol may be reassigned to a unique bit string (or "byte"), and the unique bit string or byte may be arranged into a byte string or byte stream. The bit value for a given bit may be one of two symbols (e.g., 0 or 1). A byte may include a string of N bits, for a total of 2 N For example, a byte containing 8 bits can have a total of 2 8 Or 256 possible unique byte values, each of which may correspond to one of 256 possible distinct symbols, characters, or instructions that can be encoded in the byte. Raw data (e.g., text files and computer instructions) can be represented as a sequence of bytes or a byte stream. Zip files or compressed data files that contain raw data can also be stored in a byte stream, and these files can be stored in a compressed format as a byte stream and then restored to raw data before being read by a computer.
[0039]
[0082] The disclosed methods and systems may be used to encode computer data or information into multiple identifiers, each of which may represent one or more bits of the original information. In some examples, the disclosed methods and systems encode the data or information using identifiers, each of which represents two bits of the original information.
[0040]
[0083] Traditional methods of encoding digital information into nucleic acids rely on base-by-base synthesis of nucleic acids, which can be costly and time consuming. Alternative methods may improve the commercial viability of digital information storage by reducing reliance on base-by-base nucleic acid synthesis to encode digital information, eliminating the need for de novo synthesis of separate nucleic acid sequences for every new information storage requirement.
[0041]
[0084] Instead of relying on base-by-base or de novo nucleic acid synthesis (e.g., phosphoramidite synthesis), the new methods can encode digital information (e.g., binary code) into multiple identifiers or nucleic acid sequences that include combinatorial arrangements of components. Thus, the new strategies can produce a first set of distinct nucleic acid sequences (or components) for a first request for information storage, and then reuse the same nucleic acid sequences (or components) for subsequent information storage requests. These approaches can significantly lower the cost of DNA-based information storage by reducing the role of de novo synthesis of nucleic acid sequences in the process of encoding and writing information into DNA. Furthermore, unlike implementations of base-by-base synthesis such as phosphoramidite chemistry or template-free polymerase-based nucleic acid extension that may use cyclic delivery of each base to each extended nucleic acid, the new methods of writing information into DNA that use identifier construction from components are highly parallelizable processes that do not necessarily use cyclic nucleic acid extension. Thus, the new methods can increase the speed of writing digital information into DNA compared to older methods.
[0042] Methods for encoding and writing information into nucleic acid sequences
[0085] In one aspect, the present disclosure provides a method of encoding information into a nucleic acid sequence. The method of encoding information into a nucleic acid sequence may include (a) translating the information into a symbol string; (b) mapping the symbol string to a plurality of identifiers; and (c) constructing an identifier library including at least a subset of the plurality of identifiers. Each identifier of the plurality of identifiers may include one or more components. Each component of the one or more components may include a nucleic acid sequence. Each symbol at each position in the symbol string may correspond to a separate identifier. An individual identifier may correspond to an individual symbol at each position in the symbol string. Furthermore, one symbol at each position in the symbol string may correspond to the absence of an identifier. For example, in a string of binary symbols (e.g., bits) of "0" and "1", each occurrence of "0" may correspond to the absence of an identifier.
[0043]
[0086] In another aspect, the disclosure provides a method of nucleic acid-based computer data storage. The method of nucleic acid-based computer data storage may include (a) receiving computer data, (b) synthesizing a nucleic acid molecule comprising a nucleic acid sequence encoding the computer data, and (c) storing the nucleic acid molecule having the nucleic acid sequence. The computer data may be encoded into at least a subset of the synthesized nucleic acid molecules, and not into the sequence of each nucleic acid molecule.
[0044]
[0087] In another aspect, the disclosure provides a method for writing and storing information into a nucleic acid sequence. The method may include (a) receiving or encoding a virtual identifier library representing the information, (b) physically constructing the identifier library, and (c) storing one or more physical copies of the identifier library in one or more separate locations. An individual identifier in the identifier library may include one or more components. An individual component of the one or more components may include a nucleic acid sequence.
[0045]
[0088] In another aspect, the present disclosure provides a nucleic acid-based computer data storage. The method of nucleic acid-based computer data storage may include: (a) receiving computer data; (b) synthesizing a nucleic acid molecule comprising at least one nucleic acid sequence encoding the computer data; and (c) storing the nucleic acid molecule comprising at least one nucleic acid sequence. Synthesizing the nucleic acid molecule may not include base-by-base nucleic acid synthesis.
[0046]
[0089] In another aspect, the disclosure provides a method of writing and storing information into a nucleic acid sequence. The method of writing and storing information into a nucleic acid sequence may include (a) receiving or encoding a virtual identifier library representing the information, (b) physically constructing the identifier library, and (c) storing one or more physical copies of the identifier library in one or more separate locations. An individual identifier in the identifier library may include one or more components. An individual component of the one or more components may include a nucleic acid sequence.
[0047]
[0090] In another aspect, the disclosure provides a method for storing digital information in a nucleic acid sequence, the method comprising: (a) receiving the digital information as a symbol string, each symbol in the symbol string having a symbol value and a symbol position within the symbol string; and (b) forming a first identifier nucleic acid sequence, the method comprising: (1) selecting, from a set of distinct component nucleic acid sequences separated into M distinct layers, one component nucleic acid sequence from each of the M layers; (2) arranging the M selected component nucleic acid sequences into compartments; and (3) physically assembling the M selected component nucleic acid sequences with (2) such that the component nucleic acid sequences from the first and second layers correspond to first and second terminal sequences of the identifier nucleic acid sequence, and the component nucleic acid sequence in the third layer corresponds to a third sequence of the identifier nucleic acid sequence, defining a physical order of the M layers in the first identifier nucleic acid sequence. (c) forming a plurality of additional identifier nucleic acid sequences, each having (1) a first and a second terminal sequence and a third sequence located between the first terminal sequence and the second terminal sequence, and (2) corresponding to each symbol position, wherein the first terminal sequence, the second terminal sequence and the third sequence of at least one additional identifier nucleic acid sequence are identical to the target sequence of the first identifier nucleic acid sequence in (b), allowing the probe to select at least two identifier nucleic acid sequences corresponding to each symbol having consecutive symbol positions in the symbol string; and (d) collecting the identifier nucleic acid sequences in (b) and (c) in a pool having a powder, liquid or solid form.
[0048]
[0091] In another aspect, the disclosure provides a method of storing digital information in a nucleic acid sequence, the method comprising: (a) receiving the digital information as a symbol string, each symbol in the symbol string having a symbol value and a symbol position within the symbol string, the digital information including image data represented by a collection of vectors; (b) forming a first identifier nucleic acid sequence by arranging M selected component nucleic acid sequences into compartments, the M selected component nucleic acid sequences being selected from a set of distinct component nucleic acid sequences separated into M distinct layers; and (c) forming a plurality of identifier nucleic acid sequences, each identifier nucleic acid sequence having a first and second end sequence and a second end sequence. and a third sequence located between the first and second identifier nucleic acid sequences, corresponding to each symbol position, wherein at least one of the first end sequence, the second end sequence and the third sequence of the at least one additional identifier nucleic acid sequence is identical to the target sequence of the first identifier nucleic acid sequence in (b), allowing a single probe to select at least two identifier nucleic acid sequences corresponding to each symbol having an associated symbol position in the symbol string; and (d) collecting the identifier nucleic acid sequences in (b) and (c) into a pool having a powder, liquid or solid form, wherein image data is stored in the nucleic acid sequences so that any nearby pixel can be queried for a color value using a random access method.
[0049]
[0092] In another aspect, the disclosure provides a method of storing digital information in a nucleic acid sequence, the method comprising: (a) receiving the digital information as a symbol string, each symbol in the symbol string having a symbol value and a symbol position within the symbol string; (b) forming a first identifier nucleic acid sequence by arranging M selected component nucleic acid sequences into compartments, the M selected component nucleic acid sequences being selected from a set of M distinct component nucleic acid sequences separated into distinct layers; and (c) physically assembling a plurality of identifier nucleic acid sequences, each identifier nucleic acid sequence being a first identifier nucleic acid sequence. (b) forming an additional identifier nucleic acid sequence having first and second end sequences and a third sequence located between the first and second end sequences, corresponding to each symbol position, at least one of the first end sequence, the second end sequence and the third sequence of the at least one additional identifier nucleic acid sequence being identical to the target sequence of the first identifier nucleic acid sequence in (b), allowing a single probe to select at least two identifier nucleic acid sequences corresponding to each symbol having an associated symbol position in the symbol string; and (d) collecting the identifier nucleic acid sequences in (b) and (c) in a pool having a powder, liquid or solid form.
[0050]
[0093] In another aspect, the disclosure provides a method for storing digital information in a nucleic acid sequence, the method comprising: (a) receiving the digital information as a symbol string, each symbol in the symbol string having a symbol value and a symbol position within the symbol string; (b) dividing the symbol string into one or more blocks of a size no greater than a fixed length; (c) forming a first identifier nucleic acid sequence by arranging M selected component nucleic acid sequences into compartments, the M selected component nucleic acid sequences being selected from a set of M distinct component nucleic acid sequences separated into distinct layers; and (d) physically assembling the plurality of identifier nucleic acid sequences. (b) forming at least one additional identifier nucleic acid sequence having a first and a second terminal sequence and a third sequence located between the first terminal sequence and the second terminal sequence, corresponding to each symbol position, and at least one of the first terminal sequence, the second terminal sequence and the third sequence of the at least one additional identifier nucleic acid sequence being identical to the target sequence of the first identifier nucleic acid sequence in (b), allowing a single probe to select at least two identifier nucleic acid sequences corresponding to each symbol having an associated symbol position in the symbol string; and (d) collecting the identifier nucleic acid sequences in (b) and (c) in a pool having a powder, liquid or solid form.
[0051]
[0094] In another aspect, the disclosure provides a method of storing digital information in a nucleic acid sequence, the method comprising: (a) receiving the digital information as a symbol string, each symbol in the symbol string having a symbol value and a symbol position within the symbol string; (b) forming a first identifier nucleic acid sequence by arranging M selected component nucleic acid sequences into compartments, the M selected component nucleic acid sequences being selected from a set of M distinct component nucleic acid sequences separated into distinct layers; and (c) physically assembling a plurality of identifier nucleic acid sequences, each identifier nucleic acid sequence having first and second terminal sequences and a third sequence located between the first terminal sequence and the second terminal sequence. (b) forming a pool of at least one additional identifier nucleic acid sequence corresponding to each symbol position, wherein at least one of the first end sequence, second end sequence and third sequence of the at least one additional identifier nucleic acid sequence is identical to the target sequence of the first identifier nucleic acid sequence in (b), allowing a single probe to select at least two identifier nucleic acid sequences corresponding to each symbol having an associated symbol position in the symbol string; (d) collecting the identifier nucleic acid sequences in (b) and (c) in a pool having a powder, liquid or solid form; and (e) using the identifier nucleic acid sequences in (d) to perform calculations involving Boolean logic operations including AND, OR, NOT or NAND on the symbol string to generate a new pool of nucleic acid molecules.
[0052]
[0095] In another aspect, the disclosure provides a method for storing digital information in a nucleic acid sequence, the method comprising: (a) receiving the digital information as a symbol string, each symbol in the symbol string having a symbol value and a symbol position within the symbol string; (b) forming a first identifier nucleic acid sequence by: (1) selecting, from a set of distinct component nucleic acid sequences separated into M distinct layers, one component nucleic acid sequence from each of the M layers; and (2) disposing the M selected component nucleic acid sequences into compartments; and (c) physically assembling a plurality of identifier nucleic acid sequences, each identifier nucleic acid sequence being a symbol value. forming an array having first and second terminal sequences and a third sequence located between the first terminal sequence and the second terminal sequence, corresponding to each symbol position, at least one of the first terminal sequence, the second terminal sequence and the third sequence of the at least one additional identifier nucleic acid sequence being identical to the target sequence of the first identifier nucleic acid sequence in (b), allowing a single probe to select at least two identifier nucleic acid sequences corresponding to each symbol having an associated symbol position in the symbol string; and (d) collecting the identifier nucleic acid sequences in (b) and (c) into a pool having a powder, liquid or solid form.
[0053]
[0096] In another aspect, the disclosure provides a method for storing digital information in a nucleic acid sequence, the method comprising: (a) receiving the digital information as a symbol string, each symbol in the symbol string having a symbol value and a symbol position within the symbol string; and (b) forming a first identifier nucleic acid sequence by: (1) selecting, from a set of distinct component nucleic acid sequences separated into M distinct layers, one component nucleic acid sequence from each of the M layers; (2) arranging the M selected component nucleic acid sequences into compartments; and (3) physically assembling the M selected component nucleic acid sequences in (2) to form the first identifier nucleic acid sequence comprising a designated component. (c) physically assembling a plurality of identifier nucleic acid sequences, each identifier nucleic acid sequence having a respective designated component, the designated component comprising at least one target sequence of a first identifier nucleic acid sequence in (b), allowing a probe to select at least two identifier nucleic acid sequences corresponding to each symbol having consecutive symbol positions within the symbol string; and (d) collecting the identifier nucleic acid sequences in (b) and (c) into a pool having a powder, liquid or solid form.
[0054]
[0097] FIG. 1 illustrates the overall process of encoding information into a nucleic acid sequence, writing information into a nucleic acid sequence, reading the information written into a nucleic acid sequence, and decoding the read information. Digital information or data can be translated into one or more strings of symbols. In one example, the symbols are bits, and each bit can have a value of either "0" or "1". Each symbol can be mapped or encoded into an object (e.g., an identifier) that represents that symbol. Each symbol can be represented by a separate identifier. The separate identifier can be a nucleic acid molecule made up of components. The components can be nucleic acid sequences. Digital information can be written into a nucleic acid sequence by generating an identifier library that corresponds to the information. The identifier library can be physically generated by physically constructing an identifier that corresponds to each symbol of the digital information. Every portion of the digital information can be accessed at one time. In one example, a subset of the identifiers is accessed from the identifier library. The subset of the identifiers can be read by sequencing and identifying the identifiers. To decode the digital data, the identified identifiers can be associated with corresponding symbols.
[0055]
[0098] A method of encoding and reading information using the approach of FIG. 1 may include, for example, receiving a bitstream and mapping each bit (a bit having a bit value of "1") in the bitstream to a distinct nucleic acid identifier using the identifier rank or nucleic acid index. Constructing a nucleic acid molecule sample pool or identifier library that includes copies of identifiers that correspond to a bit value of 1 (excluding identifiers with a bit value of 0). Reading the sample may include using molecular biology methods (e.g., sequencing, hybridization, PCR, etc.) to identify which identifiers are represented in the identifier library, assigning a bit value of "1" to the bits that correspond to those identifiers, and assigning a bit value of "0" to the bits that correspond to identifiers not represented in the identifier library (again, referencing the identifier rank to identify the bit in the original bitstream to which each identifier corresponds), thereby decoding the information into the original encoded bitstream.
[0056]
[0099] Encoding a string of N distinct bits allows an equal number of unique nucleic acid sequences to be used as possible identifiers. This approach to encoding information may use de novo synthesis of an identifier (e.g., a nucleic acid molecule) for each new item of information (string of N bits) to be stored. In other cases, the cost of synthesizing identifiers (N or less in number) de novo may be reduced by performing a single de novo synthesis and continuing to maintain all possible identifiers, such that encoding a new item of information may involve mechanically selecting pre-synthesized (or pre-made) identifiers and mixing them together to form an identifier library. In other cases, synthesizing and maintaining several (fewer than N, and in some cases much less than N) nucleic acid sequences and then modifying these sequences through enzymatic reactions to generate up to N identifiers for each new item to be stored may reduce both or any combination of (1) the cost of synthesizing up to N identifiers de novo for each new item of information to be stored, and (2) the cost of maintaining and selecting from N possible identifiers for each new item of information to be stored.
[0057]
[0100] Identifiers may be rationally designed and selected to facilitate read, write, access, copy and delete operations. Identifiers may be designed and selected to minimize write errors, mutations, degradation and read errors. See Chemical Methods Section H for rational design of DNA sequences, including synthetic nucleic acid libraries (such as identifier libraries).
[0058]
[0101] 2A and 2B show schematic diagrams of an example of a method called "data-at-address" for encoding digital data into objects or identifiers (e.g., nucleic acid molecules). FIG. 2A shows encoding a bit stream into an identifier library, where each identifier is constructed by concatenating or assembling a single component that specifies an identifier rank with a single component that specifies a byte value. In general, data-at-address methods use identifiers to modularly encode information by including two objects, one object being a "byte value object" (or "data object") that identifies a byte value, and one object being a "rank object" (or "address object") that identifies the identifier rank (or relative position of the byte in the original bit stream). FIG. 2B shows an example of a data-at-address method, where each rank object can be combinatorially constructed from a set of components, and each byte value object can be combinatorially constructed from a set of components. Such a combinatorial structure of rank objects and byte value objects allows more information to be written into the identifier than would be possible if the objects were made from only a single component (e.g., FIG. 2A).
[0059]
[0102] 3A and 3B show schematic diagrams of another example of a method for encoding digital information into an object or identifier (e.g., a nucleic acid sequence). FIG. 3A shows encoding a bit stream into an identifier library, where the identifier is constructed from a single component that specifies an identifier rank. The presence of an identifier at a particular rank (or address) specifies a bit value "1" and the absence of an identifier at a particular rank (or address) specifies a bit value "0". This type of encoding may use identifiers that only encode their rank (the relative position of the bit in the original bit stream) and use their presence or absence in the identifier library to encode bit values "1" or "0", respectively. Reading and decoding the information may include identifying identifiers that are present in the identifier library and assigning a bit value "1" to their corresponding ranks and a bit value "0" for identifiers that are not present in the identifier library. FIG. 3B shows an example of an encoding method in which each identifier may be combinatorially constructed from a set of components, such that each possible combinatorial construction specifies a rank. Such a combinatorial structure allows more information to be written into the identifier than if the identifier were made from only a single component (e.g., FIG. 3A). For example, a component set may include five separate components. The five separate components may be assembled to generate ten separate identifiers, each containing two of the five components. The ten separate identifiers may each have a rank (or address) that corresponds to a position of a bit in the bit stream. The identifier library may include a subset of those ten possible identifiers that correspond to positions of bit value "1" and exclude those subsets of those ten possible identifiers that correspond to positions of bit value "0" in a bit stream of length ten.
[0060]
[0103] FIG. 4 shows a contour plot in logarithmic space of the relationship between the combinatorial space of possible identifiers (C, x-axis) and the average number of identifiers (k, y-axis) that are physically constructed to store information of a given original size in bits (D, contour) using the encoding method shown in FIG. 3A and FIG. 3B. The plot assumes that the original information of size D is re-encoded into a string of C bits (C can be a value greater than D), with k bits having a bit value of "1". Furthermore, the plot assumes that the encoding of information to nucleic acid is performed on the re-encoded bit string, and identifiers are constructed for positions where the bit value is "1", and identifiers are not constructed for positions where the bit value is "0". According to the assumption, the combinatorial space of possible identifiers has size C to identify every position in the re-encoded bit string, and the number of identifiers used to encode a bit string of size D is such that D=log2(Cchoosek), where Cchoosek can be a mathematical expression for the number of ways to select k unordered results from C possibilities. Thus, as the combinatorial space of possible identifiers grows beyond the size (in bits) of a given item of information, the number of physically constructed identifiers that can be used to store the given information decreases.
[0061]
[0104] FIG. 5 shows an overall method for writing information to a nucleic acid sequence. The information may be translated into a string before being written and encoded into multiple identifiers. Writing the information may include preparing a reaction to generate a possible identifier. The reaction may be prepared by placing inputs into a compartment. The inputs may include nucleic acids, components, templates, enzymes or chemical reagents. The compartments may be wells, tubes, locations on a surface, chambers in a microfluidic device or droplets in an emulsion. Multiple reactions may be prepared in multiple compartments. The reactions may proceed to generate identifiers through programmed temperature incubation or cycling. Reactions may be selectively or universally removed (e.g., deleted). Reactions may also be selectively or universally interrupted, merged and purified to collect identifiers in one pool. Identifiers from multiple identifier libraries may be collected in the same pool. Each identifier may include a barcode or tag to identify the identifier library to which it belongs. Alternatively or in addition, the barcode may include metadata of the encoded information. Supplementary nucleic acids or identifiers may be included in the identifier pool along with the identifier library. The supplemental nucleic acid or identifier may contain metadata for the encoded information or may function to obscure or hide the encoded information.
[0062]
[0105] The identifier rank (e.g., nucleic acid index) may include a method or key for determining the ordering of the identifiers. The method may include a lookup table with all identifiers and their corresponding ranks. The method may also include a lookup table with the ranks of all components that make up the identifier and a function for determining the ordering of any identifier including combinations of those components. Such a method may be referred to as lexicographic ordering and may be similar to the way words in a dictionary are ordered alphabetically. In a data-at-address encoding method, the identifier rank (encoded by the identifier rank object) may be used to determine the location of a byte (encoded by the identifier byte value object) in the bitstream. In an alternative method, the identifier rank of the current identifier (encoded by the entire identifier itself) may be used to determine the location of the bit value "1" in the bitstream.
[0063]
[0106] The key may assign separate bytes to unique subsets of identifiers (e.g., nucleic acid molecules) within a sample. For example, in a simple form, the key may assign each bit within a byte to a unique nucleic acid sequence that specifies the position of the bit, and then the presence or absence of that nucleic acid sequence within the sample may specify a bit value of 1 or 0, respectively. Reading the encoded information from the nucleic acid samples may include any number of molecular biology techniques, including sequencing, hybridization, or PCR. In some implementations, reading the encoded dataset may include reconstructing a portion of the dataset from each nucleic acid sample, or reconstructing the entire encoded dataset. When the sequences can be read, a nucleic acid index can be used along with the presence or absence of unique nucleic acid sequences, and the nucleic acid samples can be decoded into a bitstream (e.g., each bit string, one byte, multiple bytes, or byte string).
[0064]
[0107] Identifiers can be constructed by combinatorially assembling component nucleic acid sequences. For example, information can be encoded by taking a set of nucleic acid molecules (e.g., identifiers) from a defined group of molecules (e.g., combinatorial space). Each possible identifier for a defined group of molecules can be an assembly of nucleic acid sequences (e.g., components) from a set of prefabricated components that can be separated into layers. Each individual identifier can be constructed by linking one component from every layer in a fixed order. For example, if there are M layers, and each layer can have n components, then the maximum C=n M A unique identifier can be constructed to store up to 2 C A number of different items or C bits may be encoded and stored. For example, storing 1 megabit of information requires 1×10 6 distinct identifiers or size C = 1 x 10 6 In this example, the identifier can be assembled from a variety of components organized in different ways. The assembly can be made from M=2 prefabricated layers, each layer having n=1×10 3 Alternatively, the assembly can be made of M=3 layers, each layer containing n=1×10 2 components. In some embodiments, the assembly may be made from M=2, M=3, M=4, M=5 or more layers. As this example shows, the total number of components may be smaller by using a larger number of layers to encode the same amount of information. Using fewer components overall may be advantageous in terms of writing costs.
[0065]
[0108] In one example, one can start with two sets of unique nucleic acid sequences or layers, X and Y, each with x and y components (e.g., nucleic acid sequences), respectively. Each nucleic acid sequence from X can be assembled with each nucleic acid sequence from Y. The total number of nucleic acid sequences kept in the two sets can be the sum of x and y, while the total number of nucleic acid molecules, and therefore possible identifiers, that can be generated can be the product of x and y. If sequences from X can be assembled with sequences of Y in any order, many more nucleic acid sequences (e.g., identifiers) can be generated. For example, if the assembly order is programmable, the number of nucleic acid sequences (e.g., identifiers) generated can be twice the product of x and y. This set of all possible nucleic acid sequences that can be generated can be referred to as XY. The order of assembled units of unique nucleic acid sequences in XY can be controlled using nucleic acids with distinct 5' and 3' ends, and restriction digestion, ligation, polymerase chain reaction (PCR), and sequencing can be performed on the distinct 5' and 3' ends of the sequences. Such techniques can reduce the total number of nucleic acid sequences (e.g., components) used to encode N distinct bits by encoding information into combinations and sequences of assembled products. For example, to encode 100 bits of information, two layers of 10 distinct nucleic acid molecules (e.g., components) can be assembled in a fixed order to encode 100 bits of information. * 10, or 100 distinct nucleic acid molecules (e.g., identifiers) can be generated, or one layer of 5 distinct nucleic acid molecules (e.g., components) and another layer of 10 distinct nucleic acid molecules (e.g., components) can be assembled in any order to generate 100 distinct nucleic acid molecules (e.g., identifiers).
[0066]
[0109] The nucleic acid sequences (e.g., components) in each layer may include a central unique (or distinct) sequence or barcode, a common hybridization region at one end, and another common hybridization region at the other end. The barcode may include a sufficient number of nucleotides to uniquely identify every sequence in the layer. For example, there are typically four possible nucleotides for each base position in the barcode. Thus, a three base barcode may be a four-base barcode.3 =64 nucleic acid sequences. Barcodes can be designed to be randomly generated. Alternatively, barcodes can be designed to avoid sequences that may introduce complications into the chemistry of the identifier or sequencing structure. Additionally, barcodes can be designed such that each barcode can have a minimum Hamming distance from other barcodes, thereby reducing the likelihood that base resolution mutations or reading errors may interfere with proper identification of the barcode. For rational design of DNA sequences, see Chemical Methods Section H.
[0067]
[0110] The hybridization region at one end of the nucleic acid sequence (e.g., moiety) may be different within each layer, but may be the same for each member within a layer. Adjacent layers have complementary hybridization regions for their moieties and may interact with each other. For example, any moiety from layer X may have complementary hybridization regions and may be able to attach to any moiety from layer Y. The hybridization region at the opposite end may serve the same purpose as the hybridization region at the first end. For example, any moiety from layer Y may attach to any moiety of layer X at one end and to any moiety of layer Z at the opposite end.
[0068]
[0111] Figures 6A and 6B show an example of a method, called a "product scheme," for constructing an identifier (e.g., a nucleic acid molecule) by combinatorially assembling separate components (e.g., nucleic acid sequences) from each layer in a fixed order. Figure 6A shows the architecture of an identifier constructed using the product scheme. An identifier can be constructed by combining a single component from each layer in a fixed order. For M layers with N components each, N MThere are 10 possible identifiers. Figure 6B shows an example of a combinatorial space of identifiers that can be constructed using the product method. In one example, the combinatorial space can be generated from three layers, each layer containing three separate components. The components can be combined such that one component from each layer can be combined in a fixed order. The entire combinatorial space in this assembly method can include 27 possible identifiers.
[0069]
[0112] 7-10 show chemical methods for implementing the product method (see FIG. 6). The methods shown in FIGS. 7-10, along with any other method of assembling two or more separate components in a fixed order, may be used to generate any one or more identifiers, for example, in an identifier library. Identifiers may be constructed using any of the implementation methods described in FIGS. 7-10 at any point during the methods or systems disclosed herein. In some cases, all or a portion of the combinatorial space of possible identifiers may be constructed before digital information is encoded or written, in which case the writing process may include mechanically selecting and pooling identifiers (that encode the information) from an already existing set. In other cases, identifiers may be constructed after one or more steps of the data encoding or writing process may have taken place (i.e., when the information is being written).
[0070]
[0113] Enzymatic reactions can be used to assemble components from different layers or sets. Because components (e.g., nucleic acid sequences) of each layer have specific hybridization or attachment regions to components of adjacent layers, assembly can occur in a one-pot reaction. For example, a nucleic acid sequence (e.g., component) X1 from layer X, a nucleic acid sequence Y1 from layer Y, and a nucleic acid sequence Z1 from layer Z can form an assembled nucleic acid molecule (e.g., identifier) X1Y1Z1. Additionally, multiple nucleic acid molecules (e.g., identifiers) can be assembled in one reaction by including multiple nucleic acid sequences from each layer. For example, including both Y1 and Y2 in the one-pot reaction of the previous example can result in two assembled products (e.g., identifiers), namely, X1Y1Z1 and X1Y2Z1. This reaction multiplexing can be used to accelerate the writing time for multiple identifiers that are physically constructed. For details on the rational design of DNA sequences for assembly efficiency, see Chemical Methods Section H. Assembly of nucleic acid sequences can be performed within a time period of about 1 day, 12 hours, 10 hours, 9 hours, 8 hours, 7 hours, 6 hours, 5 hours, 4 hours, 3 hours, 2 hours, or 1 hour or less. The accuracy of the encoded data can be at least about 90%, 95%, 96%, 97%, 98%, 99% or more.
[0071]
[0114] The identifiers may be constructed product-wise using overlap extension polymerase chain reaction (OEPCR), as shown in Figure 7. Each component in each layer may comprise a double-stranded or single-stranded (as depicted in the figure) nucleic acid sequence with a common hybridization region on the sequence end that may be homologous and / or complementary to the common hybridization region on the sequence end of a component from an adjacent layer. An individual identifier is a set of components X1 through X A One component (e.g., a unique sequence) from layer X (or layer 1) containing Y1 to Y A A second component (e.g., a unique sequence) from layer Y (or layer 2) including Z1 to Z BA component from layer X may have a 3' end that shares complementarity with a 3' end on a component from layer Y. Thus, single-stranded components from layers X and Y may be annealed together at their 3' ends and extended using PCR to generate a double-stranded nucleic acid molecule. The generated double-stranded nucleic acid molecule may be melted to generate a 3' end that shares complementarity with the 3' end of the component from layer Z. The component from layer Z may be annealed with the generated nucleic acid molecule and extended to generate a unique identifier comprising single components from layers X, Y and Z in a fixed order. For OEPCR, see Chemical Methods section A. DNA size selection (e.g., using gel extraction) or polymerase chain reaction (PCR) with the outermost layer and adjacent primers may also be performed to isolate the fully assembled identifier product from other by-products that may be formed during the reaction. To isolate the fully assembled identifier product from other by-products that may be formed during the reaction, sequential nucleic acid capture can be performed using two probes, one on each of the two outermost layers (see Chemical Methods Section F).
[0072]
[0115] Identifiers can be assembled by a product-based approach using sticky end ligation, as shown in Figure 8. Three layers, each containing a double-stranded component (e.g., double-stranded DNA (dsDNA)) with a single-stranded 3' overhang, can be used to assemble a separate identifier. For example, components X1 to X A One component from layer X (or layer 1) containing Y1 to Y B A second component from layer Y (or layer 2) including Z1 to Z C and a third component from layer Z (or layer 3) that includes a 3′ overhang. To combine a component from layer X with a component from layer Y, the components in layer X may include a common 3′ overhang, labeled a in FIG. 8, and the components in layer Y may include a common complementary 3′ overhang, i.e., a *To combine components from layer Y with components from layer Z, the elements in layer Y may include a common 3' overhang, labeled b in FIG. 8, and the elements in layer Z may include a common complementary 3' overhang, i.e., b * The 3' overhang in the layer X component may be complementary to a 3' end in the layer Y component, and the other 3' overhang in the layer Y component may be complementary to a 3' end in the layer Z component, allowing the components to hybridize and ligate. Thus, a component from layer X cannot hybridize to other components from layer X or layer Z, and similarly, a component from layer Y cannot hybridize to other elements from layer Y. Furthermore, a single component from layer Y can be ligated to a single component of layer X and a single component of layer Z, ensuring formation of a complete identifier. For sticky end ligation, see Chemical Methods Section B. DNA size selection (e.g., with gel extraction, see Chemical Methods Section E) or polymerase chain reaction (PCR) with the outermost layer and adjacent primers (see Chemical Methods Section D) can be performed to isolate the identifier product from other by-products that may be formed during the reaction. To isolate the identifier product from other by-products that may be formed during the reaction, sequential nucleic acid capture can be performed using two probes, one on each of the two outermost layers (see Chemical Methods Section F).
[0073]
[0116] Sticky ends for sticky end ligation can be generated by treating each layer component with a restriction endonuclease (see Chemical Methods section C for detailed information on restriction enzyme reactions). In some embodiments, multiple layer components can be generated from one "parent" set of components. For example, in one embodiment, a single parent set of double-stranded components can have complementary restriction sites on each end (e.g., restriction sites for BamHI and BglII). Any two components can be selected for assembly and individually digested with one or the other complementary restriction enzyme (e.g., BglII or BamHI) resulting in inactive scars, complementary sticky ends that can be ligated together. The product nucleic acid sequence can contain complementary restriction sites on each end (e.g., BamHI on the 5' end and BglII on the 3' end) and can be further ligated to another component from the parent set following the same process. This process can be cyclical indefinitely (Figure 20). If the parent contains N components, then each cycle is equivalent to adding an extra layer of N components to the product formula.
[0074]
[0117] A method of using ligation to construct a sequence of nucleic acids that includes elements from set X (e.g., set 1 of dsDNA) and elements from set Y (e.g., set 2 of dsDNA) includes the steps of obtaining or constructing two or more pools of double-stranded sequences (e.g., set 1 of dsDNA and set 2 of dsDNA), where a first set (e.g., set 1 of dsDNA) includes a sticky end (e.g., a) and a second set (e.g., set 2 of dsDNA) includes a sticky end (e.g., a) that is complementary to the sticky end of the first set. * Any DNA from the first set (e.g., set 1 of dsDNA) and any subset of DNA from the second set (e.g., set 2 of dsDNA) can be combined, assembled, and then ligated together to form a single double-stranded DNA having elements from the first set and elements from the second set.
[0075]
[0118] The identifier can be assembled in a product-based manner using site-specific recombination, as shown in Figure 9. The identifier can be constructed by assembling components from three different layers. Components in layer X (or layer 1) have attB on one side of the molecule. x The component from layer Y (or layer 2) may contain a double-stranded molecule with a recombinase site on one side, x A recombinase site was placed on the other side of attB y The components in layer Z (or layer 3) may comprise a double-stranded molecule with a recombinase site, and the components in layer Z (or layer 3) may comprise an attP yThe attB and attP sites within a pair, indicated by subscripts, can recombine in the presence of the corresponding recombinase enzyme. One component from each layer can be combined such that one component from layer X is associated with one component from layer Y, and one component from layer Y is associated with one component from layer Z. Application of one or more recombinase enzymes can recombine the components to generate double-stranded identifiers containing ordered components. DNA size selection (e.g., using gel extraction) or PCR with primers adjacent to the outermost layer can be performed to isolate the identifier product from other by-products that may be formed during the reaction. In general, multiple orthogonal attB and attP pairs can be used, and each pair can be used to assemble components from redundant layers. For the large serine family of recombinases, up to six orthogonal attB and attP pairs can be generated per recombinase, and multiple orthogonal recombinases can be performed as well. For example, 13 layers can be assembled by using 12 orthogonal attB and attP pairs, i.e., 6 orthogonal pairs from each of two large serine recombinases such as BxbI and PhiC31. The orthogonality of the attB and attP pairs ensures that the attB site from one pair does not react with the attP site from another pair. This allows components from different layers to be assembled in a fixed order. Recombinase-mediated recombination reactions can be reversible or irreversible depending on the recombinase system implemented. For example, the large serine recombinase family catalyzes irreversible recombination reactions without the need for high-energy cofactors, while the tyrosine recombinase family catalyzes reversible reactions.
[0076]
[0119] Identifiers can be constructed in a product-based manner using template-directed ligation (TDL), as shown in FIG. 10A. Template-directed ligation utilizes single-stranded nucleic acid sequences, called "templates" or "staples," to facilitate ordered ligation of components to form identifiers. The templates hybridize simultaneously to components from adjacent layers, holding them adjacent to each other (3' ends to 5' ends) while a ligase ligates them. In the example from FIG. 10A, three layers or sets of single-stranded components are combined. Sequence a * A first layer (e.g., layer X or layer 1) of components sharing a common sequence a on the 3' end that is complementary to sequence b * and c * A second stratum (e.g., stratum Y or stratum 2) of components sharing common sequences b and c on the 5' and 3' ends, respectively, which are complementary to sequence d * A third layer (e.g., layer Z or layer 3) of components sharing a common sequence d on the 5' end, which may be complementary to sequence a * b * (5' to 3') containing the first staple and sequence c * d * A set of two templates or "staples" with a first staple and a second staple with a second staple ('5 to 3'). In this example, one or more components from each layer can be selected and mixed into a reaction with the staples, which can facilitate ligation of one component from each layer in a defined order to form the identifier by complementary annealing. For TDL, see Chemical Methods Section B. DNA size selection (e.g., with gel extraction, see Chemical Methods Section E) or polymerase chain reaction (PCR) with the outermost layer and adjacent primers (see Chemical Methods Section D) can be performed to isolate the identifier product from other by-products that may be formed during the reaction. Sequential nucleic acid capture with two probes, one on each of the two outermost layers, can be performed to isolate the identifier product from other by-products that may be formed during the reaction (see Chemical Methods Section F).
[0077]
[0120] FIG. 10B shows a histogram of copy numbers (abundance) of 256 distinct nucleic acid sequences, each assembled with a 6-layer TDL. The edge layers (first and last layers) each had one component, and each of the internal layers (remaining four layers) had four components. Each edge layer component was 28 bases with a 10-base hybridization region. Each internal layer component was 30 bases with a 10-base common hybridization region on the 5' end, a 10-base variable (barcode) region, and a 10-base common hybridization region on the 3' end. Each of the three template strands was 20 bases in length. All 256 distinct sequences were assembled in a multiplex fashion, with one reaction containing all of the components and templates, T4 polynucleotide kinase (to phosphorylate the components), as well as T4 ligase, ATP, and other appropriate reaction reagents. The reactions were incubated at 37 degrees for 30 minutes, then at room temperature for 1 hour. Sequencing adaptors were added to the reaction products with PCR, and the products were sequenced using an Illumina MiSeq instrument. The relative copy number of each separate assembled sequence from the 192910 total assembled sequence reads is shown. Other embodiments of this method may use double-stranded components that are first melted to form single-stranded versions that can be annealed to staples. Other embodiments or derivatives of this method (i.e., TDL) can be used to construct a combinatorial space of identifiers that is more complex than can be achieved in the product format.
[0078]
[0121] Identifiers can be constructed product-wise using a variety of other chemical implementations including Golden Gate assembly, Gibson assembly, or ligase cycling assembly.
[0079]
[0122] 11A and 11B show schematic diagrams of an example of a method, called a "permutation scheme," for constructing identifiers (e.g., nucleic acid molecules) using permuted components (e.g., nucleic acid sequences). FIG. 11A shows the architecture of an identifier constructed using the permutation scheme. Identifiers can be constructed by combining single components from each layer in a programmable order. FIG. 11B shows an example of a combinatorial space of identifiers that can be constructed using the permutation scheme. In one example, a combinatorial space of size 6 can be generated from three layers, each containing one separate component. The components can be concatenated in any order. In general, with M layers, each with N components, the permutation scheme can be used to construct an identifier by combining a single component from each layer in a programmable order. M Allowing for a combinatorial space of M! identifiers.
[0080]
[0123] FIG. 11C shows an example implementation of a permutation scheme using template-directed ligation (TDL, see Chemical Methods section B). Components from multiple layers are assembled between fixed left and right end components, called terminal scaffolds. These terminal scaffolds are the same for all identifiers in the combinatorial space and can therefore be added as part of the reaction master mix of the implementation. At every possible junction between any two layers or scaffolds, there is a template or staple, such that the order in which components from different layers are incorporated into the identifier in a reaction depends on the template selected for the reaction. For M layers, there are M selectable junctions at every possible junction (including junctions with the scaffolds) to allow for any possible permutation of the layers. 2There may be +2M distinct staples. M of those templates (shaded gray) form junctions between the layers and themselves and may be excluded for the purposes of permutation assembly described herein. However, their inclusion may allow for a larger identifier space with identifiers that contain repetitive components as shown in Figures 11D-11G. DNA size selection (e.g., gel extraction, see Chemical Methods section E) or polymerase chain reaction (PCR) with outermost layer flanking primers (see Chemical Methods section D) may be performed to isolate the identifier product from other by-products that may be formed in the reaction. Sequential nucleic acid capture with two probes, one on each of the two outermost layers, may be performed to isolate the identifier product from other by-products that may be formed in the reaction (see Chemical Methods section F).
[0081]
[0124] 11D-11G show an example of how the permutation scheme may be extended to include the particular case of an identifier with a repeating component. FIG. 11D shows an example of how the implementation from FIG. 11C may be used to construct an identifier with a permutation component and a repeating component. For example, the identifier may include three components in total assembled from two separate components. In this example, one component from one layer may be present multiple times in the identifier. Adjacent concatenations of the same component are shown as a in the figures. * b *This can be achieved by using staples with adjacent complementary hybridization regions at both the 3' and 5' ends of the same component, such as (5' to 3') staples. Generally, for M layers, there are M such staples. Incorporation of repeat components using this implementation can generate nucleic acid sequences of more than one length (i.e., containing 1, 2, 3, 4 or more components) assembled between the end scaffolds, as shown in FIG. 11E. FIG. 11E shows how the example implementation from FIG. 11D can lead to a non-target nucleic acid sequence other than the identifier, assembled between the end scaffolds. The suitable identifier cannot be isolated from the non-target nucleic acid sequence using PCR, since they share the same primer binding sites at their ends. However, in this example, DNA size selection (e.g., using gel extraction) can be performed to isolate the target identifier (e.g., the second sequence from the top) from the non-target sequence, since each assembled nucleic acid sequence can be designed to have a unique length (e.g., when all components have the same length). See Chemical Methods section E for size selection. FIG. 11F shows another example where construction of identifiers with repetitive components can generate multiple nucleic acid sequences with equal end sequences but different lengths in the same reaction. This method can use templates that assemble components in one layer into an alternating pattern with components in another layer. Similar to the method shown in FIG. 11E, size selection can be used to select identifiers of designed lengths. FIG. 11G shows an example where construction of identifiers with repetitive components can generate multiple nucleic acid sequences with equal end sequences and equal lengths in some nucleic acid sequences (e.g., 3rd and 4th from the top and 6th and 7th from the top). In this example, nucleic acid sequences that share equal lengths can both be excluded from being individual identifiers, since it may not be possible to construct one without also constructing the other, even when PCR and DNA size selection are performed.
[0082]
[0125] 12A-12D show an example of a method, referred to as the "MchooseK scheme," for constructing an identifier (e.g., a nucleic acid molecule) having an arbitrary number K of assembled components (e.g., nucleic acid sequences) out of a larger number M of possible components. FIG. 12A shows the architecture of an identifier constructed using the MchooseK scheme. Using this method, an identifier is constructed by assembling one component from each layer in any subset of all layers (e.g., selecting components from k layers out of M possible layers). FIG. 12B shows an example of a combinatorial space of identifiers that may be constructed using the MchooseK scheme. In this assembly scheme, the combinatorial space is N k ... K MchooseK possible identifiers. In one example, if there are 5 layers, each containing one component, then up to 10 distinct identifiers can be constructed, each containing two components.
[0083]
[0126] The MchooseK method can be performed using template-directed ligation (see Chemical Methods section B) as shown in FIG. 12C. Similar to the permutation-based TDL implementation (FIG. 11C), in this example, components are assembled between terminal scaffolds that may or may not be included in the reaction master mix. The components can be separated into M layers, e.g., M=4 layers, with predefined ranks 2 to M, where the left terminal scaffold can be rank 1 and the right terminal scaffold can be rank M+1. The template contains the nucleic acid sequences for 3' to 5' ligation of any two components with low to high ranks, respectively. ((M+1) 2There are (M+1) / 2 such templates. Individual identifiers for any K components from separate layers can be constructed by combining those selected components in a ligation reaction with corresponding K+1 staples used to join the K components together with the terminal scaffolds in the order of their rank. Preparation of such a reaction can result in a nucleic acid sequence corresponding to the target identifier between the terminal scaffolds. Alternatively, a reaction mix containing all templates can be combined with selected components to assemble the target identifier. This alternative method can generate a variety of nucleic acid sequences with the same terminal sequence but distinct lengths (if all component lengths are equal), as shown in Figure 12D. The target identifier (bottom) can be isolated from the by-product nucleic acid sequences by size. See Chemical Methods section E for nucleic acid size selection.
[0084]
[0127] 13A and 13B show an example of a method, called a "partition scheme," for constructing identifiers with partitioned components. FIG. 13A shows an example of a combinatorial space of identifiers that may be constructed using the partition scheme. Individual identifiers may be constructed by assembling one component from each layer in a fixed order, with any partition (specially classified as a component) optionally placed between any two components in different layers. For example, a set of components may be organized into one partition component and four layers, each containing one component. One component from each layer may be combined in a fixed order, and a single partition component may be assembled in various locations between the layers. Identifiers in this combinatorial space include no partition component, a partition component between components from the first and second layers, a partition between components from the second and third layers, etc., creating a combinatorial space of eight possible identifiers. In general, with M layers, each with N components, and p partition components, the N identifiers that may be constructed are: K (p+1) M-1 There are possible identifiers. The method can generate identifiers of various lengths.
[0085]
[0128] Figure 13B shows an example implementation of the compartmentalized approach using template-directed ligation (see Chemical Methods section B). The template contains a nucleic acid sequence for ligating one component from each of the M layers together in a fixed order. In each compartment component, there is an additional template pair that allows the compartment component to ligate between components from any two adjacent layers. For example, one template of the pair (e.g., sequence g * b * (5' to 3') allows the 3' end of layer 1 (having sequence b) to be ligated to the 5' end of the compartment component (having sequence g), and the second template of the pair (with sequence c * h * (5' to 3') are a pair of templates that allow the 3' end of a compartment component (with sequence h) to be ligated to the 5' end of layer 2 (with sequence c). To insert a compartment between any two components of adjacent layers, the standard template for ligating the layers together can be omitted in the reaction and a template pair can be selected in the reaction to ligate the compartment at that position. In this example, targeting of a compartment component between layer 1 and layer 2 is achieved using template c. * b * (5' to 3') but not template c * h * (5' to 3') and g * b * (5' to 3') pairs can be used to select for reaction. Components can be assembled between the terminal scaffolds (with corresponding templates for ligation to the first and M layers, respectively) that can be included in the reaction mix. In general, for M layers and p compartment components, there are M-1+2 total. * p *Around (M-1) selectable templates may be used. This implementation of the compartmentalization method may generate a variety of nucleic acid sequences in a reaction with the same end sequence but distinct lengths. The target identifier may be isolated from the by-product nucleic acid sequence by DNA size selection. Specifically, there may be exactly one nucleic acid sequence product with exactly M layer components. If the layer components are designed to be sufficiently large compared to the compartment components, it may be possible to define a universal size selection region, which allows the identifier to be selected (and not the non-target by-products) regardless of the specific compartmentalization of the components within a particular identifier, thereby allowing multiple compartmentalized identifiers from multiple reactions to be isolated in the same size selection step. For nucleic acid size selection, see Chemical Methods Section E.
[0086]
[0129] 14A and 14B show an example of a schematic of a method, called the "unconstrained string scheme" or "USS," for constructing an identifier composed of an arbitrary string of components from several possible components. FIG. 14A shows an example of a combinatorial space of identifiers three components (or four scaffolds) long that may be constructed using the unconstrained string scheme. The unconstrained string scheme constructs individual identifiers K components long using one or more distinct components, each taken from one or more layers, where each distinct component can appear in any of the K component positions in the identifier (repetitions are allowed). For example, with two layers, each containing one component, there are eight possible three-component long identifiers. In general, with M layers, each containing one component, there is an M identifier of length K components. KThere are K possible identifiers. Figure 14B shows an example implementation of the unconstrained array method using template-directed ligation (see Chemical Methods section B). In this method, K+1 single-stranded ordered scaffold DNA components (including two terminal scaffolds and K-1 internal scaffolds) are present in the reaction mix. An individual identifier comprises a single component ligated between every pair of adjacent scaffolds. For example, a component ligated between scaffolds A and B, a component ligated between scaffolds C and D, and so on until all K adjacent scaffold junctions are occupied by a component. In the reaction, selected components from different layers are introduced to the scaffold along with selected staple pairs that guide them to assemble into the appropriate scaffold. For example, staple pair a * L * (5' to 3') and A * b * (5' to 3') directs layer 1 components with 5'-terminal region "a" and 3'-terminal region "b" to be ligated between the L and A scaffolds. In general, if there are M layers and K+1 scaffolds, two steps are required to construct any USS identifier of length K. * M *K selectable staples may be used. The staples connecting the moiety to the scaffold on the 5' end are separated from the staples connecting the same moiety to the scaffold on the 3' end, so that nucleic acid by-products may be formed in the reaction that have terminal scaffolds equal to the target identifier, but have fewer than K moieties (less than K+1 scaffolds) or more than K moieties (more than K+1 scaffolds). The target identifier may form exactly K moieties (K+1 scaffolds) and thus may be selectable through techniques such as DNA size selection if all moieties are designed to be the same length and all scaffolds are designed to be the same length. See Chemical Methods Section E for nucleic acid size selection. In certain embodiments of the unconstrained array format, where there may be one moiety per layer, the moiety may only comprise a single distinct nucleic acid sequence that serves all three roles: (1) an identification barcode, (2) a hybridization region for staple-mediated ligation of the 5' end to the scaffold, and (3) a hybridization region for staple-mediated ligation of the 3' end to the scaffold.
[0087]
[0130] The internal scaffold shown in Figure 14B can be designed to use the same hybridization sequence for both staple-mediated 5' ligation of the scaffold to a moiety and staple-mediated 3' ligation of the scaffold to another (not necessarily separate) moiety. Thus, the one scaffold two staple stacking hybridization event shown in Figure 14B represents a statistical back and forth hybridization event occurring between the scaffold and each of the staples, thus allowing both 5' and 3' moiety ligation. In other embodiments of the unconstrained array approach, the scaffold can be designed with two linked hybridization regions - a separate 3' hybridization region for staple-mediated 3' ligation and a separate 5' hybridization region for staple-mediated 5' ligation.
[0088]
[0131] 15A and 15B show an example of a method, called "component deletion," for constructing identifiers by deleting nucleic acid sequences (or components) from parent identifiers. FIG. 15A shows an example of a combinatorial space of possible identifiers that may be constructed using the component deletion method. In this example, the parent identifiers may include multiple components. The parent identifiers may include about 2 or more, 3 or more, 4 or more, 5 or more, 6 or more, 7 or more, 8 or more, 9 or more, 10 or more, 20 or more, 30 or more, 40 or more, 50 or more, or more than 50 components. Individual identifiers are constructed by selectively deleting any number of components from the N possible components to create a combinatorial space of size 2. N or by removing a certain number K components from the N possible components, resulting in an "NchooseK" combinatorial space of size NchooseK. In one example using a parent identity with 3 components, the complete combinatorial space might be 8 and the 3choose2 combinatorial space might be 3.
[0089]
[0132] FIG. 15B shows an example implementation of a component deletion scheme using Double Stranded Targeted Cleavage and Repair (DSTCR). The parent sequence can be a single stranded DNA substrate containing the component flanked by nuclease specific target sites (which can be 4 bases or less in length), and the parent can be incubated with one or more double stranded specific nucleases corresponding to the target sites. Individual components can be targeted for deletion using complementary single stranded DNA (or cleavage template) that binds to the component DNA (and adjacent nuclease sites) of the parent, thus forming a stable double stranded sequence in the parent that can be cleaved at both ends by a nuclease. Another single stranded DNA (or repair template) hybridizes to the resulting separated ends of the parent (between which the component sequence was) and brings them together for ligation, either directly or bridged by a replacement sequence, such that the ligated sequence on the parent no longer contains an active nuclease target site. This method is called "Double Stranded Target Cleavage" (DSTC). Size selection can be used to select identifiers with a specific number of components deleted. For nucleic acid size selection, see Chemical Methods Section E.
[0090]
[0133] Alternatively or additionally, the parent identifier can be a double-stranded or single-stranded nucleic acid substrate that includes components separated by a spacer sequence so that the two components are not adjacent to the same sequence. The parent identifier can be incubated with Cas9 nuclease. Individual components can be targeted for deletion using a guide ribonucleic acid (cleavage template) that binds to the ends of the components and allows Cas9-mediated cleavage at adjacent sites. A single-stranded nucleic acid (repair template) can be hybridized to the separated ends of the resulting parent identifier (e.g., between the ends where the component sequences were), thereby bringing them together for ligation. Ligation can be performed directly or by bridging the ends with a replacement sequence such that the ligated sequence on the parent no longer contains a spacer sequence that can be targeted by Cas9. This method is called "Sequence Specific Targeted Cleavage and Repair" or "SSTCR".
[0091]
[0134] The identifiers can be constructed by inserting components into the parent identifier using derivatives of DSTCR. The parent identifiers can be single-stranded nucleic acid substrates, each containing a nuclease-specific target site (which can be 4 bases or less in length) incorporated within a separate nucleic acid sequence. The parent identifiers can be incubated with one or more double-stranded specific nucleases corresponding to the target sites. Each target site on the parent identifier can be targeted for component insertion using a complementary single-stranded nucleic acid (cleavage template) that binds the target site to a separate surrounding nucleic acid sequence on the parent identifier, thus forming a double-stranded site. The double-stranded site can be cleaved by a nuclease. Another single-stranded nucleic acid (repair template) can be hybridized to the resulting separated ends of the parent identifier to bring them together for ligation and bridged by the component sequences such that the ligated sequence on the parent no longer contains an active nuclease target site. Alternatively, derivatives of SSTCR can be used to insert components into the parent identifier. The parent identifier can be a double-stranded or single-stranded nucleic acid, and the parent can be incubated with Cas9 nuclease. Separate sites on the parent identifier can be targeted for cleavage with a guide RNA (cleavage template). Single-stranded nucleic acid (repair template) can be hybridized to separate ends of the parent identifier to bring them together for ligation and bridged by component sequences such that the sequences ligated to the parent identifier no longer contain active nuclease target sites. Size selection can be used to select identifiers with a specific number of component insertions.
[0092]
[0135] FIG. 16 shows a schematic of a parent identifier with recombinase recognition sites. Different patterns of recognition sites can be recognized by different recombinases. All recognition sites for a given set of recombinases are positioned such that the recombinase, when applied, can excise the nucleic acid between them. The nucleic acid strand shown in FIG. 16 can be split into two parts depending on the subset of recombinases applied. 5= 32 different sequences can be employed. In some embodiments, recombinases can be used to excise, shift, invert and transpose segments of DNA to create different nucleic acid molecules to generate unique molecules, as shown in Figure 16. In general, when N recombinases are used, 2 N In some embodiments, multiple orthogonal pairs of recognition sites from different recombinases may be placed on the parent identifier in an overlapping manner, such that application of one recombinase affects the type of recombination event that occurs when a downstream recombinase is applied (see Roquet et al., Synthetic recombinase-based state machines in living cells, Science 353 (6297): aad8559 (2016), which is incorporated herein by reference in its entirety). Such a system may be capable of constructing a different identifier for every ordering N! of N recombinases. The recombinases may be from the tyrosine family, such as Flp and Cre, or the large serine recombinase family, such as PhiC31, BxbI, TP901, or A118. The use of a recombinase from the large serine recombinase family may be advantageous because it promotes irreversible recombination and therefore may generate identifiers more efficiently than other recombinases.
[0093]
[0136] In some cases, a single nucleic acid sequence can be programmed to become many distinct nucleic acid sequences by applying many recombinases in distinct orders. Where the number of recombinases, M, can be up to 7 for the large serine recombinase family, applying M recombinases in different subsets and orders can result in approximately e 1 M! distinct nucleic acid sequences can be generated. If the number of recombinases, M, can be a value greater than 7, the number of sequences that can be generated is approximately 3.9 MSee, e.g., Roquet et al., Synthetic recombinase-based state machines in living cells, Science 353 (6297): aad8559 (2016), which is incorporated herein by reference in its entirety. Additional methods for generating multiple DNA sequences that differ from one common sequence can include targeted nucleic acid editing enzymes, such as CRISPR-Cas, TALENS, and zinc finger nucleases. Sequences generated by recombinases, targeted editing enzymes, etc. can be used in conjunction with any of the previous methods, such as those disclosed in any of the figures and disclosures in this application.
[0094]
[0137] If the bit stream of information to be encoded is larger than can be encoded by any single nucleic acid molecule, the information can be split and indexed with nucleic acid sequence barcodes. Furthermore, any subset of nucleic acid molecules of size k from a set of N nucleic acid molecules can be selected to generate log2(Nchoosek) bits of information. Barcodes can be attached to nucleic acid molecules in the subset of size k to encode even longer bit streams. For example, M barcodes can be used to encode M * A set of log2(Nchoosek) bits of information may be generated. Given the number of available nucleic acid molecules N in the set and the number of available barcodes M, a subset of size k=k0 may be selected to minimize the total number of molecules in the pool for encoding information. A method for encoding digital information may include splitting a bitstream and encoding individual elements. For example, a bitstream containing 6 bits may be split into 3 components, each containing 2 bits. Each 2-bit component may be barcoded to form an information cassette, and grouped or pooled together to form a hyperpool of information cassettes.
[0095]
[0138] Barcodes can facilitate indexing of information when the amount of digital information to be encoded exceeds the amount that can be placed in one pool alone. Information that includes longer bit strings and / or multiple bytes can be encoded by layering the approach disclosed in FIG. 3, for example by including tags with unique nucleic acid sequences encoded with a nucleic acid index. An information cassette or identifier library can include nitrogen bases or nucleic acid sequences that include unique nucleic acid sequences that provide location and bit value information, in addition to barcodes or tags that indicate one or more components of the bit stream to which a given sequence corresponds. An information cassette can include one or more unique nucleic acid sequences and barcodes or tags. A barcode or tag on an information cassette can provide a reference to the information cassette and any sequences contained in the information cassette. For example, a tag or barcode on an information cassette can indicate which part of a bit stream or which bit component of a bit stream the unique sequence encodes information (e.g., bit value and bit position information).
[0096]
[0139] Barcodes can be used to encode more information in bits into a pool than the size of the combinatorial space of possible identifiers. For example, a 10-bit sequence can be divided into two sets of bytes, each containing 5 bits. Each byte can be mapped to a set of 5 possible distinct identifiers. Initially, the identifiers generated for each byte can be the same, but kept in separate pools; otherwise, a person reading the information may not be able to tell which byte a particular nucleic acid sequence belongs to. However, each identifier can be barcoded or tagged with a label corresponding to the byte to which the encoded information applies (e.g., barcode 1 can be attached to the sequence in the nucleic acid pool that provides the first 5 bits, and barcode 1 can be attached to the sequence in the nucleic acid pool that provides the next 5 bits), and then the identifiers corresponding to these two bytes can be combined into one pool (e.g., a "hyperpool" or one or more identifier libraries). Each identifier library of the one or more combined identifier libraries can include a separate barcode that identifies a given identifier as belonging to the given identifier library. Methods for adding barcodes to each library in the identifier library may include using PCR, Gibson, ligation, or any other technique that results in a given barcode (e.g., barcode 1) being attached to a given nucleic acid sample pool (e.g., barcode 1 is attached to nucleic acid sample pool 1, barcode 2 is attached to nucleic acid sample pool 2). Samples from the hyperpools can be read using sequencing methods, and the sequencing information can be analyzed using the barcodes or tags. An identifier library with a set of M barcodes and N possible identifiers (combinatorial space) and methods using barcodes can encode a bit stream with a length equal to the product of M and N.
[0097]
[0140] In some embodiments, the identifier library may be stored in an array of wells. The array of wells may be defined as having n columns and q rows, and each well may contain two or more identifier libraries in a hyperpool. The information encoded in each well may constitute one large contiguous item of information of size n×q, which is larger than the information contained in each well. An aliquot may be taken from one or more of the wells in the array of wells, and the encoding may be read using sequencing, hybridization, or PCR.
[0098]
[0141] A nucleic acid sample pool, a hyperpool, an identifier library, a group of identifier libraries, or a well containing a nucleic acid sample pool or a hyperpool may contain a unique nucleic acid molecule (e.g., an identifier) that corresponds to a bit of information, and a plurality of complementary nucleic acid sequences. The complementary nucleic acid sequence may not correspond to the encoded data (e.g., does not correspond to a bit value). The complementary nucleic acid sample may mask or encrypt the information stored in the sample pool. The complementary nucleic acid sequence may be derived from a biological source or may be synthetically generated. The complementary nucleic acid sequence derived from a biological source may include randomly fragmented nucleic acid sequences or rationally fragmented sequences. The biologically derived complementary nucleic acid may hide or obscure the data-containing nucleic acid in the sample pool by providing the natural genetic information with the synthetically encoded information, especially when the synthetically encoded information (e.g., the combinatorial space of the identifier) is made to resemble the natural genetic information (e.g., a fragmented genome). In one example, the identifier is derived from a biological source and the complementary nucleic acid is derived from a biological source. The sample pool may contain a plurality of sets of identifiers and complementary nucleic acid sequences. Each set of identifiers and complementary nucleic acid sequences may be derived from different organisms. In one example, the identifiers are derived from one or more organisms and the complementary nucleic acid sequences are derived from a single different organism. The complementary nucleic acid sequences may be derived from one or more organisms and the identifiers may be derived from a single organism that is different from the organism from which the complementary nucleic acids are derived. Both the identifiers and complementary nucleic acid sequences may be derived from multiple different organisms. A key may be used to distinguish the identifiers from the complementary nucleic acid sequences.
[0099]
[0142] The supplemental nucleic acid sequence may store metadata about the written data. The metadata may include additional information for identifying and / or authenticating the source of the original information and / or the intended recipient of the original information. The metadata may include additional information about the format of the original information, the equipment and method used to encode and write the original information, and the date and time of writing the original information to the identifier. The metadata may include additional information about the format of the original information, the equipment and method used to encode and write the original information, and the date and time of writing the original information to the nucleic acid sequence. The metadata may include additional information about modifications made to the original information after writing the information to the nucleic acid sequence. The metadata may include annotations to the original information or one or more references to external information. Alternatively or in addition, the metadata may be stored in one or more barcodes or tags attached to the identifier.
[0100]
[0143] The identifiers in the identifier pool may have the same, similar or different lengths. The complementary nucleic acid sequences may have lengths shorter, approximately equal or longer than the length of the identifiers. The complementary nucleic acid sequences may have an average length within 1 base, 2 bases, 3 bases, 4 bases, 5 bases, 6 bases, 7 bases, 8 bases, 9 bases, 10 bases or more of the average length of the identifiers. In one example, the complementary nucleic acid sequences are the same or approximately the same length as the identifiers. The concentration of the complementary nucleic acid sequences may be lower, approximately the same or higher than the concentration of the identifiers in the identifier library. The concentration of the complementary nucleic acid may be about 1% or less, about 10% or less, about 20% or less, about 40% or less, about 60% or less, about 80% or less, about 100%, about 125% or less, about 150% or less, about 175% or less, about 200% or less, about 1000% or less, about 1×10 of the concentration of the identifiers. 4 % or less, approximately 1×10 5 % or less, approximately 1×10 6 % or less, approximately 1×10 7 % or less, approximately 1×10 8The concentration of the supplemental nucleic acid can be about 1% or more, about 10% or more, about 20% or more, about 40% or more, about 60% or more, about 80% or more, about 100%, or more, about 125% or more, about 150% or more, about 175% or more, about 200% or more, about 1000% or more, about 1×10 4 % or more, about 1×10 5 % or more, about 1×10 6 % or more, about 1×10 7 % or more, about 1×10 8 % or more. Higher concentrations may be advantageous in obscuring or concealing data. In one example, the concentration of the complementary nucleic acid sequences is much greater than the concentration of the identifiers in the identifier pool (e.g., 1×10 8 %big).
[0101] Methods for copying and accessing data stored in nucleic acid sequences - Patents.com
[0144] In another aspect, the disclosure provides a method of copying information encoded in a nucleic acid sequence. The method of copying information encoded in a nucleic acid sequence may include (a) providing an identifier library and (b) constructing one or more copies of the identifier library. The identifier library may include a subset of a plurality of identifiers from a larger combinatorial space. Each individual identifier of the plurality of identifiers may correspond to an individual symbol in a symbol string. The identifier may include one or more components. The components may include a nucleic acid sequence.
[0102]
[0145] In another aspect, the disclosure provides a method of accessing information encoded in a nucleic acid sequence. The method of accessing information encoded in a nucleic acid sequence may include (a) providing an identifier library; and (b) extracting from the identifier library a portion or subset of identifiers present in the identifier library. The identifier library may include a subset of a plurality of identifiers from a larger combinatorial space. Each individual identifier of the plurality of identifiers may correspond to an individual symbol in the symbol string. The identifier may include one or more components. The components may include a nucleic acid sequence.
[0103]
[0146] Information may be written to one or more identifier libraries as described elsewhere herein. Identifiers may be constructed using any of the methods described elsewhere herein. Stored data may be copied by generating copies of individual identifiers within an identifier library or within one or more identifier libraries. A portion of an identifier or the entire library may be copied. Copying may be performed by amplifying identifiers within an identifier library. When one or more identifier libraries are combined, a single identifier library or multiple identifier libraries may be copied. When an identifier library includes a supplemental nucleic acid sequence, the supplemental nucleic acid sequence may or may not be copied.
[0104]
[0147] Identifiers in an identifier library may be constructed to include one or more common primer binding sites. The one or more binding sites may be at the end of each identifier or may be interwoven throughout each identifier. The primer binding sites may allow an identifier library-specific primer pair or a universal primer pair to bind and amplify the identifier. All identifiers in an identifier library or all identifiers in one or more identifier libraries may be replicated multiple times with multiple PCR cycles. Conventional PCR may be used to copy the identifiers, and the identifiers may be replicated exponentially with each PCR cycle. The number of identifier copies may increase exponentially with each PCR cycle. Linear PCR may be used to copy the identifiers, and the identifiers may be replicated linearly with each PCR cycle. The number of identifier copies may increase linearly with each PCR cycle. The identifiers may be ligated to a circular vector prior to PCR amplification. The circular vector may include a barcode at each end of the identifier insertion site. PCR primers for amplifying the identifiers may be designed to prime the vector such that the barcoded ends are included in the amplification product along with the identifier. During amplification, recombination between identifiers may result in the copying of identifiers with uncorrelated barcodes at each end. Uncorrelated barcodes may be detectable upon identifier reading. Identifiers with uncorrelated barcodes may be considered false positives and may be ignored during the information decoding process. See Chemical Methods Section D.
[0105]
[0148] Information can be encoded by assigning each bit of information to a unique nucleic acid molecule. For example, three sample sets (X, Y, and Z), each containing two nucleic acid sequences, can be assembled into eight unique nucleic acid molecules and eight bits of data can be decoded. N1=X1Y1Z1 N2=X1Y1Z2 N3=X1Y2Z1 N4=X1Y2Z2 N5=X2Y1Z1 N6=X2Y1Z2 N7=X2Y2Z1 N8=X2Y2Z2 Each bit in the string can then be assigned to a corresponding nucleic acid molecule (e.g., N1 can designate the first bit, N2 can designate the second bit, N3 can designate the third bit, etc.). The entire bit string can be assigned to a combination of nucleic acid molecules, and nucleic acid molecules corresponding to bit value "1" are included in the combination or pool. For example, in UTF-8 coding, the letter "K" can be represented by the 8-bit string code 01001011, which can be encoded by the presence of four nucleic acid molecules (e.g., X1Y1Z2, X2Y1Z1, X2Y2Z1 and X2Y2Z2 in the example above).
[0106]
[0149] The information may be accessed through sequencing or hybridization assays. For example, primers or probes may be designed to bind to common or barcoded regions of the nucleic acid sequence. This may allow amplification of any region of the nucleic acid molecule. The amplification product may then be read by sequencing the amplification product or by a hybridization assay. In the above example encoding the letter "K", if the first half of the data is of interest, the nucleic acid molecule may be amplified using a primer specific to the barcode region of the X1 nucleic acid sequence and a primer that binds to the common region of the Z set. This may return the sequence Y1Z2, which may encode 0100. Subsequences of that data may also be accessed by further amplifying the nucleic acid molecule with a primer that binds to the barcode region of the Y1 nucleic acid sequence and a primer that binds to the common sequence of the Z set. This may return the Z2 nucleic acid sequence, which encodes the subsequence 01. Alternatively, the data may be accessed by checking for the presence or absence of a particular nucleic acid sequence without sequencing. For example, amplification with primers specific for the Y2 barcode may generate an amplification product for the Y2 barcode, but not for the Y1 barcode. The presence of the Y2 amplification product may convey a bit value of "1." Alternatively, the absence of the Y2 amplification product may convey a bit value of "0."
[0107]
[0150] PCR-based methods can be used to access and copy data from identifiers or nucleic acid sample pools. Common primer binding sites adjacent to the identifiers in the pool or hyperpool can be used to easily copy the nucleic acids containing the information. Alternatively, other nucleic acid amplification techniques such as isothermal amplification can be used to easily copy data from sample pools or hyperpools (e.g., identifier libraries). For nucleic acid amplification, see Chemical Methods Section D. If the sample contains a hyperpool, a primer that binds a specific barcode at one end to the identifier in the forward direction can be used with another primer that binds to a common sequence on the opposite end of the identifier in the reverse direction to access and retrieve a specific subset of information (e.g., all nucleic acids associated with a specific barcode). Various reading methods can be used to extract information from the encoded nucleic acids. For example, microarrays (or any type of fluorescent hybridization), digital PCR, quantitative PCR (qPCR), and various sequencing platforms can be further used to read the encoded sequences and thus the digitally encoded data.
[0108]
[0151] Accessing information stored in a nucleic acid molecule (e.g., an identifier) can be performed by selectively removing a portion of non-target identifiers from an identifier library or pool of identifiers, or selectively removing all identifiers of an identifier library, for example, from a pool of identifier libraries. As used herein, "access" and "query" can be used synonymously. Accessing data can also be performed by selectively capturing target identifiers from an identifier library or pool of identifiers. The target identifiers can correspond to data of interest within a larger item of information. The pool of identifiers can include supplemental nucleic acid molecules. The supplemental nucleic acid molecules can include metadata about the encoded information or can be used to encrypt or mask identifiers corresponding to the information. The supplemental nucleic acid molecules may or may not be extracted during accessing the target identifiers. Figures 17A-17C show an overview of an example method for accessing portions of information stored in a nucleic acid sequence by accessing some specific identifiers from a larger number of identifiers. Figure 17A shows an example method for accessing identifiers containing specified components using polymerase chain reaction, affinity tagged probes, and degraded target probes. For PCR-based access, a pool of identifiers (e.g., an identifier library) may contain identifiers with a common sequence at each end, a variable sequence at each end, or either a common sequence or a variable sequence at each end. The common sequence or the variable sequence may be a primer binding site. One or more primers may bind to the common or variable regions at the identifier ends. Identifiers with bound primers may be amplified by PCR. The amplified identifiers will be significantly more numerous than the non-amplified identifiers. During reading, the amplified identifiers may be identified. Identifiers from an identifier library may contain a sequence unique to that library at one or both ends, thus allowing selective access to a single library from a pool or group of two or more identifier libraries.
[0109]
[0152] In the case of affinity tag-based access, a process that can be called nucleic acid capture, the components that make up the identifiers in the pool can share complementarity with one or more probes. One or more probes can be bound or hybridized to the identifiers to be accessed. The probes can include affinity tags. The affinity tags can be captured on a solid phase material such as a membrane, a well, a column or beads. When beads are used as the solid phase material, the affinity tags can bind to the beads and generate a complex that includes the beads, at least one probe and at least one identifier. The beads can be magnetic and together with a magnet can collect and separate the identifiers to be accessed. The identifiers can be removed from the beads under denaturing conditions before reading. Alternatively or in addition, the beads can collect non-target identifiers and isolate them from the rest of the pool that can be washed into a separate container and read. When a column is used, the affinity tags can be bound to the column. The identifiers to be accessed can be bound to the column for capture. The identifiers bound to the column can subsequently be eluted or denatured from the column before reading. Alternatively, non-target identifiers can be selectively targeted to the column while target identifiers can flow through the column. Identifiers bound to a solid phase material can be removed from the solid phase material by exposure to conditions such as, for example, acid, base, oxidation, reduction, heat, light, metallic iron catalysis, chemical action of displacement or detachment, or enzymatic cleavage. In certain embodiments, the identifier to be accessed can be attached to the solid support through a cleavable linkage moiety. For example, the solid phase material can be functionalized to provide a cleavable linkage for covalent attachment to the target identifier. The linker moiety can be six atoms or longer in length. In some embodiments, the cleavable linker can be a TOPS (two oligonucleotides per synthesis) linker, an amino linker, a chemically cleavable linker, or a photocleavable linker. Accessing the target identifiers can include applying one or more probes simultaneously to the pool of identifiers or applying one or more probes sequentially to the pool of identifiers. For nucleic acid capture, see Chemical Methods Section F.
[0110]
[0153] In the case of degradation-based access, the components that make up the identifiers in the pool may share complementarity with one or more degradation target probes. The probes may be bound or hybridized to separate components on the identifiers. The probes may be targets for degradative enzymes, such as endonucleases. In one example, one or more identifier libraries may be combined. A set of probes may be hybridized to one of the identifier libraries. The set of probes may include RNA, which may induce a Cas9 enzyme. The Cas9 enzyme may be introduced into one or more identifier libraries. The identifiers hybridized to the probes may be degraded by the Cas9 enzyme. The identifiers to be accessed may not be degraded by the degradative enzyme. In another example, the identifiers may be single-stranded, and the identifier library may be combined with a single-strand specific endonuclease, such as S1 nuclease, that selectively degrades the identifiers that are not accessed. The identifiers to be accessed may be hybridized to a complementary set of identifiers to protect them from degradation by the single-strand specific endonuclease. The identifier to be accessed can be isolated from the degradation products by size selection, such as size-selective chromatography (e.g., agarose gel, electrophoresis). Alternatively or additionally, the undegraded identifier can be selectively amplified (e.g., using PCR) such that the degradation products are not amplified. The undegraded identifier can be amplified using primers that hybridize to each end of the undegraded identifier and thus do not hybridize to each end of the degraded or cleaved identifier.
[0111]
[0154] FIG. 17B shows an example of how the polymerase chain reaction can be used to perform an "OR" or "AND" operation to access identifiers that include multiple components. In one example, if two forward primers bind to separate sets of identifiers on the left end, an "OR" amplification of the union of those sets of identifiers can be achieved by using the two forward primers together in a multiplication PCR reaction, along with a reverse primer that binds to all of the identifiers on the right end. In another example, if one forward primer binds to a set of identifiers on the left end and one reverse primer binds to a set of identifiers on the right end, an "AND" operation of the intersection of those two sets of identifiers can be achieved by using the forward and reverse primers together as a primer pair in a PCR reaction.
[0112]
[0155] 17C shows an example of how affinity tags can be used to perform an "OR" or "AND" operation to access identifiers that contain multiple components. In one example, if affinity probe "P1" captures all identifiers with component "C1" and another affinity probe "P2" captures all identifiers with component "C2", the set of all identifiers that have C1 or C2 can be captured by using P1 and P2 simultaneously (corresponding to an "OR" operation). In another example, using the same components and probes, the set of all identifiers that have C1 and C2 can be captured by using P1 and P2 sequentially (corresponding to an "AND" operation).
[0113] Methods for reading information stored in nucleic acid sequences
[0156] In another aspect, the disclosure provides a method for reading information stored in a nucleic acid sequence. The method for reading information stored in a nucleic acid sequence may include (a) providing an identifier library; (b) identifying identifiers present in the identifier library; (c) generating a string from the identifiers present in the identifier library; and (d) compiling information from the string. The identifier library may include a subset of a plurality of identifiers from the combinatorial space. Each individual identifier of the subset of identifiers may correspond to an individual symbol in the string. The identifier may include one or more components. The components may include a nucleic acid sequence.
[0114]
[0157] Information can be written to one or more identifier libraries as described elsewhere herein. Identifiers can be constructed using any of the methods described elsewhere herein. Stored data can be copied and accessed using any of the methods described elsewhere herein.
[0115]
[0158] The identifier may include information related to the location of the encoded symbol, the value of the encoded symbol, or both the location and value of the encoded symbol. The identifier may include information related to the location of the encoded symbol, and the presence or absence of the identifier in the identifier library may indicate the value of the symbol. The presence of the identifier in the identifier library may indicate a first symbol value (e.g., a first bit value) in the binary string, and the absence of the identifier in the identifier library may indicate a second symbol value (e.g., a second bit value) in the binary string. In a binary system, basing the bit value on the presence or absence of the identifier in the identifier library may reduce the number of identifiers to assemble, and therefore reduce write time. In one example, the presence of the identifier may indicate a bit value of "1" at the mapped location, and the absence of the identifier may indicate a bit value of "0" at the mapped location.
[0116]
[0159] Generating symbols (e.g., bit values) of information may include identifying the presence or absence of an identifier to which the symbols (e.g., bits) may be mapped or encoded. Determining the presence or absence of an identifier may include sequencing the current identifier or detecting the presence of the identifier using a hybridization array. In one example, decoding and reading the encoded sequence may be performed using a sequencing platform. Exemplary sequencing platforms are described in U.S. Patent Application No. 14 / 465,685, filed August 21, 2014, entitled "METHOD OF NUCLEIC ACID AMPLIFICATION," published December 18, 2014 as U.S. Patent Application Publication No. 2014-0371100A1; U.S. Patent Application No. 13 / 886,234, filed May 2, 2013, entitled "METHOD OF NUCLEIC ACID AMPLIFICATION," published September 5, 2013 as U.S. Patent Application Publication No. 2013-0231254A1; and U.S. Patent Application No. 2009-0253141A1, entitled "METHODS AND APPARATUSES FOR ANALYZING POLYNUCLEOTIDE No. 12 / 400,593, filed March 9, 2009, entitled "METHOD COMPONENT SEQUENCES," each of which is incorporated herein by reference in its entirety.
[0117]
[0160] In one example, decoding the nucleic acid encoded data can be accomplished by utilizing sequencing techniques that indicate the presence or absence of specific nucleic acid sequences, such as base-by-base sequencing of a nucleic acid strand, such as Illumina® sequencing, or fragment analysis by capillary electrophoresis. Sequencing can be employed through the use of reversible terminators. Sequencing can employ the use of natural or non-natural (e.g., engineered) nucleotides or nucleotide analogs. Alternatively or additionally, decoding the nucleic acid sequence can be performed using a variety of analytical techniques, including, but not limited to, any method that generates an optical, electrochemical, or chemical signal. A variety of sequencing techniques can be used, including but not limited to polymerase chain reaction (PCR), digital PCR, Sanger sequencing, high throughput sequencing, sequencing by synthesis, single molecule sequencing, sequencing by ligation, RNA-Seq (Illuimna), next generation sequencing, digital gene expression (Helicos), clonal single microarrays (Solexa), shotgun sequencing, Maxam-Gilbert sequencing or massively parallel sequencing.
[0118]
[0161] Various read methods can be used to extract information from the encoded nucleic acid. In one example, microarrays (or any type of fluorescent hybridization), digital PCR, quantitative PCR (qPCR) and various sequencing platforms can also be used to read the encoded sequence and by extension the digitally encoded data.
[0119]
[0162] The identifier library may further include complementary nucleic acid sequences that provide metadata about the information, that encrypt or mask the information, or that both provide metadata and mask the information. The complementary nucleic acid may be identified simultaneously with the identification of the identifier. Alternatively, the complementary nucleic acid may be identified before or after the identifier is identified. In one example, the complementary nucleic acid sequence is not identified during reading of the encoded information. The complementary nucleic acid sequence may not be distinguishable from the identifier. An identifier index or key may be used to differentiate complementary nucleic acid molecules from the identifier.
[0120]
[0163] Re-encoding the input bit string to allow for the use of fewer nucleic acid molecules may increase the efficiency of encoding and decoding data. For example, if an encoding method receives an input string with a high occurrence of a "111" subsequence that may be mapped to three nucleic acid molecules (e.g., an identifier), it may be re-encoded to a "000" subsequence that may be mapped to an empty set of nucleic acid molecules. Alternative input subsequences of "000" may also be re-encoded to "111". This re-encoding method may reduce the total amount of nucleic acid molecules used to encode the data, since the number of "1"s in the data set may be reduced. In this example, the total size of the data set may be increased to accommodate a codebook that specifies new mapping instructions. An alternative method for increasing encoding and decoding efficiency may be to re-encode the input string to reduce the variable length. For example, "111" may be re-encoded to "00", which may reduce the size of the data set and reduce the number of "1"s in the data set.
[0121]
[0164] By specifically designing identifiers to facilitate detection, the speed and efficiency of decoding the nucleic acid encoded data can be controlled (e.g., increased). For example, nucleic acid sequences (e.g., identifiers) designed to facilitate detection can include nucleic acid sequences that include a majority of nucleotides that are easier to call and detect based on their optical, electrochemical, chemical, or physical properties. Engineered nucleic acid sequences can be either single-stranded or double-stranded. Engineered nucleic acid sequences can include synthetic or non-natural nucleotides that enhance the detectable properties of the nucleic acid sequence. Engineered nucleic acid sequences can include all natural nucleotides, all synthetic or non-natural nucleotides, or a combination of natural, synthetic, and non-natural nucleotides. Synthetic nucleotides can include nucleotide analogs, such as peptide nucleic acids, locked nucleic acids, glycol nucleic acids, and threose nucleic acids. Non-natural nucleotides can include dNaM, an artificial nucleoside containing a 3-methoxy-2-naphthyl group, and d5SICS, an artificial nucleoside containing a 6-methylisoquinoline-1-thione-2-yl group. Engineered nucleic acid sequences can be designed for a single enhanced property, such as enhanced optical properties, or engineered nucleic acid sequences can be designed with multiple enhanced properties, such as enhanced optical and electrochemical properties or enhanced optical and chemical properties. For DNA design, see Chemical Methods Section H.
[0122]
[0165] Engineered nucleic acid sequences may contain reactive natural, synthetic and non-natural nucleotides that do not enhance the optical, electrochemical, chemical or physical properties of the nucleic acid sequence. The reactive components of the nucleic acid sequence may allow for the addition of chemical moieties that confer enhanced properties to the nucleic acid sequence. Each nucleic acid sequence may contain a single chemical moiety or may contain multiple chemical moieties. Examples of chemical moieties include, but are not limited to, fluorescent moieties, chemiluminescent moieties, acidic or basic moieties, hydrophobic or hydrophilic moieties and moieties that alter the oxidation state or reactivity of the nucleic acid sequence.
[0123]
[0166] Sequencing platforms may be specifically designed for decoding and reading the information encoded in nucleic acid sequences. Sequencing platforms may be dedicated to sequencing single-stranded or double-stranded nucleic acid molecules. Sequencing platforms may decode nucleic acid encoded data by reading individual bases (e.g., base-by-base sequencing) or by detecting the presence or absence of the entire nucleic acid sequence (e.g., moiety) incorporated into the nucleic acid molecule (e.g., identifier). Sequencing platforms may include the use of promiscuous reagents, the use of extended read lengths, and the use of detection of specific nucleic acid sequences by the addition of detectable chemical moieties. The use of more promiscuous reagents during sequencing may increase the read efficiency by allowing faster base calling, which may result in shorter sequencing times. The use of extended read lengths may allow longer sequences of encoded nucleic acids to be decoded per read. The addition of detectable chemical moiety tags may allow detection of the presence or absence of a nucleic acid sequence by the presence or absence of a chemical moiety. For example, each nucleic acid sequence encoding a bit of information can be tagged with a chemical moiety that generates a unique optical, electrochemical or chemical signal. The presence or absence of that unique optical, electrochemical or chemical signal can indicate a "0" or "1" bit value. The nucleic acid sequence can contain a single chemical moiety or can contain multiple chemical moieties. The chemical moieties can be added to the nucleic acid sequence prior to use of the nucleic acid sequence to encode data. Alternatively or additionally, the chemical moieties can be added to the nucleic acid sequence after encoding the data but before decoding the data. The chemical moiety tag can be added directly to the nucleic acid sequence or the nucleic acid sequence can contain a synthetic or non-natural nucleotide anchor to which the chemical moiety tag can be added.
[0124]
[0167] A unique code may be applied to minimize or detect encoding and decoding errors. Encoding and decoding errors may occur due to false negatives (nucleic acid molecules or identifiers not included in the random sampling). One example of an error detection code may be a checksum sequence that counts the number of identifiers in a consecutive set of possible identifiers included in the identifier library. During reading of the identifier library, the checksum may indicate the expected number of identifiers to obtain from that consecutive set, and identifiers may continue to be sampled for reading until the expected number is met. In some embodiments, a checksum sequence may be included for every consecutive set of R identifiers, where R may be 1, 2, 5, 10, 50, 100, 200, 500, or 1000 in size or more, or may be less than 1000, 500, 200, 100, 50, 10, 5, or 2. The smaller the value of R, the better the error detection. In some embodiments, the checksum may be a complementary nucleic acid sequence. For example, a set containing seven nucleic acid sequences (e.g., components) can be divided into two groups: nucleic acid sequences for constructing identifiers in a product manner (components X1-X3 in layer X and Y1-Y3 in layer Y) and nucleic acid sequences for supplemental checksums (X4-X7 and Y4-Y7). Checksum sequences X4-X7 can indicate whether 0, 1, 2 or 3 sequences of layer X can be assembled with each member of layer Y. Alternatively, checksum sequences Y4-Y7 can indicate whether 0, 1, 2 or 3 sequences of layer Y can be assembled with each member of layer X. In this example, an original identifier library with identifiers {X1Y1, X1Y3, X2Y1, X2Y2, X2Y3} can be supplemented to include checksums to result in the following pool: {X1Y1, X1Y3, X2Y1, X2Y2, X2Y3, X1Y6, X2Y7, X3Y4, X6Y1, X5Y2, X6Y3}. The checksum sequence can be used for error correction.For example, the absence of X1Y1 and the presence of X1Y6 and X6Y1 in the above data set can allow for the inference that the X1Y1 nucleic acid molecule is missing from the data set.The checksum sequence can indicate whether the identifier is missing from the sample of the identifier library or the accessed portion of the identifier library.In the case of a missing checksum sequence, an access method such as PCR or affinity tagged probe hybridization can amplify and / or isolate it. In some embodiments, the checksum may not be a complementary nucleic acid sequence. In that case, the checksums can be directly encoded into the information so that they are represented by the identifier.
[0125]
[0168] Data encoding and decoding noise can be reduced by constructing identifiers as palindromes, for example by using palindromic pairs of components rather than single components in the product format. Pairs of components from different layers can then be assembled together in a palindromic fashion (e.g., YXY rather than XY for components X and Y). This palindromic method can be extended to a larger number of layers (e.g., ZYXYZ rather than XYZ), which may allow for detection of erroneous cross-reactivity between identifiers.
[0126]
[0169] Adding excess (e.g., large excess) of complementary nucleic acid sequences to the identifiers can prevent collection of the encoded identifiers by sequencing. The identifiers can be enriched by complementary nucleic acid sequences before decoding the information. For example, the identifiers can be enriched by a nucleic acid amplification reaction using primers specific to the identifier ends. Alternatively or additionally, the information can be decoded without enriching the sample pool by sequencing (e.g., sequencing by synthesis) using specific primers. In both decoding methods, it can be difficult to enrich or decode the information without the decryption key or knowing something about the composition of the identifiers. Alternative access methods, such as the use of affinity tag-based probes, can also be utilized.
[0127] A system for encoding binary array data.
[0170] Systems for encoding digital information into nucleic acids (e.g., DNA) can include systems, methods, and devices that convert files and data (e.g., raw data, compressed zip files, integer data, and other forms of data) into bytes and encode the bytes into nucleic acids, typically DNA segments, sequences, or combinations thereof.
[0128]
[0171] In one aspect, the present disclosure provides a system for encoding binary sequence data using nucleic acids. The system for encoding binary sequence data using nucleic acids may include a device and one or more computer processors. The device may be configured to construct an identifier library. The one or more computer processors may be individually or collectively programmed to: (i) translate information into a symbol string; (ii) map the symbol string to a plurality of identifiers; and (iii) construct an identifier library including at least a subset of the plurality of identifiers. Each identifier of the plurality of identifiers may correspond to an individual symbol of the symbol string. Each identifier of the plurality of identifiers may include one or more components. Each component of the one or more components may include a nucleic acid sequence.
[0129]
[0172] In another aspect, the present disclosure provides a system for reading binary sequence data using nucleic acids. The system for reading binary sequence data using nucleic acids may include a database and one or more computer processors. The database may store an identifier library encoding information. The one or more computer processors may be individually or collectively programmed to: (i) identify an identifier in the identifier library; (ii) generate a plurality of symbols from the identifiers identified in (i); and (iii) compile information from the plurality of symbols. The identifier library may include a subset of the plurality of identifiers. Each individual identifier of the plurality of identifiers may correspond to an individual symbol in the symbol string. The identifier may include one or more components. The components may include a nucleic acid sequence.
[0130]
[0173] A non-limiting embodiment of a method of encoding digital data using the system includes receiving digital information in the form of a byte stream, parsing the byte stream into individual bytes, mapping bit locations within the bytes using a nucleic acid index (or identifier rank), and encoding sequences that correspond to either a bit value of 1 or a bit value of 0 into an identifier. Searching the digital data may include sequencing a nucleic acid sample or pool of nucleic acids that includes sequences of nucleic acids (e.g., identifiers) that are mapped to one or more bits, referencing the identifier rank to determine whether the identifier is present in the nucleic acid pool, and decoding the location and bit value information of each sequence into a byte that includes the sequence of digital information.
[0131]
[0174] A system for encoding, writing, copying, accessing, reading and decoding information encoded and written into a nucleic acid molecule may be a single integral unit or may be multiple units configured to perform one or more of the above operations. A system for encoding and writing information into a nucleic acid molecule (e.g., an identifier) may include a device and one or more computer processors. The one or more computer processors may be programmed to parse the information into a symbol string (e.g., a bit string). The computer processor may generate an identifier rank. The computer processor may classify the symbols into two or more categories. One category may include symbols represented by the presence of a corresponding identifier in the identifier library, and another category may include symbols represented by the absence of a corresponding identifier in the identifier library. The computer processor may instruct the device to assemble an identifier corresponding to the symbol represented for the presence of the identifier in the identifier library.
[0132]
[0175] The device may include multiple regions, sections, or compartments. Reagents and components for assembling the identifiers may be stored in one or more regions, sections, or compartments of the device. The layers may be stored in separate regions of a section of the device. The layers may include one or more unique components. Components in one layer may be uniquely distinguished from components in another layer. The regions or sections may include containers and the compartments may include wells. Each layer may be stored in a separate container or compartment. Each reagent or nucleic acid sequence may be stored in a separate container or compartment. Alternatively or in addition, multiple reagents may be combined to form a master mix for constructing the identifiers. The device may transfer reagents, components, and templates to be combined in one section from another section of the device. The device may provide conditions for completing the assembly reaction. For example, the device may provide heating, agitation, and detection of reaction progress. The constructed identifiers may be directed to undergo one or more subsequent reactions that add barcodes, common sequences, variable sequences, or tags to one or more ends of the identifiers. The identifiers may then be directed to a region or compartment that generates an identifier library. One or more identifier libraries may be stored in each region, section, or individual compartment of the device.The device may transfer fluids (eg, reagents, components, templates) using pressure, vacuum, or suction.
[0133]
[0176] The identifier library may be stored on the device or transferred to a separate database. The database may contain one or more identifier libraries. The database may provide long-term storage conditions for the identifier library (e.g., conditions to reduce degradation of the identifiers). The identifier library may be stored in powder, liquid or solid form. Aqueous solutions of the identifiers may be lyophilized for more stable storage (see Chemical Methods Section G for more information on lyophilization). Alternatively, the identifiers may be stored in the absence of oxygen (e.g., anaerobic storage conditions). The database may provide UV light protection, low temperature (e.g., refrigeration or freezing) and protection from degrading chemicals and enzymes. Prior to transfer to the database, the identifier library may be lyophilized or frozen. The identifier library may contain ethylenediaminetetraacetic acid (EDTA) to inactivate nucleases and / or buffers to maintain stability of the nucleic acid molecules.
[0134]
[0177] The database may be coupled to, include, or be separate from a device that writes information to the identifiers, copies the information, accesses the information, or reads the information. A portion of the identifier library may be removed from the database before copying, accessing, or reading. The device that copies the information from the database may be the same or a different device as the one that writes the information. The device that copies the information may extract an aliquot of the identifier library from the device and combine the aliquot with reagents and constituents to amplify a portion or the entire identifier library. The device may control the temperature, pressure, and agitation of the amplification reaction. The device may include multiple compartments, and one or more amplification reactions may occur in the compartment containing the identifier library. The device may copy more than one pool of identifiers at a time.
[0135]
[0178] The copied identifiers may be transferred from the copy device to the access device. The access device may be the same device as the copy device. The access device may include separate regions, sections or compartments. The access device may have one or more columns, bead reservoirs or magnetic regions for isolating the identifiers bound to the affinity tags (for nucleic acid capture, see Chemical Methods section F). Alternatively or in addition, the access device may have one or more size selection units. The size selection unit may include agarose gel electrophoresis or any other method of size selecting nucleic acid molecules (for more information on nucleic acid size selection, see Chemical Methods section E). Copying and extraction may be performed in the same region of the device or in different regions of the device (for nucleic acid amplification, see Chemical Methods section D).
[0136]
[0179] The accessed data may be read out on the same device or the accessed data may be transferred to another device. The reading device may include a detection unit that detects and identifies the identifier. The detection unit may be part of a sequencer, a hybridization array or other unit for identifying the presence or absence of an identifier. The sequencing platform may be specifically designed to decode and read the information encoded in the nucleic acid sequence. The sequencing platform may be specialized for sequencing single-stranded or double-stranded nucleic acid molecules. The sequencing platform may decode the nucleic acid encoded data by reading individual bases (e.g., base-by-base sequencing) or by detecting the presence or absence of the entire nucleic acid sequence (e.g., moiety) incorporated within the nucleic acid molecule (e.g., identifier). Alternatively, the sequencing platform may be a system such as Illumina® sequencing or capillary electrophoretic fragmentation analysis. Alternatively or in addition, the decoding of the nucleic acid sequence may be performed using a variety of analysis techniques implemented by the device, including but not limited to any method that generates an optical, electrochemical or chemical signal.
[0137]
[0180] Storing information in nucleic acid molecules can have a variety of applications, including, but not limited to, long-term information storage, confidential information storage, and medical information storage. In one example, a person's medical information (e.g., medical history and medical records) can be stored in a nucleic acid molecule and given to the person. The information can be stored outside the body (e.g., in a wearable device) or inside the body (e.g., in a subcutaneous capsule). When the patient is brought to a clinic or hospital, a sample can be taken from the device or capsule and the information can be decoded using a nucleic acid sequencer. Personal storage of medical records in nucleic acid molecules can provide an alternative to computer and cloud-based storage systems. Personal storage of medical records in nucleic acid molecules can reduce the incidence of medical records being hacked or the prevalence of medical record hacking. The nucleic acid molecules used for capsule-based storage of medical records can be derived from human genome sequences. The use of human genome sequences can reduce the immunogenicity of the nucleic acid sequences in the event of capsule failure or leakage.
[0138] Computer Systems
[0181] The present disclosure provides computer systems programmed to implement the methods of the present disclosure. Figure 19 shows a computer system 1901 programmed or otherwise configured to encode digital information into a nucleic acid sequence and / or read (e.g., decode) information derived from a nucleic acid sequence. The computer system 1901 can coordinate various aspects of the encoding and decoding procedures of the present disclosure, such as, for example, bit value and bit location information for a given bit or byte from an encoded bitstream or bytestream.
[0139]
[0182] The computer system 1901 includes one central processing unit (CPU, also referred to herein as "processor" and "computer processor"), which may be a single-core or multi-core processor, or multiple processors for parallel processing. The computer system 1901 also includes memory or memory locations 1910 (e.g., random access memory, read-only memory, flash memory), an electronic storage unit 1915 (e.g., hard disk), a communication interface 1920 (e.g., network adapter) for communicating with one or more other systems, and peripherals 1925, such as cache, other memory, data storage, and / or electronic display adapters. The memory 1910, storage unit 1915, interface 1920, and peripherals 1925 communicate with the CPU 1905 through a communication bus (solid lines), such as a motherboard. The storage unit 1915 may be a data storage unit (or data repository) for storing data. The computer system 1901 may be operatively coupled to a computer network ("network") 1930 using the communication interface 1920. The network 1930 may be the Internet, an Internet and / or an extranet, or an intranet and / or an extranet in communication with the Internet. In some cases, the network 1930 is a telecommunications network and / or a data network. The network 1930 may include one or more computer servers that may enable distributed computing, such as cloud computing. In some cases, the network 1930 may implement a peer-to-peer network with the computer system 1901, which may enable devices coupled to the computer system 1901 to act as clients or servers.
[0140]
[0183] The CPU 1905 can execute sequences of machine-readable instructions, which may be embodied in a program or software. The instructions may be stored in a memory location, such as the memory 1910. The instructions may be directed to the CPU 1905, which may then be programmed or otherwise configured to perform the methods of the present disclosure. Examples of operations performed by the CPU 1905 may include fetch, decode, execute, and writeback.
[0141]
[0184] The CPU 1905 may be part of a circuit, such as an integrated circuit. One or more other components of the system 1901 may be included in the circuit. In some cases, the circuit is an application specific integrated circuit (ASIC).
[0142]
[0185] The storage unit 1915 can store files such as drivers, libraries, and saved programs. The storage unit 1915 can store user data, such as user preferences and user programs. The computer system 1901 may include one or more additional data storage units that are external to the computer system 1901, such as located on a remote server that in some cases communicates with the computer system 1901 through an intranet or the Internet.
[0143]
[0186] The computer system 1901 can communicate with one or more remote computer systems through a network 1930. For example, the computer system 1901 can communicate with a user's remote computer system and / or a machine that can be used by the user in the process of analyzing data encoded or decoded in a nucleic acid sequence (e.g., a sequence or other system for chemically identifying the order of nitrogenous bases in a nucleic acid sequence). Examples of remote computer systems include personal computers (e.g., portable PCs), slate or tablet PCs (e.g., Apple® iPad®, Samsung® Galaxy Tab), phones, smartphones (e.g., Apple® iPhone®, Android-enabled devices, Blackberry®), or personal digital assistants. A user can access the computer system 1901 through the network 1930.
[0144]
[0187] The methods described herein may be implemented by machine (e.g., a computer processor) executable code stored in an electronic storage location of the computer system 1901, such as, for example, the memory 1910 or the electronic storage unit 1915. The machine executable or machine readable code may be provided in the form of software. In use, the code may be executed by the processor 1905. In some cases, the code may be retrieved from the storage unit 1915 and stored in the memory 1910 for easy access by the processor 1905. In some circumstances, the electronic storage unit 1915 may be omitted and the machine executable instructions are stored in the memory 1910.
[0145]
[0188] The code may be precompiled and configured for use with a machine having a processor adapted to execute the code, or it may be compiled during run-time. The code may be provided in a programming language that may be selected to enable the code to be executed in a precompiled or run-time compiled manner.
[0146]
[0189] Aspects of the systems and methods provided herein, such as the computer system 1901, can be embodied in programming. Various aspects of the technology can be thought of as an "article of manufacture" or "product" typically in the form of machine (or processor) executable code and / or associated data carried or embodied on some type of machine-readable medium. The machine executable code can be stored in an electronic storage unit, such as a memory (e.g., read-only memory, random access memory, flash memory) or a hard disk. A "storage" type medium can include any tangible memory of a computer, processor, etc., or associated modules, such as various semiconductor memories, tape drives, disk drives, etc., that may provide non-transitory storage for software programming from time to time. All or a portion of the software may sometimes be communicated over the Internet or various other telecommunications networks. Such communication may, for example, enable the software to be loaded from one computer or processor to another, for example, from a management server or host computer to a computer platform of an application server. Thus, other types of media that may carry software elements include light waves, radio waves, and electromagnetic waves, such as those used across physical interfaces between local devices, through wired and optical landline networks, and via various air links. Physical elements that carry such waves, such as wired or wireless links, optical links, etc., may also be considered media that carry the software. As used herein, unless limited to non-transitory tangible "storage" media, terms such as computer or machine "readable medium" refer to any medium that participates in providing instructions to a processor for execution.
[0147]
[0190] Thus, a machine-readable medium such as a computer executable code may take many forms, including, but not limited to, a tangible storage medium, a carrier wave medium, or a physical transmission medium. Non-volatile storage media include optical or magnetic disks, such as any of the storage devices in any computer, such as may be used to implement the databases, etc., shown in the figures. Volatile storage media include dynamic memory, such as the main memory of such a computer platform. Tangible transmission media include coaxial cables, copper wire and fiber optics, including the wires that comprise a bus within a computer system. Carrier wave transmission media may take the form of electric, electromagnetic, acoustic or light waves, such as those generated during radio frequency (RF) and infrared (IR) data communications. Thus, common forms of computer readable media include, for example, a floppy disk, a flexible disk, a hard disk, a magnetic tape, any other magnetic medium, a CD-ROM, a DVD or a DVD-ROM, any other optical medium, punch cards paper tape, any other physical storage medium having a pattern of holes, a RAM, a ROM, a PROM and an EPROM, a Flash EPROM, any other memory chip or cartridge, a carrier wave transporting data or instructions, a cable or link transporting such a carrier wave, or any other medium from which a computer may read programming code and / or data. Many of these forms of computer readable media may be involved in carrying one or more sequences of one or more instructions to a processor for execution.
[0148]
[0191] The computer system 1901 may include or communicate with an electronic display 1935 including a user interface (UI) 1940 to provide sequence output data including, for example, sequences and bits, bytes or bit streams encoded or read by a machine or computer system encoding or decoding nucleic acids, raw data, files and compressed or decompressed zip files to be encoded or decoded into DNA stored data. Examples of UIs include, but are not limited to, graphical user interfaces (GUIs) and web-based user interfaces. The methods and systems of the present disclosure may be implemented by one or more algorithms. The algorithms may be implemented by software when executed by the central processing unit 1905. The algorithms may be used with, for example, the DNA index and the raw data or compressed or decompressed data of a zip file to determine a customized method of coding the digital information from the raw data or zip file compressed data prior to encoding the digital information.
[0149] Chemical Methods Section A. Overlap extension PCR (OEPCR) assembly
[0192] In OEPCR, components are assembled in a reaction that includes a polymerase and dNTPs (deoxynucleotide triphosphates, including dATP, dTTP, dCTP, dGTP, or variants or analogs thereof). Components can be single-stranded or double-stranded nucleic acids. Components that are to be assembled adjacent to each other can have complementary 3' ends, complementary 5' ends, or homology between the 5' end of one component and the 3' end of the adjacent component. These terminal regions are called "hybridization regions" and are intended to facilitate the formation of hybridized junctions between components during OEPCR, where the 3' end of one input component (or its complement) hybridizes to the 3' end of the intended adjacent component (or its complement). Polymerase extension can then form an assembled double-stranded product. This product can then be assembled to more components through subsequent hybridization and extension. Figure 7 shows a schematic of one example of OEPCR for assembling three nucleic acids.
[0150]
[0193] In some embodiments, OEPCR may include cycling between three temperatures: melting temperature, annealing temperature and extension temperature. The melting temperature is intended to convert double-stranded nucleic acids into single-stranded nucleic acids as well as to eliminate the formation of secondary structures or hybridization within or between components. Typically, the melting temperature is high, for example, above 95°C. In some embodiments, the melting temperature may be at least 96°C, 97°C, 98°C, 99°C, 100°C, 101°C, 102°C, 103°C, 104°C or 105°C. In other embodiments, the melting temperature may be up to 95°C, 94°C, 93°C, 92°C, 91°C or 90°C. Higher melting temperatures may improve the dissociation of nucleic acids and their secondary structures, but may also result in side effects such as degradation of the nucleic acids or polymerase. The melting temperature may be applied to the reaction for at least 1 second, 2 seconds, 3 seconds, 4 seconds, 5 seconds or longer, such as 30 seconds, 1 minute, 2 minutes or 3 minutes.
[0151]
[0194] The annealing temperature is intended to promote the formation of hybridization between complementary 3' ends of the intended adjacent components (or their complements). In some embodiments, the annealing temperature may correspond to the calculated melting temperature of the intended hybridized nucleic acid formation. In other embodiments, the annealing temperature may be within 10°C or more of said melting temperature. In some embodiments, the annealing temperature may be at least 25°C, 30°C, 50°C, 55°C, 60°C, 65°C, or 70°C. The melting temperature may depend on the sequence of the intended hybridization region between the components. Longer hybridization regions may have higher melting temperatures, and hybridization regions with a higher content of guanine or cytosine nucleotides may have higher melting temperatures. Thus, it may be possible to design components for an OEPCR reaction that are intended to assemble optimally at a specific annealing temperature. The annealing temperature may be applied to the reaction for at least 1 second, 5 seconds, 10 seconds, 15 seconds, 20 seconds, 25 seconds, 30 seconds or more.
[0152]
[0195] The extension temperature is intended to initiate and promote nucleic acid chain extension of the hybridized 3' end catalyzed by one or more polymerase enzymes. In some embodiments, the extension temperature may be set at a temperature where the polymerase functions optimally in terms of nucleic acid binding strength, extension rate, extension stability or fidelity. In some embodiments, the extension temperature may be at least 30°C, 40°C, 50°C, 60°C, 70°C or more. The annealing temperature may be applied to the reaction for at least 1 s, 5 s, 10 s, 15 s, 20 s, 25 s, 30 s, 40 s, 50 s, 60 s or more. The recommended extension time may be around 15-45 s per kilobase of expected extension.
[0153]
[0196] In some embodiments of OEPCR, the annealing temperature and the extension temperature can be the same. Therefore, a two-step temperature cycle can be used instead of a three-step temperature cycle. Examples of annealing and extension temperatures include 60°C, 65°C, or 72°C.
[0154]
[0197] In some embodiments, OEPCR may be performed using one temperature cycle. Such an embodiment may include the intended assembly of only two components. In other embodiments, OEPCR may be performed using multiple temperature cycles. Any given nucleic acid in OEPCR may assemble with at most one other nucleic acid in one cycle. This is because assembly (or extension or elongation) occurs only at the 3' end of the nucleic acid, and each nucleic acid has only one 3' end. Thus, multiple temperature cycles may be required to assemble multiple components. For example, assembling four components may include three temperature cycles. Assembling six components may include five temperature cycles. Assembling ten components may include nine temperature cycles. In some embodiments, more temperature cycles than the minimum required may be used to increase the efficiency of assembly. For example, assembling two components using four temperature cycles may result in a higher product yield than using only one temperature cycle. This is because component hybridization and extension are statistical events that occur as a function of the total number of components in each cycle. Thus, the total percentage of components that are assembled can increase with increasing number of cycles.
[0155]
[0198] In addition to temperature cycling considerations, the design of nucleic acid sequences in OEPCR can also affect the efficiency of assembly with each other.Nucleic acids with long hybridization regions can hybridize more efficiently at a given annealing temperature than nucleic acids with short hybridization regions.This is because longer hybridized products contain more stable base pairs than shorter hybridized products, and therefore are more stable overall.Hybridization regions can have a length of at least 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 or more bases.
[0156]
[0199] A hybridization region with a higher guanine or cytosine content may hybridize more efficiently at a given temperature than a hybridization region with a lower guanine or cytosine content. This is because guanine forms a more secure base pair with cytosine than adenine forms a base pair with thymine. A hybridization region may have any value of guanine or cytosine content (also known as GC content) between 0% and 100%.
[0157]
[0200] In addition to hybridization region length and GC content, there are many more aspects of nucleic acid sequence design that can affect the efficiency of OEPCR. For example, the formation of undesired secondary structures within a component can interfere with its ability to form hybridization products with intended neighboring components. These secondary structures can include hairpin loops. The types of secondary structures that can arise for a nucleic acid and their stability (e.g., melting temperature) can be predicted based on the sequence. Design space search algorithms can be used to identify nucleic acid sequences that meet appropriate length and GC content criteria for efficient OEPCR while avoiding sequences with potentially inhibitory secondary structures. Design space search algorithms can include genetic algorithms, heuristic search algorithms, metaheuristic search strategies such as tabu search, branch-and-bound search algorithms, dynamic programming-based algorithms, constrained combinatorial optimization, gradient descent-based algorithms, random search algorithms, or combinations thereof.
[0158]
[0201] Similarly, the formation of homodimers (nucleic acid molecules that hybridize with nucleic acid molecules of the same sequence) and unwanted heterodimers (nucleic acid sequences that hybridize with nucleic acid sequences other than their intended assembly partner) can also interfere with OEPCR. As with secondary structures within nucleic acids, computational methods and design space exploration algorithms can also be used to predict and take into account the formation of homodimers and heterodimers during nucleic acid design.
[0159]
[0202] Longer nucleic acid sequences or higher GC content may result in more unwanted secondary structures, homodimers and heterodimers formed with OEPCR. Thus, in some embodiments, the use of shorter nucleic acid sequences or lower GC content may lead to higher assembly efficiency. These design principles may counter design strategies that use long hybridization regions or high GC content for more efficient assembly. Thus, in some embodiments, OEPCR may be optimized by using long hybridization regions with high GC content but short non-hybridization regions with low GC content. The total length of the nucleic acid may be at least 10, 20, 30, 40, 50, 60, 70, 80, 90, 100 or more bases. In some embodiments, there may be an optimal length and an optimal GC content of the hybridization region of the nucleic acid at which the assembly efficiency is optimized.
[0160]
[0203] The greater the number of distinct nucleic acids in OEPCR reaction, the greater the potential for interference with expected assembly efficiency.This is because the greater the number of distinct nucleic acid sequences, the greater the probability of undesired molecular interactions, especially in the form of heterodimers.Therefore, in some embodiments of OEPCR that assemble a large number of components, the nucleic acid sequence constraints for efficient assembly may be more stringent.
[0161]
[0204] Primers for amplifying the expected final assembled product may be included in the OEPCR reaction, in which case the OEPCR reaction may be run with more temperature cycles to improve the yield of assembled products, not only by creating more assemblies between the components, but also by exponentially amplifying the fully assembled samples in the manner of conventional PCR (see Chemical Methods Section D).
[0162]
[0205] Additives may be included in the OEPCR reaction to improve assembly efficiency, such as the addition of betaine, dimethylsulfoxide (DMSO), non-ionic detergents, formamide, magnesium, bovine serum albumin (BSA), or combinations thereof. The additive content (weight per volume) may be at least 0%, 1%, 5%, 10%, 20% or more.
[0163]
[0206] A variety of polymerases can be used in OEPCR. The polymerase can be naturally occurring or synthetic. One example of a polymerase is Φ29 polymerase or its derivatives. In some cases, transcriptases or ligases (i.e., enzymes that catalyze the formation of bonds) are used in conjunction with or as a replacement for polymerases to construct new nucleic acid sequences. Examples of polymerases include DNA polymerase, RNA polymerase, thermostable polymerase, wild-type polymerase, modified polymerase, E. coli DNA polymerase I, T7 DNA polymerase, bacteriophage T4 DNA polymerase Φ29 (phi29) DNA polymerase, Taq polymerase, Tth polymerase, Tli polymerase, Pfu polymerase, Pwo polymerase, VENT polymerase, DEEPVENT polymerase, Ex-Taq polymerase, LA-Taw polymerase, Sso polymerase, Poc polymerase, Pab polymerase, Mth polymerase, ES4 polymerase, Tru polymerase, Tac polymerase, Tne polymerase, Tma polymerase Polymerases include Tca polymerase, Tih polymerase, Tfi polymerase, Platinum Taq polymerase, Tbr polymerase, Phusion polymerase, KAPA polymerase, Q5 polymerase, Tfl polymerase, Pfutubo polymerase, Pyrobest polymerase, KOD polymerase, Bst polymerase, Sac polymerase, Klenow fragment polymerase with 3' to 5' exonuclease activity, and their variants, modified products, and derivatives. Different polymerases may be stable and function optimally at different temperatures. In addition, different polymerases have different properties. For example, some polymerases, such as Phusion polymerase, may exhibit 3' to 5' exonuclease activity during nucleic acid elongation, which may contribute to higher fidelity. Some polymerases displace the leader sequence during elongation, while others degrade the leader sequence or stop elongation. Some polymerases, such as Taq, incorporate an adenine base at the 3' end of a nucleic acid sequence.This process is called A-tailing, and the addition of an adenine base can inhibit OEPCR because it can disrupt the engineered 3' complementarity between the intended flanking components.
[0164]
[0207] OEPCR can also be referred to as polymerase cycle assembly (or PCA).
[0165] B. Ligation Assembly
[0208] In ligation assembly, separate nucleic acids are assembled in a reaction that includes one or more ligase enzymes and additional cofactors, such as adenosine triphosphate (ATP), dithiothreitol (DTT), or magnesium ions (Mg 2+ ). During ligation, the 3' end of one nucleic acid strand is covalently attached to the 5' end of another nucleic acid strand, thus forming an assembled nucleic acid. The components in a ligation reaction can be blunt-ended double-stranded DNA (dsDNA), single-stranded DNA (ssDNA) or partially hybridized single-stranded DNA. Strategies for bringing together the ends of nucleic acids can be used to increase the frequency with which the material survives the ligase enzyme and thus improve the efficiency of the ligase reaction. Although blunt-ended dsDNA molecules tend to form a hydrophobic stack on which the ligase enzyme can act, a more successful strategy for bringing nucleic acids together can be to use nucleic acid components with 5' or 3' single-stranded overhangs that have complementarity with the overhangs of the components that are intended to be assembled. In the latter case, more stable nucleic acid duplexes can be formed due to base / base hybridization.
[0166]
[0209] When a double stranded nucleic acid has an overhanging strand at one end, the other strand on the same end can be referred to as a "cavity". The cavity and overhang together form a "sticky end", also known as a "sticky end". A sticky end can be a 3' overhang and a 5' cavity, or a 5' overhang and a 3' cavity. The sticky ends between two intended adjacent components can be designed to be complementary such that the overhangs of both sticky ends hybridize such that each overhang is immediately adjacent to the beginning of a cavity on the other component. This forms a "nick" (a double stranded DNA break) that can be "sealed" (covalently linked through a phosphodiester bond) by the action of a ligase. See FIG. 8 for an example schematic of sticky end ligation to assemble three nucleic acids. Either or both of the nicks on one or the other strand can be sealed. Thermodynamically, the top and bottom strands of the molecule forming the sticky end can transition between ligated and dissociated states, and thus the sticky end can be a transient formation. However, once a nick along one strand of a sticky-end duplex between two components has been sealed, that covalent bond remains even if a member of the opposing strand dissociates, in which case the bound strand can become a template to which the intended adjacent member of the opposing strand can bind and reform a nick which can then be sealed.
[0167]
[0210] Sticky ends can be created by digesting dsDNA with one or more endonucleases. Endonucleases (which may be called restriction enzymes) can target specific sites (which may be called restriction sites) on one or both ends of the dsDNA molecule and create staggered cleavages (which may be called digestion), thus leaving sticky ends. For restriction digestion, see Chemical Methods Section C. Digestion can leave palindromic overhangs (overhangs with a sequence that is the reverse complement of itself). In that case, two components digested with the same endonuclease can form complementary sticky ends that can be assembled using a ligase. If the endonuclease and ligase are compatible, digestion and ligation can be done together in the same reaction. The reaction can occur at a uniform temperature, such as 4°C, 10°C, 16°C, 25°C, or 37°C. Or, the reaction can be cycled between multiple temperatures, such as 16°C to 37°C. Cycling between multiple temperatures may allow digestion and ligation to each proceed at their respective optimum temperatures during different parts of the cycle.
[0168]
[0211] It may be beneficial to perform digestion and ligation in separate reactions, for example when the desired ligase and the desired endonuclease work optimally under different conditions. Or, for example, when the ligated product forms a new restriction site for the endonuclease. In these cases, it may be better to perform a restriction digest and then ligation separately, and perhaps it may be even more beneficial to remove the restriction enzyme before ligation. The nucleic acid may be isolated from the enzyme through phenol-chloroform extraction, ethanol precipitation, magnetic bead capture and / or silica membrane adsorption, washing and elution. Multiple endonucleases can be used in the same reaction, but care should be taken to ensure that the multiple endonucleases do not interfere with each other and function under similar reaction conditions. When two endonucleases are used, orthogonal (non-complementary) sticky ends may be created at both ends of the dsDNA component.
[0169]
[0212] Endonuclease digestion leaves sticky ends with phosphorylated 5' ends. Ligase can only function with phosphorylated 5' ends, not with non-phosphorylated 5' ends. Therefore, there may be no need for any intermediate 5' phosphorylation step between digestion and ligation. Digested dsDNA components with palindromic overhangs at sticky ends can ligate to themselves. To avoid self-ligation, it may be beneficial to dephosphorylate said dsDNA components before ligation.
[0170]
[0213] Multiple endonucleases may target different restriction sites but leave compatible overhangs (overhangs that are the reverse complement of each other). The product of ligation of sticky ends made with two such endonucleases may generate an assembled product that does not contain the restriction site of either endonuclease at the ligation site. Such endonucleases form the basis of assembly methods such as BioBrick Assembly, where multiple components can be programmably assembled using only two endonucleases by performing repeated digestion-ligation cycles. Figure 20 shows an example of a digestion-ligation cycle using endonucleases BamHI and BglII with compatible overhangs.
[0171]
[0214] In some embodiments, the endonuclease used to create sticky ends can be a type IIS restriction enzyme. These enzymes cleave a fixed number of bases away from the restriction site in a specific direction, and therefore the sequence of the overhang they generate can be customized. The overhang sequence does not have to be palindromic. The same type IIS restriction enzyme can be used in the same reaction or multiple reactions to create multiple different sticky ends. Additionally, one or more type IIS restriction enzymes can be used in the same reaction or multiple reactions to create components with compatible overhangs. The ligation site between two sticky ends generated by a type IIS restriction enzyme can be designed to not form a new restriction site. In addition, the type IIS restriction enzyme site can be placed in the dsDNA such that the restriction enzyme cleaves its own restriction site when generating a component with a sticky end. Thus, the ligation product between multiple components generated from a type IIS restriction enzyme does not contain any restriction sites.
[0172]
[0215] A type IIS restriction enzyme may be mixed with a ligase in a reaction to perform digestion and ligation of components together. The temperature of the reaction may be cycled between two or more values to promote optimal digestion and ligation. For example, digestion may be optimally performed at 37°C and ligation may be optimally performed at 16°C. More commonly, the reaction may be cycled between temperature values of at least 0°C, 5°C, 10°C, 15°C, 20°C, 25°C, 30°C, 35°C, 40°C, 45°C, 50°C, 55°C, 60°C, 65°C or more. A combined digestion and ligation reaction may be used to assemble at least 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 or more components. Examples of assembly reactions that utilize Type IIS restriction enzymes to create sticky ends include Golden Gate Assembly (also known as Golden Gate Cloning) or Modular Cloning (also known as MoClo).
[0173]
[0216] In some embodiments of ligation, an exonuclease may be used to create components with sticky ends. A 3' exonuclease may be used to chew back a 3' end from a dsDNA, thereby creating a 5' overhang. Similarly, a 5' exonuclease may be used to chew back a 5' end from a dsDNA, thereby creating a 3' overhang. Different exonucleases may have different properties. For example, exonucleases may differ in the direction of nuclease activity (5' to 3' or 3' to 5'), whether they act on ssDNA, whether they act on phosphorylated or non-phosphorylated 5' ends, whether they can initiate at a nick, or whether they can initiate activity at a 5' recess, 3' recess, 5' overhang, or 3' overhang. Different types of exonucleases include lambda exonuclease, RecJ, and others. f , exonuclease III, exonuclease I, exonuclease T, exonuclease V, exonuclease VIII, exonuclease VII, nuclease BAL_31, T5 exonuclease and T7 exonuclease.
[0174]
[0217] Exonucleases can be used in reactions together with ligases to assemble multiple components. Reactions can be performed at a fixed temperature or cycled between multiple temperatures, each ideal for the ligase or exonuclease. A polymerase can be included in the assembly reaction together with a ligase and a 5' to 3' exonuclease. Components in such reactions can be designed such that components intended to assemble adjacent to each other share homologous sequences at their edges. For example, component X that is to be assembled with component Y can have a 3' edge sequence of the form 5'-z-3', and component Y can have a 5' edge sequence of the form 5'-z-3', where z is any nucleic acid sequence. Such a form of homologous edge sequence can be called a "Gibson overlap." When the 5' exonuclease bites back the 5' ends of dsDNA components with Gibson overlaps, matching 3' overhangs are created that hybridize to each other. The hybridized 3' end may then be extended by the action of a polymerase to the end of the template component or to the point where the extended 3' overhang of one component fills the 5' recess of the adjacent component, thereby forming a nick that can be sealed by a ligase. Such assembly reactions using polymerase, ligase and exonuclease together are often referred to as "Gibson assembly". Gibson assembly may be performed using T5 exonuclease, Phusion polymerase and Taq ligase and incubating the reaction at 50°C. In the above example, the use of Taq, a thermophilic ligase, allows the reaction to proceed at 50°C, a temperature suitable for all three types of enzymes in the reaction.
[0175]
[0218] The term "Gibson assembly" may generally refer to any assembly reaction involving a polymerase, a ligase, and an exonuclease. Gibson assembly may be used to assemble at least 2, 3, 4, 5, 6, 7, 8, 9, 10 or more components. Gibson assembly may be performed as a one-step isothermal reaction or as a multi-step reaction with one or more temperature incubations. For example, Gibson assembly may be performed at a temperature of at least 30°C, 40°C, 50°C, 60°C, 70°C, or below these temperatures. Gibson assembly incubation times may be at least 1 minute, 5 minutes, 10 minutes, 20 minutes, 40 minutes, or 80 minutes.
[0176]
[0219] Gibson assembly reactions are best performed when the Gibson overlap between intended adjacent components is of a particular length and has sequence features, such as sequences that avoid undesired hybridization events, such as hairpins, homodimers, or unwanted heterodimers. In general, a Gibson overlap of at least 20 bases in length is recommended. However, the Gibson overlap can be at least 1, 2, 3, 5, 10, 20, 30, 40, 50, 60, 100 or more bases in length. The GC content of the Gibson overlap can be any value between 0% and 100%.
[0177]
[0220] Although Gibson assembly is generally described using a 5' exonuclease, the reaction can also be performed using a 3' exonuclease. As the 3' exonuclease bites back the 3' end of the dsDNA component, the polymerase counteracts the action by extending the 3' end. This dynamic process can continue until the 5' overhangs (created by the exonuclease) of the two components (that share a Gibson overlap) hybridize and the polymerase extends the 3' end of one component far enough to encounter the 5' end of the adjacent component, thereby leaving a nick that can be sealed by a ligase.
[0178]
[0221] In some embodiments of ligation, a component with sticky ends can be synthetically created, as opposed to enzymatically created, by mixing together two single-stranded nucleic acids or oligos that do not share perfect complementarity. For example, two oligos: oligo X and oligo Y can be designed to hybridize perfectly only along a continuous string of complementary bases that form a substring of a larger string of bases that make up the entirety of either or both of the oligos. This complementary string of bases is called the "indexing region." If the indexing region occupies the entirety of oligo X and only the 5' end of oligo Y, the oligos together form a component with a blunt end on one side and a sticky end with a 3' overhang from oligo Y on the other side (Figure 21A). If the indexing region occupies the entirety of oligo X and only the 3' end of oligo Y, the oligos together form a component with a blunt end on one side and a sticky end with a 5' overhang from oligo Y on the other side (Figure 21B). If the indexing region occupies the entirety of oligo X and not the end of oligo Y (implying that the indexing region is incorporated within the middle of oligo Y), the oligos together form a component with a sticky end with a 3' overhang from oligo Y on one side and a sticky end with a 5' overhang from oligo Y on the other side (Figure 21C). If the indexing region occupies only the 5' end of oligo X and only the 5' end of oligo Y, the oligos together form a component with a sticky end with a 3' overhang from oligo Y on one side and a sticky end with a 3' overhang from oligo X on the other side (Figure 21D). If the indexing region occupies only the 3' end of oligo X and only the 3' end of oligo Y, the oligos together form a component with a sticky end with a 5' overhang from oligo Y on one side and a sticky end with a 5' overhang from oligo X on the other side (Figure 21E). In the above example, the sequence of the overhang is defined by the oligo sequence outside the indexing region. These overhanging sequences can be referred to as hybridization regions, since this is the region along which the components hybridize for ligation.
[0179]
[0222] The indexing and hybridization regions of the oligos in sticky end ligation can be designed to promote proper assembly of the components. Components with long overhangs can hybridize to each other more efficiently at a given annealing temperature than components with short overhangs. Overhangs can be at least 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 15, 20, 30 or more bases in length.
[0180]
[0223] Components with overhangs that contain a high guanine or cytosine content may hybridize more efficiently to complementary components at a given temperature than components with overhangs that contain a low guanine or cytosine content. This is because guanine forms more stable base pairs with cytosine than adenine forms base pairs with thymine. Overhangs can have any value of guanine or cytosine content (also known as GC content) from 0% to 100%.
[0181]
[0224] Similar to the overhanging sequence, the GC content of the oligo and the length of the indexing region can also affect ligation efficiency. This is because sticky end components can assemble more efficiently if the top and bottom strands of each component are stably linked. Thus, indexing regions can be designed with higher GC content, longer sequences, and other features that promote higher melting temperatures. However, for both the indexing region and the overhanging sequence, there are many more aspects of oligo design that can affect the efficiency of ligation assembly. For example, the formation of undesired secondary structures within a component can hinder its ability to form an assembled product with its intended neighboring components. This can occur due to secondary structures within the indexing region, the overhanging sequence, or both. These secondary structures can include hairpin loops. The types of possible secondary structures of oligos and their stability (e.g., melting temperature) can be predicted based on the sequence. Design space search algorithms can be used to determine oligo sequences that meet the appropriate length and GC content criteria to form effective components, while avoiding sequences with potentially inhibitory secondary structures. The design space search algorithms may include genetic algorithms, heuristic search algorithms, meta-heuristic search strategies such as tabu search, branch and bound search algorithms, dynamic programming based algorithms, constrained combinatorial optimization algorithms, steepest descent based algorithms, randomized search algorithms, or combinations thereof.
[0182]
[0225] Similarly, the formation of homodimers (oligos that hybridize with oligos of the same sequence) and undesired heterodimers (oligos that hybridize with other oligos in addition to their intended assembly partners) can prevent ligation. Similar to secondary structures within components, homodimer and heterodimer formation can be predicted and accounted for during oligo design using computational methods and design space search algorithms.
[0183]
[0226] Longer oligo sequences or higher GC content may result in increased formation of undesired secondary structures, homodimers and heterodimers in the ligation reaction. Thus, in some embodiments, using shorter oligos or lower GC content may lead to higher assembly efficiency. These design principles may counteract the design strategy of using long oligos or high GC content for more efficient assembly. As such, there may be an optimal length and optimal GC content for each component oligo such that ligation assembly efficiency is optimized. The overall length of the oligos used for ligation may be at least 10 bases, 20 bases, 30 bases, 40 bases, 50 bases, 60 bases, 70 bases, 80 bases, 90 bases or 100 bases or more. The overall GC content of the oligos used for ligation may be anywhere from 0% to 100%.
[0184]
[0227] In addition to sticky end ligation, ligation can also be performed using a staple (or template or bridge) strand between single-stranded nucleic acids. This method can be called staple strand ligation (SSL), template-directed ligation (TDL) or bridge strand ligation. See FIG. 10A for an example of a schematic of TDL for assembling three nucleic acids. In TDL, two single-stranded nucleic acids are hybridized adjacently on the template, thus forming a nick that can be sealed by ligase. The same nucleic acid design considerations as for sticky end ligation apply to TDL. Stronger hybridization between templates and their intended complementary nucleic acid sequences can lead to increased ligation efficiency. Thus, sequence features that improve hybridization stability (or melting temperature) on both sides of the template can improve ligation efficiency. These features can include longer sequence length and higher GC content. The length of the nucleic acid in the TDL, including the template, can be at least 5 bases, 10 bases, 20 bases, 30 bases, 40 bases, 50 bases, 60 bases, 70 bases, 80 bases, 90 bases, or 100 bases or more. The GC content of the nucleic acid, including the template, can be 0% to 100%.
[0185]
[0228] In TDL, as in sticky end ligation, care can be taken to design moieties and template sequences that avoid undesired secondary structures by using nucleic acid structure prediction software that employs sequence space searching algorithms. Because the moieties in TDL can be single-stranded instead of double-stranded, there may be a higher incidence of undesired secondary structures due to exposed bases (compared to sticky end ligation).
[0186]
[0229] TDL can be performed using blunt-ended dsDNA components. In such reactions, it may be necessary for the staples to first displace or partially displace the complete single-stranded complementary strand in order for the staple strand to properly crosslink the two single-stranded nucleic acids. To facilitate TDL reactions using dsDNA components, the dsDNA can first be melted by incubation at high temperature. The reaction can then be cooled, thus allowing the staple strands to anneal to their appropriate nucleic acid complementary strand. This process can be made even more efficient by using a relatively high concentration of template compared to the dsDNA components, thus allowing the template to outcompete the appropriate full-length ssDNA complementary strand for binding. Once the two ssDNA strands are assembled by their templates and ligase, the assembled nucleic acid can then become a template for the inverse full-length ssDNA complementary strand. Thus, ligation of blunt-ended dsDNA using TDL can be improved through multiple rounds of melting (incubation at higher temperatures) and annealing (incubation at lower temperatures). This process can be called ligase cycling reaction or LCR. The appropriate melting and annealing temperatures depend on the nucleic acid sequence. The melting and annealing temperatures can be at least 4°C, 10°C, 20°C, 20°C, 30°C, 40°C, 50°C, 60°C, 70°C, 80°C, 90°C or 100°C. The number of temperature cycles can be at least 1, 5, 10, 15, 20, 15, 30 or more.
[0187]
[0230] All ligations can be performed in fixed temperature reactions or multiple temperature reactions. The ligation temperature can be at least 0°C, 4°C, 10°C, 20°C, 20°C, 30°C, 40°C, 50°C, or 60°C or higher. The optimum temperature for ligase activity can vary depending on the type of ligase. Furthermore, the rate at which components in a reaction align or hybridize can vary depending on their nucleic acid sequence. Higher incubation temperatures can promote faster diffusion and thus increase the frequency at which components align or hybridize temporarily. However, increasing the temperature can also cause the disruption of base pairing and therefore the decrease in stability of these align or hybridized component duplexes. The optimum temperature for ligation can depend on the number of nucleic acids to be assembled, the sequence of those nucleic acids, the type of ligase, as well as other factors such as reaction additives. For example, two sticky end components with 4 base complementary overhangs can be assembled faster with T4 ligase at 4° C. than with T4 ligase at 25° C. However, two sticky end components with 25 base complementary overhangs can be assembled faster with T4 ligase at 25° C. than with T4 ligase at 4° C., and likely faster than ligating 4 base overhangs at either temperature. In some embodiments of ligation, it may be beneficial to heat and slowly cool the components for annealing prior to addition of ligase.
[0188]
[0231] Ligation may be used to assemble at least 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 or more nucleic acids. Ligation incubation times may be up to 30 seconds, 1 minute, 2 minutes, 5 minutes, 10 minutes, 20 minutes, 30 minutes, 1 hour or longer. Longer incubation times may improve ligation efficiency.
[0189]
[0232] Ligation may require nucleic acids with 5' phosphorylated ends. Nucleic acid components without 5' phosphorylated ends may be phosphorylated by reaction with a polynucleotide kinase such as T4 polynucleotide kinase (or T4 PNK). Other cofactors such as ATP, magnesium ions or DTT may be present in the reaction. The polynucleotide kinase reaction may be carried out at 37°C for 30 minutes. The polynucleotide kinase reaction temperature may be at least 4°C, 10°C, 20°C, 20°C, 30°C, 40°C, 50°C or 60°C. The incubation time for the polynucleotide kinase reaction may be up to 1 minute, 5 minutes, 10 minutes, 20 minutes, 30 minutes, 60 minutes or longer. Alternatively, nucleic acid components may be designed and manufactured synthetically (as opposed to enzymatically) with modified 5' phosphorylation. Only nucleic acids that are assembled at their 5' ends may require phosphorylation. For example, templates in TDLs may not be phosphorylated since they are not to be assembled.
[0190]
[0233] To improve ligation efficiency, additives may be included in the ligation reaction. For example, the addition of dimethylsulfoxide (DMSO), polyethylene glycol (PEG), 1,2-propanediol (1,2-Prd), glycerol, Tween-20, or a combination thereof. PEG6000 may be a particularly effective ligation enhancer. PEG6000 may increase ligation efficiency by acting as a crowding agent. For example, PEG6000 may form aggregated clumps that occupy space in the ligase reaction solution, bringing the ligase and components closer together. The additive content (weight per volume) may be at least 0%, 1%, 5%, 10%, 20% or more.
[0191]
[0234] Various ligases can be used for ligation. Ligases can be naturally occurring or synthetic. Examples of ligases include T4 DNA ligase, T7 DNA ligase, T3 DNA ligase, Taq DNA ligase, 9 oThese include N™ DNA ligase, E. coli DNA ligase and SplintR DNA ligase. Different ligases may be stable and function optimally at different temperatures. For example, Taq DNA ligase is thermostable, and T4 DNA ligase is not thermostable. Furthermore, different ligases have different properties. For example, T4 DNA ligase can ligate blunt-ended dsDNA, but T7 DNA ligase cannot ligate blunt-ended dsDNA.
[0192]
[0235] Ligation may be used to attach sequencing adaptors to a library of nucleic acids. For example, ligation may be performed with a common sticky end or staple at the end of each member of the nucleic acid library. Sequencing adaptors may be ligated asymmetrically when the sticky end or staple at one end of the nucleic acid is distinguishable from that at the other end. For example, a forward sequencing adaptor may be ligated to one end of a member of the nucleic acid library, and a reverse sequencing adaptor may be ligated to the other end of a member of the nucleic acid library. Alternatively, blunt-ended ligation may be used to attach adaptors to a library of blunt-ended double-stranded nucleic acids. Forked adaptors may be used to asymmetrically attach adaptors to a nucleic acid library with either equal blunt or sticky ends at each end (e.g., A-tails, etc.).
[0193]
[0236] Ligation can be inhibited by heat inactivation (eg, incubation at 65° C. for at least 20 minutes), addition of denaturing agents, or addition of chelating agents such as EDTA.
[0194] C. Restriction Digestion
[0237] Restriction digestion is a reaction in which restriction endonucleases (or restriction enzymes) recognize their cognate restriction sites on nucleic acids and then cleave (or digest) the nucleic acid containing said restriction sites. Type I, II, III or IV restriction enzymes may be used for restriction digestion. Type II restriction enzymes may be the most efficient restriction enzymes for nucleic acid digestion. Type II restriction enzymes may recognize palindromic restriction sites and cleave the nucleic acid within the recognition site. Examples of said restriction enzymes (and their restriction sites) include AatII (GACGTC), AfeI (AGCGCT), ApaI (GGGCCC), DpnI (GATC), EcoRI (GAATTC), NgeI (GCTAGC) and many more. Some restriction enzymes, such as DpnI and AfeI, may cut their restriction sites in the middle, thus leaving a blunt-ended dsDNA product. Other restriction enzymes, such as EcoRI and AatII, cut their restriction sites off-center, thus leaving a dsDNA product with sticky (or staggered) ends. Some restriction enzymes can target discontinuous restriction sites. For example, the restriction enzyme AlwNI recognizes the restriction site CAGNNNCTG, where N can be any of A, T, C, or G. Restriction sites can be at least 2, 4, 6, 8, 10, or more bases in length.
[0195]
[0238] Some type II restriction enzymes cleave nucleic acids outside their restriction sites. The enzymes may be subclassified as type IIS or type IIG restriction enzymes. The enzymes may recognize non-palindromic restriction sites. An example of such a restriction enzyme is BbsI, which recognizes GAAAC and creates a staggered cleavage 2 bases (same strand) and 6 bases (opposite strand) further downstream. Another example is BsaI, which recognizes GGTCTC and creates a staggered cleavage 1 base (same strand) and 5 bases (opposite strand) further downstream. The restriction enzymes may be used for Golden Gate Assembly or Modular Cloning (MoClo). Some restriction enzymes, such as BcgI (type IIG restriction enzyme), may create staggered cleavage at both ends of their recognition site. Restriction enzymes may cleave nucleic acids at least 1 base, 5 bases, 10 bases, 15 bases, 20 bases or more away from their recognition site. The restriction enzymes can create staggered cleavage outside their recognition sites, so the sequence of the resulting nucleic acid overhang can be designed arbitrarily. This is in contrast to restriction enzymes that create staggered cleavage within their recognition sites, where the sequence of the resulting nucleic acid overhang couples with the sequence of the restriction site. The nucleic acid overhang created by restriction digestion can be at least 1, 2, 3, 4, 5, 6, 7, 8 or more bases in length. When a nucleic acid is cleaved by a restriction enzyme, the resulting 5' end contains a phosphate.
[0196]
[0239] One or more nucleic acid sequences may be included in the restriction digestion reaction. Similarly, one or more restriction enzymes may be used together in the restriction digestion reaction. The restriction digestion may include additives and cofactors, including potassium ions, magnesium ions, sodium ions, BSA, S-adenosyl-L-methionine (SAM), or combinations thereof. The restriction digestion reaction may be incubated at 37° C. for 1 hour. The restriction digestion reaction may be incubated at a temperature of at least 0° C., 10° C., 20° C., 30° C., 40° C., 50° C., or 60° C. The optimal digestion temperature may depend on the enzyme. The restriction digestion reaction may be incubated for up to 1 minute, 10 minutes, 30 minutes, 60 minutes, 90 minutes, 120 minutes, or longer. Longer incubation times may result in increased digestion.
[0197] D. Nucleic Acid Amplification
[0240] Nucleic acid amplification can be carried out using polymerase chain reaction or PCR. In PCR, a starting pool of nucleic acids (called a template pool or template) can be combined with a polymerase, primers (short nucleic acid probes), nucleotide triphosphates (e.g., dATP, dTTP, dCTP, dGTP and analogs or variants thereof, etc.), and additional cofactors and additives such as betaine, DMSO, and magnesium ions. The template can be a single-stranded or double-stranded nucleic acid. The primer can be a short nucleic acid sequence synthetically constructed to be complementary to and hybridize with the target sequence in the template pool. The primer can be a short nucleic acid sequence synthetically constructed to be complementary to and hybridize with the target sequence in the template pool. Typically, there are two primers in a PCR reaction, one complementary to the primer binding site of the top strand of the target template and the other complementary to the primer binding site of the bottom strand of the target template downstream from the first binding site. The 5' to 3' orientation of the primers binding to their targets must face each other in order to successfully replicate and exponentially amplify the nucleic acid sequence between them. "PCR" can typically refer specifically to this form of reaction, but can also be used more generally to refer to any nucleic acid amplification reaction.
[0198]
[0241] In some embodiments, PCR may involve cycling between three temperatures: melting temperature, annealing temperature, and extension temperature. The melting temperature aims to convert double-stranded nucleic acids into single-stranded nucleic acids and eliminate the formation of hybridization products and secondary structures. Typically, the melting temperature is high, for example, above 95°C. In some embodiments, the melting temperature may be at least 96°C, 97°C, 98°C, 99°C, 100°C, 101°C, 102°C, 103°C, 104°C, or 105°C. In other embodiments, the melting temperature may be up to 95°C, 94°C, 93°C, 92°C, 91°C, or 90°C. Higher melting temperatures improve the dissociation of nucleic acids and their secondary structures, but may also cause side effects such as degradation of the nucleic acids or polymerase. The melting temperature may be applied to the reaction for at least 1 second, 2 seconds, 3 seconds, 4 seconds, 5 seconds or longer, e.g., 30 seconds, 1 minute, 2 minutes or 3 minutes. A longer initial melting temperature step may be recommended for PCR with complex or long templates.
[0199]
[0242] The annealing temperature is intended to facilitate the formation of hybridization between the primers and their target templates. In some embodiments, the annealing temperature may correspond to the calculated melting temperature of the primers. In other embodiments, the annealing temperature may be within 10°C or higher from the melting temperature. In some embodiments, the annealing temperature may be at least 25°C, 30°C, 50°C, 55°C, 60°C, 65°C, or 70°C. The melting temperature may depend on the sequence of the primer. The longer the primer, the higher the melting temperature may be, and the primer with a higher percentage content of guanine or cytosine nucleotides may have a higher melting temperature. Thus, it may be possible to design primers that are intended to assemble optimally at a particular annealing temperature. The annealing temperature may be applied to the reaction for at least 1 second, 5 seconds, 10 seconds, 15 seconds, 20 seconds, 25 seconds, or 30 seconds or longer. To help ensure annealing, the primer concentration may be increased or the amount may be saturating. The primer concentration can be 500 nanomolar (nM). The primer concentration can be up to 1 nM, 10 nM, 100 nM, 1000 nM or higher.
[0200]
[0243] The extension temperature is intended to initiate and facilitate the 3'-end nucleic acid chain extension of the primer catalyzed by one or more polymerase enzymes. In some embodiments, the extension temperature may be set at a temperature where the polymerase functions optimally in terms of nucleic acid binding strength, extension rate, extension stability or fidelity. In some embodiments, the extension temperature may be at least 30°C, 40°C, 50°C, 60°C or 70°C or higher. The annealing temperature may be applied to the reaction for at least 1 second, 5 seconds, 10 seconds, 15 seconds, 20 seconds, 25 seconds, 30 seconds, 40 seconds, 50 seconds or 60 seconds or longer. The recommended extension time may be approximately 15-45 seconds per kilobase of expected extension.
[0201]
[0244] In some embodiments of PCR, the annealing temperature and the extension temperature can be the same. Thus, a two-step temperature cycle can be used instead of a three-step temperature cycle. Examples of combined annealing and extension temperatures include 60°C, 65°C, or 72°C.
[0202]
[0245] In some embodiments, PCR may be performed in one temperature cycle. Such an embodiment may involve converting the targeted single-stranded template nucleic acid into double-stranded nucleic acid. In other embodiments, PCR may be performed in multiple temperature cycles. If PCR is efficient, it is expected that the number of targeted nucleic acid molecules will double with each cycle, thereby resulting in an exponential increase in the number of targeted nucleic acid templates from the original template pool. The efficiency of PCR may vary. Thus, the actual percentage of targeted nucleic acid replicated in each round may be more or less than 100%. Undesirable artifacts such as mutated and recombined nucleic acids may be introduced with each PCR cycle. To reduce this potential harm, high fidelity and high processivity polymerases may be used. Furthermore, a limited number of PCR cycles may be used. PCR may involve up to 1, 5, 10, 15, 20, 25, 30, 35, 40, 45 or more cycles.
[0203]
[0246] In some embodiments, multiple distinct target nucleic acid sequences can be amplified together in one PCR. If each target sequence has a common primer binding site, all nucleic acid sequences can be amplified using the same primer set. Alternatively, the PCR can include multiple primers, each intended to target a distinct nucleic acid. The PCR can be referred to as multiplex PCR. The PCR can involve up to 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 or more distinct primers. In a PCR with multiple distinct nucleic acid targets, each PCR cycle can change the relative distribution of the targeted nucleic acids. For example, a uniform distribution can become skewed or non-uniformly distributed. To reduce this potential harm, an optimal polymerase (e.g., with high fidelity and sequence robustness) and optimal PCR conditions can be used. Factors such as annealing and extension temperature and time can be optimized. In addition, a limited number of PCR cycles can be used.
[0204]
[0247] In some embodiments of PCR, a primer with a base mismatch to its targeting primer binding site in the template may be used to mutate the target sequence. In some embodiments of PCR, a primer with an extra sequence at the 5' end (known as an overhang) may be used to attach a sequence to its targeted nucleic acid. For example, a primer containing a sequencing adaptor at the 5' end may be used to prepare and / or amplify a nucleic acid library for sequencing. For sufficient enrichment for a particular sequencing technique, a primer targeting the sequencing adaptor may be used to amplify a nucleic acid library.
[0205]
[0248] In some embodiments, linear PCR (or asymmetric PCR) is used when primers target only one strand of the template (not both strands). In linear PCR, the nucleic acid that is replicated from each cycle is not complementary to the primer, and thus the primer does not bind to that nucleic acid. Thus, the primer replicates only the original target template in each cycle, resulting in linear (as opposed to exponential) amplification. Amplification from linear PCR may not be as fast as conventional (exponential) PCR, but the maximum yield may be greater. Theoretically, primer concentration in linear PCR is not a limiting factor in increasing cycles and increasing yield as it is in conventional PCR. Exponential amplification followed by linear amplification PCR (or LATE-PCR) is a modified version of linear PCR that may allow particularly high yields.
[0206]
[0249] In some embodiments of nucleic acid amplification, the processes of melting, annealing and extension can be carried out at a single temperature. Such PCR can be called isothermal PCR. Isothermal PCR can utilize temperature-independent methods to dissociate or displace strands of nucleic acid that are sufficiently complementary to favor primer binding from each other. Strategies include loop-mediated isothermal amplification, strand displacement amplification, helicase-dependent amplification methods and nicking enzyme amplification reactions. Isothermal nucleic acid amplification can be carried out at temperatures up to 20°C, 30°C, 40°C, 50°C, 60°C or 70°C or higher.
[0207]
[0250] In some embodiments, the PCR may further include a fluorescent probe or dye to quantify the amount of nucleic acid in a sample. For example, a dye may intercalate into double-stranded nucleic acid. An example of the dye is SYBR Green. The fluorescent probe may be a nucleic acid sequence with a fluorescent unit attached. The fluorescent unit may be released when the probe hybridizes with the target nucleic acid and is subsequently modified from the elongating polymerase unit. An example of the probe includes a TaqMan probe. Such a probe may be used in conjunction with PCR and optical measurement tools (for excitation and detection) to quantify the concentration of nucleic acid in a sample. This process may be called quantitative PCR (qPCR) or real-time PCR (rtPCR).
[0208]
[0251] In some embodiments, PCR may be performed on a single molecular template (in a process that may be referred to as single molecule PCR) rather than on a pool of multiple template molecules. For example, emulsion-PCR (ePCR) may be used to encapsulate a single nucleic acid molecule in an aqueous droplet in an oil emulsion. The droplet may also contain PCR reagents and may be held in a temperature-controlled environment that allows the necessary temperature cycling for PCR. In this way, multiple self-contained PCR reactions may be performed simultaneously with high throughput. Surfactants may be used to improve the stability of the oil emulsion. Pressure may be used to control the movement of the droplets through microfluidic channels. Microfluidic devices may be used to create droplets, split droplets, assimilate droplets, inject materials into droplets, and incubate droplets. The size of the aqueous droplets in the oil emulsion may be at least 1 picoliter (pL), 10 pL, 100 pL, 1 nanoliter (nL), 10 nL, 100 nL, or larger.
[0209]
[0252] In some embodiments, single molecule PCR can be carried out on a solid-phase substrate. Examples include Illumina solid-phase amplification or its variants. Template pools are exposed to a solid-phase substrate, which can immobilize templates with a specific spatial resolution. Bridge amplification can then be performed in the spatial vicinity of each template, thereby amplifying single molecules on the substrate with high throughput.
[0210]
[0253] High-throughput single molecule PCR can be useful for amplifying a pool of distinct nucleic acids that may interfere with each other. For example, if multiple distinct nucleic acids share a common sequence region, recombination between the nucleic acids along this common region may occur during the PCR reaction, resulting in a new recombined nucleic acid. In single molecule PCR, this potential amplification error is prevented because distinct nucleic acid sequences are compartmentalized with each other and therefore cannot interact. Single molecule PCR can be particularly useful for preparing nucleic acids for sequencing. Single molecule PCR can also be useful for absolute quantification of several targets in a template pool. For example, in digital PCR (or dPCR), the frequency of distinct single molecule PCR amplification signals is used to estimate the number of starting nucleic acid molecules in a sample.
[0211]
[0254] In some embodiments of PCR, primers to primer binding sites common to all nucleic acids may be used to non-discriminately amplify groups of nucleic acids. For example, primers to primer binding sites are flanked by all nucleic acids in a pool. These common sites may be used for general amplification to create or assemble a synthetic nucleic acid library. However, in some embodiments, PCR may be used to selectively amplify a subset of targeted nucleic acids from a pool, for example, by using primers with primer binding sites that are only present in the targeted subset of nucleic acids. Synthetic nucleic acid libraries may be created or assembled such that all of the nucleic acids belonging to a potential sub-library of interest share a common primer binding site at their ends (common within the sub-library, but separate from other sub-libraries) to selectively amplify the sub-library from a more general library. In some embodiments, PCR may be combined with a nucleic acid assembly reaction (e.g., ligation or OEPCR, etc.) to selectively amplify fully assembled or potentially fully assembled nucleic acids from partially assembled or misassembled (or unintended or undesired) by-products. For example, assembly may involve assembling a nucleic acid with a primer binding site on each edge sequence, such that only a fully assembled nucleic acid product contains the requisite two primer binding sites for amplification. In the above example, a partially assembled product may contain none or only one of the edge sequences with primer binding sites, and thus would not be amplified. Similarly, a misassembled (or unintended or undesired) product would contain none or only one of the edge sequences, or both edge sequences, but in the wrong orientation or separated by the wrong amount of bases. Thus, the misassembled product would not be amplified, or would be amplified to create a product of the wrong length.In the latter case, amplified misassembled products of the incorrect length can be separated from amplified fully assembled products of the correct length by nucleic acid size selection methods (see Chemical Methods section E), such as DNA electrophoresis in an agarose gel followed by gel extraction.
[0212]
[0255] To improve the efficiency of nucleic acid amplification, additives may be included in PCR, such as the addition of betaine, dimethyl sulfoxide (DMSO), non-ionic detergents, formamide, magnesium, bovine serum albumin (BSA), or combinations thereof. The additive content (weight per volume) may be at least 0%, 1%, 5%, 10%, 20% or more.
[0213]
[0256] A variety of polymerases can be used for PCR. The polymerase can be naturally occurring or synthetic. An example of a polymerase is Φ29 polymerase or its derivatives. In some cases, a transcriptase or a ligase (i.e., an enzyme that catalyzes the formation of bonds) is used in conjunction with or as a replacement for a polymerase to construct new nucleic acid sequences. Examples of polymerases include DNA polymerase, RNA polymerase, thermostable polymerase, wild-type polymerase, modified polymerase, E. coli DNA polymerase I, T7 DNA polymerase, bacteriophage T4. DNA polymerase Φ29 (phi29) DNA polymerase, Taq polymerase, Tth polymerase, Tli polymerase, Pfu polymerase, Pwo polymerase, VENT polymerase, DEEPVENT polymerase, Ex-Taq polymerase, LA-Taw polymerase, Sso polymerase, Poc polymerase, Pab polymerase, Mth polymerase, ES4 polymerase, Tru polymerase, Tac polymerase, Tne polymerase, Tma polymerase Polymerases include Tca polymerase, Tih polymerase, Tfi polymerase, platinum Taq polymerase, Tbr polymerase, Phusion polymerase, KAPA polymerase, Q5 polymerase, Tfl polymerase, Pfutubo polymerase, Pyrobest polymerase, KOD polymerase, Bst polymerase, Sac polymerase, Klenow fragment polymerase with 3' to 5' exonuclease activity and its variants, modified products and derivatives. Different polymerases may be stable and function optimally at different temperatures. In addition, different polymerases have different properties. For example, some polymerases, such as Phusion polymerase, may show 3' to 5' exonuclease activity during nucleic acid extension, which may contribute to higher fidelity. Some polymerases may move leading sequences during extension, while others may degrade them or stop extension. Some polymerases, such as Taq, incorporate an adenine base at the 3' end of a nucleic acid sequence.Additionally, some polymerases may have higher fidelity and processivity than others and may be more suitable for PCR applications such as sequencing preparation where it is important to have minimal mutations for amplified nucleic acid yield and where it is important to maintain a uniform distribution throughout the amplification for distribution of distinct nucleic acids.
[0214] E. Size Selection
[0257] Size selection techniques may be used to select nucleic acids of a particular size from a sample. In some embodiments, size selection may be performed using gel electrophoresis or chromatography. A liquid sample of nucleic acid may be loaded onto one electrode of a stationary phase or gel (or matrix). A voltage difference may be applied across the gel such that the negative pole of the gel becomes the electrode onto which the nucleic acid sample is loaded, and the anode of the gel becomes the opposite pole. Nucleic acids have a negatively charged phosphate backbone and therefore can migrate across the gel to the anode. The size of the nucleic acid determines the relative migration speed of the nucleic acid through the gel. Thus, nucleic acids of different sizes will be degraded as they migrate across the gel. The voltage difference may be 100V or 120V. The voltage difference may be up to 50V, 100V, 150V, 200V, 250V or more. A larger voltage difference may allow for a greater rate of nucleic acid migration and size resolution. However, a large voltage difference may also cause damage to the nucleic acid or the gel. A larger voltage difference may be recommended to degrade larger size nucleic acids. Typical migration times may be 15 minutes to 60 minutes. Migration times may be up to 10 minutes, 30 minutes, 60 minutes, 90 minutes, 120 minutes or longer. As with higher voltages, longer migration times may lead to better nucleic acid resolution, but may lead to increased nucleic acid damage. A longer migration time may be recommended to degrade larger size nucleic acids. For example, a voltage difference of 120V and a migration time of 30 minutes may be sufficient to degrade a 200 base nucleic acid from a 250 base nucleic acid.
[0215]
[0258] The nature of the gel or matrix may affect the size selection process. Gels typically contain polymeric substances such as agarose or polyacrylamide dispersed in a conductive buffer such as TAE (Tris-Acetate-EDTA) or TBE (Tris-Borate-EDTA). The content (weight per volume) of substances (e.g., agarose or acrylamide) in the gel may be up to 5%, 1%, 2%, 3%, 5%, 10%, 15%, 20%, 25% or more. Higher contents may slow down the migration rate. Higher contents may be preferred to resolve smaller nucleic acids. Agarose gels may be better for resolving double-stranded DNA (dsDNA). Polyacrylamide gels may be better for resolving single-stranded DNA (ssDNA). The preferred gel composition may depend on the nucleic acid type and size, the compatibility of additives (e.g., dyes, stains, denaturing solutions or loading buffers) and the preceding downstream application (e.g., gel extraction followed by ligation, PCR or sequencing). Agarose gels may be simpler than polyacrylamide gels for gel extraction. TAE is not as good a conductor as TBE, but may be better for gel extraction as well, since boric acid (enzyme inhibitor) carryover contamination in the extraction process may inhibit downstream enzymatic reactions.
[0216]
[0259] The gel may further comprise a denaturing solution such as SDS (sodium dodecyl sulfate) or urea. SDS may be used, for example, to denature proteins or to separate nucleic acids from potentially bound proteins. Urea may be used to denature secondary structures of DNA. For example, urea may convert dsDNA to ssDNA or urea may convert folded ssDNA (e.g., hairpins) to unfolded ssDNA. Urea-polyacrylamide gels (further comprising TBE) may be used to precisely resolve ssDNA.
[0217]
[0260] Samples can be incorporated into the gel in different formats. In some embodiments, the gel may include wells into which samples can be loaded manually. One gel may have multiple wells for running multiple nucleic acid samples. In other embodiments, the gel may be attached to a microfluidic channel that automatically loads the nucleic acid samples. Each gel may be downstream of several microfluidic channels, and the gel itself may occupy a separate microfluidic channel. The dimensions of the gel may affect the sensitivity of the nucleic acid detection (or visualization). For example, a thin gel or a gel inside a microfluidic channel (such as those in a bioanalyzer or tape station) may improve the sensitivity of the nucleic acid detection. The nucleic acid detection step may be important to select and extract the correct size of the nucleic acid fragments.
[0218]
[0261] A ladder can be loaded on the gel for nucleic acid size reference. The ladder can include markers of various sizes that can be compared to nucleic acid samples. Different ladders can have different size ranges and resolutions. For example, a 50 base ladder can have markers at 50 bases, 100 bases, 150 bases, 200 bases, 250 bases, 300 bases, 350 bases, 400 bases, 450 bases, 500 bases, 550 bases and 600 bases. The ladder can be useful for detecting and selecting nucleic acids in the size range of 50 bases to 600 bases. The ladder can also be used as a standard to estimate the concentration of various sizes of nucleic acids in a sample.
[0219]
[0262] The nucleic acid sample and ladder may be mixed with a loading buffer to facilitate the gel electrophoresis (or chromatography) process. The loading buffer may include dyes and markers to aid in tracking the migration of the nucleic acid. The loading buffer may further include a reagent (e.g., glycerol, etc.) that is denser than the running buffer (e.g., TAE or TBE) to ensure that the nucleic acid sample sinks to the bottom of the sample load well (which may be immersed in the running buffer). The loading buffer may further include a denaturing agent, such as SDS or urea. The loading buffer may further include a reagent to improve the stability of the nucleic acid. For example, the loading buffer may include EDTA to protect the nucleic acid from nucleases.
[0220]
[0263] In some embodiments, the gel may contain dyes that bind to nucleic acids and can be used to optically detect nucleic acids of different sizes. The dyes may be specific for dsDNA, ssDNA, or both. Different dyes may be compatible with different gel materials. Some dyes may require excitation from a source light (or electromagnetic waves) for visualization. The source light may be UV (ultraviolet) or blue light. In some embodiments, the dyes may be added to the gel before electrophoresis. In other embodiments, the dyes may be added to the gel after electrophoresis. Examples of dyes include ethidium bromide (EtBr), SYBR Safe, SYBR Gold, silver stain, or methylene blue. A reliable method for visualizing dsDNA of a particular size may be, for example, using an agarose TAE gel with SYBR Safe or EtBr stain. A reliable method for visualizing ssDNA of a particular size may be, for example, using a urea-polyacrylamide TBE gel with methylene blue or silver stain.
[0221]
[0264] In some embodiments, the movement of nucleic acids through the gel can be driven by other methods in addition to electrophoresis, for example, gravity, centrifugation, vacuum or pressure can be used to drive the nucleic acids through the gel and thus break them down according to size.
[0222]
[0265] A blade or razor may be used to extract nucleic acids of a particular size from the gel, and the gel band containing the nucleic acid may be excised. To ensure that the excision is performed precisely at the particular band and that the excision does not cause problems in excluding nucleic acids that may belong to bands of different undesired sizes, suitable optical detection techniques and DNA ladders may be used. The gel band may be incubated with a buffer to melt the gel band, thus releasing the nucleic acid into the buffer. The melting rate may be increased by heating or physical agitation. Alternatively, the gel band may be incubated in the buffer long enough to allow the diffusion of DNA into the buffer without the need for gel melting. The buffer may then be separated from the remaining solid phase gel, for example by aspiration or centrifugation. The nucleic acid may then be purified from the solution using standard purification or buffer exchange techniques, such as phenol-chloroform extraction, ethanol precipitation, magnetic bead capture and / or silica membrane adsorption, washing and elution. The nucleic acid may also be concentrated in this step.
[0223]
[0266] As an alternative to gel excision, nucleic acids of a particular size may be isolated from the gel by allowing them to flow out of the gel. The migrating nucleic acids may pass through a basin (or well) embedded in the gel or at the end of the gel. The migration process is timed or optically monitored, whereby a sample is collected from the basin when a population of nucleic acids of a particular size enters the basin. Collection may be performed, for example, by aspiration. Nucleic acids may then be purified from the collected solution using standard purification or buffer exchange techniques such as phenol-chloroform extraction, ethanol precipitation, magnetic bead capture and / or silica membrane adsorption, washing and elution. Nucleic acids may also be concentrated in this step.
[0224]
[0267] Other methods for nucleic acid size selection can include mass spectrometry or membrane-based filtration. In some embodiments of membrane-based filtration, nucleic acid is passed through a membrane (e.g., a silica membrane) that can preferentially bind dsDNA, ssDNA, or both. The membrane can be designed to preferentially capture nucleic acids of at least a certain size. For example, the membrane can be designed to filter out nucleic acids that are less than 20 bases, less than 30 bases, less than 40 bases, less than 50 bases, less than 70 bases, less than 90 bases, or more bases. The membrane-based size selection techniques may not be as stringent as gel electrophoresis or chromatography.
[0225] F. Nucleic acid capture
[0268] Affinity tagged nucleic acids can be used as sequence specific probes for nucleic acid capture. The probe can be designed to be complementary to a target sequence in a pool of nucleic acids. The probe can then be incubated with the nucleic acid pool and hybridized to its target. The incubation temperature can be below the melting temperature of the probe to facilitate hybridization. The incubation temperature can be up to 5°C, 10°C, 15°C, 20°C, 25°C, or even significantly below the melting temperature of the probe. The hybridized target can be captured on a solid substrate that specifically binds to the affinity tag. The solid substrate can be a membrane, well, column, or bead. Multiple rounds of washing can remove any unhybridized nucleic acid from the target. The washing can be performed at a temperature below the melting temperature of the probe to facilitate stable immobilization of the target sequence during washing. The washing temperature can be up to 5°C, 10°C, 15°C, 20°C, 25°C, or well below the melting temperature of the probe. A final elution step can collect the nucleic acid targets from the solid substrate and the affinity tagged probes. The elution step can be performed at a temperature above the melting temperature of the probe to facilitate the release of the nucleic acid targets into the elution buffer. The elution temperature can be up to 5°C, 10°C, 15°C, 20°C, 25°C, or well above the melting temperature of the probe.
[0226]
[0269] In certain embodiments, oligonucleotides bound to a solid substrate can be removed from the solid substrate by exposure to conditions such as, for example, acid, base, oxidation, reduction, heat, light, metal ion catalysis, substitution or elimination chemistry, or enzymatic cleavage. In certain embodiments, oligonucleotides can be attached to a solid support through a cleavable linking moiety. For example, the solid substrate can be functionalized to provide a cleavable linker for covalently binding to a targeting oligonucleotide. In some embodiments, the linker moiety can be a linker of 6 atoms or more in length. In some embodiments, the cleavable linker can be a TOPS (two oligonucleotides per synthesis) linker, an amino linker, or a photocleavable linker.
[0227]
[0270] In some embodiments, biotin can be used as an affinity tag that is immobilized by streptavidin on a solid-phase substrate. Biotinylated oligonucleotides can be designed and manufactured for use as nucleic acid capture probes. The 5' or 3' end of the oligonucleotide can be biotinylated. Internal thymine residues of the oligonucleotide can also be biotinylated. Increasing the biotin on the oligo can result in stronger capture on the streptavidin substrate. Biotin on the 3' end of the oligo can block the oligo from extending during PCR. The biotin tag can be a variant of standard biotin. For example, biotin variants can be biotin-TEG (triethylene glycol), double biotin, PC biotin, desthiobiotin-TEG, and biotin azide / azide. Double biotin can increase biotin-streptavidin affinity. Biotin-TEG is attached to a biotin group on a nucleic acid separated by a TEG linker. This can prevent biotin from interfering with the function of the nucleic acid probe, such as hybridization with its target. A nucleic acid biotin linker can also be attached to a probe. The nucleic acid linker can include a nucleic acid sequence that is not intended to hybridize with the target.
[0228]
[0271] Biotinylated nucleic acid probes can be designed with consideration of how well they can hybridize to their targets. Nucleic acid probes designed with high melting temperatures can hybridize more strongly to their targets. Longer nucleic acid probes and probes with higher GC content can hybridize more strongly due to increased melting temperatures. Nucleic acid probes can have lengths of at least 5, 10, 15, 20, 30, 40, 50 or 100 bases or more. Nucleic acid probes can have GC contents anywhere from 0% to 100%. Care can be taken to ensure that the melting temperature of the probe does not exceed the temperature tolerance of the streptavidin substrate. Nucleic acid probes can be designed to avoid inhibitory secondary structures such as hairpins, homodimers and heterodimers with off-target nucleic acids. There can be a trade-off between probe melting temperature and off-target binding. There can be an optimal probe length and GC content that has a high melting temperature and low off-target binding. Synthetic nucleic acid libraries can be designed such that the nucleic acids contain efficient probe binding sites.
[0229]
[0272] The solid-phase streptavidin substrate can be magnetic beads. The magnetic beads can be immobilized using a magnetic strip or plate. The magnetic strip or plate is brought into contact with the container to immobilize the magnetic beads in the container. Conversely, the magnetic strip or plate can be removed from the container to release the magnetic beads from the container wall into the solution. The properties of different beads can affect their application. The beads can have various sizes. For example, the beads can be anywhere from 1 micrometer (μm) to 3 micrometers (μm) in diameter. The beads can have a diameter of up to 1 micrometer, 2 micrometers, 3 micrometers, 4 micrometers, 5 micrometers, 10 micrometers, 15 micrometers, 20 micrometers or more. The bead surface can be hydrophobic or hydrophilic. The beads can be coated with a blocking protein, for example BSA. Before use, the beads can be washed or pretreated with an additive such as a blocking solution to prevent the beads from non-specifically binding to nucleic acids.
[0230]
[0273] The biotinylated probe can be coupled to the magnetic streptavidin beads and then incubated with the nucleic acid sample pool. This process can be called direct capture. Alternatively, the biotinylated probe can be incubated with the nucleic acid sample pool and then the magnetic streptavidin beads can be added. This process can be called indirect capture. The indirect capture method can improve the yield of the target. The shorter the nucleic acid probe, the less time it takes to couple to the magnetic beads.
[0231]
[0274] Optimal incubation of the nucleic acid probe with the nucleic acid sample may be performed at 1-10°C or well below the melting temperature of the probe. The incubation temperature may be up to 5°C, 10°C, 20°C, 30°C, 40°C, 50°C, 60°C, 70°C, 80°C or higher. The recommended incubation time may be 1 hour. The incubation time may be up to 1 minute, 5 minutes, 10 minutes, 20 minutes, 30 minutes, 60 minutes, 90 minutes, 120 minutes or longer. Longer incubation times may lead to better capture efficiency. An additional 10 minutes of incubation may be performed after the addition of streptavidin beads to allow biotin-streptavidin coupling. This additional time may be up to 1 minute, 5 minutes, 10 minutes, 20 minutes, 30 minutes, 60 minutes, 90 minutes, 120 minutes or longer. The incubation may be carried out in a buffer with an additive such as sodium ions.
[0232]
[0275] If the nucleic acid pool is single-stranded (as opposed to double-stranded), hybridization of the probe with its target may be improved. To prepare a ssDNA pool from a dsDNA pool, it may be necessary to perform a linear PCR with one primer that generally binds to the end of all nucleic acid sequences in the pool. If the nucleic acid pool is synthetically created or assembled, this common primer binding site may be included in the synthetic design. The product of the linear PCR will be ssDNA. More cycles of linear PCR may generate more starting ssDNA templates for nucleic acid capture. For PCR, see Chemical Methods Section D.
[0233]
[0276] After the nucleic acid probes are hybridized with their targets and coupled to the magnetic streptavidin beads, the beads may be immobilized by a magnet and several rounds of washing may be performed. Three to five washes may be sufficient to remove non-target nucleic acids, but more or fewer rounds of washing may be used. Each additional wash may further reduce non-targeted nucleic acids, but may also reduce the yield of target nucleic acids. A low incubation temperature may be used to facilitate proper hybridization of the target nucleic acids with the probes during the washing steps. Temperatures of 60°C, 50°C, 40°C, 30°C, 20°C, 10°C, or 5°C or lower may be used. The washing buffer may include a Tris buffer with sodium ions.
[0234]
[0277] Optimal elution of hybridized targets from magnetic bead-coupled probes may be performed at a temperature equal to or higher than the melting temperature of the probe. The higher the temperature, the easier the target dissociates from the probe. The elution temperature may be up to 30°C, 40°C, 50°C, 60°C, 70°C, 80°C, or 90°C or higher. The elution incubation time may be up to 1 minute, 2 minutes, 5 minutes, 10 minutes, 30 minutes, 60 minutes, or longer. A typical incubation time may be approximately 5 minutes, although longer incubation times may improve yields. The elution buffer may be water or Tris buffer with additives such as EDTA.
[0235]
[0278] Nucleic acid capture of a target sequence that contains at least one or more of a set of distinct sites can be carried out in one reaction using multiple distinct probes for each of those sites. Nucleic acid capture of a target sequence that includes every member of a set of distinct sites can be carried out in a series of capture reactions, one reaction for each distinct site using a probe for that particular site. The yield of target after a series of capture reactions may be low, but the captured target can then be amplified by PCR. If the nucleic acid library is synthetically designed, the target can be designed to have a common primer binding site for PCR.
[0236]
[0279] For general nucleic acid capture, synthetic nucleic acid libraries with common probe binding sites can be created or assembled. These common sites can be used to selectively capture fully assembled or potentially fully assembled nucleic acids from the assembly reaction, thereby filtering out partially assembled or misassembled (or unintended or undesired) by-products. For example, assembly can include assembling nucleic acids with probe binding sites at each edge sequence such that only fully assembled nucleic acid products contain the requisite two probe binding sites necessary to pass through a series of two capture reactions using each probe. In the above example, partially assembled products may contain none or only one of the probe sites and therefore would not be ultimately captured. Similarly, misassembled (or unintended or undesired) products may also contain none or only one of the edge sequences. Thus, said misassembled products would not be ultimately captured. To increase stringency, each component of the assembly can include a common probe binding site. Subsequent series of nucleic acid capture reactions using a probe for each component can isolate only fully assembled products (including each component) from any by-products of the assembly reaction. Subsequent PCR can improve target enrichment, and subsequent size selection can improve target stringency.
[0237]
[0280] In some embodiments, nucleic acid capture may be used to selectively capture a subset of targeted nucleic acids from a pool, for example by using a probe with a binding site that is present only in the targeted subset of nucleic acids. Synthetic nucleic acid libraries can be created or assembled such that all of the nucleic acids belonging to a potential sub-library of interest share a common probe binding site (common within the sub-library but separate from other sub-libraries) to selectively capture the sub-library from a more general library.
[0238] G. Freeze-drying
[0281] Lyophilization is a dehydration process. Both nucleic acids and enzymes can be lyophilized. Lyophilized materials may have a longer shelf life. Additives such as chemical stabilizers may be used to maintain a functional product (e.g., an active enzyme) through the lyophilization process. Disaccharides such as sucrose and trehalose may be used as chemical stabilizers.
[0239] H.DNA design
[0282] The sequences (e.g., components) of nucleic acids for constructing a synthetic library (e.g., an identifier library) can be designed to avoid the complexities of synthesis, sequencing, and assembly. Furthermore, the sequences can be designed to reduce the cost of constructing a synthetic library and improve the longevity over which the synthetic library can be stored.
[0240]
[0283] Nucleic acids can be designed to avoid long homopolymeric stretches (or repeated base sequences) that may be difficult to synthesize. Nucleic acids can be designed to avoid homopolymer lengths of more than 2, more than 3, more than 4, more than 5, more than 6, more than 7 or more. Additionally, nucleic acids can be designed to avoid the formation of secondary structures such as hairpin loops that may inhibit their synthesis process. For example, predictive software can be used to generate nucleic acid sequences that do not form stable secondary structures. Nucleic acids for constructing synthetic libraries can be designed to be short. Longer nucleic acids can be more difficult and expensive to synthesize. Longer nucleic acids also increase the chance of mutation during synthesis. Nucleic acids (e.g., components) can be up to 5 bases, 10 bases, 15 bases, 20 bases, 25 bases, 30 bases, 40 bases, 50 bases, 60 bases or more bases.
[0241]
[0284] Nucleic acids that become components of an assembly reaction can be designed to facilitate the assembly reaction. For detailed information on nucleic acid sequence considerations for OEPCR and ligation-based assembly reactions, see Chemical Methods Sections A and B, respectively. Efficient assembly reactions typically involve hybridization between adjacent components. Sequences can be designed to facilitate these on-target hybridization events while avoiding potential off-target hybridization. Nucleic acid base modifications such as locked nucleic acids (LNAs) can be used to enhance on-target hybridization. These modified nucleic acids can be used, for example, as staples in staple strand ligation or as sticky ends in sticky strand ligation. Other modified bases that can be used to construct a synthetic nucleic acid library (or identifier library) include 2,6-diaminopurine, 5-bromo dU, deoxyuridine, inverted dT, inverted dideoxy-T, dideoxy-C, 5-methyl dC, deoxyinosine, Super T, Super G, or 5-nitroindole. Nucleic acids can include one or more of the same or different modified bases. Some of the modified bases are natural base analogs (e.g., 5-methyl dC and 2,6-diaminopurine) that have higher melting temperatures and thus may be useful for facilitating specific hybridization events in assembly reactions. Some of the modified bases are universal bases (e.g., 5-nitroindole) that can bind to all natural bases and thus may be useful for facilitating hybridization with nucleic acids that may have variable sequences within the desired binding site. In addition to their beneficial role in assembly reactions, these modified bases may be useful in primers (e.g., for PCR) and probes (e.g., for nucleic acid capture) to facilitate specific binding to their target nucleic acids within a pool of primer and probe nucleic acids. For detailed nucleic acid design considerations for nucleic acid amplification (or PCR) and nucleic acid capture, see Chemical Methods Sections D and F, respectively.
[0242]
[0285] Nucleic acids can be designed to facilitate sequencing. For example, nucleic acids can be designed to avoid typical sequencing complications such as secondary structures, stretches of homopolymers, repetitive sequences, and sequences with too high or too low GC content. Certain sequencers or sequencing methods can be error-prone. Nucleic acid sequences (or components) that make up a synthetic library (e.g., an identifier library) can be designed with a specific Hamming distance from each other. In this way, even if a high rate of base resolution errors occurs in sequencing, stretches of sequences containing errors can still be mapped back to their most likely nucleic acid (or component). Nucleic acid sequences can be designed with a Hamming distance of at least 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 or more bases of mutations. Alternative distance metrics to Hamming distance can also be used to define the minimum required distance between designed nucleic acids.
[0243]
[0286] Some sequencing methods and instruments may require the input nucleic acid to contain specific sequences, such as adapter sequences or primer binding sites. These sequences may be referred to as "method-specific sequences." A typical preliminary workflow for the sequencing instruments and methods may include assembling method-specific sequences with a nucleic acid library. However, if it is known in advance that a synthetic nucleic acid library (e.g., an identifier library) will be sequenced with a specific instrument or method, these method-specific sequences may be designed into the nucleic acids (e.g., components) that comprise the library (e.g., an identifier library). For example, sequencing adapters may be assembled onto members of a synthetic nucleic acid library in the same reaction steps as the members of the synthetic nucleic acid library themselves are assembled from individual nucleic acid components.
[0244]
[0287] Nucleic acid can be designed to avoid sequences that can facilitate DNA damage. For example, sequences that contain sites for site-specific nucleases can be avoided. As another example, UVB (ultraviolet-B) light can cause adjacent thymines to form pyrimidine dimers, which then inhibits sequencing and PCR. Therefore, if a synthetic nucleic acid library is intended to be stored in an environment exposed to UVB, it can be beneficial to design its nucleic acid sequence to avoid adjacent thymines (i.e., TT).
[0245]
[0288] All information contained within the Chemical Methods section is intended to support and enable the techniques, methods, protocols, systems and processes described herein.
[0246] Method for assembling identifiers from components using azide-alkyne modification
[0289] Chemical and / or biological ligation methods may be used to ligate two or more nucleic acid components together to create the identifier. In some embodiments, there may be advantages associated with chemical ligation methods such as "click chemistry" versus biological methods such as enzymatic ligation.
[0247]
[0290] Click chemistry or copper-catalyzed azide-alkyne cycloaddition (CuAAC) is a variant of the Huisgen 1,3-dipolar cycloaddition reaction. In the reaction, an alkyne group and an azide group react to form a triazole phosphodiester mimic. Current methods use Cu(I) ions to increase the specificity, rate and yield of this reaction. The reaction can be fast with some alkynes, with completion times of approximately one minute reported. Reaction times can be 30, 60, 90, 120, 150, 180 seconds or longer. The reaction can also be robust, tolerating a wide pH range.
[0248]
[0291] Chemical ligation using click chemistry can occur between two single-stranded nucleic acid components using a template (or staple or splint) oligonucleotide. Alternatively, chemical ligation can occur between double-stranded nucleic acid components if there is a common complementary overhang (or sticky end). Chemical ligation by click chemistry can be used to construct identifiers according to the above-mentioned product method (Figure 6), permutation method (Figure 11), MchooseK method (Figure 12), compartment method (Figure 13) or unconstrained sequence method (Figure 14).
[0249]
[0292] Ligation of components using click chemistry requires that one component bears at least one alkyne group and the other component bears at least one azide group. It is not important which modification is at the 5' or 3' end of one nucleic acid component, so long as complementary modifications are located on adjacent components such that the 3' end of one component will ligate to the 5' end of another.
[0250]
[0293] Several different types of alkyne-azide bonds can be used in click chemistry. Alkyne-azide bonds, which are compatible with molecular biology methods such as PCR, can be particularly suitable for generating identifiers. If a particular pool of identifiers contains one or more alkyne-azide bonds, the identifiers can be copied to their natural form (with phosphodiester bonds between the bases) using PCR.
[0251] Method for constructing identifiers from multi-component components
[0294] The component containing the identifier can be divided into two or more parts with different functions. For example, each component can have two parts: one long part intended to hybridize to a nucleic acid probe for data access and another short part intended for sequencing readout. The two parts can be separated and intended to be assembled to the identifier at each edge, so that the final identifier product has two functionally different regions. One region on one side is for chemical access and one region on the other side is for sequencing.
[0252]
[0295] Figure 22 provides a schematic of one example of this concept in sticky end ligation assembly of identifiers, where components from each layer come together according to a product scheme. The first layer is the core of the identifier assembly process with linked two-part components, and subsequent layers contain separate two-part components that are assembled into identifiers from both edges. The symbols above the sticky ends represent their sequences. Sticky ends with different symbols are orthogonal. An asterisk next to a symbol represents the reverse complement. For example, "a" and "a * " are reverse complements of each other and will therefore hybridize during ligation to form the product.
[0253] How to Construct Identifiers Using the Base Editor
[0296] A base editor can be used to programmatically mutate bases located at specific loci in the parent identifier to construct new identifiers. In one embodiment, the base editor can be a dCas9 protein fused to a cytidine deaminase that converts cytosine (C) to uracil (U). The parent identifier can be designed to have several orthogonal targets to which the guide RNA (gRNA) binds. A target locus can contain one or more cytosines within the active range of the dCas9-deaminase bound at that locus. The active range can be one, two, three, four, five, six or more bases within the locus. Subsequent incubation of the parent identifier with the dCas9-deaminase and a subset of gRNAs for specific loci can result in one or more cytosine to uracil mutations at each of those target loci. Furthermore, DNA polymerase recognizes uracil as thymine, and thus performing PCR on the mutated identifiers can result in a complementary mutation (guanine to adenine) as well. A parent discriminator with N orthogonal target loci can be generated by applying different subsets of dCas9-deaminases and N gRNAs, each targeting a distinct locus in the parent. N Each gRNA sequence can be programmably converted into N distinct daughter identifier sequences. Thus, the combinatorial space of possible identifiers constructed in this manner can store N bits of information for N gRNA inputs.
[0254]
[0297] In some embodiments, any given target locus of parent sequence may contain targeting cytosines on both upper and lower strands to promote increased mutation efficiency.Moreover, each locus must be adjacent to a PAM site to generate efficient gRNA targeting.However, PAM sequences may vary depending on the use of different engineered Cas9 variants.
[0255]
[0298] The dCas9-deaminase fusion may include a linker sequence between the two fusion proteins. The optimal linker length may be 16 amino acids long for efficient targeted mutation. The linker length may be at least 0, 1, 5, 10, 15, 20, 25 or more amino acids long. One of several cytidine deaminases may be used. Examples of cytidine deaminases include APOBEC1, AID, CDA1 or APOBEC3G. An active Cas9 nickase may be used instead of dCas9, but in that case, it may be necessary to include a DNA repair enzyme in the identifier construction reaction as well.
[0256]
[0299] In another embodiment of constructing an identifier using a base editor, an adenine deaminase fused to dCas9 (as opposed to or in addition to a cytidine deaminase fused to dCas9) can be used to mutate adenine to inosine at a defined locus of the parent identifier accessible by gRNA. Inosine is interpreted as guanine by DNA polymerase. Thus, PCR of the base edited locus can result in a complementary thymine to cytosine mutation on the opposite strand.
[0257] How to delete information stored in DNA
[0300] Being able to reliably delete (or erase) data stored using nucleic acids can be beneficial for security, privacy and regulatory reasons. Data erasure can involve breaking covalent bonds in the nucleic acids, irreversibly modifying the nucleic acids to destroy their ability to be sequenced, irreversibly encapsulating or adsorbing them, or adding more nucleic acids or other materials to make the original collection of nucleic acids unreadable or unreadable. These methods can be performed selectively or non-selectively. The selection process can be separate from the deletion process. For example, starting with an identifier library, sequence-specific probes can be used to pull down a subset of identifiers to be deleted. As another example, purification of selected identifiers by size or mass-to-charge ratio can be performed in conjunction with other selective or non-selective deletion methods.
[0258]
[0301] Selective methods for deleting nucleic acids from libraries include the use of sequence-specific probes to pull down a subset of nucleic acids for deletion, the use of CRISPR-based methods to cleave selected nucleic acids containing one or more target sequences, and the use of purification techniques to select nucleic acids by size or mass-to-charge ratio.
[0259]
[0302] Non-selective methods for deleting information-encoding nucleic acids from libraries include sonication, autoclaving, bleaching, treatment with base, acid, ethidium bromide or other DNA modifying agents, irradiation (e.g., with ultraviolet light), burning and non-specific nuclease digestion (in vitro or in vivo) such as DNase I. Other methods may be used to obscure, hide or physically protect the nucleic acids from access or sequencing. Methods may include encapsulation, dilution, addition of random nucleic acids to obscure the original nucleic acid and addition of other agents to prevent downstream sequencing of the nucleic acid. In one embodiment, the data stored in the nucleic acids may be obscured using amplification with an error-prone polymerase, e.g., a polymerase lacking proofreading function.
[0260]
[0303] For data stored in nucleic acids with defined periods of value, it may be beneficial to use methods to automatically delete data at designated times. For example, data may be scheduled to be deleted after a required legal period. As another example, data may be scheduled to be deleted if it is in transit and does not reach its destination on time. In one embodiment, scheduled deletion of nucleic acids may involve the use of degrading agents that act immediately at a defined rate or at a designated time. In another embodiment, scheduled deletion of nucleic acids may involve the use of nucleic acid capsules or protective casings that degrade over time. In another embodiment, nucleic acids may be kept at different temperatures or in different environments to promote different rates of degradation. For example, at high temperatures or high humidity to speed up the rate of degradation. In another embodiment, nucleic acids may be converted to more unstable forms for more rapid degradation. For example, DNA may be converted to more unstable RNA.
[0261]
[0304] Confirmation of the nucleic acid deletion can be accomplished using sequencing, PCR, or quantitative PCR.
[0262] How to design and rank identifiers for efficient random access
[0305] The systems and methods described herein allow for efficient random access retrieval of any distribution of bits from encoded and stored information. A percentage of the encoded information may be efficiently retrieved if the data is stored with component-specific primers used at the edge layers (or end sequences) to amplify a targeted subset of identifiers in the library. Efficient access may include a reduction in the number of PCR steps required to retrieve selected portions of information from the stored data. For example, identifiers may be accessed in fewer than L / 2 sequential PCR steps in a set of stored data using the methods described herein, where L is the number of layers that contain the identifiers. The architecture of the identifiers and the identifier ranking system affect the random access nature of the identifier pool. The rank of an identifier corresponds to the position of the bit it represents. Identifier ranks may be lexicographically determined from the order of each possible component that may appear in each layer, or may be strategically defined. For example, layers at the edge of the identifier may be assigned a higher priority than layers in the center of the identifier, such that random access (e.g., using PCR primers that bind to the edge layers of the identifier) returns identifiers with consecutive ranks that correspond to consecutive or related stretches of encoded bits. Higher "precedence" is analogous to greater access depth - for example, elements with higher priority are easier to access than elements with lower priority.
[0263]
[0306] The identifier architecture and identifier ranking system allows random access to a specific subset of identifiers from the identifier pool. In some implementations, each identifier nucleic acid sequence in the identifier pool corresponds to a symbol value and a symbol position in the symbol string. Furthermore, the presence or absence of an identifier nucleic acid sequence in the pool may represent the symbol value of each corresponding symbol position in the symbol string.
[0264]
[0307] In certain implementations, symbols with consecutive symbol positions encode similar digital information. As used herein, similar digital information may include data (i.e., image data or binary code strings) of the same structure. Similar digital information may also refer to data contained within the information. For example, all image data positions encoded with a particular intensity of red may be grouped together in consecutive symbol positions. Alternatively, symbols with consecutive symbol positions may not encode similar digital information. For example, consecutive symbol positions may correspond to different features within the data (i.e., image data), such as x-coordinates, y-coordinates, or intensity values or intensity value ranges. FIG. 23 shows an example of an identifier generated by a product scheme of three layers A, B, and C, each layer having two components 1 and 2. The components from each of the three layers A, B, and C are assembled in that order. The rank of each identifier may be determined by assigning a particular order to each layer, then assigning a particular order to each component within each layer, and then lexicographically assigning an order to the identifier. FIG. 23A shows the rank obtained from defining the lexicographic order of the layers as being similar to that ordered in the physical identifier. When such an identifier pool is interrogated using a PCR reaction using primers that bind to the edges of the identifiers (e.g., components A1 and C1), the accessed identifiers have non-contiguous ranks, making it impossible to randomly access consecutive bit strings in one PCR reaction. In certain implementations described herein, the edges of the identifiers (e.g., components A1 and C1) are referred to as "end sequences" or "end molecules". However, since bits in a consecutive run often encode relevant information, it is often ideal to randomly access a consecutive run of bits (represented by consecutively ranked identifiers). Each bit in a consecutive run of bits can be accessed using a probe to hybridize to a target end sequence of each identifier nucleic acid sequence in the plurality of identifier nucleic acid sequences to select an identifier nucleic acid sequence corresponding to each symbol having consecutive symbol positions.Figure 23B shows how the lexicographic ordering of layers A, B and C can be altered to allow for interrogating a contiguous run of bits in one PCR reaction using primers that bind to the edge (or terminal sequence) of the identifier. This strategy does not use the same lexicographic ordering of the layers as the physical ordering of the layers. Instead, the strategy assigns a higher priority lexicographic ordering to layers at the edge (or terminal sequence) of the identifier and a lower priority ordering to layers in the middle of the identifier.
[0265]
[0308] The distribution of components in the compartmentalized manner underlying the combinatorial space can affect the number of symbols that can be accessed in a PCR reaction. FIG. 24 shows an example of an identifier generated by a three-layer A, B, and C product scheme, with components unevenly distributed across the layers. Specifically, two layers have two components 1 and 2, and one layer has three components 1, 2, and 3. According to the identifier ranking principle described above, the lexicographical order of the layers is A, C, then B, even though the physical ordering is A, B, then C. This is such that random access with PCR primers that bind to the edge layers (or terminal sequences) of the identifiers returns identifiers with consecutive ranks (corresponding to consecutive runs of bits). Specifically, the first and second terminal sequences of a particular identifier nucleic acid sequence are shared between multiple identifier nucleic acid sequences that correspond to consecutive runs of bits. FIG. 24A shows that the pool of identifiers accessed by a PCR query (with primers that each bind to an edge component (or terminal sequence)) can be larger if more components are located in the central layer of the identifier. Correspondingly, the number of bits that can be accessed at one time can be larger. Figure 24B shows that if more components are located at the edge layers (or end sequences) of the identifier, the pool of identifiers accessed by an equivalent PCR query can be smaller. Correspondingly, the bits can be accessed with higher resolution.
[0266]
[0309] The number of layers in the product scheme for constructing the identifier may also affect the number of symbols that can be accessed per PCR query. Figure 25 shows an example of an identifier generated by a product scheme with five layers A, B, C, D and E, each layer having two components 1 and 2. Pursuing the above identifier ranking principle, the lexicographical order of layers assigns the highest priority to the outermost layer (A and E), the next highest priority to the second outermost layer (B and D), and the lowest priority to the central layer (layer C). As used herein, priority refers to the depth (or level) of data access, with higher priority corresponding to less depth and lower priority corresponding to more depth. For example, access to a book from a large collection of books (i.e. layers A and E) is considered the highest priority, access to a chapter within that book is considered the next highest priority (i.e. layers B and D), and access to a paragraph within that chapter of that book is considered the lowest priority (i.e. layer C). If there are more layers, the lexicographic ordering of the layers continues in this manner, so that consecutive or related runs of bits can be searched using fewer PCR queries. All identifiers associated with the components in the outermost layer (A1 and E1) can be queried in one PCR reaction. An even higher resolution (i.e. lower priority or deeper) query can then be performed using additional PCR reactions using primers that bind to the components in the second outermost layer (B1 and D1). If there are more layers in the identifier architecture, sequential PCR reactions can continue in this manner to achieve even higher resolution queries. However, as an alternative to using two sequential PCR reactions to query all identifiers associated with the four components A1, B1, D1 and E1. It is possible to design PCR primers to bind A1-B1 together and E1-D1 together, but not to any of the components themselves, so that the PCR query accesses the same identifiers as if A1 and E1 were PCR queried followed by B1 and D1 sequentially (especially if the components are designed to have sufficiently short sequences).
[0267] Methods for encoding information using DNA and multiple bins
[0310] Information may be encoded with DNA identifiers using a "multi-bin scheme." In one implementation of such a scheme, there are b bins, each holding a disjoint set of identifiers. Each bin is labeled with a unique [log2b] bit symbol, which may be referred to herein as a label or bin label. A bitstream of l bits is
number
[0268]
[0311] Specifically, the multi-bin scheme may be a "multi-bin positional encoding scheme," in which a unique identifier is constructed to represent the position of each word w in the bitstream and placed into a unique bin with label w. In this multi-bin implementation, to encode l bits of information,
number
[0269]
[0312] The above multi-bin positional coding scheme can be illustrated by the following example: Consider 35 bins, each labeled with a distinct symbol of the English alphabet, including punctuation. The coding of a paragraph of English text is achieved as follows: For each symbol x, all occurrences of x in the paragraph are identified. Each character in the text is numbered in ascending order to obtain their integer addresses. All identifiers corresponding to the addresses of some particular symbol x are created and collected in a single bin labeled with x. Thus, all positions where x occurs in the text are represented by identifiers in the bin labeled with x.
[0270]
[0313] Figure 26 shows an example of the multi-bin position encoding method, where the position of each symbol type in the symbol stream is recorded in the bin allocated for that symbol type. This figure shows that an example of the phrase "
Number
Number
Number
[0271]
[0314] In another implementation form of the multi-bin method, an l-bit bitstream is implicitly encoded into the distribution of identifiers to b bins labeled 1, 2,..., b. In this method, a mapping is designed between the set of all bitstreams of length l bits and the set of all distributions of d identifiers into b bins. The distribution of d identifiers into b bins is for integers b such that 0 ≦ b i < b (b1, b2,..., b d), where each non-negative integer b i is the unique bin label assigned to the i-th identifier. Each assigned bin label can be freely chosen from b possible labels, so b d There are possible distributions.
[0272]
[0315] FIG. 27 shows an example of a multi-bin scheme based on using an identifier distribution to encode information. FIG. 27 shows an example using an identifier library of two identifiers (labeled 1) and a set of bins of three named bins (0, 1, 2). Each row of bins (each row containing three named bins 0, 1, 2) shows an example of a distribution of two identifiers partitioned into three bins. The table (labeled 6) shows an arbitrary but fixed bit stream mapped to each distribution. For example, the fourth row of three bins (labeled 5) shows a distribution where two identifiers are in the bin named 1, while bins 0 and 2 are empty. This distribution is arbitrarily mapped to the bit stream 0011. Similarly, the second row of three bins shows a distribution where two identifiers are in the bin named 0 and bin named 1, while the third bin is left empty. This distribution is mapped to the bit stream 0001 (labeled 3). The next row shows a distribution in which the bin named 1 is left empty. This corresponds to bitstream 0010. Given any such bitstream, its corresponding distribution is constructed and stored. Thus, using this multi-bin identifier distribution scheme, any bitstream may be encoded using a sufficient number of bins and identifiers.
[0273]
[0316] In another embodiment of the multi-bin scheme, an identifier may be present in more than one bin. In this scheme, a bit stream of l bits is implicitly encoded into a distribution of identifiers into bins labeled 1, 2, ..., b. In this scheme, each bin contains a subset of identifiers. Thus, in this scheme, a mapping is designed between the set of all bit streams of length l bits and the set of all b subsets of the set of all identifier subsets. By b subset, we mean a set that contains b elements. For example, if there are a total of d identifiers in the combinatorial space, then the set of all identifier subsets is 2 d The scheme contains a set of bits, denoted by D. The scheme uses a mapping between all bit streams of length l and any subset of D that contains b sets, and has length log22 db In another embodiment, each bin contains a distinct subset. In this case, this scheme allows the encoding of a bitstream of length
number
[0274]
[0317] Figure 28 shows an example of a multi-bin scheme based on using an identifier distribution to encode information when an identifier can appear in more than one bin. This scheme is called identifier distribution with reuse. Figure 28 shows an example with two identifier libraries (labeled 8 and 9) and three bins (bins 0, 1, 2). Using two identifiers and three bins, six bits (b0b1b2b3b4b5, where each b xThe diagram encodes a set of possible identifiers (where x corresponds to a single bit in the bitstream and x indicates the position of each bit in the bitstream). The top of the diagram shows the subsets of possible identifiers corresponding to bits b0b1 (labeled 4), b2b3, and b4b5, respectively. Any subset of identifiers can be included in any bin. Thus, each of the three bins can contain four options: no identifier, a single identifier (labeled 8), the other identifier (labeled 9), or both identifiers (8 and 9). Since this example involves three bins, each subset is shown three times in each row (labeled 2). Each of the three bins can contain exactly one subset, although triplicates are allowed in all subsets. This is indicated by the lines connecting the subsets (labeled 3). Each path from left to right corresponds to a set of subsets that are included in the three bins. As shown in the table (labeled 7), each distribution of identifiers is mapped to a specific bitstream. In one embodiment, bitstreams may be inferred by labeling subsets of each bin as 00, 01, 10, and 11. Thus, for example, the distribution indicated by label 5 corresponds to bitstream 000000 because each of the three bins is selected to contain a subset of empty identifiers, which subset is labeled 00. Similarly, the distribution indicated by label 6 corresponds to bitstream 010110 because bin 0 is selected to contain subset 01, bin 1 contains subset 01, and bin 2 contains subset 10. The figure shows a few more examples of the 64 possible distributions (implied by the dashed items in the figure).
[0275]
[0318] Multi-bin encoding schemes may have applications in secure archiving of data, since decoding data encoded using such schemes may require access to and decoding of all bins. For example, to map a multi-bin encoded identifier library back to a source bitstream, it may be necessary to obtain the set of identifiers present in each bin, since a multi-bin scheme maps a bitstream to a distribution of distinct identifiers in multiple bins, which generally makes it impossible to decode any significant subsequence of the source bitstream from a proper subset of the bins.
[0276]
[0319] In another embodiment, a multi-bin approach may be used to encode the source bitstream using multiple orthogonal identifier libraries. The resulting multi-bin libraries may be combined to allow decoding from any subset of bins of some minimal concentration. For example, a source bitstream may be encoded using 5 orthogonal libraries and 3 bins each. The resulting 15 bins may then be combined to allow decoding of the bitstream from any subset of the 3 bins. In practice, the bins may be physical locations such as tubes, wells or spots on a substrate.
[0277]
[0320] In some embodiments, a bin can be a physical location such as a tube, well, or spot on a substrate, in other embodiments, a bin can be a more abstracted association shared by all identifiers in a collection, such as a particular barcode sequence.
[0278] How to Encode Information Using DNA and Integer Partitioning
[0321] The term "integer partition" method is used to refer to an encoding strategy that stores information in partitions of random sequences of DNA. Figure 29 shows one embodiment of the integer partition method outlined in five steps. DNA is shown as a string with grey or black bars and symbols. Each DNA shown represents a distinct species. A "species" is defined as one or more DNA molecules of the same sequence. When "species" is used in the plural sense, it may be assumed that every species of the species has a distinct sequence, which can sometimes be clarified by writing "distinct species" instead of "species".
[0279]
[0322] In step 1 of the method embodiment, one starts with a pool of very large numbers of species, each called a "count." The counts can be designed to have a common sequence at the edge (black and light grey bars) and then a distinct sequence in the middle (N...N). Using a degenerate oligonucleotide synthesis strategy, this starting pool of counts can be produced quickly and cheaply. In step 2, the counts are compartmentalized into bins (rectangles shown in step 2). It is not important which counts are compartmentalized into which bins, only the number of counts that are compartmentalized into each bin. Thus, compartmentalization can be done by randomly sampling a single count from the starting pool and then assigning that count to a specific bin (e.g., one of the five bins shown in step 2). Single counts can be sampled in small droplets from the pool. A bin is a reaction vessel. For example, a bin can be a chamber in a microfluidic channel or a location on a substrate. Counts can be assigned to chambers through a microfluidic device or to locations on a substrate through printing. Each bin contains a distinct DNA species, called a barcode. The barcodes can be designed to have a common sequence at the edges (light and dark grey bars) and a distinct sequence in the middle that identifies each bin (B0, B1, B2, B3, B4, ...). In step 3, the common edge sequence of the barcodes is assembled to the common edge sequence of the counts. For example, the common edge sequences of the barcodes can be configured to assemble by sticky end ligation or Gibson assembly. In step 4, the assembled DNA molecules from each bin are combined into a final pool for storage shown in step 5. The species in the final pool contain all of the information about how the counts were compartmentalized into each bin. This information can be recovered by sequencing. In the given example, the sequencing data may imply that the nine counts have been partitioned into five bins, such that the first bin (B0) has two counts, the second bin (B1) has three counts, the third bin (B2) has one count, the fourth bin (B3) has one count, and the fifth bin (B4) has two counts.This is mathematically equivalent to rewriting the integer "9" as the ordered sum "2+3+1+1+2", which is known as a "composition". If the parameters of the method are fixed to always have a total of 9 counts and 5 bins, then the particular composition recorded in this example contains log2(13choose4) bits of information, since there are 13choose4 possible compositions. At any point in this process, multiple copies of each species may exist or be created (e.g., using PCR) without interfering with the stored information. This allows the final pool to be amplified to protect against degradation and to facilitate sequencing. In general, if an integer partition system has fixed parameter values of n partitioned counts and k bins, the method may be implemented to store log2[(n+k-1)choose(k-1)] bits of information. Mathematically, one could say that this information measures the number of "weak compositions" of the system. However, this is only true if the barcode sequence of each bin is known. The method can still be performed if the barcode sequence for each bin is not known (eg, if the barcodes themselves are random sequences).
number
[0280] A method for designing data pipelines for encoding information in DNA.
[0323] The input bitstream to be written to DNA is processed by a computational encoding-decoding pipeline, abbreviated as "CODEC". Figure 30 shows a high-level block diagram of an example of the encoding portion of a CODEC. Upon receiving a source bitstream and a request to write it to DNA, the CODEC divides the source bitstream into one or more blocks of a size not exceeding a fixed length known as the block size. The CODEC determines the appropriate block size based on the source bitstream (i.e., the string), the processing requirements, and the intended use of the content of the bitstream (i.e., the digital information). For example, a 100Gbit bitstream may be divided into 100 blocks, each 1Gbit in length, or 1000 blocks, each 100Mbit in length, or in some other manner.
[0281]
[0324] The codec may compute a hash of each block using one or more hashing algorithms, which may append the hash and other metadata to the block, such as the block length and block address.
[0282]
[0325] The codec may apply one or more error detection and correction algorithms to each block and compute one or more error protection bytes. The codec may then combine the original block with the error protection information to obtain an error protected block. For example, the codec may apply convolutional coding to bits in the block, apply Reed-Solomon or erasure coding to chunks of bytes in the block, and append a Reed-Solomon or erasure error protection byte to each chunk of the block. The codec may append error protection metadata to each block.
[0283]
[0326] In calculating the error protection information, the codec may select a particular algebraic field size to perform the error protection calculation. The field size may determine the source word length, which may be any number of bits, such as 4, 8, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48, 64, or 128 bits. The source word is a continuous string of bits (fixed length) that comprises the source bitstream. The codec may select a particular field size and word length based on computational complexity and error protection considerations. For example, an 8-bit word length may be computationally efficient, while a 16-bit word length may provide better error protection. The codec may use a search algorithm to identify an optimal set of parameter values based on one or more objective functions. For example, the codec may use the number of independent reaction compartments in the writer hardware system, the number of unique identifiers required to encode the bitstream under a particular configuration of parameter values, some other function or some combination of functions as a cost function.
[0284]
[0327] The codec may further apply another encoding step to the error protected block to improve writing or reading performance. The codec may map each word in the error protected block to a new codeword. The codec may use a search algorithm to generate a set of codewords with a particular set of properties. For example, the codec may generate codewords of variable length, codewords with the same fixed number of "1" bit values, codewords with a specified Hamming distance from each other, or some combination of such characteristics. The codec may use a set of parameters including source word length, writer hardware speed, and total number of available components in determining the best codeword length, weight, Hamming distance, or other characteristic of the codeword. The codec may include another layer of error detection or correction information with these codewords. For example, the codec may generate codewords of length n with exactly k "1" bit values, two of which, known as high or low bits, serve as parity bits. The high bit is set if the parity bit is 1, and the low bit is set otherwise. One or more pairs of such error protection bits may protect various portions of a codeword.
[0285]
[0328] The codec may select a particular set of codewords to ensure optimized chemical conditions during encoding or decoding. For example, the codec may generate codewords of fixed weights to ensure that a fixed and identical number of identifiers are assembled in each reaction compartment in the writer system, with approximately equal concentrations within each compartment and across compartments. The codec may select the codeword length and compartment scheme such that an equal number of identifiers are assembled in each reaction compartment and an integer codeword is encoded.
[0286]
[0329] The codec may be selected to use multiple sets of identifiers to encode some or all of the bits in the source bitstream. The identifiers may be from an orthogonal identifier library and may belong to the same identifier library. The identifiers may encode the source bitstream or combinations of bits from the source bitstream. By using multiple sets of identifiers to encode combinations of bits, the codec may be able to reduce the size of the samples required to reliably decode all bits. The codec may generate one or more output blocks for each source block. The output blocks may describe the set of identifiers to be assembled as a list or some other type of data structure including a tree. The codec may generate one or more command files that instruct the device to assemble the specified identifiers. For example, the codec may generate command files that control a liquid handling robot or an inkjet printer that uses ink-containing components. The codec may communicate with th...
Claims
1. 1. A method for writing information into a nucleic acid sequence, comprising: Obtaining a first fixed-point number; obtaining a library of component nucleic acid sequences defining a combinatorial space of identifier nucleic acid sequences, each identifier nucleic acid sequence comprising an ordered subset of said component nucleic acid sequences; identifying a first subset of identifier nucleic acid sequences in said combination space as a first codeword having a codeword size corresponding to the number of identifier nucleic acid sequences in said first subset; forming a first set of one or more identifier nucleic acid molecules having the first subset of distinct identifier nucleic acid sequences, wherein a ratio of the number of distinct identifier nucleic acid sequences represented in the first set to the codeword size approximates the first fixed point number; The method includes:
2. 2. The method of claim 1, wherein the library of component nucleic acid sequences comprises a plurality of layers, each layer comprising a subset of the component nucleic acid sequences, and each identifier nucleic acid sequence comprises one component nucleic acid sequence from each layer.
3. 3. The method of claim 1 or 2, wherein the first fixed-point number has a value x, the codeword size is w, and k identifier nucleic acid molecules are formed in the first set such that the ratio is k / w and is approximately equal to x.
4. 4. The method of claim 3, wherein k / w is within plus or minus 20% of x.
5. The method according to any one of claims 1 to 4, wherein the codeword size is at least eight.
6. The method of claim 5 , wherein the codeword size is at least 256.
7. The method of claim 6 , wherein the codeword size is at least 512.
8. The method of claim 7 , wherein the codeword size is at least 1024.
9. Obtaining a second fixed-point number; identifying a second subset of identifier nucleic acid sequences in the combination space as a second codeword having the codeword size of the first codeword and corresponding to a number of identifier nucleic acid sequences in the second subset; forming a second set of one or more identifier nucleic acid molecules having the second subset of distinct identifier nucleic acid sequences, wherein a ratio of the number of distinct identifier nucleic acid sequences in the second set to the codeword size approximates the second fixed point number; The method of any one of claims 1 to 8, further comprising:
10. pooling the first set and the second set to obtain a combined pool; diluting the pooled set to obtain a scaled combined pool; 10. The method of claim 9, further comprising summing the first fixed-point number and the second fixed-point number by:
11. pooling the first set and the second set to obtain a factor pool; applying a chemical AND operation to the first and second sets of identifier nucleic acid molecules to obtain a product pool; 10. The method of claim 9, further comprising multiplying the first fixed-point number and the second fixed-point number by:
12. The chemical AND operation is converting said identifier nucleic acid molecule into a single stranded identifier nucleic acid molecule; hybridizing a complementary identifier nucleic acid molecule; selecting fully hybridized double-stranded nucleic acid molecules to obtain said product pool; The method of claim 11 , comprising:
13. 13. The method of claim 12, wherein the selecting comprises using at least one of an enzyme that selectively degrades single-stranded nucleic acid molecules or an enzyme that selectively degrades double-stranded nucleic acid molecules having sequence mismatches.
14. pooling the first set and the second set to obtain a factor pool; applying a chemical OR operation to the first and second sets of identifier nucleic acid molecules to obtain a product pool; The method of claim 9 further comprising:
15. The method of claim 14 comprising mixing the first set and the second set.
16. pooling the first set and the second set to obtain a factor pool; applying a chemical NIMPLY operation to the first and second sets of identifier nucleic acid molecules to obtain a product pool; The method of claim 9 further comprising:
17. The chemical NIMPLY operation is converting the identifier nucleic acid molecules to single-stranded identifier nucleic acid molecules, wherein the second set of single-stranded identifier nucleic acid molecules comprises an affinity tag; providing a molar excess of said second set of single stranded identifier nucleic acid molecules; hybridizing a complementary identifier nucleic acid molecule; selecting fully hybridized double-stranded nucleic acid molecules using a specific capture mechanism for said affinity tags to obtain said product pool; 17. The method of claim 16, comprising:
18. pooling the first set and the second set to obtain a factor pool; applying a chemical NOT operation to the first and second sets of identifier nucleic acid molecules to obtain a product pool; The method of claim 9 further comprising:
19. The chemical NOT operation is converting the identifier nucleic acid molecules into single-stranded identifier nucleic acid molecules, wherein the first set of single-stranded identifier nucleic acid molecules comprises an affinity tag; providing a molar excess of said first set of single stranded identifier nucleic acid molecules; hybridizing a complementary identifier nucleic acid molecule; selecting fully hybridized double-stranded nucleic acid molecules using a specific capture mechanism for said affinity tags to obtain said product pool; 20. The method of claim 18, comprising:
20. pooling the first set and the second set to obtain a factor pool; applying a chemical XOR operation to the first and second sets of identifier nucleic acid molecules to obtain a product pool; The method of claim 9 further comprising:
21. 22. The method of claim 21, wherein the chemical XOR operation comprises performing two NIMPLY operations followed by an OR operation.