[Up] [Next]
Go up to Counter Machine  
Go forward to Noncomplementary Version  

Complementary Version  

The first system we tested was the complementary version of the system for patterning a DNA strand with "1 2 1 2", described earlier. The file shown below (see this figure) specifies the oligos making up this system.

Explanation of the file format: lines beginning with "#" are comments. Lines beginning with ":" are symbol definitions, which can use previously-defined symbols. Other nonempty lines specify DNA strands, the first being the initial template and the rest being the set of mutagenic oligos. A symbol name preceded by "!" denotes the reverse complement of the given symbol. All strands are given in 5' to 3' order unless otherwise indicated.

  


#----------------------------------------------------------------------
# Random primers.
 
:prim1  CCGCGGGCGGCG
:prim2  GGCGCCCGGCGG
 
# Restriction recognition sites.
 
# '1'
:XhoI    CTCGAG
# '0'    X    X
:SalI    GTCGAC
# '2'     X  X
:NgoMI   GCCGGC
 
# Left and right framers.
 
:Lf  TGA
:Rf  AAC
 
# Symbol encodings.
 
:1  Lf XhoI  Rf
:0  Lf SalI  Rf
:2  Lf NgoMI Rf
 
# Initial strand.
 
3'- !prim1 !1 !0 !0 !0 prim2 -5'
 
# Primers.
 
prim1
prim2
 
# Rewriting oligos.
 
5'-- 1 2      ->3'
3'<-   !2 !1  --5'
#----------------------------------------------------------------------
Figure 7 : Code for complementary version of 1-2 counter machine. The file format is explained in the text.

Note that in this system, symbols have length 12, and so the 2-place oligos have length 24. Desired bindings have 2 mismatches. The symbol encodings have been engineered to contain restriction sites, which can be used for assaying the results, but are not important to the operation of the machine.

Unfortunately, although the above system functions fine in the simulator, it violates one of the accuracy assumptions in that the mutagenic oligos will bind to each other, resulting in a reduction in the number of free mutagenic oligos available for binding to the templates, and also resulting in the formation of side products. However, the latter effect can be compensated for by increasing the concentration of oligos, and we may not care about the side products. So this is an experiment we may actually perform, and it is worth demonstrating in simulation.

Below is the actual output of the simulator running this machine. The output consists of sections showing which oligos are incorporated into the new strand produced at each step, interspersed with occasional displays of the complete binding profile showing all the places where oligos have a high probability of binding. In each profile, binders above .01 probability are displayed in order from most to least probable, along with the change in standard Gibbs free energy for that binding event (DeltaG0 in kcal/mol), the corresponding equilibrium constant for the binding reaction (this is the inverse of the Molar concentration of oligo needed to achieve 50% chance of binding), and the resulting probability of binding at the simulated concentration, assuming no other competitors. The best binder below .01 probability is also displayed.

The conditions for this run are:

Annealing temperature:       303.15 K (30 C) 
Concentration of each oligo: 1e-7 Molar      
Time for annealing phase:    10 minutes      
Looking at the initial binding profile, we can see that (apart from the ubiquitous primer needed for PCR) the "1 2" oligo is the only one with a significant probability of binding, and it can only bind to the "1 0" sequence of the template, with which it has two mismatches. The binding probability at equilibrium approaches certainty. The next runner-up is for it to bind to a "0 0" sequence, but this pairing has four mismatches, and the probability of attaching there is calculated to be less than one in a million.

Next the first cycle is simulated, and indeed, the desired event happens. The resulting template is the complement of the original, except with a "2" replacing the first "0." Now we are ready for cycle 2, and we display a profile of the binders to the new template. Again, the desired reaction is the only one possible. (Note that the template is always shown in 3' to 5' order for consistency, and thus it is turned around here, relative to the previous profile.)

We proceed to simulate several more steps. Note that on step 3 a perfectly-matched oligo binds in addition to the mismatched one. This is unproblematic. At this point all zeros have been changed to ones or twos. We do one more cycle for good measure, and we are done.

----------------------------------------------------------------------
sim complement3.olig -T 30 -n -t 600
Parameters: file = complement3.olig, T = 303.15, c = 1e-07, t = 600,
            p = 0, s = 796557526
 
Command: ?
 
   [!prim1    ][!1        ][!0        ][!0        ][!0        ][prim2     ]
