diff --git a/.obsidian/workspace.json b/.obsidian/workspace.json index 8aa3f92..d810d01 100644 --- a/.obsidian/workspace.json +++ b/.obsidian/workspace.json @@ -48,9 +48,23 @@ "icon": "lucide-file", "title": "Counting" } + }, + { + "id": "671950d3401db17a", + "type": "leaf", + "state": { + "type": "markdown", + "state": { + "file": "DAS/Arithmetic.md", + "mode": "source", + "source": false + }, + "icon": "lucide-file", + "title": "Arithmetic" + } } ], - "currentTab": 2 + "currentTab": 3 } ], "direction": "vertical" @@ -208,10 +222,11 @@ "obsidian-git:Open Git source control": false } }, - "active": "7a0e7b37bd89861d", + "active": "671950d3401db17a", "lastOpenFiles": [ "DAS/Functions.md", "DAS/Counting.md", + "DAS/Arithmetic.md", "DAS/Relations.md", "DAS/Logic.md", "DAS/Set Theory.md", diff --git a/DAS/Arithmetic.md b/DAS/Arithmetic.md new file mode 100644 index 0000000..2b4587e --- /dev/null +++ b/DAS/Arithmetic.md @@ -0,0 +1,34 @@ +## Asymptotic Equivalence Classes (Big-O) + +The equivalence relation definition given in the task is asking you to find functions that grow at the exact same rate (also known as Big-Theta $\Theta$): + +$f asymp g <==> f in O(g) and g in O(f)$ + +Notation of $f in O(g)$ means "function $f$ doesn't grow faster than $g$" + +### The "Dominant Term" Rule +To find which class a function belongs to, simplify it to its core growth rate: +1. **Drop all lower-order terms:** In $n^3 + n^2$, drop the $n^2$. +2. **Drop all constant multipliers:** $5n^2$ and $1000n^2$ both become just $n^2$. +3. **Identify the highest rank:** Factorials ($n!$) > Exponentials ($2^n$, $e^n$) > Polynomials ($n^3$, $n^2$) > Linear ($n$) > Logarithmic ($log n$) > Constant ($1$). + +## Euclidian Algorithm +Purpose is to find the **GCD** (Greatest Common Divisor). + +### Core Rule +Fill out this formula: +$$"Dividend" = ("Quotient" * "Divisor") + "Remainder"$$ +1. **Divide** the bigger number by the smaller one +2. **How many times** does it fit -> $"Quotient"$ +3. Find out **whats leftover** -> $"Remainder"$ +4. **Shift to left** and repeat ($"Old Divisor" -> "Dividend"$, $"Remainder" -> "Divisor"$) + +Result is the last $"Remainder"$ that is not $0$. + +### Bezout Coefficients +**Goal:** find a $x$ and $y$ so that $"Divident" * x + "Divisor" * y = gcd("Dividend", "Divisor")$ + +1. **Rewrite Euclid (above) equations** to solve for remainder ($"Remainder" = "Old Remainder" - "Dividend" * "Divisor"$) +2. **Substitute remainders** -> $$ + +