Fibonacci Sequence
Context: FIT1058_MOC, FIT2004_MOC · a two-term recurrence with no obvious closed form · bounded by Mathematical Induction · closed form built from a quadratic’s roots FIT2004 use: §4 and the Proof Blueprint (Applied 2 P7) — the matrix identity and the doubling identities that turn the naive recursion into a halving one ➔ Analysing Recursive Algorithms (Time and Auxiliary Space)
Quick Revision
- 🎯 Objective: ➔ .
- 📦 Core Components: two base cases ➔ strong induction bounds ➔ Binet closed form ➔ matrix/doubling identities.
- ⚡ Key Constraint: , ; the exact formula needs both roots of .
📝 Core
1. The Recurrence
- Definition ➔ , (); two base cases because the rule only applies for .
2. Bounding by Induction
- Upper ➔ (basis ; step ).
- Lower ➔ ( chosen so both bases hold).
- Sharp ➔ , .
3. Exact (Binet) Formula
- Characteristic ➔ roots of : , .
- Form ➔ , matched by :
4. Matrix Form and the Doubling Identities (FIT2004)
- ⚠️ Indexing shifts here ➔ FIT2004 uses , ; FIT1058 starts at . They agree for , but a proof written in the wrong convention fails its own base case.
- The matrix identity ➔ one matrix power encodes two consecutive Fibonacci numbers:
- Doubling falls out of ➔ squaring the RHS and reading off entries:
- The elimination step is the marked one ➔ the required identity contains no , so rearranging the defining recurrence and substituting is what closes the derivation.
- Why an algorithms unit cares ➔ both identities express index via index , halving the index each step ⟹ depth against the naive recurrence’s depth and time. Same move as
power_fast: divide the parameter instead of decrementing it. - appears twice in each identity ➔ compute it once and reuse it, or the halving is spent on a binary call tree and the win evaporates ➔ the duplicate-call trap in Analysing Recursive Algorithms (Time and Auxiliary Space).
🧮 Proof Blueprint — the matrix identity by induction
Theorem. for all , where and . Strategy. Induction on ; peel one factor off the power, invoke the hypothesis, let the defining recurrence re-fold the entries.
Base case ():
Inductive step. Assume for some :
- The whole proof is one factorisation ➔ writing creates the place for the hypothesis; expanding directly leaves nothing to substitute into.
- The recurrence does the re-folding ➔ every product entry is a sum of two consecutive Fibonacci numbers, so converts it back to -shape.
⚖️ Core Decision Matrix
| Goal | Roots used | Base cases matched |
|---|---|---|
| upper bound | only | one (inequality) |
| lower bound | only | one |
| exact Binet | and | two (equality) |
| growth |
When It Flips: a bound of form needs (one free constant, one base case); an exact formula needs equality and both roots (two constants, two base cases). can't be a bound but is essential in Binet. Ratio (golden ratio).
📊 Exam Execution Trace
Applied Exercise
Problem: Compute and verify Binet at . Final Extracted Output: from both recurrence and Binet.
⚠️ Common Mistakes
- 💡 Two base cases required ➔ the step uses the hypothesis at and (strong induction), so must be checked separately.
- 💡 Mixing the two indexing conventions ➔ the matrix identity’s base case reads in the bottom-right corner; carrying into it makes wrong and the induction unprovable.
- 💡 Expanding instead of factorising it ➔ the hypothesis can only be invoked once appears literally.
🧠 Active Recall
The doubling identities express and via and . Why is that an algorithmic result, not just an algebraic curiosity?
- Hint: Compare how the index moves against the naive recurrence.
Answer
- Short answer: the naive recurrence decrements the index and branches, giving depth and time; the doubling identities halve it, so depth drops to .
- Why: Divide the parameter, don’t decrement it ➔ the same shift that separates
powerfrompower_fast, and it only pays off if the repeated term is computed once and reused — otherwise the halved depth is refilled by a binary call tree.
Why do bounds need only one root but Binet needs both — and why does require two base cases?
- Hint: Inequality vs equality; strong induction.
Answer
- Short answer: a bound has one free constant matched by one base case (inequality); an exact formula matches two base cases with equality, needing both roots. The induction itself uses the hypothesis at and , so are both checked.
- Why: ➔ breaks the basis as a bound but is indispensable in Binet; and a two-predecessor recurrence needs two anchors before the step can fire.