
The current challenge is to assemble multiple genetic circuits into larger programs for the engineering of more sophisticated behaviors (P. These parts can be combined to construct genetic versions of electronic circuits, including switches ( Atkinson et al., 2003 Gardner et al., 2000 Kramer and Fussenegger, 2005 Kramer et al., 2004), logic ( Anderson et al., 2007 Guet et al., 2002 Rackham and Chin, 2005), memory ( Ajo-Franklin et al., 2007 Gardner et al., 2000 Ham et al., 2006), pulse generators ( Basu et al., 2004), and oscillators ( Atkinson et al., 2003 Elowitz and Leibler, 2000 Fung et al., 2005 Stricker et al., 2008 Tigges et al., 2009). Living cells can be programmed with genetic parts, such as promoters, transcription factors and metabolic genes ( Andrianantoandro et al., 2006 Benner and Sismour, 2005 Canton et al., 2008 Endy, 2005 Haseltine and Arnold, 2007). Quantitatively accurate models will facilitate the engineering of more complex biological behaviors and inform bottom-up studies of natural genetic regulatory networks. A mathematical model constructed from first principles and parameterized with experimental measurements of the component circuits predicts the performance of the complete program. Genetic logic gates are used so that only cells that sense light and the diffusible signal produce a positive output. In the dark, cells produce a diffusible chemical signal that diffuses into light regions. An engineered light sensor enables cells to distinguish between light and dark regions.

The algorithm is implemented using multiple genetic circuits. We have constructed a genetically encoded edge detection algorithm that programs an isogenic community of E.coli to sense an image of light, communicate to identify the light-dark edges, and visually present the result of the computation.

Edge detection is a signal processing algorithm common in artificial intelligence and image recognition programs.
