Math 8803/4803, Spring 2008: Discrete Mathematical Biology
Transcript of Math 8803/4803, Spring 2008: Discrete Mathematical Biology
Math 8803/4803, Spring 2008:Discrete Mathematical Biology
Prof. Christine Heitsch
School of Mathematics
Georgia Institute of Technology
Lecture 2 – January 9, 2008
Overview
• Today: (an incomplete) mathematical primer
– Numbers in nature – integer sequences, recurrence relations,
mathematical induction, algorithms and computational
complexity, recursion, dynamic programming
– Shapes in nature – graphs and trees, Platonic solids, Euler
circuit / trail, Hamiltonian cycle / path
– Missing in action – strings, permutations, binomial
coefficients, pigeonhole principle, generating functions,. . .
• Friday:(an incomplete) biological primer
C. E. Heitsch, GA Tech 1
Phyllotaxis: optimizing seed dispersal
Cauliflower Pine cone Romanesco
Bellis perennis Coneflower Sunflower
C. E. Heitsch, GA Tech 2
Counting left and right spirals
Pine cone 8 right spirals 13 left spirals
Romanesco 13 right spirals 21 left spirals
C. E. Heitsch, GA Tech 3
Is there a pattern?
5 and 8 spirals 8 and 13 spirals 13 and 21 spirals
21 and 34 spirals 34 and 55 spirals 55 and 89 spirals
C. E. Heitsch, GA Tech 4
Enumerating Oryctolagus cuniculus
In 1202, Leonardo Fibonacci asked. . .
How many pairs of rabbits can be produced from a single pair inone year if it is assumed that every month each pair begets anew pair which from the second month on becomes productive?
C. E. Heitsch, GA Tech 5
The Fibonacci sequence fn
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987 . . .
Defined as the recurrence relation fn = fn−1 + fn−2 for n ≥ 2with initial conditions f0 = 0, f1 = 1.
This (second order linear homogeneous recurrence relation with constant coefficients) can
be solved using the characteristic equation r2 − r − 1 = 0 to give
fn = 1√5
[(1+√
52
)n
−(
1−√
52
)n], n ≥ 0.
Even without this closed form solution, many properties of fn can
be proved using mathematical induction.
C. E. Heitsch, GA Tech 6
Some properties of fn
Claim: For all n ≥ 6, fn > (32)
n−1.
Two more “for the interested reader”. . .
Claim: Every integer n ≥ 1 can be expressed as the sum of
distinct Fibonacci numbers, no two of which are consecutive.
Claim: The representation from the previous claim is unique
if f1 is not allowed as a summand.
C. E. Heitsch, GA Tech 7
Proof by induction
Claim: For all n ≥ 6, fn > (32)
n−1.
Proof:
Let S(n) be the statement fn > (32)
n−1.
Base cases: For n = 6, fn = 8 and (32)
n−1 = 24332 . For n = 7, fn = 13 and
(32)
n−1 = 72964 . So, f6 > (3
2)5 and f7 > (3
2)6.
Assume that for all integers n with 7 ≤ n ≤ k that fn > (32)
n−1.
Consider n = k + 1. Then fk+1 = fk + fk−1 > (32)
k−1 + (32)
k−2 = (32)
k−2(52).
Since 52 > 9
4, we have fk+1 > (32)
k−2(32)
2 = (32)
k.
So, by the Principle of Mathematical Induction, S(n) is true for all n ≥ 6.
C. E. Heitsch, GA Tech 8
Algorithms and computational complexity
The amount of resources used by an algorithm (an unambiguously
specified procedure) to solve a problem is an important consideration.
Typical algorithmic resources are space (memory) and time.
Polynomial time/space algorithms are efficient (good);
exponential space/time algorithms are intractable (bad).
C. E. Heitsch, GA Tech 9
An obvious recursive algorithm
Fibonacci[n]
if (n = 0) then return (0)
if (n = 1) then return (1)
else return(Fibonacci[n-1]+Fibonacci[n-2])
F3
F0
F2
F1
F1F0
F2
F1
F5
F3
F0
F2
F1
F1
F4
What is the complexity of this algorithm?
C. E. Heitsch, GA Tech 10
“Dynamic Programming”
Fibonacci[n]
if (n = 0) then return (0)
if (n = 1) then return (1)
else
F0 = 0
F1 = 1
For i = 1 to n, Fi = Fi−1 + Fi−2
What is the complexity of this algorithm?
In general, trading space for time to solve a recursion.
C. E. Heitsch, GA Tech 11
Folded RNA sequences form structures
Johnson et al. J Virol, 2004. Tihova et al. J Virol, 2004. Tang et al. Nat Str B, 2001.
How does the PaV RNA genome fold into a dodecahedral cage?
C. E. Heitsch, GA Tech 12
Platonic Solids
C. E. Heitsch, GA Tech 13
Some Graph Theory
A graph G is a set of vertices V , a set of edges E, and a mapping whichassociates each edge e ∈ E to an unordered pair of vertices {x, y} for x, y ∈ V .
A weighted graph G has a real number associated to each edge e.
A simple closed path is a walk in a graph G which begins and ends at the same vertex but is
otherwise a sequence of distinct vertices and distinct edges.
A connected graph that contains no nontrivial simple closed paths is a tree.
A rooted tree has a unique identified vertex (the root).
A child of a (parent) vertex is a vertex one edge farther away from the root.
A subtree of a vertex in a rooted tree is a child and all its descendents.
C. E. Heitsch, GA Tech 14
Bridges of Konigsberg
C
A
B
D
dc
a b
g
e
f
Is there an Euler circuit? Is there a Hamiltonian cycle?
C. E. Heitsch, GA Tech 15
Acknowledgements
• Plant Spirals Exhibit, Smith College Botanic Gardenhttp://maven.smith.edu/∼phyllo/EXPO/index.html
• Fibonacci Numbers and Naturehttp://www.mcs.surrey.ac.uk/Personal/R.Knott/Fibonacci/fibnat.html
C. E. Heitsch, GA Tech 16