Jehoshua (Shuki) Bruck From Screws to Systems The Lineage of BMW - - PowerPoint PPT Presentation
Jehoshua (Shuki) Bruck From Screws to Systems The Lineage of BMW - - PowerPoint PPT Presentation
Jehoshua (Shuki) Bruck From Screws to Systems The Lineage of BMW It happens in biological systems!!! C. Elegans Lineage total of 959 cells 302 nerve cells 131 cells are destined to die C. Elegans Lineage Simple Questions Dealing
From Screws to Systems…
The Lineage of BMW
It happens in biological systems!!!
- C. Elegans Lineage
total of 959 cells 302 nerve cells 131 cells are destined to die
- C. Elegans Lineage – Simple Questions
total of 959 cells 302 nerve cells 131 cells are destined to die Dealing with identity: How do cells remember what to do? Dealing with time: How do cells know when? No clock… Dealing with order: How do cells coordinate their actions?
Control via Stochastic Chemical Reactions A B C D E F G 1 2 5 4 3
A G E G D F F E D D C B C B A
k k k k k
⎯→ ⎯ + + ⎯→ ⎯ ⎯→ ⎯ + ⎯→ ⎯ + ⎯→ ⎯ +
5 4 3 2 1
A G E G D F F E D D C B C B A
k k k k k
⎯→ ⎯ + + ⎯→ ⎯ ⎯→ ⎯ + ⎯→ ⎯ + ⎯→ ⎯ +
5 4 3 2 1
Chemical Reactions Networks 1 2 5 4 3
A G E G D F F E D D C B C B A
k k k k k
⎯→ ⎯ + + ⎯→ ⎯ ⎯→ ⎯ + ⎯→ ⎯ + ⎯→ ⎯ +
5 4 3 2 1
Chemical Reactions Networks 1 2 5 4 3
A G E G D F F E D D C B C B A
k k k k k
⎯→ ⎯ + + ⎯→ ⎯ ⎯→ ⎯ + ⎯→ ⎯ + ⎯→ ⎯ +
5 4 3 2 1
1 2 5 4 3 Chemical Reactions Networks
A G E G D F F E D D C B C B A
k k k k k
⎯→ ⎯ + + ⎯→ ⎯ ⎯→ ⎯ + ⎯→ ⎯ + ⎯→ ⎯ +
5 4 3 2 1
1 2 5 4 3 Chemical Reactions Networks
A G E G D F F E D D C B C B A
k k k k k
⎯→ ⎯ + + ⎯→ ⎯ ⎯→ ⎯ + ⎯→ ⎯ + ⎯→ ⎯ +
5 4 3 2 1
1 2 5 4 3 Chemical Reactions Networks
A G E G D F F E D D C B C B A
k k k k k
⎯→ ⎯ + + ⎯→ ⎯ ⎯→ ⎯ + ⎯→ ⎯ + ⎯→ ⎯ +
5 4 3 2 1
1 2 5 4 3 Chemical Reactions Networks
A G E G D F F E D D C B C B A
k k k k k
⎯→ ⎯ + + ⎯→ ⎯ ⎯→ ⎯ + ⎯→ ⎯ + ⎯→ ⎯ +
5 4 3 2 1
1 2 5 4 3 Chemical Reactions Networks
Solving the Puzzle
Mapping and Prediction Principles and Abstractions
A G E G D F F E D D C B C B A
k k k k k
⎯→ ⎯ + + ⎯→ ⎯ ⎯→ ⎯ + ⎯→ ⎯ + ⎯→ ⎯ +
5 4 3 2 1
- What are the key players in
in a gene regulatory system?
- What are their relevant
interactions?
- Success: predictive model
- What are the key computational
principles in gene regulations?
- A formal language for design
and analysis
- Success:
understanding / compression a calculus for Biology
Mapping and Prediction
Gillespie, 1976; McAdams and Arkin, 1997 Gibson and Bruck, 2000; Riedel and Bruck 2005 Trajectories Physical chemistry
2
) 1 ( _ _ * * * * * * * * * * *
10 1 , 1 , , ,
9 8 7 6 5 4 3 2 1t k volume Initial Volume protein no protein protein mRNA Ribosome mRNA Ribosome mRNA Ribosome mRNA Ribosome RNase mRNA RNase mRNA RNase mRNA RNase mRNA Ribosome mRNA Ribosome mRNA DNA RNAP DNA RNAP DNA RNAP DNA RNAP DNA RNAP DNA RNAP
k free free k MAX n k n k k free k free free free free k MAX
- pen
n
- pen
k n
- pen
- pen
k closed
+ = ⎯→ ⎯ + + ⎯→ ⎯ ⎯→ ⎯ ⎯→ ⎯ ⎯→ ⎯ + ⎯→ ⎯ + + + ⎯→ ⎯ ⎯→ ⎯ ⎯→ ⎯
+ +
Generating trajectories from stochastic chemical equations We can “see” trajectories and know how compute them faster
Descriptive Biology: Is It Sufficient?
Early Work on Abstractions
Computing with neural circuits: a connection between logic and neural networks, 1943
Warren McCulloch 1899 - 1969 Walter Pitts 1923 - 1969 Neurophysiologist, MD
Warren McCulloch arrived in early 1942 to the University of Chicago, invited Pitts, who was still homeless, to live with his family. In the evenings McCulloch and Pitts collaborated. Pitts was familiar with the work
- f Gottfried Leibniz on computing and they considered the question of whether
the nervous system could be considered a kind of universal computing device as described by Leibniz. This led to their 1943 seminal neural networks paper: A Logical Calculus of Ideas Immanent in Nervous Activity.
Logician, Autodidact
Solving the Biology Puzzle
Mapping and Prediction Principles and Abstractions
A G E G D F F E D D C B C B A
k k k k k
⎯→ ⎯ + + ⎯→ ⎯ ⎯→ ⎯ + ⎯→ ⎯ + ⎯→ ⎯ +
5 4 3 2 1
- What are the key players in
in a gene regulatory system?
- What are their relevant
interactions?
- Success: predictive model
- What are the key computational
principles in gene regulations?
- A formal language for design
and analysis
- Success:
understanding / compression a calculus for Biology
Key to the Wonderful Progress in Design: Abstractions in Information Systems Reasoning to Calculations to Physics
Circuits Boolean Calculus Reasoning
Key to the Progress in Design: Abstractions in Information Systems
Shannon 1916-2001
1938 Boolean Algebra to Electrical Circuits Logic Design 1847 Connected Logic with Algebra Boolean Algebra Logical Calculation
Boole 1815-1864
Logic to Boolean Calculus to Physical Circuits
S D
Text to Algebra George Boole, 1854
The Algebra (Boolean Calculus)
Boole, DeMorgan, Jevons, Peirce, Schroder (18xx) Postulate System: Huntington (1904)
Algebraic system: set of elements B, two binary operations + and B has at least two elements (0 and 1)
- If the following postulates are true
then it is a Boolean Algebra: (i) identity (ii) complement (iii) commutative (vi) distributive
1; a a a a + = ⋅ =
; 1 a = a a = a + ⋅
; a b b a a b b a + = + ⋅ = ⋅
( ) ( ); ( ) a b c a b a c a b c a b a c + ⋅ = + ⋅ + ⋅ + = ⋅ + ⋅
Shannon MSc Thesis, 1938 sum carry
Who invented the binary representation
- f numbers?
Leibniz – Binary System
Gottfried Leibniz 1646-1716
Leibniz – Binary System
Gottfried Leibniz 1646-1716
Binary addition algorithm
The First Digital Adder George Stibitz, 1904-1995
He worked at Bell Labs in New York. In the fall of 1937 Stibitz used surplus relays, tin can strips, flashlight bulbs, and other common items to construct his "Model K" (K stands for kitchen table). Model K was designed to display the result of the addition of two bits.
Key to the Wonderful Progress in Design: Abstractions in Information Systems Reasoning to Calculations to Physics
Circuits Boolean Calculus Reasoning
Key Challenge to the Progress in Analysis Abstractions in Information Systems Sensory Forms to Calculations to Reasoning
Reasoning Calculus Sensory Forms
- Text
- Images
- Audio
- Numbers
- Figures
- SW
- …
Ask a design question: Is it a feature or a bug?
Sensory Forms to Calculations to Reasoning
+ ∧ + ∧ ∨ x y z C S
Biology Engineering
Key Challenge to the Progress in Analysis Abstractions in Information Systems
?? ?? Abstractions
- Cyclic vs. acyclic (feedback)
- Stochastic vs. deterministic
A Feature or a Bug?
??
Bio Circuits vs. Combinational Logic Circuits
Joint work with Marc Riedel
- Cyclic vs. acyclic (feedback)
- Stochastic vs. deterministic
+ ∧ + ∧ ∨
x y z C S
Are Cycles a Feature or a Bug?
Hypothesis ????? Cycles might help in
- Reducing cost
- Increasing performance
Circuits With Cycles
a b c
1
f
2
f
3
f
Generally exhibit time-dependent behavior May have unstable/unknown outputs
Generally exhibit time-dependent behavior May have unstable/unknown outputs
1 1
? ? ?
0: non-controlling for OR 1: non-controlling for AND
Circuits With Cycles
Cyclic Circuits Can be Combinational McCaw’s 1963
Cyclic, 4 AND/OR gates, 5 variables, 2 functions:
OR OR AND AND
Cyclic Circuits Can be Combinational McCaw’s 1963
Cyclic, 4 AND/OR gates, 5 variables, 2 functions:
OR OR AND AND
X=0
Cyclic Circuits Can be Combinational McCaw’s 1963
Cyclic, 4 AND/OR gates, 5 variables, 2 functions:
OR OR AND AND
X=1
Smallest possible equivalent acyclic circuit? 5 AND/OR gates; improvement factor is 4/5
x
1
f b a
OR AND OR OR AND
McCaw’s Circuit (1963)
Cyclic Combinational Circuits
Cyclic circuits can be combinational
Short 1961, McCaw 1963, Kautz 1970, Huffman 1971, Rivest 1977
b c b c f1 f2 f3 f4 f5 f6 a a Improvement factor is 2/3 (Rivest 1977) Improvement factor of ½ (Riedel & Bruck 2003)
The Role of Cycles in Circuit Design?
Best paper award in 2003 Design Automation Conference
- Developed the theory and synthesis techniques for
cyclic combinational circuits Synthesis is based on symbolic analysis
- Caltech Cyclify = a software package for the
design of combinational circuits with cycles
- Integrated Caltech Cyclify with the Berkeley
design tools
- Evaluated benchmark circuits and compared with
current design tools
Cycles in Circuits is a Feature!
Cycles help in
- Reducing cost
- Increasing performance
Optimization for Cost (Area)
Cost: Number of NAND2/NOR2 gates
7.47% 1003 1084 s1488 11.66% 758 858 styr 20.54% 673 847 duke2 6.03% 483 514 s510 3.91% 393 409 pma 4.36% 329 344 cse 15.56% 255 302 bw 3.90% 222 231 s386 5.73% 889 943 planet 21.65% 152 194 ex6 10.34% 182 203 5xp1 Improvement Caltech CYCLIFY Berkeley SIS Benchmark
Optimization for Performance (Delay) and Fixed Cost
15.22% 39 1.01% 1079 46 1090 s1494 20.93% 34 2.07% 995 43 1016 s1488 10.53% 34 3.50% 716 38 742 duke2 13.89% 31 4.24% 542 36 566 s1 14.29% 24 1.77% 444 28 452 s510 28.57% 20 9.29% 254 28 280 bw 4.35% 22 14.29% 180 23 210 5xp1 14.71% 29 5.42% 558 34 590 in2 17.50% 33 1.00% 593 40 599 in3 17.65% 14 4.66% 327 17 343 t1 21.05% 15 4.57% 167 19 175 p82 Improvement Delay Improvement Area Delay Area benchmark
Caltech CYCLIFY Berkeley SIS
Cost: number of NAND2/NOR2 gates Delay: 1 time unit/gate
Bio Circuits vs. Combinational Logic Circuits
Joint work with Cook, Soloveichik and Winfree
+ ∧ + ∧ ∨
x y z C S
- Cyclic vs. acyclic (feedback)
- Stochastic vs. deterministic
??
Computing with Systems
- f Chemical Reactions
C B A+
1112 0022 3101 2011 4000
2A D C +
The Reachability Question
Given a system of chemical reactions, and an initial state A (1112). Also given is a state B (4000). Starting at A, can the system of chemical reactions reach B?
- This question is decidable
- The state space is finite!!!
- Originally proved by Karp and Miller 1969
in the context of Vector Addition Systems (VAS)
Stochastic Chemical Reactions
C B A+
1112 0022 3101
2A D C +
The probability for a reaction to happen is a monotonic function in the number of molecules (#A x #B) or (#C x #D)
Stochastic Reachability
Given a system of chemical reactions, and an initial state A. Also given is a state B. Starting at A, is the probability to reach B bigger than 1-small ? Stochastic chemical reactions are Turing universal – with high probability
- This question is undecidable
Stochastic Behavior is a Feature
Probability enables general (‘precise’) computation in biochemical systems!!
Stochastic Behavior is a Feature
Probability enables general (‘precise’) computation in biochemical systems, Proof? Register Machines (Minsky 1967) Register A Register B Programming Unit Infinitely large Idea: Simulate Register Machines with Chemical Reaction Networks Register Machines are universal!! general computing
Marvin Minsky 1927 -
Register Machines
Programming Unit Register Machines (Minsky 1967) Register A Register C Inc(A) – increment A and go to the next instruction Dec(A,k) – if A is not 0, decrement A and go to next instruction
- therwise, if A is 0, go to instruction k
Register B
Register Machines - Example
Inc(A) – increment A and go to the next instruction Dec(A,k) – if A is not 0, decrement A and go to next instruction
- therwise, go to instruction k
1: Dec(A,4) 2: Dec(B,5) 3: Dec(C,1) 4: Inc(C) 5: Inc(C)
- Three registers
- a and b are nonnegative integers
- Let A=a , B=b and c = 0
- What is the program computing?
Register Machines - Example
1: Dec(A,4) 2: Dec(B,5) 3: Dec(C,1) 4: Inc(C) 5: Inc(C)
- Three registers
- a and b are nonnegative integers
- Let A=a , B=b and c = 0
- What is the program computing?
Output of program is in C C=1 a is bigger than b C=2 a is smaller or equal to b
Register Machines - Example
1: Dec(A,4) 2: Dec(B,5) 3: Dec(C,1) 4: Inc(C) 5: Inc(C)
A B C
Register Machines - Example
1: Dec(A,4) 2: Dec(B,5) 3: Dec(C,1) 4: Inc(C) 5: Inc(C)
A B C
Register Machines - Example
1: Dec(A,4) 2: Dec(B,5) 3: Dec(C,1) 4: Inc(C) 5: Inc(C)
A B C Output of program is in C C=1 a is bigger than b C=2 a is smaller or equal to b
Register Machines
Programming Unit Register Machines (Minsky 1967) Register A Register C Inc(A) – increment A and go to the next instruction Dec(A,k) – if A is not 0, decrement A and go to next instruction
- therwise, go to instruction k
Register B Are Universal Idea: Simulate Register Machines with Chemical Reaction Networks
Simulation of Register Machines with CRNs
i: Inc(R) : Si -> R + Si+1 i: Dec(R,k): R + Si -> Si+1 If R=0 then Si -> Sk Inc(A) – increment A and go to the next instruction Dec(A,k) – if A is not 0, decrement A and go to next instruction
- therwise, go to instruction k
Compiler RM to CRN
Simulation of Register Machines with CRNs
i: Inc(R) : Si -> R + Si+1 i: Dec(R,k): R + Si -> Si+1 If R=0 then Si -> Sk
1: Dec(A,4) 2: Dec(B,5) 3: Dec(C,1) 4: Inc(C) 5: Inc(C) A + S1 -> S2 S1 -> S4 B + S2 -> S3 S2 -> S5 C + S3 -> S4 S3 -> S1 S4 -> C + S5 S5 -> C + S6
Simulation of Register Machines with CRNs
i: Inc(R) : Si -> R + Si+1 i: Dec(R,k): R + Si -> Si+1 If R=0 then Si -> Sk
1: Dec(A,4) 2: Dec(B,5) 3: Dec(C,1) 4: Inc(C) 5: Inc(C) A + S1 -> S2 S1 -> S4 B + S2 -> S3 S2 -> S5 C + S3 -> S4 S3 -> S1 S4 -> C + S5 S5 -> C + S6
A Problem: This reaction can happen even if R is not zero…..
Simulation of Register Machines with CRNs
i: Inc(R) : Si -> R + Si+1 i: Dec(R,k): R + Si -> Si+1 If R=0 then Si -> Sk
1: Dec(A,4) 2: Dec(B,5) 3: Dec(C,1) 4: Inc(C) 5: Inc(C) A + S1 -> S2 S1 -> S4 B + S2 -> S3 S2 -> S5 C + S3 -> S4 S3 -> S1 S4 -> C + S5 S5 -> C + S6
The solution: Delay this reaction using a “stochastic clock”
Simulation of Register Machines with CRNs
i: Inc(R) : Si -> R + Si+1 i: Dec(R,k): R + Si -> Si+1 If R=0 then Si -> Sk Delay this reaction using a “stochastic clock” When R>0, it is less likely to happen. DEC (R,i) Case 1: R=0 Si -> Sk with probability 1 Case 2: R>0 Si -> Sk with small probability R + Si -> Si+1 with probability close to 1
Stochastic Behavior is a Feature
Probability enables general (‘precise’) computation in biochemical systems!!
??
Is it a Feature or a Bug?
- Stochastic vs. deterministic
Probability enables universal computation in chemical reaction networks
(Cook, Soloveichik, Winfree, Bruck, 2005)
- Cyclic vs. acyclic
Cycles enable cost savings in real combinational circuits
(Riedel & Bruck 2003)
Current / future work:
- Relations vs. functions?
- The logic of computing probability distributions?
??
Shannon 1916-2001 Turing 1912-1954 Leibniz 1646-1716 Boole 1815-1864
- Logic and
Binary system
- Calculus
Connected Logic with Algebra Boolean Algebra Logical Calculation Defined Computing via universal machines Computer Science
- Connected Boolean
Algebra to Electrical Circuits Logic Design
- Connected probability
to Communications Information Theory
Calculus for Biology??
We need to learn / teach about abstract systems for reasoning about information
Emil Post 1897-1954
Compositions of Boolean functions Universal Algebra