Readers,
In an earlier posting I proposed that it could be valuable to consider
the genome as a computer program and analyze it with flow charts of the
type used in writing software. Since that time I have received some
very helpful email concerning how this might be done.
Several readers said that the genome's program must be a highly parallel
one and that we must think of flow charts as diagrams representing the
processes involved in gene expression. These would not be charts of a
program that is written in the gene, so much as they are descriptions of
the processes that can be observed.
As a sample of the kind of chart I have in mind, below is a flow chart
for the expression of the beta-galactosidase gene in E. coli. This is
obviously a well known process, though perhaps not previously
represented in this kind of programming schematic.
***********
Flow Chart of the process of beta-galactosidase
gene expresssion in E. coli
|
|__________________________________________
| |
/ \ |
/ \ |
/ if \ ___________ |
/glucose\____yes_| b-gal not | |
\present/ |transcribed| |
\ / |___________| |
(activator shows |
small molecule |
present) |
| |
|no |
| |
| |
| |
/ \ _________________ |
/ if \ |repressor binds | |
/lactose\--yes--|to operator | |
\present/ | b-gal not tran-| |
\ / |scribed | |
\ / |________________| |
|no |
| |
____|_________________ |
|RNA Polymerase | |
|transcribes | |
|gene, b-gal made | |
|_____________________| |
| |
| |-- glucose
| | feedback
____|_______________________________ | loop
|b-gal enzyme breaks down lactose | |
| into galactose and glucose |__________|
|__________________________________|
********
Please suggest other processes that could be expressed in this way.
I want to extend this method to larger parts of genomes and ultimately
entire genomes. A crude picture of the entire genome of some virus or
bacteria would be a good start. On the macro-scale it must look
something like this:
| | ____
..... ___/\-----------/\___| |......
/\ \/ \/ |__|
\/ | | |
| | /\-----|
. . \/ .
. . | .
There would be many processes running concurrently with some dashed
lines representing connections between them.
The two main subroutines would be a developmental subroutine and a "life
function" subroutine. The developmental routine would handle all the
gene expressions involved in organism development, the life function
routine would handle all the gene expressions involved in eating,
breathing, excretion, reproduction and so forth. Initially the
developmental round would dominate, later the functional routine would.
My first article dealing with this topic is scheduled to appear in the
July issue of a new computer magazine called "The X Advisor" - I will
post an early draft here during the coming weeks.
Comments are welcome.
Gary Welz
Dept. of Mathematics
John Jay College
City University of New York