3'-GGCGCCCGCCGCACTGAGCTCTTGACTCAGCTGTTGACTCAGCTGTTGACTCAGCTGTTGGGCGGCCCGCGG-5'
 
   ::::::::::::    DG0 = -22.8233
5'-CCGCGGGCGGCG-3' k = 2.90848e+16
   [prim1     ]    p = 1.000000
 
               ::::::::::::::::X::X::::    DG0 = -14.1205
            5'-TGACTCGAGAACTGAGCCGGCAAC-3' k = 1.53405e+10
               [1         ][2         ]    p = 0.999349
 
Below .01 probability of binding:
 
                           :::X::::X:::::::X::X::::    DG0 = -0.280819
                        5'-TGACTCGAGAACTGAGCCGGCAAC-3' k = 1.5943
                           [1         ][2         ]    p = 0.000000
 
 
Command: 
 
Cycle = 1, time = 10:00, temp =  30.00.
[prim1     ][1         ][2         ]                                    
CCGCGGGCGGCGTGACTCGAGAACTGAGCCGGCAAC                                    
::::::::::::::::::::::::::::X::X::::                                    
GGCGCCCGCCGCACTGAGCTCTTGACTCAGCTGTTGACTCAGCTGTTGACTCAGCTGTTGGGCGGCCCGCGG
[!prim1    ][!1        ][!0        ][!0        ][!0        ][prim2     ]
 
Command: ?
 
   [!prim2    ][0         ][0         ][2         ][1         ][prim1     ]
3'-CCGCGGGCCGCCCAACAGCTGAGTCAACAGCTGAGTCAACGGCCGAGTCAAGAGCTCAGTGCGGCGGGCGCC-5'
 
   ::::::::::::    DG0 = -22.0749
5'-GGCGCCCGGCGG-3' k = 8.3905e+15
   [prim2     ]    p = 1.000000
 
                           :::X::::X:::::::::::::::    DG0 = -16.5651
                        5'-GTTCTCGAGTCAGTTGCCGGCTCA-3' k = 8.89838e+11
                           [!1        ][!2        ]    p = 0.999989
 
Below .01 probability of binding:
 
               :::X::::X:::::::X::X::::    DG0 = 0.230359
            5'-GTTCTCGAGTCAGTTGCCGGCTCA-3' k = 0.682072
               [!1        ][!2        ]    p = 0.000000
 
 
Command: 
 
Cycle = 2, time = 10:00, temp =  30.00.
[prim2     ]            [!1        ][!2        ]                        
GGCGCCCGGCGG            GTTCTCGAGTCAGTTGCCGGCTCA                        
::::::::::::            :::X::::X:::::::::::::::                        
CCGCGGGCCGCCCAACAGCTGAGTCAACAGCTGAGTCAACGGCCGAGTCAAGAGCTCAGTGCGGCGGGCGCC
[!prim2    ][0         ][0         ][2         ][1         ][prim1     ]
 
Command: 
 
Cycle = 3, time = 10:00, temp =  30.00.
[prim1     ][1         ][2         ][1         ][2         ]            
CCGCGGGCGGCGTGACTCGAGAACTGAGCCGGCAACTGACTCGAGAACTGAGCCGGCAAC            
::::::::::::::::::::::::::::::::::::::::::::::::::::X::X::::            
GGCGCCCGCCGCACTGAGCTCTTGACTCGGCCGTTGACTGAGCTCTTGACTCAGCTGTTGGGCGGCCCGCGG
[!prim1    ][!1        ][!2        ][!1        ][!0        ][prim2     ]
 
Command: 
 
Cycle = 4, time = 10:00, temp =  30.00.
[prim2     ]            [!1        ][!2        ]                        
GGCGCCCGGCGG            GTTCTCGAGTCAGTTGCCGGCTCA                        
::::::::::::            ::::::::::::::::::::::::                        
CCGCGGGCCGCCCAACGGCCGAGTCAAGAGCTCAGTCAACGGCCGAGTCAAGAGCTCAGTGCGGCGGGCGCC
[!prim2    ][2         ][1         ][2         ][1         ][prim1     ]
 
----------------------------------------------------------------------

- Michael P. Frank, September 12, 1995. Formatted using HyperLaTeX-1.3.

[Up] [Next]