mirror of
https://github.com/HananoshikaYomaru/openfreebooks.git
synced 2026-11-12 20:45:52 +00:00
Enhance chapter content and metadata: Update SKILL.md to include requirements for chart axes in all widgets. Implement axis labels, arrowheads, and graduations in the simultaneous graph explorer widget. Update math curriculum JSON to reflect the status change of multiple chapters to live. Add last modified timestamps to chapter templates and generate corresponding metadata for improved site navigation and SEO.
This commit is contained in:
parent
353b129533
commit
eee5d109d5
31 changed files with 3093 additions and 17 deletions
|
|
@ -50,6 +50,7 @@ bun run build # production: JS + Zola + pagefind → public/
|
|||
| Chapter URLs | `/{subjectId}/{chapter-slug}/` (e.g. `/math/quadratic-equations/`) |
|
||||
| Map | Mermaid DAG view (`?view=tree`) driven by `graph.edges` |
|
||||
| Graph | `graph.edges` must be **acyclic**; builder throws on cycles |
|
||||
| Chart axes (all widgets) | Every coordinate chart must render **x/y axis labels, positive-direction arrowheads, and visible graduations (ticks + scale labels)**. Apply this consistently across all subjects/widgets. |
|
||||
| Accessibility | Avoid decorative characters that may render as emoji on mobile. Prefer broadly supported symbols/text so desktop and mobile stay visually consistent. |
|
||||
|
||||
## Common tasks → where to edit
|
||||
|
|
@ -130,6 +131,8 @@ Live chapters live under `content/{subject}/{slug}/`:
|
|||
|
||||
**Checkpoints (all subjects):** use `book-question`, `book-question__prompt`, `book-question__solution` (styled in theme `_book.scss`). Never use `book-question__answer`.
|
||||
|
||||
**Charts (all subjects):** coordinate charts in chapter widgets must include axis labels, arrowheads, and graduation/tick scale by default. Do not ship unlabeled axes.
|
||||
|
||||
**Math checkpoints / dots:** follow [math-chapter-patterns.md](math-chapter-patterns.md); shared dot classes in `content/math/subject.scss`.
|
||||
|
||||
Reference: `content/math/quadratic-equations/`.
|
||||
|
|
|
|||
228
content/math/complex-numbers/_index.md
Normal file
228
content/math/complex-numbers/_index.md
Normal file
|
|
@ -0,0 +1,228 @@
|
|||
+++
|
||||
title = "Complex numbers"
|
||||
description = "Represent complex numbers in Cartesian form and perform operations including conjugates and division."
|
||||
template = "chapter.html"
|
||||
weight = 14
|
||||
[extra]
|
||||
subject = "math"
|
||||
chapter_id = "complex-numbers"
|
||||
strand = "Number & Algebra"
|
||||
+++
|
||||
|
||||
<div class="book-prose">
|
||||
<p>
|
||||
<strong>Complex numbers</strong> extend the real number system so equations like
|
||||
\(x^2+1=0\) can be solved. In high school, you usually write a complex number in
|
||||
<strong>Cartesian form</strong>:
|
||||
\[
|
||||
z = a + bi,
|
||||
\]
|
||||
where \(a,b\in\mathbb{R}\) and \(i^2=-1\).
|
||||
</p>
|
||||
|
||||
<h2 id="imaginary-unit" class="book-prose__heading">The imaginary unit \(i\)</h2>
|
||||
<div class="book-callout book-callout--formula" role="note">
|
||||
<p class="book-callout__label">Definition</p>
|
||||
<p class="book-formula">\[ i^2 = -1 \]</p>
|
||||
</div>
|
||||
<p>
|
||||
Useful cycle:
|
||||
\[
|
||||
i^1=i,\quad i^2=-1,\quad i^3=-i,\quad i^4=1,
|
||||
\]
|
||||
and then the pattern repeats every 4 powers.
|
||||
</p>
|
||||
|
||||
<h2 id="cartesian-form" class="book-prose__heading">Real and imaginary parts</h2>
|
||||
<p>
|
||||
For \(z=a+bi\):
|
||||
</p>
|
||||
<ul>
|
||||
<li>\(\Re(z)=a\) (real part)</li>
|
||||
<li>\(\Im(z)=b\) (imaginary coefficient)</li>
|
||||
</ul>
|
||||
<p><strong>Example.</strong> If \(z=3-4i\), then \(\Re(z)=3\), \(\Im(z)=-4\).</p>
|
||||
|
||||
<h2 id="operations" class="book-prose__heading">Basic operations</h2>
|
||||
<p>
|
||||
Add/subtract by combining like terms:
|
||||
</p>
|
||||
<p class="book-formula">
|
||||
\[
|
||||
(a+bi)\pm(c+di)=(a\pm c)+(b\pm d)i.
|
||||
\]
|
||||
</p>
|
||||
<p>
|
||||
Multiply using expansion and \(i^2=-1\):
|
||||
</p>
|
||||
<p class="book-formula">
|
||||
\[
|
||||
(a+bi)(c+di)=ac+adi+bci+bd\,i^2=(ac-bd)+(ad+bc)i.
|
||||
\]
|
||||
</p>
|
||||
<p><strong>Example.</strong> \((2+3i)(1-4i)=2-8i+3i-12i^2=14-5i.\)</p>
|
||||
|
||||
<h2 id="conjugate" class="book-prose__heading">Conjugate and modulus</h2>
|
||||
<p>
|
||||
The conjugate of \(z=a+bi\) is
|
||||
\[
|
||||
\overline{z}=a-bi.
|
||||
\]
|
||||
Multiplying by conjugates removes imaginary parts:
|
||||
\[
|
||||
z\overline{z}=(a+bi)(a-bi)=a^2+b^2.
|
||||
\]
|
||||
</p>
|
||||
<p>
|
||||
The modulus (distance from origin in Argand plane) is:
|
||||
\[
|
||||
|z|=\sqrt{a^2+b^2}.
|
||||
\]
|
||||
</p>
|
||||
<p><strong>Example.</strong> For \(z=3-4i\), \(\overline{z}=3+4i\), \(|z|=5\).</p>
|
||||
|
||||
<h2 id="division" class="book-prose__heading">Division in Cartesian form</h2>
|
||||
<p>
|
||||
To divide by \(c+di\), multiply top and bottom by \(c-di\):
|
||||
</p>
|
||||
<p class="book-formula">
|
||||
\[
|
||||
\frac{a+bi}{c+di}
|
||||
=\frac{(a+bi)(c-di)}{(c+di)(c-di)}
|
||||
=\frac{(a+bi)(c-di)}{c^2+d^2}.
|
||||
\]
|
||||
</p>
|
||||
<p><strong>Example.</strong> \(\dfrac{1+2i}{3-i}\):</p>
|
||||
<p>
|
||||
\[
|
||||
\frac{1+2i}{3-i}\cdot\frac{3+i}{3+i}
|
||||
=\frac{(1+2i)(3+i)}{10}
|
||||
=\frac{1+7i}{10}
|
||||
=\frac{1}{10}+\frac{7}{10}i.
|
||||
\]
|
||||
</p>
|
||||
|
||||
<h2 id="argand-plane" class="book-prose__heading">Argand plane (graph view)</h2>
|
||||
<p>
|
||||
Plot \(z=a+bi\) as the point \((a,b)\): horizontal axis is real part, vertical axis is
|
||||
imaginary part. This lets you interpret \(|z|\) as geometric distance.
|
||||
</p>
|
||||
|
||||
<h2 id="solving-quadratics" class="book-prose__heading">Why this matters: solving quadratics</h2>
|
||||
<p>
|
||||
If \(x^2+4=0\), then \(x^2=-4\), so
|
||||
\[
|
||||
x=\pm 2i.
|
||||
\]
|
||||
Complex numbers ensure every quadratic has two roots (counting multiplicity), and later this
|
||||
extends to all polynomial equations.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="book-prose">
|
||||
<h2 id="history" class="book-prose__heading">History</h2>
|
||||
<p>
|
||||
Complex numbers first appeared when mathematicians tried to solve cubic equations in the
|
||||
16th century. Algebraic formulas sometimes produced square roots of negative numbers, even when
|
||||
final answers were real.
|
||||
</p>
|
||||
<p>
|
||||
Mathematicians like <strong>Cardano</strong>, <strong>Bombelli</strong>, and later
|
||||
<strong>Euler</strong> developed rules for these numbers. What began as a formal trick became a
|
||||
major mathematical system used in engineering, physics, and signal processing.
|
||||
</p>
|
||||
|
||||
<h2 id="derivation" class="book-prose__heading">Derivation</h2>
|
||||
<h3 id="why-conjugate-works" class="book-prose__heading">Why the conjugate removes \(i\) in denominators</h3>
|
||||
<p>
|
||||
For \(c+di\):
|
||||
\[
|
||||
(c+di)(c-di)=c^2-d^2i^2=c^2+d^2,
|
||||
\]
|
||||
which is real and positive (unless \(c=d=0\)). This is why multiplying by conjugates converts
|
||||
complex division into standard real-number division.
|
||||
</p>
|
||||
|
||||
<h3 id="modulus-link" class="book-prose__heading">Why \(|z|^2=z\overline{z}\)</h3>
|
||||
<p>
|
||||
For \(z=a+bi\):
|
||||
\[
|
||||
z\overline{z}=(a+bi)(a-bi)=a^2+b^2=|z|^2.
|
||||
\]
|
||||
So modulus is directly linked to conjugation and the Pythagorean distance in the Argand plane.
|
||||
</p>
|
||||
|
||||
<h2 id="checkpoints" class="book-prose__heading">Checkpoints</h2>
|
||||
<p>
|
||||
Pause and reason before continuing. Discuss with a classmate or write your reasoning in a
|
||||
notebook.
|
||||
</p>
|
||||
|
||||
<div class="book-callout" role="note">
|
||||
<p class="book-callout__label">Checkpoint</p>
|
||||
<p>
|
||||
Simplify \(i^{23}\) using the 4-step power cycle.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="book-callout" role="note">
|
||||
<p class="book-callout__label">Checkpoint</p>
|
||||
<p>
|
||||
Compute \((4-3i)+(2+5i)\) and \((4-3i)-(2+5i)\).
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="book-callout" role="note">
|
||||
<p class="book-callout__label">Checkpoint</p>
|
||||
<p>
|
||||
Expand and simplify \((1+2i)(3-i)\) into \(a+bi\) form.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="book-callout" role="note">
|
||||
<p class="book-callout__label">Checkpoint</p>
|
||||
<p>
|
||||
Find \(\overline{z}\) and \(|z|\) when \(z=-5+12i\).
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="book-callout" role="note">
|
||||
<p class="book-callout__label">Checkpoint</p>
|
||||
<p>
|
||||
Write \(\dfrac{2-i}{1+3i}\) in \(a+bi\) form.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="book-callout" role="note">
|
||||
<p class="book-callout__label">Checkpoint</p>
|
||||
<p>
|
||||
Solve \(x^2-6x+13=0\). Why are the roots complex?
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<h2 id="applications" class="book-prose__heading">Applications</h2>
|
||||
<h3 id="ac-circuits" class="book-prose__heading">AC circuits and impedance</h3>
|
||||
<p>
|
||||
Electrical engineers model alternating-current circuits with complex numbers because amplitude
|
||||
and phase are naturally represented together as one complex quantity.
|
||||
</p>
|
||||
|
||||
<h3 id="waves-signals" class="book-prose__heading">Waves and signals</h3>
|
||||
<p>
|
||||
Sound, radio, and image-processing systems use complex numbers to describe oscillations and
|
||||
frequency content efficiently (e.g., Fourier methods).
|
||||
</p>
|
||||
|
||||
<h3 id="rotation-geometry" class="book-prose__heading">Geometry and rotations</h3>
|
||||
<p>
|
||||
Multiplying by certain complex numbers corresponds to rotating and scaling points in the plane,
|
||||
making complex numbers useful in geometry and computer graphics.
|
||||
</p>
|
||||
|
||||
<h2 id="references" class="book-prose__heading">References</h2>
|
||||
<ul>
|
||||
<li>Bombelli, R. (1572). <em>L'Algebra</em> (early systematic rules for imaginary numbers).</li>
|
||||
<li>Euler, L. (18th century works) connecting complex numbers with trigonometry and exponentials.</li>
|
||||
<li>Standard high-school extension algebra curricula on Cartesian form, conjugates, and division.</li>
|
||||
</ul>
|
||||
</div>
|
||||
109
content/math/complex-numbers/core.html
Normal file
109
content/math/complex-numbers/core.html
Normal file
|
|
@ -0,0 +1,109 @@
|
|||
<div class="book-prose">
|
||||
<p>
|
||||
<strong>Complex numbers</strong> extend the real number system so equations like
|
||||
\(x^2+1=0\) can be solved. In high school, you usually write a complex number in
|
||||
<strong>Cartesian form</strong>:
|
||||
\[
|
||||
z = a + bi,
|
||||
\]
|
||||
where \(a,b\in\mathbb{R}\) and \(i^2=-1\).
|
||||
</p>
|
||||
|
||||
<h2 id="imaginary-unit" class="book-prose__heading">The imaginary unit \(i\)</h2>
|
||||
<div class="book-callout book-callout--formula" role="note">
|
||||
<p class="book-callout__label">Definition</p>
|
||||
<p class="book-formula">\[ i^2 = -1 \]</p>
|
||||
</div>
|
||||
<p>
|
||||
Useful cycle:
|
||||
\[
|
||||
i^1=i,\quad i^2=-1,\quad i^3=-i,\quad i^4=1,
|
||||
\]
|
||||
and then the pattern repeats every 4 powers.
|
||||
</p>
|
||||
|
||||
<h2 id="cartesian-form" class="book-prose__heading">Real and imaginary parts</h2>
|
||||
<p>
|
||||
For \(z=a+bi\):
|
||||
</p>
|
||||
<ul>
|
||||
<li>\(\Re(z)=a\) (real part)</li>
|
||||
<li>\(\Im(z)=b\) (imaginary coefficient)</li>
|
||||
</ul>
|
||||
<p><strong>Example.</strong> If \(z=3-4i\), then \(\Re(z)=3\), \(\Im(z)=-4\).</p>
|
||||
|
||||
<h2 id="operations" class="book-prose__heading">Basic operations</h2>
|
||||
<p>
|
||||
Add/subtract by combining like terms:
|
||||
</p>
|
||||
<p class="book-formula">
|
||||
\[
|
||||
(a+bi)\pm(c+di)=(a\pm c)+(b\pm d)i.
|
||||
\]
|
||||
</p>
|
||||
<p>
|
||||
Multiply using expansion and \(i^2=-1\):
|
||||
</p>
|
||||
<p class="book-formula">
|
||||
\[
|
||||
(a+bi)(c+di)=ac+adi+bci+bd\,i^2=(ac-bd)+(ad+bc)i.
|
||||
\]
|
||||
</p>
|
||||
<p><strong>Example.</strong> \((2+3i)(1-4i)=2-8i+3i-12i^2=14-5i.\)</p>
|
||||
|
||||
<h2 id="conjugate" class="book-prose__heading">Conjugate and modulus</h2>
|
||||
<p>
|
||||
The conjugate of \(z=a+bi\) is
|
||||
\[
|
||||
\overline{z}=a-bi.
|
||||
\]
|
||||
Multiplying by conjugates removes imaginary parts:
|
||||
\[
|
||||
z\overline{z}=(a+bi)(a-bi)=a^2+b^2.
|
||||
\]
|
||||
</p>
|
||||
<p>
|
||||
The modulus (distance from origin in Argand plane) is:
|
||||
\[
|
||||
|z|=\sqrt{a^2+b^2}.
|
||||
\]
|
||||
</p>
|
||||
<p><strong>Example.</strong> For \(z=3-4i\), \(\overline{z}=3+4i\), \(|z|=5\).</p>
|
||||
|
||||
<h2 id="division" class="book-prose__heading">Division in Cartesian form</h2>
|
||||
<p>
|
||||
To divide by \(c+di\), multiply top and bottom by \(c-di\):
|
||||
</p>
|
||||
<p class="book-formula">
|
||||
\[
|
||||
\frac{a+bi}{c+di}
|
||||
=\frac{(a+bi)(c-di)}{(c+di)(c-di)}
|
||||
=\frac{(a+bi)(c-di)}{c^2+d^2}.
|
||||
\]
|
||||
</p>
|
||||
<p><strong>Example.</strong> \(\dfrac{1+2i}{3-i}\):</p>
|
||||
<p>
|
||||
\[
|
||||
\frac{1+2i}{3-i}\cdot\frac{3+i}{3+i}
|
||||
=\frac{(1+2i)(3+i)}{10}
|
||||
=\frac{1+7i}{10}
|
||||
=\frac{1}{10}+\frac{7}{10}i.
|
||||
\]
|
||||
</p>
|
||||
|
||||
<h2 id="argand-plane" class="book-prose__heading">Argand plane (graph view)</h2>
|
||||
<p>
|
||||
Plot \(z=a+bi\) as the point \((a,b)\): horizontal axis is real part, vertical axis is
|
||||
imaginary part. This lets you interpret \(|z|\) as geometric distance.
|
||||
</p>
|
||||
|
||||
<h2 id="solving-quadratics" class="book-prose__heading">Why this matters: solving quadratics</h2>
|
||||
<p>
|
||||
If \(x^2+4=0\), then \(x^2=-4\), so
|
||||
\[
|
||||
x=\pm 2i.
|
||||
\]
|
||||
Complex numbers ensure every quadratic has two roots (counting multiplicity), and later this
|
||||
extends to all polynomial equations.
|
||||
</p>
|
||||
</div>
|
||||
107
content/math/complex-numbers/supplement.html
Normal file
107
content/math/complex-numbers/supplement.html
Normal file
|
|
@ -0,0 +1,107 @@
|
|||
<div class="book-prose">
|
||||
<h2 id="history" class="book-prose__heading">History</h2>
|
||||
<p>
|
||||
Complex numbers first appeared when mathematicians tried to solve cubic equations in the
|
||||
16th century. Algebraic formulas sometimes produced square roots of negative numbers, even when
|
||||
final answers were real.
|
||||
</p>
|
||||
<p>
|
||||
Mathematicians like <strong>Cardano</strong>, <strong>Bombelli</strong>, and later
|
||||
<strong>Euler</strong> developed rules for these numbers. What began as a formal trick became a
|
||||
major mathematical system used in engineering, physics, and signal processing.
|
||||
</p>
|
||||
|
||||
<h2 id="derivation" class="book-prose__heading">Derivation</h2>
|
||||
<h3 id="why-conjugate-works" class="book-prose__heading">Why the conjugate removes \(i\) in denominators</h3>
|
||||
<p>
|
||||
For \(c+di\):
|
||||
\[
|
||||
(c+di)(c-di)=c^2-d^2i^2=c^2+d^2,
|
||||
\]
|
||||
which is real and positive (unless \(c=d=0\)). This is why multiplying by conjugates converts
|
||||
complex division into standard real-number division.
|
||||
</p>
|
||||
|
||||
<h3 id="modulus-link" class="book-prose__heading">Why \(|z|^2=z\overline{z}\)</h3>
|
||||
<p>
|
||||
For \(z=a+bi\):
|
||||
\[
|
||||
z\overline{z}=(a+bi)(a-bi)=a^2+b^2=|z|^2.
|
||||
\]
|
||||
So modulus is directly linked to conjugation and the Pythagorean distance in the Argand plane.
|
||||
</p>
|
||||
|
||||
<h2 id="checkpoints" class="book-prose__heading">Checkpoints</h2>
|
||||
<p>
|
||||
Pause and reason before continuing. Discuss with a classmate or write your reasoning in a
|
||||
notebook.
|
||||
</p>
|
||||
|
||||
<div class="book-callout" role="note">
|
||||
<p class="book-callout__label">Checkpoint</p>
|
||||
<p>
|
||||
Simplify \(i^{23}\) using the 4-step power cycle.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="book-callout" role="note">
|
||||
<p class="book-callout__label">Checkpoint</p>
|
||||
<p>
|
||||
Compute \((4-3i)+(2+5i)\) and \((4-3i)-(2+5i)\).
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="book-callout" role="note">
|
||||
<p class="book-callout__label">Checkpoint</p>
|
||||
<p>
|
||||
Expand and simplify \((1+2i)(3-i)\) into \(a+bi\) form.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="book-callout" role="note">
|
||||
<p class="book-callout__label">Checkpoint</p>
|
||||
<p>
|
||||
Find \(\overline{z}\) and \(|z|\) when \(z=-5+12i\).
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="book-callout" role="note">
|
||||
<p class="book-callout__label">Checkpoint</p>
|
||||
<p>
|
||||
Write \(\dfrac{2-i}{1+3i}\) in \(a+bi\) form.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="book-callout" role="note">
|
||||
<p class="book-callout__label">Checkpoint</p>
|
||||
<p>
|
||||
Solve \(x^2-6x+13=0\). Why are the roots complex?
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<h2 id="applications" class="book-prose__heading">Applications</h2>
|
||||
<h3 id="ac-circuits" class="book-prose__heading">AC circuits and impedance</h3>
|
||||
<p>
|
||||
Electrical engineers model alternating-current circuits with complex numbers because amplitude
|
||||
and phase are naturally represented together as one complex quantity.
|
||||
</p>
|
||||
|
||||
<h3 id="waves-signals" class="book-prose__heading">Waves and signals</h3>
|
||||
<p>
|
||||
Sound, radio, and image-processing systems use complex numbers to describe oscillations and
|
||||
frequency content efficiently (e.g., Fourier methods).
|
||||
</p>
|
||||
|
||||
<h3 id="rotation-geometry" class="book-prose__heading">Geometry and rotations</h3>
|
||||
<p>
|
||||
Multiplying by certain complex numbers corresponds to rotating and scaling points in the plane,
|
||||
making complex numbers useful in geometry and computer graphics.
|
||||
</p>
|
||||
|
||||
<h2 id="references" class="book-prose__heading">References</h2>
|
||||
<ul>
|
||||
<li>Bombelli, R. (1572). <em>L'Algebra</em> (early systematic rules for imaginary numbers).</li>
|
||||
<li>Euler, L. (18th century works) connecting complex numbers with trigonometry and exponentials.</li>
|
||||
<li>Standard high-school extension algebra curricula on Cartesian form, conjugates, and division.</li>
|
||||
</ul>
|
||||
</div>
|
||||
262
content/math/exponential-logarithmic/_index.md
Normal file
262
content/math/exponential-logarithmic/_index.md
Normal file
|
|
@ -0,0 +1,262 @@
|
|||
+++
|
||||
title = "Exponential & logarithmic functions"
|
||||
description = "Use exponential and logarithmic models, apply log laws, and solve growth and decay equations."
|
||||
template = "chapter.html"
|
||||
weight = 16
|
||||
[extra]
|
||||
subject = "math"
|
||||
chapter_id = "exponential-logarithmic"
|
||||
strand = "Number & Algebra"
|
||||
+++
|
||||
|
||||
<div class="book-prose">
|
||||
<p>
|
||||
Exponential and logarithmic functions are inverse ideas. They model fast growth, rapid decay,
|
||||
and scale changes that linear models cannot describe well.
|
||||
</p>
|
||||
|
||||
<h2 id="exponential-basics" class="book-prose__heading">Exponential basics</h2>
|
||||
<p>
|
||||
An exponential function has variable in the exponent:
|
||||
\[
|
||||
y=a^x,\quad a>0,\ a\ne1.
|
||||
\]
|
||||
</p>
|
||||
<p>
|
||||
If \(a>1\), the function grows as \(x\) increases. If \(0<a<1\), it decays.
|
||||
</p>
|
||||
<div class="book-callout book-callout--formula" role="note">
|
||||
<p class="book-callout__label">Example</p>
|
||||
<p class="book-formula">\[
|
||||
2^x \text{ grows},\qquad \left(\frac12\right)^x \text{ decays}.
|
||||
\]</p>
|
||||
</div>
|
||||
|
||||
<h2 id="logarithm-meaning" class="book-prose__heading">What is a logarithm?</h2>
|
||||
<p>
|
||||
A logarithm asks for the exponent:
|
||||
\[
|
||||
\log_a b = c \iff a^c=b.
|
||||
\]
|
||||
</p>
|
||||
<p>
|
||||
So \(\log_2 8=3\) because \(2^3=8\). Also, \(\log_{10}100=2\).
|
||||
</p>
|
||||
|
||||
<h2 id="domain-and-range" class="book-prose__heading">Domain and range</h2>
|
||||
<ul>
|
||||
<li>\(y=a^x\): domain all real \(x\), range \(y>0\), horizontal asymptote \(y=0\).</li>
|
||||
<li>\(y=\log_a x\): domain \(x>0\), range all real numbers, vertical asymptote \(x=0\).</li>
|
||||
</ul>
|
||||
<p>
|
||||
These two graphs are reflections of each other in the line \(y=x\).
|
||||
</p>
|
||||
|
||||
<h2 id="laws-indices" class="book-prose__heading">Index laws review</h2>
|
||||
<p>
|
||||
Exponential solving often uses:
|
||||
</p>
|
||||
<p class="book-formula">
|
||||
\[
|
||||
a^m a^n=a^{m+n},\quad
|
||||
\frac{a^m}{a^n}=a^{m-n},\quad
|
||||
(a^m)^n=a^{mn}.
|
||||
\]
|
||||
</p>
|
||||
|
||||
<h2 id="laws-logs" class="book-prose__heading">Logarithm laws</h2>
|
||||
<p>
|
||||
For \(M,N>0\):
|
||||
</p>
|
||||
<p class="book-formula">
|
||||
\[
|
||||
\log_a(MN)=\log_a M+\log_a N,
|
||||
\]
|
||||
\[
|
||||
\log_a\!\left(\frac{M}{N}\right)=\log_a M-\log_a N,
|
||||
\]
|
||||
\[
|
||||
\log_a(M^k)=k\log_a M.
|
||||
\]
|
||||
</p>
|
||||
<p><strong>Common mistakes:</strong> \(\log(M+N)\ne \log M+\log N\).</p>
|
||||
|
||||
<h2 id="change-of-base" class="book-prose__heading">Change of base</h2>
|
||||
<p>
|
||||
To evaluate logs with calculator:
|
||||
\[
|
||||
\log_a b = \frac{\log b}{\log a} = \frac{\ln b}{\ln a}.
|
||||
\]
|
||||
</p>
|
||||
<p>
|
||||
Here \(\log\) usually means base 10 and \(\ln\) means base \(e\).
|
||||
</p>
|
||||
|
||||
<h2 id="solve-exponential" class="book-prose__heading">Solving exponential equations</h2>
|
||||
<p><strong>Case 1: same base.</strong></p>
|
||||
<p class="book-formula">\[
|
||||
3^{2x-1}=3^5 \Rightarrow 2x-1=5 \Rightarrow x=3.
|
||||
\]</p>
|
||||
|
||||
<p><strong>Case 2: take logs.</strong></p>
|
||||
<p class="book-formula">\[
|
||||
5^x=17 \Rightarrow x=\log_5 17=\frac{\log 17}{\log 5}\approx 1.760.
|
||||
\]</p>
|
||||
|
||||
<h2 id="solve-log" class="book-prose__heading">Solving logarithmic equations</h2>
|
||||
<p><strong>Example 1.</strong> \(\log_2(x-1)=4\)</p>
|
||||
<p>
|
||||
Convert to exponential: \(x-1=2^4=16\), so \(x=17\). Domain check: \(x>1\), valid.
|
||||
</p>
|
||||
<p><strong>Example 2.</strong> \(\log_{10}(x+3)+\log_{10}(x-1)=1\)</p>
|
||||
<p>
|
||||
\[
|
||||
\log_{10}\big((x+3)(x-1)\big)=1
|
||||
\Rightarrow (x+3)(x-1)=10.
|
||||
\]
|
||||
\[
|
||||
x^2+2x-3=10 \Rightarrow x^2+2x-13=0.
|
||||
\]
|
||||
\[
|
||||
x=-1\pm\sqrt{14}.
|
||||
\]
|
||||
Domain requires \(x>1\), so \(x=-1+\sqrt{14}\) only.
|
||||
</p>
|
||||
|
||||
<h2 id="growth-decay-models" class="book-prose__heading">Growth and decay models</h2>
|
||||
<p>
|
||||
A common model:
|
||||
\[
|
||||
A(t)=A_0(1+r)^t
|
||||
\]
|
||||
for growth (\(r>0\)) or decay (\(r<0\), with \(1+r>0\)).
|
||||
</p>
|
||||
<p>
|
||||
Continuous model:
|
||||
\[
|
||||
A(t)=A_0e^{kt},
|
||||
\]
|
||||
where \(k>0\) gives growth and \(k<0\) gives decay.
|
||||
</p>
|
||||
|
||||
<h2 id="exam-strategy" class="book-prose__heading">Exam strategy</h2>
|
||||
<ul>
|
||||
<li>State domain restrictions first in log equations.</li>
|
||||
<li>When combining logs, check arguments stay positive.</li>
|
||||
<li>Use exact forms before calculator rounding.</li>
|
||||
<li>For modeling, define variables and units clearly.</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="book-prose">
|
||||
<h2 id="history" class="book-prose__heading">History</h2>
|
||||
<p>
|
||||
Logarithms were developed in the early 17th century (notably by John Napier) to simplify long
|
||||
multiplication and division into addition and subtraction. Before electronic calculators, this was
|
||||
a major speed boost for astronomy, navigation, and engineering.
|
||||
</p>
|
||||
<p>
|
||||
Exponential functions became central in science through models of population growth, radioactive
|
||||
decay, and continuously changing quantities.
|
||||
</p>
|
||||
|
||||
<h2 id="derivation" class="book-prose__heading">Derivation and reasoning</h2>
|
||||
<h3 id="why-log-laws" class="book-prose__heading">Why log product law works</h3>
|
||||
<p>
|
||||
Let \(\log_a M=p\) and \(\log_a N=q\). Then \(M=a^p\), \(N=a^q\), so
|
||||
\[
|
||||
MN=a^{p+q}.
|
||||
\]
|
||||
Taking \(\log_a\) gives:
|
||||
\[
|
||||
\log_a(MN)=p+q=\log_a M+\log_a N.
|
||||
\]
|
||||
</p>
|
||||
|
||||
<h3 id="inverse-view" class="book-prose__heading">Inverse relationship view</h3>
|
||||
<p>
|
||||
If \(y=a^x\), swapping \(x,y\) gives \(x=a^y\), so \(y=\log_a x\). That is why exponential and
|
||||
logarithmic graphs are mirror images across \(y=x\).
|
||||
</p>
|
||||
|
||||
<h2 id="checkpoints" class="book-prose__heading">Checkpoints</h2>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
Evaluate \(\log_3 81\) and \(\log_{10}0.01\).
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> \(\log_3 81=4\), \(\log_{10}0.01=-2\).</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
Expand: \(\log_2(8x^3)\).
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> \(\log_2 8 + \log_2 x^3 = 3 + 3\log_2 x\).</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
Solve \(2^{x+1}=7\).
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> \(x+1=\log_2 7\), so \(x=\log_2 7-1 \approx 1.807\).</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
Solve \(\log_5(x-4)=2\) and state domain condition.
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Domain:</strong> \(x-4>0\Rightarrow x>4\).</p>
|
||||
<p><strong>Answer:</strong> \(x-4=25\Rightarrow x=29\), valid.</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
A population starts at 500 and grows 6% per year. Write the model and find \(A(4)\).
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Model:</strong> \(A(t)=500(1.06)^t\).</p>
|
||||
<p><strong>Value:</strong> \(A(4)=500(1.06)^4\approx 631.24\), about 631.</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
A substance follows \(A(t)=120e^{-0.18t}\). Is this growth or decay? Why?
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> Decay, because exponent coefficient is negative (\(k=-0.18\)).</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<h2 id="applications" class="book-prose__heading">Applications</h2>
|
||||
<h3 id="compound-interest" class="book-prose__heading">Compound interest</h3>
|
||||
<p>
|
||||
Savings and loans often follow exponential rules. Logarithms are used to solve for unknown time
|
||||
or interest rate.
|
||||
</p>
|
||||
|
||||
<h3 id="half-life" class="book-prose__heading">Half-life and decay</h3>
|
||||
<p>
|
||||
Radioactive substances and medicine concentration in the body are modeled with exponential decay.
|
||||
</p>
|
||||
|
||||
<h3 id="scales" class="book-prose__heading">Logarithmic scales</h3>
|
||||
<p>
|
||||
pH, decibels, and Richter magnitude use logarithmic scales to represent very large ratio ranges
|
||||
in manageable numbers.
|
||||
</p>
|
||||
|
||||
<h2 id="references" class="book-prose__heading">References</h2>
|
||||
<ul>
|
||||
<li>Standard high-school curricula on exponential and logarithmic functions (IGCSE, IB, A-Level, AP).</li>
|
||||
<li>Precalculus and algebra references on log laws, inverse functions, and modeling.</li>
|
||||
</ul>
|
||||
</div>
|
||||
138
content/math/exponential-logarithmic/core.html
Normal file
138
content/math/exponential-logarithmic/core.html
Normal file
|
|
@ -0,0 +1,138 @@
|
|||
<div class="book-prose">
|
||||
<p>
|
||||
Exponential and logarithmic functions are inverse ideas. They model fast growth, rapid decay,
|
||||
and scale changes that linear models cannot describe well.
|
||||
</p>
|
||||
|
||||
<h2 id="exponential-basics" class="book-prose__heading">Exponential basics</h2>
|
||||
<p>
|
||||
An exponential function has variable in the exponent:
|
||||
\[
|
||||
y=a^x,\quad a>0,\ a\ne1.
|
||||
\]
|
||||
</p>
|
||||
<p>
|
||||
If \(a>1\), the function grows as \(x\) increases. If \(0<a<1\), it decays.
|
||||
</p>
|
||||
<div class="book-callout book-callout--formula" role="note">
|
||||
<p class="book-callout__label">Example</p>
|
||||
<p class="book-formula">\[
|
||||
2^x \text{ grows},\qquad \left(\frac12\right)^x \text{ decays}.
|
||||
\]</p>
|
||||
</div>
|
||||
|
||||
<h2 id="logarithm-meaning" class="book-prose__heading">What is a logarithm?</h2>
|
||||
<p>
|
||||
A logarithm asks for the exponent:
|
||||
\[
|
||||
\log_a b = c \iff a^c=b.
|
||||
\]
|
||||
</p>
|
||||
<p>
|
||||
So \(\log_2 8=3\) because \(2^3=8\). Also, \(\log_{10}100=2\).
|
||||
</p>
|
||||
|
||||
<h2 id="domain-and-range" class="book-prose__heading">Domain and range</h2>
|
||||
<ul>
|
||||
<li>\(y=a^x\): domain all real \(x\), range \(y>0\), horizontal asymptote \(y=0\).</li>
|
||||
<li>\(y=\log_a x\): domain \(x>0\), range all real numbers, vertical asymptote \(x=0\).</li>
|
||||
</ul>
|
||||
<p>
|
||||
These two graphs are reflections of each other in the line \(y=x\).
|
||||
</p>
|
||||
|
||||
<h2 id="laws-indices" class="book-prose__heading">Index laws review</h2>
|
||||
<p>
|
||||
Exponential solving often uses:
|
||||
</p>
|
||||
<p class="book-formula">
|
||||
\[
|
||||
a^m a^n=a^{m+n},\quad
|
||||
\frac{a^m}{a^n}=a^{m-n},\quad
|
||||
(a^m)^n=a^{mn}.
|
||||
\]
|
||||
</p>
|
||||
|
||||
<h2 id="laws-logs" class="book-prose__heading">Logarithm laws</h2>
|
||||
<p>
|
||||
For \(M,N>0\):
|
||||
</p>
|
||||
<p class="book-formula">
|
||||
\[
|
||||
\log_a(MN)=\log_a M+\log_a N,
|
||||
\]
|
||||
\[
|
||||
\log_a\!\left(\frac{M}{N}\right)=\log_a M-\log_a N,
|
||||
\]
|
||||
\[
|
||||
\log_a(M^k)=k\log_a M.
|
||||
\]
|
||||
</p>
|
||||
<p><strong>Common mistakes:</strong> \(\log(M+N)\ne \log M+\log N\).</p>
|
||||
|
||||
<h2 id="change-of-base" class="book-prose__heading">Change of base</h2>
|
||||
<p>
|
||||
To evaluate logs with calculator:
|
||||
\[
|
||||
\log_a b = \frac{\log b}{\log a} = \frac{\ln b}{\ln a}.
|
||||
\]
|
||||
</p>
|
||||
<p>
|
||||
Here \(\log\) usually means base 10 and \(\ln\) means base \(e\).
|
||||
</p>
|
||||
|
||||
<h2 id="solve-exponential" class="book-prose__heading">Solving exponential equations</h2>
|
||||
<p><strong>Case 1: same base.</strong></p>
|
||||
<p class="book-formula">\[
|
||||
3^{2x-1}=3^5 \Rightarrow 2x-1=5 \Rightarrow x=3.
|
||||
\]</p>
|
||||
|
||||
<p><strong>Case 2: take logs.</strong></p>
|
||||
<p class="book-formula">\[
|
||||
5^x=17 \Rightarrow x=\log_5 17=\frac{\log 17}{\log 5}\approx 1.760.
|
||||
\]</p>
|
||||
|
||||
<h2 id="solve-log" class="book-prose__heading">Solving logarithmic equations</h2>
|
||||
<p><strong>Example 1.</strong> \(\log_2(x-1)=4\)</p>
|
||||
<p>
|
||||
Convert to exponential: \(x-1=2^4=16\), so \(x=17\). Domain check: \(x>1\), valid.
|
||||
</p>
|
||||
<p><strong>Example 2.</strong> \(\log_{10}(x+3)+\log_{10}(x-1)=1\)</p>
|
||||
<p>
|
||||
\[
|
||||
\log_{10}\big((x+3)(x-1)\big)=1
|
||||
\Rightarrow (x+3)(x-1)=10.
|
||||
\]
|
||||
\[
|
||||
x^2+2x-3=10 \Rightarrow x^2+2x-13=0.
|
||||
\]
|
||||
\[
|
||||
x=-1\pm\sqrt{14}.
|
||||
\]
|
||||
Domain requires \(x>1\), so \(x=-1+\sqrt{14}\) only.
|
||||
</p>
|
||||
|
||||
<h2 id="growth-decay-models" class="book-prose__heading">Growth and decay models</h2>
|
||||
<p>
|
||||
A common model:
|
||||
\[
|
||||
A(t)=A_0(1+r)^t
|
||||
\]
|
||||
for growth (\(r>0\)) or decay (\(r<0\), with \(1+r>0\)).
|
||||
</p>
|
||||
<p>
|
||||
Continuous model:
|
||||
\[
|
||||
A(t)=A_0e^{kt},
|
||||
\]
|
||||
where \(k>0\) gives growth and \(k<0\) gives decay.
|
||||
</p>
|
||||
|
||||
<h2 id="exam-strategy" class="book-prose__heading">Exam strategy</h2>
|
||||
<ul>
|
||||
<li>State domain restrictions first in log equations.</li>
|
||||
<li>When combining logs, check arguments stay positive.</li>
|
||||
<li>Use exact forms before calculator rounding.</li>
|
||||
<li>For modeling, define variables and units clearly.</li>
|
||||
</ul>
|
||||
</div>
|
||||
112
content/math/exponential-logarithmic/supplement.html
Normal file
112
content/math/exponential-logarithmic/supplement.html
Normal file
|
|
@ -0,0 +1,112 @@
|
|||
<div class="book-prose">
|
||||
<h2 id="history" class="book-prose__heading">History</h2>
|
||||
<p>
|
||||
Logarithms were developed in the early 17th century (notably by John Napier) to simplify long
|
||||
multiplication and division into addition and subtraction. Before electronic calculators, this was
|
||||
a major speed boost for astronomy, navigation, and engineering.
|
||||
</p>
|
||||
<p>
|
||||
Exponential functions became central in science through models of population growth, radioactive
|
||||
decay, and continuously changing quantities.
|
||||
</p>
|
||||
|
||||
<h2 id="derivation" class="book-prose__heading">Derivation and reasoning</h2>
|
||||
<h3 id="why-log-laws" class="book-prose__heading">Why log product law works</h3>
|
||||
<p>
|
||||
Let \(\log_a M=p\) and \(\log_a N=q\). Then \(M=a^p\), \(N=a^q\), so
|
||||
\[
|
||||
MN=a^{p+q}.
|
||||
\]
|
||||
Taking \(\log_a\) gives:
|
||||
\[
|
||||
\log_a(MN)=p+q=\log_a M+\log_a N.
|
||||
\]
|
||||
</p>
|
||||
|
||||
<h3 id="inverse-view" class="book-prose__heading">Inverse relationship view</h3>
|
||||
<p>
|
||||
If \(y=a^x\), swapping \(x,y\) gives \(x=a^y\), so \(y=\log_a x\). That is why exponential and
|
||||
logarithmic graphs are mirror images across \(y=x\).
|
||||
</p>
|
||||
|
||||
<h2 id="checkpoints" class="book-prose__heading">Checkpoints</h2>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
Evaluate \(\log_3 81\) and \(\log_{10}0.01\).
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> \(\log_3 81=4\), \(\log_{10}0.01=-2\).</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
Expand: \(\log_2(8x^3)\).
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> \(\log_2 8 + \log_2 x^3 = 3 + 3\log_2 x\).</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
Solve \(2^{x+1}=7\).
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> \(x+1=\log_2 7\), so \(x=\log_2 7-1 \approx 1.807\).</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
Solve \(\log_5(x-4)=2\) and state domain condition.
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Domain:</strong> \(x-4>0\Rightarrow x>4\).</p>
|
||||
<p><strong>Answer:</strong> \(x-4=25\Rightarrow x=29\), valid.</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
A population starts at 500 and grows 6% per year. Write the model and find \(A(4)\).
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Model:</strong> \(A(t)=500(1.06)^t\).</p>
|
||||
<p><strong>Value:</strong> \(A(4)=500(1.06)^4\approx 631.24\), about 631.</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
A substance follows \(A(t)=120e^{-0.18t}\). Is this growth or decay? Why?
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> Decay, because exponent coefficient is negative (\(k=-0.18\)).</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<h2 id="applications" class="book-prose__heading">Applications</h2>
|
||||
<h3 id="compound-interest" class="book-prose__heading">Compound interest</h3>
|
||||
<p>
|
||||
Savings and loans often follow exponential rules. Logarithms are used to solve for unknown time
|
||||
or interest rate.
|
||||
</p>
|
||||
|
||||
<h3 id="half-life" class="book-prose__heading">Half-life and decay</h3>
|
||||
<p>
|
||||
Radioactive substances and medicine concentration in the body are modeled with exponential decay.
|
||||
</p>
|
||||
|
||||
<h3 id="scales" class="book-prose__heading">Logarithmic scales</h3>
|
||||
<p>
|
||||
pH, decibels, and Richter magnitude use logarithmic scales to represent very large ratio ranges
|
||||
in manageable numbers.
|
||||
</p>
|
||||
|
||||
<h2 id="references" class="book-prose__heading">References</h2>
|
||||
<ul>
|
||||
<li>Standard high-school curricula on exponential and logarithmic functions (IGCSE, IB, A-Level, AP).</li>
|
||||
<li>Precalculus and algebra references on log laws, inverse functions, and modeling.</li>
|
||||
</ul>
|
||||
</div>
|
||||
226
content/math/factor-remainder-theorems/_index.md
Normal file
226
content/math/factor-remainder-theorems/_index.md
Normal file
|
|
@ -0,0 +1,226 @@
|
|||
+++
|
||||
title = "Factor & remainder theorems"
|
||||
description = "Use the factor and remainder theorems to factorise higher-degree polynomials and solve related equations."
|
||||
template = "chapter.html"
|
||||
weight = 13
|
||||
[extra]
|
||||
subject = "math"
|
||||
chapter_id = "factor-remainder-theorems"
|
||||
strand = "Number & Algebra"
|
||||
+++
|
||||
|
||||
<div class="book-prose">
|
||||
<p>
|
||||
This chapter introduces two connected ideas for polynomial division:
|
||||
<strong>Remainder Theorem</strong> and <strong>Factor Theorem</strong>.
|
||||
They help you test factors quickly, find roots, and break a cubic (or higher) polynomial into
|
||||
simpler factors.
|
||||
</p>
|
||||
|
||||
<h2 id="recap-polynomials" class="book-prose__heading">Quick recap</h2>
|
||||
<p>
|
||||
A polynomial in \(x\) is an expression like
|
||||
\(P(x)=2x^3-3x^2+5x-7\). If you divide \(P(x)\) by \((x-a)\), you get:
|
||||
</p>
|
||||
<p class="book-formula">
|
||||
\[
|
||||
P(x) = (x-a)Q(x) + R,
|
||||
\]
|
||||
</p>
|
||||
<p>
|
||||
where \(Q(x)\) is the quotient and \(R\) is a constant remainder.
|
||||
</p>
|
||||
|
||||
<h2 id="remainder-theorem" class="book-prose__heading">Remainder Theorem</h2>
|
||||
<div class="book-callout book-callout--formula" role="note">
|
||||
<p class="book-callout__label">Remainder Theorem</p>
|
||||
<p class="book-formula">
|
||||
\[
|
||||
\text{When } P(x)\text{ is divided by }(x-a),\ \text{remainder}=P(a).
|
||||
\]
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<p><strong>Example 1.</strong> Find the remainder when \(P(x)=x^3-4x+1\) is divided by \((x-2)\).</p>
|
||||
<p>
|
||||
By the theorem, remainder \(=P(2)=2^3-4(2)+1=8-8+1=1\).
|
||||
</p>
|
||||
|
||||
<p><strong>Example 2.</strong> Find the remainder when \(2x^3+x^2-5\) is divided by \((x+1)\).</p>
|
||||
<p>
|
||||
\((x+1)=(x-(-1))\), so use \(a=-1\):
|
||||
\(P(-1)=2(-1)^3+(-1)^2-5=-2+1-5=-6\).
|
||||
</p>
|
||||
|
||||
<h2 id="factor-theorem" class="book-prose__heading">Factor Theorem</h2>
|
||||
<div class="book-callout book-callout--formula" role="note">
|
||||
<p class="book-callout__label">Factor Theorem</p>
|
||||
<p class="book-formula">
|
||||
\[
|
||||
(x-a)\text{ is a factor of }P(x)\iff P(a)=0.
|
||||
\]
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<p>
|
||||
This is a direct consequence of the Remainder Theorem: factor means remainder \(0\).
|
||||
</p>
|
||||
|
||||
<p><strong>Example 3.</strong> Is \((x-3)\) a factor of \(P(x)=x^3-4x^2-3x+18\)?</p>
|
||||
<p>
|
||||
\(P(3)=27-36-9+18=0\), so yes, \((x-3)\) is a factor.
|
||||
</p>
|
||||
|
||||
<h2 id="finding-factors" class="book-prose__heading">Finding factors and roots (high-school workflow)</h2>
|
||||
<ol>
|
||||
<li>List possible rational roots using factors of constant term (and leading coefficient).</li>
|
||||
<li>Test candidates with \(P(a)\).</li>
|
||||
<li>When \(P(a)=0\), divide by \((x-a)\) to reduce degree.</li>
|
||||
<li>Factor the smaller polynomial and solve for all roots.</li>
|
||||
</ol>
|
||||
|
||||
<p><strong>Example 4.</strong> Solve \(x^3-6x^2+11x-6=0\).</p>
|
||||
<p>
|
||||
Try integer candidates \(\pm1,\pm2,\pm3,\pm6\). We get \(P(1)=0\), so \((x-1)\) is a factor.
|
||||
Dividing gives \(x^2-5x+6\), which factorises to \((x-2)(x-3)\).
|
||||
Hence:
|
||||
</p>
|
||||
<p class="book-formula">
|
||||
\[
|
||||
x^3-6x^2+11x-6=(x-1)(x-2)(x-3),
|
||||
\]
|
||||
</p>
|
||||
<p>so roots are \(x=1,2,3\).</p>
|
||||
|
||||
<h2 id="synthetic-division" class="book-prose__heading">Synthetic division (quick table method)</h2>
|
||||
<p>
|
||||
Synthetic division is a compact way to divide by \((x-a)\). It is fast for checking many
|
||||
candidates in exam settings.
|
||||
</p>
|
||||
<p><strong>Example 5.</strong> Divide \(x^3-6x^2+11x-6\) by \((x-1)\):</p>
|
||||
<p class="book-formula">
|
||||
\[
|
||||
\begin{array}{r|rrrr}
|
||||
1 & 1 & -6 & 11 & -6\\
|
||||
& & 1 & -5 & 6\\ \hline
|
||||
& 1 & -5 & 6 & 0
|
||||
\end{array}
|
||||
\]
|
||||
</p>
|
||||
<p>Quotient is \(x^2-5x+6\), remainder \(0\).</p>
|
||||
|
||||
<h2 id="exam-tips" class="book-prose__heading">Exam tips</h2>
|
||||
<ul>
|
||||
<li>Always rewrite \((x+b)\) as \((x-(-b))\) before substituting.</li>
|
||||
<li>If remainder is not zero, that candidate is not a factor.</li>
|
||||
<li>After finding one factor, reduce degree before continuing.</li>
|
||||
<li>Check final roots by substitution when time permits.</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="book-prose">
|
||||
<h2 id="history" class="book-prose__heading">History</h2>
|
||||
<p>
|
||||
Polynomial equations became central in algebra from the Renaissance onward, when mathematicians
|
||||
studied systematic methods for solving cubic and quartic equations. As symbolic algebra matured,
|
||||
methods for division and factor testing became standard tools.
|
||||
</p>
|
||||
<p>
|
||||
What we now call the factor and remainder theorems are part of the broader
|
||||
polynomial division framework developed in 18th–19th century algebra texts.
|
||||
They remain important in modern high-school courses because they connect substitution,
|
||||
division, and root-finding in one clear structure.
|
||||
</p>
|
||||
|
||||
<h2 id="derivation" class="book-prose__heading">Derivation</h2>
|
||||
<h3 id="from-division-algorithm" class="book-prose__heading">From the polynomial division algorithm</h3>
|
||||
<p>
|
||||
For any polynomial \(P(x)\), dividing by \((x-a)\) gives:
|
||||
\[
|
||||
P(x)=(x-a)Q(x)+R.
|
||||
\]
|
||||
Now substitute \(x=a\):
|
||||
\[
|
||||
P(a)=(a-a)Q(a)+R=R.
|
||||
\]
|
||||
So the remainder equals \(P(a)\), proving the Remainder Theorem.
|
||||
</p>
|
||||
<p>
|
||||
If \((x-a)\) is a factor, remainder \(R=0\), so \(P(a)=0\). Conversely, if \(P(a)=0\), then
|
||||
remainder is zero, so \((x-a)\) divides \(P(x)\). This proves the Factor Theorem.
|
||||
</p>
|
||||
|
||||
<h2 id="checkpoints" class="book-prose__heading">Checkpoints</h2>
|
||||
<p>
|
||||
Pause and reason before continuing. Discuss with a classmate or write your reasoning in a
|
||||
notebook.
|
||||
</p>
|
||||
|
||||
<div class="book-callout" role="note">
|
||||
<p class="book-callout__label">Checkpoint</p>
|
||||
<p>
|
||||
Find the remainder when \(P(x)=3x^3-2x+7\) is divided by \((x-2)\).
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="book-callout" role="note">
|
||||
<p class="book-callout__label">Checkpoint</p>
|
||||
<p>
|
||||
Is \((x+2)\) a factor of \(x^3+4x^2+5x+2\)? Show the one-line test.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="book-callout" role="note">
|
||||
<p class="book-callout__label">Checkpoint</p>
|
||||
<p>
|
||||
Given \(P(x)=2x^3+kx^2-8x-4\), if \((x-2)\) is a factor, find \(k\).
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="book-callout" role="note">
|
||||
<p class="book-callout__label">Checkpoint</p>
|
||||
<p>
|
||||
A polynomial leaves remainder \(5\) when divided by \((x-1)\). What is \(P(1)\)?
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="book-callout" role="note">
|
||||
<p class="book-callout__label">Checkpoint</p>
|
||||
<p>
|
||||
If \(P(3)=0\) and \(P(-1)=0\) for a cubic \(P(x)\), what two linear factors must appear?
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="book-callout" role="note">
|
||||
<p class="book-callout__label">Checkpoint</p>
|
||||
<p>
|
||||
Why is synthetic division especially useful after you already know one root?
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<h2 id="applications" class="book-prose__heading">Applications</h2>
|
||||
<h3 id="curve-intercepts" class="book-prose__heading">Graph intercepts and curve sketching</h3>
|
||||
<p>
|
||||
Solving \(P(x)=0\) gives x-intercepts of polynomial graphs. Factor Theorem helps find those
|
||||
intercepts quickly, then sketch end behavior and turning points more accurately.
|
||||
</p>
|
||||
|
||||
<h3 id="model-constraints" class="book-prose__heading">Constraint values in models</h3>
|
||||
<p>
|
||||
In applied models, a condition like “output is zero at \(x=a\)” means \(P(a)=0\), so
|
||||
\((x-a)\) must be a factor. This appears in physics calibration, optimization constraints, and
|
||||
coding of polynomial approximations.
|
||||
</p>
|
||||
|
||||
<h3 id="numerical-methods" class="book-prose__heading">Gateway to numerical methods</h3>
|
||||
<p>
|
||||
Understanding factor tests and polynomial reduction supports later methods such as Newton’s
|
||||
method and polynomial interpolation, where roots and remainders are central ideas.
|
||||
</p>
|
||||
|
||||
<h2 id="references" class="book-prose__heading">References</h2>
|
||||
<ul>
|
||||
<li>Standard high-school algebra curricula (IB, A-Level, DSE extension) on polynomial theorems.</li>
|
||||
<li>Classical algebra texts covering polynomial division and root-factor relationships.</li>
|
||||
</ul>
|
||||
</div>
|
||||
108
content/math/factor-remainder-theorems/core.html
Normal file
108
content/math/factor-remainder-theorems/core.html
Normal file
|
|
@ -0,0 +1,108 @@
|
|||
<div class="book-prose">
|
||||
<p>
|
||||
This chapter introduces two connected ideas for polynomial division:
|
||||
<strong>Remainder Theorem</strong> and <strong>Factor Theorem</strong>.
|
||||
They help you test factors quickly, find roots, and break a cubic (or higher) polynomial into
|
||||
simpler factors.
|
||||
</p>
|
||||
|
||||
<h2 id="recap-polynomials" class="book-prose__heading">Quick recap</h2>
|
||||
<p>
|
||||
A polynomial in \(x\) is an expression like
|
||||
\(P(x)=2x^3-3x^2+5x-7\). If you divide \(P(x)\) by \((x-a)\), you get:
|
||||
</p>
|
||||
<p class="book-formula">
|
||||
\[
|
||||
P(x) = (x-a)Q(x) + R,
|
||||
\]
|
||||
</p>
|
||||
<p>
|
||||
where \(Q(x)\) is the quotient and \(R\) is a constant remainder.
|
||||
</p>
|
||||
|
||||
<h2 id="remainder-theorem" class="book-prose__heading">Remainder Theorem</h2>
|
||||
<div class="book-callout book-callout--formula" role="note">
|
||||
<p class="book-callout__label">Remainder Theorem</p>
|
||||
<p class="book-formula">
|
||||
\[
|
||||
\text{When } P(x)\text{ is divided by }(x-a),\ \text{remainder}=P(a).
|
||||
\]
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<p><strong>Example 1.</strong> Find the remainder when \(P(x)=x^3-4x+1\) is divided by \((x-2)\).</p>
|
||||
<p>
|
||||
By the theorem, remainder \(=P(2)=2^3-4(2)+1=8-8+1=1\).
|
||||
</p>
|
||||
|
||||
<p><strong>Example 2.</strong> Find the remainder when \(2x^3+x^2-5\) is divided by \((x+1)\).</p>
|
||||
<p>
|
||||
\((x+1)=(x-(-1))\), so use \(a=-1\):
|
||||
\(P(-1)=2(-1)^3+(-1)^2-5=-2+1-5=-6\).
|
||||
</p>
|
||||
|
||||
<h2 id="factor-theorem" class="book-prose__heading">Factor Theorem</h2>
|
||||
<div class="book-callout book-callout--formula" role="note">
|
||||
<p class="book-callout__label">Factor Theorem</p>
|
||||
<p class="book-formula">
|
||||
\[
|
||||
(x-a)\text{ is a factor of }P(x)\iff P(a)=0.
|
||||
\]
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<p>
|
||||
This is a direct consequence of the Remainder Theorem: factor means remainder \(0\).
|
||||
</p>
|
||||
|
||||
<p><strong>Example 3.</strong> Is \((x-3)\) a factor of \(P(x)=x^3-4x^2-3x+18\)?</p>
|
||||
<p>
|
||||
\(P(3)=27-36-9+18=0\), so yes, \((x-3)\) is a factor.
|
||||
</p>
|
||||
|
||||
<h2 id="finding-factors" class="book-prose__heading">Finding factors and roots (high-school workflow)</h2>
|
||||
<ol>
|
||||
<li>List possible rational roots using factors of constant term (and leading coefficient).</li>
|
||||
<li>Test candidates with \(P(a)\).</li>
|
||||
<li>When \(P(a)=0\), divide by \((x-a)\) to reduce degree.</li>
|
||||
<li>Factor the smaller polynomial and solve for all roots.</li>
|
||||
</ol>
|
||||
|
||||
<p><strong>Example 4.</strong> Solve \(x^3-6x^2+11x-6=0\).</p>
|
||||
<p>
|
||||
Try integer candidates \(\pm1,\pm2,\pm3,\pm6\). We get \(P(1)=0\), so \((x-1)\) is a factor.
|
||||
Dividing gives \(x^2-5x+6\), which factorises to \((x-2)(x-3)\).
|
||||
Hence:
|
||||
</p>
|
||||
<p class="book-formula">
|
||||
\[
|
||||
x^3-6x^2+11x-6=(x-1)(x-2)(x-3),
|
||||
\]
|
||||
</p>
|
||||
<p>so roots are \(x=1,2,3\).</p>
|
||||
|
||||
<h2 id="synthetic-division" class="book-prose__heading">Synthetic division (quick table method)</h2>
|
||||
<p>
|
||||
Synthetic division is a compact way to divide by \((x-a)\). It is fast for checking many
|
||||
candidates in exam settings.
|
||||
</p>
|
||||
<p><strong>Example 5.</strong> Divide \(x^3-6x^2+11x-6\) by \((x-1)\):</p>
|
||||
<p class="book-formula">
|
||||
\[
|
||||
\begin{array}{r|rrrr}
|
||||
1 & 1 & -6 & 11 & -6\\
|
||||
& & 1 & -5 & 6\\ \hline
|
||||
& 1 & -5 & 6 & 0
|
||||
\end{array}
|
||||
\]
|
||||
</p>
|
||||
<p>Quotient is \(x^2-5x+6\), remainder \(0\).</p>
|
||||
|
||||
<h2 id="exam-tips" class="book-prose__heading">Exam tips</h2>
|
||||
<ul>
|
||||
<li>Always rewrite \((x+b)\) as \((x-(-b))\) before substituting.</li>
|
||||
<li>If remainder is not zero, that candidate is not a factor.</li>
|
||||
<li>After finding one factor, reduce degree before continuing.</li>
|
||||
<li>Check final roots by substitution when time permits.</li>
|
||||
</ul>
|
||||
</div>
|
||||
106
content/math/factor-remainder-theorems/supplement.html
Normal file
106
content/math/factor-remainder-theorems/supplement.html
Normal file
|
|
@ -0,0 +1,106 @@
|
|||
<div class="book-prose">
|
||||
<h2 id="history" class="book-prose__heading">History</h2>
|
||||
<p>
|
||||
Polynomial equations became central in algebra from the Renaissance onward, when mathematicians
|
||||
studied systematic methods for solving cubic and quartic equations. As symbolic algebra matured,
|
||||
methods for division and factor testing became standard tools.
|
||||
</p>
|
||||
<p>
|
||||
What we now call the factor and remainder theorems are part of the broader
|
||||
polynomial division framework developed in 18th–19th century algebra texts.
|
||||
They remain important in modern high-school courses because they connect substitution,
|
||||
division, and root-finding in one clear structure.
|
||||
</p>
|
||||
|
||||
<h2 id="derivation" class="book-prose__heading">Derivation</h2>
|
||||
<h3 id="from-division-algorithm" class="book-prose__heading">From the polynomial division algorithm</h3>
|
||||
<p>
|
||||
For any polynomial \(P(x)\), dividing by \((x-a)\) gives:
|
||||
\[
|
||||
P(x)=(x-a)Q(x)+R.
|
||||
\]
|
||||
Now substitute \(x=a\):
|
||||
\[
|
||||
P(a)=(a-a)Q(a)+R=R.
|
||||
\]
|
||||
So the remainder equals \(P(a)\), proving the Remainder Theorem.
|
||||
</p>
|
||||
<p>
|
||||
If \((x-a)\) is a factor, remainder \(R=0\), so \(P(a)=0\). Conversely, if \(P(a)=0\), then
|
||||
remainder is zero, so \((x-a)\) divides \(P(x)\). This proves the Factor Theorem.
|
||||
</p>
|
||||
|
||||
<h2 id="checkpoints" class="book-prose__heading">Checkpoints</h2>
|
||||
<p>
|
||||
Pause and reason before continuing. Discuss with a classmate or write your reasoning in a
|
||||
notebook.
|
||||
</p>
|
||||
|
||||
<div class="book-callout" role="note">
|
||||
<p class="book-callout__label">Checkpoint</p>
|
||||
<p>
|
||||
Find the remainder when \(P(x)=3x^3-2x+7\) is divided by \((x-2)\).
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="book-callout" role="note">
|
||||
<p class="book-callout__label">Checkpoint</p>
|
||||
<p>
|
||||
Is \((x+2)\) a factor of \(x^3+4x^2+5x+2\)? Show the one-line test.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="book-callout" role="note">
|
||||
<p class="book-callout__label">Checkpoint</p>
|
||||
<p>
|
||||
Given \(P(x)=2x^3+kx^2-8x-4\), if \((x-2)\) is a factor, find \(k\).
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="book-callout" role="note">
|
||||
<p class="book-callout__label">Checkpoint</p>
|
||||
<p>
|
||||
A polynomial leaves remainder \(5\) when divided by \((x-1)\). What is \(P(1)\)?
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="book-callout" role="note">
|
||||
<p class="book-callout__label">Checkpoint</p>
|
||||
<p>
|
||||
If \(P(3)=0\) and \(P(-1)=0\) for a cubic \(P(x)\), what two linear factors must appear?
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="book-callout" role="note">
|
||||
<p class="book-callout__label">Checkpoint</p>
|
||||
<p>
|
||||
Why is synthetic division especially useful after you already know one root?
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<h2 id="applications" class="book-prose__heading">Applications</h2>
|
||||
<h3 id="curve-intercepts" class="book-prose__heading">Graph intercepts and curve sketching</h3>
|
||||
<p>
|
||||
Solving \(P(x)=0\) gives x-intercepts of polynomial graphs. Factor Theorem helps find those
|
||||
intercepts quickly, then sketch end behavior and turning points more accurately.
|
||||
</p>
|
||||
|
||||
<h3 id="model-constraints" class="book-prose__heading">Constraint values in models</h3>
|
||||
<p>
|
||||
In applied models, a condition like “output is zero at \(x=a\)” means \(P(a)=0\), so
|
||||
\((x-a)\) must be a factor. This appears in physics calibration, optimization constraints, and
|
||||
coding of polynomial approximations.
|
||||
</p>
|
||||
|
||||
<h3 id="numerical-methods" class="book-prose__heading">Gateway to numerical methods</h3>
|
||||
<p>
|
||||
Understanding factor tests and polynomial reduction supports later methods such as Newton’s
|
||||
method and polynomial interpolation, where roots and remainders are central ideas.
|
||||
</p>
|
||||
|
||||
<h2 id="references" class="book-prose__heading">References</h2>
|
||||
<ul>
|
||||
<li>Standard high-school algebra curricula (IB, A-Level, DSE extension) on polynomial theorems.</li>
|
||||
<li>Classical algebra texts covering polynomial division and root-factor relationships.</li>
|
||||
</ul>
|
||||
</div>
|
||||
257
content/math/functions-graphs/_index.md
Normal file
257
content/math/functions-graphs/_index.md
Normal file
|
|
@ -0,0 +1,257 @@
|
|||
+++
|
||||
title = "Functions & graphs"
|
||||
description = "Model input-output rules, work with domain and range, and sketch key function graphs and transformations."
|
||||
template = "chapter.html"
|
||||
weight = 15
|
||||
[extra]
|
||||
subject = "math"
|
||||
chapter_id = "functions-graphs"
|
||||
strand = "Number & Algebra"
|
||||
+++
|
||||
|
||||
<div class="book-prose">
|
||||
<p>
|
||||
A <strong>function</strong> is a rule that assigns exactly one output to each allowed input.
|
||||
In high school, functions help you connect equations, tables, and graphs.
|
||||
</p>
|
||||
|
||||
<h2 id="what-is-a-function" class="book-prose__heading">What is a function?</h2>
|
||||
<p>
|
||||
If \(f\) is a function, then \(f(x)\) means “the output when input is \(x\).”
|
||||
Example:
|
||||
</p>
|
||||
<p class="book-formula">
|
||||
\[
|
||||
f(x)=2x+3.
|
||||
\]
|
||||
</p>
|
||||
<p>
|
||||
Then \(f(1)=5\), \(f(4)=11\), and \(f(-2)=-1\).
|
||||
</p>
|
||||
<div class="book-callout book-callout--formula" role="note">
|
||||
<p class="book-callout__label">Key idea</p>
|
||||
<p class="book-formula">
|
||||
\[
|
||||
\text{One input} \rightarrow \text{one output}.
|
||||
\]
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<h2 id="domain-range" class="book-prose__heading">Domain and range</h2>
|
||||
<p>
|
||||
The <strong>domain</strong> is the set of allowed inputs. The <strong>range</strong> is the set of
|
||||
outputs produced from that domain.
|
||||
</p>
|
||||
<p><strong>Example 1.</strong> \(f(x)=\frac{1}{x-2}\)</p>
|
||||
<ul>
|
||||
<li>Domain: all real \(x\) except \(x=2\).</li>
|
||||
<li>Range: all real \(y\) except \(y=0\).</li>
|
||||
</ul>
|
||||
<p><strong>Example 2.</strong> \(g(x)=\sqrt{x+1}\)</p>
|
||||
<ul>
|
||||
<li>Domain: \(x \ge -1\) (square root needs non-negative inside).</li>
|
||||
<li>Range: \(y \ge 0\).</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="function-vs-relation" class="book-prose__heading">Function vs relation</h2>
|
||||
<p>
|
||||
Not every relation is a function. If one input gives two outputs, it is not a function.
|
||||
</p>
|
||||
<p>
|
||||
On a graph, use the <strong>vertical line test</strong>: if any vertical line crosses the curve
|
||||
more than once, it is not a function.
|
||||
</p>
|
||||
|
||||
<h2 id="graphs-basics" class="book-prose__heading">Graph basics</h2>
|
||||
<p>
|
||||
To sketch a graph:
|
||||
</p>
|
||||
<ol>
|
||||
<li>Choose key \(x\)-values and make a value table.</li>
|
||||
<li>Plot points \((x,f(x))\) on labeled axes.</li>
|
||||
<li>Connect appropriately (line, curve, or separate branches).</li>
|
||||
<li>Identify intercepts and turning features.</li>
|
||||
</ol>
|
||||
|
||||
<h2 id="key-families" class="book-prose__heading">Important function families</h2>
|
||||
<h3 id="linear" class="book-prose__heading">Linear: \(y=mx+c\)</h3>
|
||||
<p>
|
||||
Straight line with slope \(m\) and \(y\)-intercept \(c\). A larger \(|m|\) means steeper line.
|
||||
</p>
|
||||
|
||||
<h3 id="quadratic" class="book-prose__heading">Quadratic: \(y=ax^2+bx+c\)</h3>
|
||||
<p>
|
||||
Parabola. If \(a>0\), opens upward; if \(a<0\), opens downward.
|
||||
</p>
|
||||
|
||||
<h3 id="absolute-value" class="book-prose__heading">Absolute value: \(y=|x|\)</h3>
|
||||
<p>
|
||||
V-shaped graph with vertex at the origin before transformations.
|
||||
</p>
|
||||
|
||||
<h3 id="rational" class="book-prose__heading">Rational: \(y=\frac{1}{x}\)</h3>
|
||||
<p>
|
||||
Hyperbola with asymptotes \(x=0\) and \(y=0\). Graph has two separate branches.
|
||||
</p>
|
||||
|
||||
<h2 id="transformations" class="book-prose__heading">Transformations</h2>
|
||||
<p>
|
||||
Start from \(y=f(x)\):
|
||||
</p>
|
||||
<ul>
|
||||
<li>\(y=f(x)+k\): shift up by \(k\).</li>
|
||||
<li>\(y=f(x-h)\): shift right by \(h\).</li>
|
||||
<li>\(y=af(x)\): vertical stretch/compression by factor \(|a|\), and reflect if \(a<0\).</li>
|
||||
<li>\(y=f(bx)\): horizontal scale by factor \(\frac{1}{|b|}\), and reflect in \(y\)-axis if \(b<0\).</li>
|
||||
</ul>
|
||||
<p><strong>Example.</strong> From \(y=x^2\) to \(y=(x-3)^2+2\): move right 3, up 2.</p>
|
||||
|
||||
<h2 id="intercepts-and-meaning" class="book-prose__heading">Intercepts and meaning</h2>
|
||||
<ul>
|
||||
<li><strong>\(y\)-intercept:</strong> set \(x=0\).</li>
|
||||
<li><strong>\(x\)-intercepts:</strong> solve \(f(x)=0\).</li>
|
||||
</ul>
|
||||
<p>
|
||||
In applications, intercepts often represent starting value and break-even/zero-output points.
|
||||
</p>
|
||||
|
||||
<h2 id="piecewise" class="book-prose__heading">Piecewise functions</h2>
|
||||
<p>
|
||||
Some rules change in different intervals. Example:
|
||||
</p>
|
||||
<p class="book-formula">
|
||||
\[
|
||||
f(x)=
|
||||
\begin{cases}
|
||||
x+2, & x<1\\
|
||||
3, & x\ge 1
|
||||
\end{cases}
|
||||
\]
|
||||
</p>
|
||||
<p>
|
||||
Graph each rule only on its stated interval, and mark endpoints correctly (open/closed points).
|
||||
</p>
|
||||
|
||||
<h2 id="exam-strategy" class="book-prose__heading">Exam strategy</h2>
|
||||
<ul>
|
||||
<li>State domain restrictions before graphing.</li>
|
||||
<li>Use a neat value table near turning points or asymptotes.</li>
|
||||
<li>Label key coordinates: intercepts, vertex, asymptote equations.</li>
|
||||
<li>Check whether a requested equation is function form or relation form.</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="book-prose">
|
||||
<h2 id="history" class="book-prose__heading">History</h2>
|
||||
<p>
|
||||
The modern idea of a function developed over centuries. Early algebra connected formulas to
|
||||
unknown quantities, while analytic geometry (Descartes) linked equations to curves on coordinate
|
||||
axes.
|
||||
</p>
|
||||
<p>
|
||||
Later, Euler and others formalized function notation such as \(f(x)\). Today, function thinking
|
||||
is central in mathematics, science, economics, and computing because it models how one quantity
|
||||
depends on another.
|
||||
</p>
|
||||
|
||||
<h2 id="derivation" class="book-prose__heading">Derivation and reasoning</h2>
|
||||
<h3 id="slope-intercept" class="book-prose__heading">From two points to line equation</h3>
|
||||
<p>
|
||||
If a line passes through \((x_1,y_1)\) and \((x_2,y_2)\), slope is:
|
||||
\[
|
||||
m=\frac{y_2-y_1}{x_2-x_1}.
|
||||
\]
|
||||
Then use \(y=mx+c\) and substitute one point to find \(c\).
|
||||
</p>
|
||||
|
||||
<h3 id="vertex-form" class="book-prose__heading">Why vertex form helps for quadratics</h3>
|
||||
<p>
|
||||
Writing \(y=a(x-h)^2+k\) shows the turning point immediately: vertex \((h,k)\). This is why
|
||||
completing the square is useful for sketching and transformations.
|
||||
</p>
|
||||
|
||||
<h2 id="checkpoints" class="book-prose__heading">Checkpoints</h2>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
For \(f(x)=3x-2\), find \(f(5)\) and \(f(-1)\).
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> \(f(5)=13\), \(f(-1)=-5\).</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
State domain and range of \(g(x)=\sqrt{x-4}\).
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> Domain \(x\ge 4\), range \(y\ge 0\).</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
Is \(x=y^2\) a function of \(x\)? Use the vertical line test idea.
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> No.</p>
|
||||
<p>
|
||||
For a positive \(x\), there are two \(y\)-values (\(+\sqrt{x}\) and \(-\sqrt{x}\)), so one
|
||||
\(x\) maps to two outputs.
|
||||
</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
For \(y=(x+1)^2-3\), state the transformation from \(y=x^2\).
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> Shift left 1 and down 3.</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
Find intercepts of \(y=x^2-4x+3\).
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> \(y\)-intercept: \((0,3)\).</p>
|
||||
<p><strong>Answer:</strong> \(x\)-intercepts: solve \(x^2-4x+3=0\Rightarrow(x-1)(x-3)=0\), so \((1,0)\), \((3,0)\).</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
Sketch idea: \(f(x)=\frac{1}{x-2}+1\). What are its asymptotes?
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> Vertical asymptote \(x=2\), horizontal asymptote \(y=1\).</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<h2 id="applications" class="book-prose__heading">Applications</h2>
|
||||
<h3 id="finance" class="book-prose__heading">Finance and budgeting</h3>
|
||||
<p>
|
||||
Linear functions model plans with fixed charges plus per-unit costs, such as phone plans or
|
||||
transport fares.
|
||||
</p>
|
||||
|
||||
<h3 id="motion" class="book-prose__heading">Motion and science</h3>
|
||||
<p>
|
||||
Position-time or velocity-time graphs are function graphs. Intercepts, gradients, and curvature
|
||||
describe physical behavior.
|
||||
</p>
|
||||
|
||||
<h3 id="data-models" class="book-prose__heading">Data modeling</h3>
|
||||
<p>
|
||||
Exponential, quadratic, and rational models are used to approximate trends, optimize designs,
|
||||
and make predictions from measured data.
|
||||
</p>
|
||||
|
||||
<h2 id="references" class="book-prose__heading">References</h2>
|
||||
<ul>
|
||||
<li>Standard high-school algebra curricula on functions, graphs, and transformations.</li>
|
||||
<li>Analytic geometry and precalculus references covering domain/range and graph families.</li>
|
||||
</ul>
|
||||
</div>
|
||||
131
content/math/functions-graphs/core.html
Normal file
131
content/math/functions-graphs/core.html
Normal file
|
|
@ -0,0 +1,131 @@
|
|||
<div class="book-prose">
|
||||
<p>
|
||||
A <strong>function</strong> is a rule that assigns exactly one output to each allowed input.
|
||||
In high school, functions help you connect equations, tables, and graphs.
|
||||
</p>
|
||||
|
||||
<h2 id="what-is-a-function" class="book-prose__heading">What is a function?</h2>
|
||||
<p>
|
||||
If \(f\) is a function, then \(f(x)\) means “the output when input is \(x\).”
|
||||
Example:
|
||||
</p>
|
||||
<p class="book-formula">
|
||||
\[
|
||||
f(x)=2x+3.
|
||||
\]
|
||||
</p>
|
||||
<p>
|
||||
Then \(f(1)=5\), \(f(4)=11\), and \(f(-2)=-1\).
|
||||
</p>
|
||||
<div class="book-callout book-callout--formula" role="note">
|
||||
<p class="book-callout__label">Key idea</p>
|
||||
<p class="book-formula">
|
||||
\[
|
||||
\text{One input} \rightarrow \text{one output}.
|
||||
\]
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<h2 id="domain-range" class="book-prose__heading">Domain and range</h2>
|
||||
<p>
|
||||
The <strong>domain</strong> is the set of allowed inputs. The <strong>range</strong> is the set of
|
||||
outputs produced from that domain.
|
||||
</p>
|
||||
<p><strong>Example 1.</strong> \(f(x)=\frac{1}{x-2}\)</p>
|
||||
<ul>
|
||||
<li>Domain: all real \(x\) except \(x=2\).</li>
|
||||
<li>Range: all real \(y\) except \(y=0\).</li>
|
||||
</ul>
|
||||
<p><strong>Example 2.</strong> \(g(x)=\sqrt{x+1}\)</p>
|
||||
<ul>
|
||||
<li>Domain: \(x \ge -1\) (square root needs non-negative inside).</li>
|
||||
<li>Range: \(y \ge 0\).</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="function-vs-relation" class="book-prose__heading">Function vs relation</h2>
|
||||
<p>
|
||||
Not every relation is a function. If one input gives two outputs, it is not a function.
|
||||
</p>
|
||||
<p>
|
||||
On a graph, use the <strong>vertical line test</strong>: if any vertical line crosses the curve
|
||||
more than once, it is not a function.
|
||||
</p>
|
||||
|
||||
<h2 id="graphs-basics" class="book-prose__heading">Graph basics</h2>
|
||||
<p>
|
||||
To sketch a graph:
|
||||
</p>
|
||||
<ol>
|
||||
<li>Choose key \(x\)-values and make a value table.</li>
|
||||
<li>Plot points \((x,f(x))\) on labeled axes.</li>
|
||||
<li>Connect appropriately (line, curve, or separate branches).</li>
|
||||
<li>Identify intercepts and turning features.</li>
|
||||
</ol>
|
||||
|
||||
<h2 id="key-families" class="book-prose__heading">Important function families</h2>
|
||||
<h3 id="linear" class="book-prose__heading">Linear: \(y=mx+c\)</h3>
|
||||
<p>
|
||||
Straight line with slope \(m\) and \(y\)-intercept \(c\). A larger \(|m|\) means steeper line.
|
||||
</p>
|
||||
|
||||
<h3 id="quadratic" class="book-prose__heading">Quadratic: \(y=ax^2+bx+c\)</h3>
|
||||
<p>
|
||||
Parabola. If \(a>0\), opens upward; if \(a<0\), opens downward.
|
||||
</p>
|
||||
|
||||
<h3 id="absolute-value" class="book-prose__heading">Absolute value: \(y=|x|\)</h3>
|
||||
<p>
|
||||
V-shaped graph with vertex at the origin before transformations.
|
||||
</p>
|
||||
|
||||
<h3 id="rational" class="book-prose__heading">Rational: \(y=\frac{1}{x}\)</h3>
|
||||
<p>
|
||||
Hyperbola with asymptotes \(x=0\) and \(y=0\). Graph has two separate branches.
|
||||
</p>
|
||||
|
||||
<h2 id="transformations" class="book-prose__heading">Transformations</h2>
|
||||
<p>
|
||||
Start from \(y=f(x)\):
|
||||
</p>
|
||||
<ul>
|
||||
<li>\(y=f(x)+k\): shift up by \(k\).</li>
|
||||
<li>\(y=f(x-h)\): shift right by \(h\).</li>
|
||||
<li>\(y=af(x)\): vertical stretch/compression by factor \(|a|\), and reflect if \(a<0\).</li>
|
||||
<li>\(y=f(bx)\): horizontal scale by factor \(\frac{1}{|b|}\), and reflect in \(y\)-axis if \(b<0\).</li>
|
||||
</ul>
|
||||
<p><strong>Example.</strong> From \(y=x^2\) to \(y=(x-3)^2+2\): move right 3, up 2.</p>
|
||||
|
||||
<h2 id="intercepts-and-meaning" class="book-prose__heading">Intercepts and meaning</h2>
|
||||
<ul>
|
||||
<li><strong>\(y\)-intercept:</strong> set \(x=0\).</li>
|
||||
<li><strong>\(x\)-intercepts:</strong> solve \(f(x)=0\).</li>
|
||||
</ul>
|
||||
<p>
|
||||
In applications, intercepts often represent starting value and break-even/zero-output points.
|
||||
</p>
|
||||
|
||||
<h2 id="piecewise" class="book-prose__heading">Piecewise functions</h2>
|
||||
<p>
|
||||
Some rules change in different intervals. Example:
|
||||
</p>
|
||||
<p class="book-formula">
|
||||
\[
|
||||
f(x)=
|
||||
\begin{cases}
|
||||
x+2, & x<1\\
|
||||
3, & x\ge 1
|
||||
\end{cases}
|
||||
\]
|
||||
</p>
|
||||
<p>
|
||||
Graph each rule only on its stated interval, and mark endpoints correctly (open/closed points).
|
||||
</p>
|
||||
|
||||
<h2 id="exam-strategy" class="book-prose__heading">Exam strategy</h2>
|
||||
<ul>
|
||||
<li>State domain restrictions before graphing.</li>
|
||||
<li>Use a neat value table near turning points or asymptotes.</li>
|
||||
<li>Label key coordinates: intercepts, vertex, asymptote equations.</li>
|
||||
<li>Check whether a requested equation is function form or relation form.</li>
|
||||
</ul>
|
||||
</div>
|
||||
114
content/math/functions-graphs/supplement.html
Normal file
114
content/math/functions-graphs/supplement.html
Normal file
|
|
@ -0,0 +1,114 @@
|
|||
<div class="book-prose">
|
||||
<h2 id="history" class="book-prose__heading">History</h2>
|
||||
<p>
|
||||
The modern idea of a function developed over centuries. Early algebra connected formulas to
|
||||
unknown quantities, while analytic geometry (Descartes) linked equations to curves on coordinate
|
||||
axes.
|
||||
</p>
|
||||
<p>
|
||||
Later, Euler and others formalized function notation such as \(f(x)\). Today, function thinking
|
||||
is central in mathematics, science, economics, and computing because it models how one quantity
|
||||
depends on another.
|
||||
</p>
|
||||
|
||||
<h2 id="derivation" class="book-prose__heading">Derivation and reasoning</h2>
|
||||
<h3 id="slope-intercept" class="book-prose__heading">From two points to line equation</h3>
|
||||
<p>
|
||||
If a line passes through \((x_1,y_1)\) and \((x_2,y_2)\), slope is:
|
||||
\[
|
||||
m=\frac{y_2-y_1}{x_2-x_1}.
|
||||
\]
|
||||
Then use \(y=mx+c\) and substitute one point to find \(c\).
|
||||
</p>
|
||||
|
||||
<h3 id="vertex-form" class="book-prose__heading">Why vertex form helps for quadratics</h3>
|
||||
<p>
|
||||
Writing \(y=a(x-h)^2+k\) shows the turning point immediately: vertex \((h,k)\). This is why
|
||||
completing the square is useful for sketching and transformations.
|
||||
</p>
|
||||
|
||||
<h2 id="checkpoints" class="book-prose__heading">Checkpoints</h2>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
For \(f(x)=3x-2\), find \(f(5)\) and \(f(-1)\).
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> \(f(5)=13\), \(f(-1)=-5\).</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
State domain and range of \(g(x)=\sqrt{x-4}\).
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> Domain \(x\ge 4\), range \(y\ge 0\).</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
Is \(x=y^2\) a function of \(x\)? Use the vertical line test idea.
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> No.</p>
|
||||
<p>
|
||||
For a positive \(x\), there are two \(y\)-values (\(+\sqrt{x}\) and \(-\sqrt{x}\)), so one
|
||||
\(x\) maps to two outputs.
|
||||
</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
For \(y=(x+1)^2-3\), state the transformation from \(y=x^2\).
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> Shift left 1 and down 3.</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
Find intercepts of \(y=x^2-4x+3\).
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> \(y\)-intercept: \((0,3)\).</p>
|
||||
<p><strong>Answer:</strong> \(x\)-intercepts: solve \(x^2-4x+3=0\Rightarrow(x-1)(x-3)=0\), so \((1,0)\), \((3,0)\).</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
Sketch idea: \(f(x)=\frac{1}{x-2}+1\). What are its asymptotes?
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> Vertical asymptote \(x=2\), horizontal asymptote \(y=1\).</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<h2 id="applications" class="book-prose__heading">Applications</h2>
|
||||
<h3 id="finance" class="book-prose__heading">Finance and budgeting</h3>
|
||||
<p>
|
||||
Linear functions model plans with fixed charges plus per-unit costs, such as phone plans or
|
||||
transport fares.
|
||||
</p>
|
||||
|
||||
<h3 id="motion" class="book-prose__heading">Motion and science</h3>
|
||||
<p>
|
||||
Position-time or velocity-time graphs are function graphs. Intercepts, gradients, and curvature
|
||||
describe physical behavior.
|
||||
</p>
|
||||
|
||||
<h3 id="data-models" class="book-prose__heading">Data modeling</h3>
|
||||
<p>
|
||||
Exponential, quadratic, and rational models are used to approximate trends, optimize designs,
|
||||
and make predictions from measured data.
|
||||
</p>
|
||||
|
||||
<h2 id="references" class="book-prose__heading">References</h2>
|
||||
<ul>
|
||||
<li>Standard high-school algebra curricula on functions, graphs, and transformations.</li>
|
||||
<li>Analytic geometry and precalculus references covering domain/range and graph families.</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -5,6 +5,7 @@ const VIEW_SIZE = 400;
|
|||
const UNIT = 20;
|
||||
const ORIGIN = VIEW_SIZE / 2;
|
||||
const X_RANGE = 10;
|
||||
const AXIS_LABEL_STEP = 2;
|
||||
const LINE_SAMPLE_STEP = 0.12;
|
||||
const INTERSECTION_HIT_SCREEN = 28;
|
||||
const LINE_HIT_SCREEN = 14;
|
||||
|
|
@ -268,6 +269,69 @@ function drawGraph(
|
|||
ctx.lineTo(VIEW_SIZE, ORIGIN);
|
||||
ctx.stroke();
|
||||
|
||||
// Axis arrowheads
|
||||
const arrowSize = 8;
|
||||
ctx.fillStyle = colors.axis;
|
||||
// +x arrow
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(VIEW_SIZE - 2, ORIGIN);
|
||||
ctx.lineTo(VIEW_SIZE - arrowSize - 2, ORIGIN - 4);
|
||||
ctx.lineTo(VIEW_SIZE - arrowSize - 2, ORIGIN + 4);
|
||||
ctx.closePath();
|
||||
ctx.fill();
|
||||
// +y arrow
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(ORIGIN, 2);
|
||||
ctx.lineTo(ORIGIN - 4, arrowSize + 2);
|
||||
ctx.lineTo(ORIGIN + 4, arrowSize + 2);
|
||||
ctx.closePath();
|
||||
ctx.fill();
|
||||
|
||||
// Graduations (ticks + labels)
|
||||
ctx.strokeStyle = colors.axis;
|
||||
ctx.fillStyle = colors.axis;
|
||||
ctx.lineWidth = 1;
|
||||
ctx.font = "11px IBM Plex Mono, monospace";
|
||||
ctx.textAlign = "center";
|
||||
ctx.textBaseline = "top";
|
||||
for (let i = -X_RANGE; i <= X_RANGE; i++) {
|
||||
const px = toCanvasX(i);
|
||||
const py = toCanvasY(i);
|
||||
if (i !== 0) {
|
||||
// x-axis ticks
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(px, ORIGIN - 4);
|
||||
ctx.lineTo(px, ORIGIN + 4);
|
||||
ctx.stroke();
|
||||
if (i % AXIS_LABEL_STEP === 0) {
|
||||
ctx.fillText(String(i), px, ORIGIN + 8);
|
||||
}
|
||||
|
||||
// y-axis ticks
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(ORIGIN - 4, py);
|
||||
ctx.lineTo(ORIGIN + 4, py);
|
||||
ctx.stroke();
|
||||
if (i % AXIS_LABEL_STEP === 0) {
|
||||
ctx.textAlign = "right";
|
||||
ctx.textBaseline = "middle";
|
||||
ctx.fillText(String(i), ORIGIN - 8, py);
|
||||
ctx.textAlign = "center";
|
||||
ctx.textBaseline = "top";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Axis labels
|
||||
ctx.fillStyle = colors.axis;
|
||||
ctx.font = "12px IBM Plex Mono, monospace";
|
||||
ctx.textAlign = "right";
|
||||
ctx.textBaseline = "bottom";
|
||||
ctx.fillText("x", VIEW_SIZE - 8, ORIGIN - 6);
|
||||
ctx.textAlign = "left";
|
||||
ctx.textBaseline = "top";
|
||||
ctx.fillText("y", ORIGIN + 6, 6);
|
||||
|
||||
const drawLine = (
|
||||
m: number,
|
||||
c: number,
|
||||
|
|
|
|||
174
content/math/linear-programming/_index.md
Normal file
174
content/math/linear-programming/_index.md
Normal file
|
|
@ -0,0 +1,174 @@
|
|||
+++
|
||||
title = "Linear programming"
|
||||
description = "Graph linear inequalities, identify feasible regions, and optimise objective functions in two variables."
|
||||
template = "chapter.html"
|
||||
weight = 19
|
||||
[extra]
|
||||
subject = "math"
|
||||
chapter_id = "linear-programming"
|
||||
strand = "Number & Algebra"
|
||||
+++
|
||||
|
||||
<div class="book-prose">
|
||||
<p>
|
||||
Linear programming finds the best value (maximum or minimum) of a linear objective under linear
|
||||
constraints. In high school, we solve two-variable problems graphically.
|
||||
</p>
|
||||
|
||||
<h2 id="core-idea" class="book-prose__heading">Core idea</h2>
|
||||
<p>
|
||||
Optimize an objective like
|
||||
\[
|
||||
P=ax+by
|
||||
\]
|
||||
subject to inequalities such as \(x+y\le 12\), \(x\ge0\), \(y\ge0\).
|
||||
</p>
|
||||
|
||||
<h2 id="modeling" class="book-prose__heading">Modeling from context</h2>
|
||||
<p>
|
||||
Typical setup:
|
||||
</p>
|
||||
<ol>
|
||||
<li>Define variables (\(x,y\)).</li>
|
||||
<li>Write constraints from limits/resources.</li>
|
||||
<li>Write objective function (profit, cost, time, etc.).</li>
|
||||
<li>Graph constraints and find feasible region.</li>
|
||||
</ol>
|
||||
|
||||
<h2 id="graphing-constraints" class="book-prose__heading">Graphing constraints</h2>
|
||||
<p>
|
||||
For each inequality:
|
||||
</p>
|
||||
<ul>
|
||||
<li>Draw boundary line (use solid line for \(\le,\ge\); dashed for \(<,>\)).</li>
|
||||
<li>Test a point (often origin) to choose correct side.</li>
|
||||
<li>Combine all valid half-planes.</li>
|
||||
</ul>
|
||||
<p>
|
||||
Include non-negativity constraints \(x\ge0,y\ge0\) unless problem states otherwise.
|
||||
</p>
|
||||
|
||||
<h2 id="feasible-region" class="book-prose__heading">Feasible region</h2>
|
||||
<p>
|
||||
The feasible region is where all constraints hold at once. In school-level cases, it is usually a
|
||||
polygon (possibly unbounded).
|
||||
</p>
|
||||
|
||||
<h2 id="corner-point-principle" class="book-prose__heading">Corner-point principle</h2>
|
||||
<p>
|
||||
If an optimum exists for a bounded feasible region, it occurs at a vertex (corner point).
|
||||
</p>
|
||||
<p>
|
||||
So compute all feasible vertices, then evaluate objective at each.
|
||||
</p>
|
||||
|
||||
<h2 id="worked-example" class="book-prose__heading">Worked example</h2>
|
||||
<p>
|
||||
Maximize \(P=3x+2y\) subject to:
|
||||
</p>
|
||||
<p class="book-formula">\[
|
||||
x+y\le 8,\quad x+3y\le 12,\quad x\ge0,\ y\ge0.
|
||||
\]</p>
|
||||
<p>
|
||||
Vertices are \((0,0)\), \((8,0)\), \((0,4)\), and intersection of
|
||||
\(x+y=8\) with \(x+3y=12\), which is \((6,2)\).
|
||||
</p>
|
||||
<p>
|
||||
Evaluate:
|
||||
</p>
|
||||
<ul>
|
||||
<li>\((0,0)\Rightarrow P=0\)</li>
|
||||
<li>\((8,0)\Rightarrow P=24\)</li>
|
||||
<li>\((0,4)\Rightarrow P=8\)</li>
|
||||
<li>\((6,2)\Rightarrow P=22\)</li>
|
||||
</ul>
|
||||
<p>
|
||||
Maximum is \(24\) at \((8,0)\).
|
||||
</p>
|
||||
|
||||
<h2 id="special-cases" class="book-prose__heading">Special cases</h2>
|
||||
<ul>
|
||||
<li><strong>No feasible region:</strong> constraints are inconsistent.</li>
|
||||
<li><strong>Unbounded region:</strong> objective may have no maximum/minimum.</li>
|
||||
<li><strong>Multiple optima:</strong> objective line parallel to a feasible edge.</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="exam-strategy" class="book-prose__heading">Exam strategy</h2>
|
||||
<ul>
|
||||
<li>Label all boundary lines and intercepts clearly.</li>
|
||||
<li>Show shading logic for each inequality.</li>
|
||||
<li>List vertex coordinates before evaluating objective.</li>
|
||||
<li>Give final answer with units and variable interpretation.</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="book-prose">
|
||||
<h2 id="history" class="book-prose__heading">History</h2>
|
||||
<p>
|
||||
Linear programming developed in the 20th century for resource allocation and planning. George
|
||||
Dantzig's simplex method made large optimization problems practical in economics and operations
|
||||
research.
|
||||
</p>
|
||||
|
||||
<h2 id="derivation" class="book-prose__heading">Derivation and reasoning</h2>
|
||||
<h3 id="why-corners" class="book-prose__heading">Why corner points matter</h3>
|
||||
<p>
|
||||
Objective lines \(ax+by=c\) are parallel for different \(c\). Sliding this line across a polygonal
|
||||
feasible region reaches the last contact at a vertex (or an entire edge in tie cases).
|
||||
</p>
|
||||
|
||||
<h2 id="checkpoints" class="book-prose__heading">Checkpoints</h2>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
Plot \(x+y\le6,\ x\ge0,\ y\ge0\). List feasible vertices.
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> Vertices: \((0,0)\), \((6,0)\), \((0,6)\).</p>
|
||||
</div>
|
||||
</details>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
Maximize \(P=2x+y\) on vertices \((0,0)\), \((4,0)\), \((1,3)\), \((0,3)\).
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> Values \(0,8,5,3\). Maximum \(8\) at \((4,0)\).</p>
|
||||
</div>
|
||||
</details>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
Minimize \(C=5x+3y\) with feasible vertices \((0,2)\), \((2,1)\), \((3,4)\).
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> \(C=6,13,27\). Minimum \(6\) at \((0,2)\).</p>
|
||||
</div>
|
||||
</details>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
In a model, why are \(x\ge0,\ y\ge0\) often included?
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> Quantities like items, time, or material cannot be negative.</p>
|
||||
</div>
|
||||
</details>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
How can you detect possible multiple optimal solutions graphically?
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> Objective line is parallel to a boundary edge where both edge endpoints give the same optimum value.</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<h2 id="applications" class="book-prose__heading">Applications</h2>
|
||||
<ul>
|
||||
<li><strong>Production planning:</strong> maximize profit under labor and material limits.</li>
|
||||
<li><strong>Transport/logistics:</strong> minimize cost with capacity constraints.</li>
|
||||
<li><strong>Scheduling:</strong> optimize time allocation under availability rules.</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="references" class="book-prose__heading">References</h2>
|
||||
<ul>
|
||||
<li>Standard high-school extension units on graphical linear programming.</li>
|
||||
<li>Introductory operations research texts on feasible regions and corner-point optimization.</li>
|
||||
</ul>
|
||||
</div>
|
||||
92
content/math/linear-programming/core.html
Normal file
92
content/math/linear-programming/core.html
Normal file
|
|
@ -0,0 +1,92 @@
|
|||
<div class="book-prose">
|
||||
<p>
|
||||
Linear programming finds the best value (maximum or minimum) of a linear objective under linear
|
||||
constraints. In high school, we solve two-variable problems graphically.
|
||||
</p>
|
||||
|
||||
<h2 id="core-idea" class="book-prose__heading">Core idea</h2>
|
||||
<p>
|
||||
Optimize an objective like
|
||||
\[
|
||||
P=ax+by
|
||||
\]
|
||||
subject to inequalities such as \(x+y\le 12\), \(x\ge0\), \(y\ge0\).
|
||||
</p>
|
||||
|
||||
<h2 id="modeling" class="book-prose__heading">Modeling from context</h2>
|
||||
<p>
|
||||
Typical setup:
|
||||
</p>
|
||||
<ol>
|
||||
<li>Define variables (\(x,y\)).</li>
|
||||
<li>Write constraints from limits/resources.</li>
|
||||
<li>Write objective function (profit, cost, time, etc.).</li>
|
||||
<li>Graph constraints and find feasible region.</li>
|
||||
</ol>
|
||||
|
||||
<h2 id="graphing-constraints" class="book-prose__heading">Graphing constraints</h2>
|
||||
<p>
|
||||
For each inequality:
|
||||
</p>
|
||||
<ul>
|
||||
<li>Draw boundary line (use solid line for \(\le,\ge\); dashed for \(<,>\)).</li>
|
||||
<li>Test a point (often origin) to choose correct side.</li>
|
||||
<li>Combine all valid half-planes.</li>
|
||||
</ul>
|
||||
<p>
|
||||
Include non-negativity constraints \(x\ge0,y\ge0\) unless problem states otherwise.
|
||||
</p>
|
||||
|
||||
<h2 id="feasible-region" class="book-prose__heading">Feasible region</h2>
|
||||
<p>
|
||||
The feasible region is where all constraints hold at once. In school-level cases, it is usually a
|
||||
polygon (possibly unbounded).
|
||||
</p>
|
||||
|
||||
<h2 id="corner-point-principle" class="book-prose__heading">Corner-point principle</h2>
|
||||
<p>
|
||||
If an optimum exists for a bounded feasible region, it occurs at a vertex (corner point).
|
||||
</p>
|
||||
<p>
|
||||
So compute all feasible vertices, then evaluate objective at each.
|
||||
</p>
|
||||
|
||||
<h2 id="worked-example" class="book-prose__heading">Worked example</h2>
|
||||
<p>
|
||||
Maximize \(P=3x+2y\) subject to:
|
||||
</p>
|
||||
<p class="book-formula">\[
|
||||
x+y\le 8,\quad x+3y\le 12,\quad x\ge0,\ y\ge0.
|
||||
\]</p>
|
||||
<p>
|
||||
Vertices are \((0,0)\), \((8,0)\), \((0,4)\), and intersection of
|
||||
\(x+y=8\) with \(x+3y=12\), which is \((6,2)\).
|
||||
</p>
|
||||
<p>
|
||||
Evaluate:
|
||||
</p>
|
||||
<ul>
|
||||
<li>\((0,0)\Rightarrow P=0\)</li>
|
||||
<li>\((8,0)\Rightarrow P=24\)</li>
|
||||
<li>\((0,4)\Rightarrow P=8\)</li>
|
||||
<li>\((6,2)\Rightarrow P=22\)</li>
|
||||
</ul>
|
||||
<p>
|
||||
Maximum is \(24\) at \((8,0)\).
|
||||
</p>
|
||||
|
||||
<h2 id="special-cases" class="book-prose__heading">Special cases</h2>
|
||||
<ul>
|
||||
<li><strong>No feasible region:</strong> constraints are inconsistent.</li>
|
||||
<li><strong>Unbounded region:</strong> objective may have no maximum/minimum.</li>
|
||||
<li><strong>Multiple optima:</strong> objective line parallel to a feasible edge.</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="exam-strategy" class="book-prose__heading">Exam strategy</h2>
|
||||
<ul>
|
||||
<li>Label all boundary lines and intercepts clearly.</li>
|
||||
<li>Show shading logic for each inequality.</li>
|
||||
<li>List vertex coordinates before evaluating objective.</li>
|
||||
<li>Give final answer with units and variable interpretation.</li>
|
||||
</ul>
|
||||
</div>
|
||||
70
content/math/linear-programming/supplement.html
Normal file
70
content/math/linear-programming/supplement.html
Normal file
|
|
@ -0,0 +1,70 @@
|
|||
<div class="book-prose">
|
||||
<h2 id="history" class="book-prose__heading">History</h2>
|
||||
<p>
|
||||
Linear programming developed in the 20th century for resource allocation and planning. George
|
||||
Dantzig's simplex method made large optimization problems practical in economics and operations
|
||||
research.
|
||||
</p>
|
||||
|
||||
<h2 id="derivation" class="book-prose__heading">Derivation and reasoning</h2>
|
||||
<h3 id="why-corners" class="book-prose__heading">Why corner points matter</h3>
|
||||
<p>
|
||||
Objective lines \(ax+by=c\) are parallel for different \(c\). Sliding this line across a polygonal
|
||||
feasible region reaches the last contact at a vertex (or an entire edge in tie cases).
|
||||
</p>
|
||||
|
||||
<h2 id="checkpoints" class="book-prose__heading">Checkpoints</h2>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
Plot \(x+y\le6,\ x\ge0,\ y\ge0\). List feasible vertices.
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> Vertices: \((0,0)\), \((6,0)\), \((0,6)\).</p>
|
||||
</div>
|
||||
</details>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
Maximize \(P=2x+y\) on vertices \((0,0)\), \((4,0)\), \((1,3)\), \((0,3)\).
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> Values \(0,8,5,3\). Maximum \(8\) at \((4,0)\).</p>
|
||||
</div>
|
||||
</details>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
Minimize \(C=5x+3y\) with feasible vertices \((0,2)\), \((2,1)\), \((3,4)\).
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> \(C=6,13,27\). Minimum \(6\) at \((0,2)\).</p>
|
||||
</div>
|
||||
</details>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
In a model, why are \(x\ge0,\ y\ge0\) often included?
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> Quantities like items, time, or material cannot be negative.</p>
|
||||
</div>
|
||||
</details>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">
|
||||
How can you detect possible multiple optimal solutions graphically?
|
||||
</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> Objective line is parallel to a boundary edge where both edge endpoints give the same optimum value.</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<h2 id="applications" class="book-prose__heading">Applications</h2>
|
||||
<ul>
|
||||
<li><strong>Production planning:</strong> maximize profit under labor and material limits.</li>
|
||||
<li><strong>Transport/logistics:</strong> minimize cost with capacity constraints.</li>
|
||||
<li><strong>Scheduling:</strong> optimize time allocation under availability rules.</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="references" class="book-prose__heading">References</h2>
|
||||
<ul>
|
||||
<li>Standard high-school extension units on graphical linear programming.</li>
|
||||
<li>Introductory operations research texts on feasible regions and corner-point optimization.</li>
|
||||
</ul>
|
||||
</div>
|
||||
169
content/math/sequences-series/_index.md
Normal file
169
content/math/sequences-series/_index.md
Normal file
|
|
@ -0,0 +1,169 @@
|
|||
+++
|
||||
title = "Sequences & series"
|
||||
description = "Work with arithmetic and geometric sequences, sigma notation, and finite summation formulas."
|
||||
template = "chapter.html"
|
||||
weight = 17
|
||||
[extra]
|
||||
subject = "math"
|
||||
chapter_id = "sequences-series"
|
||||
strand = "Number & Algebra"
|
||||
+++
|
||||
|
||||
<div class="book-prose">
|
||||
<p>
|
||||
A <strong>sequence</strong> is an ordered list of numbers. A <strong>series</strong> is the sum of
|
||||
terms in a sequence. These ideas are key in algebra, finance, and modeling.
|
||||
</p>
|
||||
|
||||
<h2 id="sequence-notation" class="book-prose__heading">Sequence notation</h2>
|
||||
<p>
|
||||
Terms are often written \(u_1,u_2,u_3,\dots\) where \(u_n\) is the \(n\)-th term.
|
||||
</p>
|
||||
<p><strong>Example:</strong> \(2,5,8,11,\dots\) has \(u_1=2\), \(u_2=5\), \(u_3=8\).</p>
|
||||
|
||||
<h2 id="arithmetic-sequences" class="book-prose__heading">Arithmetic sequences</h2>
|
||||
<p>
|
||||
Difference between consecutive terms is constant \(d\).
|
||||
</p>
|
||||
<p class="book-formula">\[
|
||||
u_n=a+(n-1)d
|
||||
\]</p>
|
||||
<p>
|
||||
where \(a\) is first term.
|
||||
</p>
|
||||
<p><strong>Example:</strong> \(a=4,d=3\Rightarrow u_n=4+3(n-1)=3n+1\).</p>
|
||||
|
||||
<h2 id="arithmetic-series" class="book-prose__heading">Arithmetic series</h2>
|
||||
<p>
|
||||
Sum of first \(n\) terms:
|
||||
</p>
|
||||
<p class="book-formula">\[
|
||||
S_n=\frac{n}{2}\big(2a+(n-1)d\big)=\frac{n}{2}(a+l)
|
||||
\]</p>
|
||||
<p>
|
||||
where \(l\) is the \(n\)-th term.
|
||||
</p>
|
||||
|
||||
<h2 id="geometric-sequences" class="book-prose__heading">Geometric sequences</h2>
|
||||
<p>
|
||||
Ratio between consecutive terms is constant \(r\).
|
||||
</p>
|
||||
<p class="book-formula">\[
|
||||
u_n=ar^{n-1}
|
||||
\]</p>
|
||||
<p><strong>Example:</strong> \(3,6,12,24,\dots\) has \(a=3,r=2\).</p>
|
||||
|
||||
<h2 id="geometric-series" class="book-prose__heading">Geometric series</h2>
|
||||
<p>
|
||||
For \(r\ne1\), sum of first \(n\) terms:
|
||||
</p>
|
||||
<p class="book-formula">\[
|
||||
S_n=a\frac{1-r^n}{1-r}
|
||||
\]</p>
|
||||
<p>
|
||||
Equivalent form: \(S_n=a\frac{r^n-1}{r-1}\).
|
||||
</p>
|
||||
|
||||
<h2 id="infinite-geometric" class="book-prose__heading">Infinite geometric series</h2>
|
||||
<p>
|
||||
If \(|r|<1\), the sum to infinity exists:
|
||||
</p>
|
||||
<p class="book-formula">\[
|
||||
S_\infty=\frac{a}{1-r}.
|
||||
\]</p>
|
||||
<p>
|
||||
If \(|r|\ge1\), no finite sum to infinity.
|
||||
</p>
|
||||
|
||||
<h2 id="sigma-notation" class="book-prose__heading">Sigma notation</h2>
|
||||
<p>
|
||||
\[
|
||||
\sum_{k=1}^{n} f(k)
|
||||
\]
|
||||
means add values of \(f(k)\) from \(k=1\) to \(k=n\).
|
||||
</p>
|
||||
<p><strong>Example:</strong> \(\sum_{k=1}^{4}(2k+1)=3+5+7+9=24.\)</p>
|
||||
|
||||
<h2 id="problem-solving" class="book-prose__heading">Typical problem-solving workflow</h2>
|
||||
<ol>
|
||||
<li>Identify arithmetic or geometric behavior.</li>
|
||||
<li>Find key parameters (\(a,d\) or \(a,r\)).</li>
|
||||
<li>Use \(u_n\) for term questions, \(S_n\) for sum questions.</li>
|
||||
<li>Check reasonableness (growth/decay, sign, size).</li>
|
||||
</ol>
|
||||
|
||||
<h2 id="exam-strategy" class="book-prose__heading">Exam strategy</h2>
|
||||
<ul>
|
||||
<li>Do not mix \(u_n\) and \(S_n\) formulas.</li>
|
||||
<li>For geometric sums, check \(r\ne1\) before applying formula.</li>
|
||||
<li>For infinity sums, always test \(|r|<1\).</li>
|
||||
<li>Define variables clearly before solving word problems.</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="book-prose">
|
||||
<h2 id="history" class="book-prose__heading">History</h2>
|
||||
<p>
|
||||
Sequences and sums appear in ancient mathematics, including arithmetic progressions used for
|
||||
counting and trade. Later, geometric series became central in finance and calculus.
|
||||
</p>
|
||||
|
||||
<h2 id="derivation" class="book-prose__heading">Derivation and reasoning</h2>
|
||||
<h3 id="derive-arithmetic-sum" class="book-prose__heading">Why the arithmetic sum formula works</h3>
|
||||
<p>
|
||||
Write \(S_n=a+(a+d)+\dots+l\) and reverse it. Adding line-by-line gives \(2S_n=n(a+l)\), so
|
||||
\(S_n=\frac{n}{2}(a+l)\).
|
||||
</p>
|
||||
<h3 id="derive-geometric-sum" class="book-prose__heading">Why the geometric sum formula works</h3>
|
||||
<p>
|
||||
Let \(S_n=a+ar+\dots+ar^{n-1}\). Multiply by \(r\), subtract, and simplify:
|
||||
\[
|
||||
(1-r)S_n=a(1-r^n).
|
||||
\]
|
||||
</p>
|
||||
|
||||
<h2 id="checkpoints" class="book-prose__heading">Checkpoints</h2>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">Find the 20th term of \(5,8,11,\dots\).</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> \(u_{20}=5+19(3)=62\).</p>
|
||||
</div>
|
||||
</details>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">Find \(S_{30}\) for \(2,5,8,\dots\).</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> \(a=2,d=3\Rightarrow S_{30}=\frac{30}{2}[2(2)+29(3)]=1365\).</p>
|
||||
</div>
|
||||
</details>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">For \(3,6,12,\dots\), find the 8th term.</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> \(u_8=3\cdot2^7=384\).</p>
|
||||
</div>
|
||||
</details>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">Compute \(1+\frac12+\frac14+\frac18+\dots\).</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> \(a=1,r=\frac12\Rightarrow S_\infty=\frac{1}{1-1/2}=2\).</p>
|
||||
</div>
|
||||
</details>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">Evaluate \(\sum_{k=1}^{5}(k+2)\).</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> \(3+4+5+6+7=25\).</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<h2 id="applications" class="book-prose__heading">Applications</h2>
|
||||
<ul>
|
||||
<li><strong>Savings plans:</strong> recurring deposits form sequences and cumulative sums.</li>
|
||||
<li><strong>Population models:</strong> repeated growth can be modeled geometrically.</li>
|
||||
<li><strong>Computer science:</strong> loops and algorithm costs often use summation notation.</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="references" class="book-prose__heading">References</h2>
|
||||
<ul>
|
||||
<li>Standard high-school algebra curricula on arithmetic and geometric progressions.</li>
|
||||
<li>Precalculus texts on sigma notation and finite/infinite geometric series.</li>
|
||||
</ul>
|
||||
</div>
|
||||
91
content/math/sequences-series/core.html
Normal file
91
content/math/sequences-series/core.html
Normal file
|
|
@ -0,0 +1,91 @@
|
|||
<div class="book-prose">
|
||||
<p>
|
||||
A <strong>sequence</strong> is an ordered list of numbers. A <strong>series</strong> is the sum of
|
||||
terms in a sequence. These ideas are key in algebra, finance, and modeling.
|
||||
</p>
|
||||
|
||||
<h2 id="sequence-notation" class="book-prose__heading">Sequence notation</h2>
|
||||
<p>
|
||||
Terms are often written \(u_1,u_2,u_3,\dots\) where \(u_n\) is the \(n\)-th term.
|
||||
</p>
|
||||
<p><strong>Example:</strong> \(2,5,8,11,\dots\) has \(u_1=2\), \(u_2=5\), \(u_3=8\).</p>
|
||||
|
||||
<h2 id="arithmetic-sequences" class="book-prose__heading">Arithmetic sequences</h2>
|
||||
<p>
|
||||
Difference between consecutive terms is constant \(d\).
|
||||
</p>
|
||||
<p class="book-formula">\[
|
||||
u_n=a+(n-1)d
|
||||
\]</p>
|
||||
<p>
|
||||
where \(a\) is first term.
|
||||
</p>
|
||||
<p><strong>Example:</strong> \(a=4,d=3\Rightarrow u_n=4+3(n-1)=3n+1\).</p>
|
||||
|
||||
<h2 id="arithmetic-series" class="book-prose__heading">Arithmetic series</h2>
|
||||
<p>
|
||||
Sum of first \(n\) terms:
|
||||
</p>
|
||||
<p class="book-formula">\[
|
||||
S_n=\frac{n}{2}\big(2a+(n-1)d\big)=\frac{n}{2}(a+l)
|
||||
\]</p>
|
||||
<p>
|
||||
where \(l\) is the \(n\)-th term.
|
||||
</p>
|
||||
|
||||
<h2 id="geometric-sequences" class="book-prose__heading">Geometric sequences</h2>
|
||||
<p>
|
||||
Ratio between consecutive terms is constant \(r\).
|
||||
</p>
|
||||
<p class="book-formula">\[
|
||||
u_n=ar^{n-1}
|
||||
\]</p>
|
||||
<p><strong>Example:</strong> \(3,6,12,24,\dots\) has \(a=3,r=2\).</p>
|
||||
|
||||
<h2 id="geometric-series" class="book-prose__heading">Geometric series</h2>
|
||||
<p>
|
||||
For \(r\ne1\), sum of first \(n\) terms:
|
||||
</p>
|
||||
<p class="book-formula">\[
|
||||
S_n=a\frac{1-r^n}{1-r}
|
||||
\]</p>
|
||||
<p>
|
||||
Equivalent form: \(S_n=a\frac{r^n-1}{r-1}\).
|
||||
</p>
|
||||
|
||||
<h2 id="infinite-geometric" class="book-prose__heading">Infinite geometric series</h2>
|
||||
<p>
|
||||
If \(|r|<1\), the sum to infinity exists:
|
||||
</p>
|
||||
<p class="book-formula">\[
|
||||
S_\infty=\frac{a}{1-r}.
|
||||
\]</p>
|
||||
<p>
|
||||
If \(|r|\ge1\), no finite sum to infinity.
|
||||
</p>
|
||||
|
||||
<h2 id="sigma-notation" class="book-prose__heading">Sigma notation</h2>
|
||||
<p>
|
||||
\[
|
||||
\sum_{k=1}^{n} f(k)
|
||||
\]
|
||||
means add values of \(f(k)\) from \(k=1\) to \(k=n\).
|
||||
</p>
|
||||
<p><strong>Example:</strong> \(\sum_{k=1}^{4}(2k+1)=3+5+7+9=24.\)</p>
|
||||
|
||||
<h2 id="problem-solving" class="book-prose__heading">Typical problem-solving workflow</h2>
|
||||
<ol>
|
||||
<li>Identify arithmetic or geometric behavior.</li>
|
||||
<li>Find key parameters (\(a,d\) or \(a,r\)).</li>
|
||||
<li>Use \(u_n\) for term questions, \(S_n\) for sum questions.</li>
|
||||
<li>Check reasonableness (growth/decay, sign, size).</li>
|
||||
</ol>
|
||||
|
||||
<h2 id="exam-strategy" class="book-prose__heading">Exam strategy</h2>
|
||||
<ul>
|
||||
<li>Do not mix \(u_n\) and \(S_n\) formulas.</li>
|
||||
<li>For geometric sums, check \(r\ne1\) before applying formula.</li>
|
||||
<li>For infinity sums, always test \(|r|<1\).</li>
|
||||
<li>Define variables clearly before solving word problems.</li>
|
||||
</ul>
|
||||
</div>
|
||||
66
content/math/sequences-series/supplement.html
Normal file
66
content/math/sequences-series/supplement.html
Normal file
|
|
@ -0,0 +1,66 @@
|
|||
<div class="book-prose">
|
||||
<h2 id="history" class="book-prose__heading">History</h2>
|
||||
<p>
|
||||
Sequences and sums appear in ancient mathematics, including arithmetic progressions used for
|
||||
counting and trade. Later, geometric series became central in finance and calculus.
|
||||
</p>
|
||||
|
||||
<h2 id="derivation" class="book-prose__heading">Derivation and reasoning</h2>
|
||||
<h3 id="derive-arithmetic-sum" class="book-prose__heading">Why the arithmetic sum formula works</h3>
|
||||
<p>
|
||||
Write \(S_n=a+(a+d)+\dots+l\) and reverse it. Adding line-by-line gives \(2S_n=n(a+l)\), so
|
||||
\(S_n=\frac{n}{2}(a+l)\).
|
||||
</p>
|
||||
<h3 id="derive-geometric-sum" class="book-prose__heading">Why the geometric sum formula works</h3>
|
||||
<p>
|
||||
Let \(S_n=a+ar+\dots+ar^{n-1}\). Multiply by \(r\), subtract, and simplify:
|
||||
\[
|
||||
(1-r)S_n=a(1-r^n).
|
||||
\]
|
||||
</p>
|
||||
|
||||
<h2 id="checkpoints" class="book-prose__heading">Checkpoints</h2>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">Find the 20th term of \(5,8,11,\dots\).</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> \(u_{20}=5+19(3)=62\).</p>
|
||||
</div>
|
||||
</details>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">Find \(S_{30}\) for \(2,5,8,\dots\).</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> \(a=2,d=3\Rightarrow S_{30}=\frac{30}{2}[2(2)+29(3)]=1365\).</p>
|
||||
</div>
|
||||
</details>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">For \(3,6,12,\dots\), find the 8th term.</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> \(u_8=3\cdot2^7=384\).</p>
|
||||
</div>
|
||||
</details>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">Compute \(1+\frac12+\frac14+\frac18+\dots\).</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> \(a=1,r=\frac12\Rightarrow S_\infty=\frac{1}{1-1/2}=2\).</p>
|
||||
</div>
|
||||
</details>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">Evaluate \(\sum_{k=1}^{5}(k+2)\).</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> \(3+4+5+6+7=25\).</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<h2 id="applications" class="book-prose__heading">Applications</h2>
|
||||
<ul>
|
||||
<li><strong>Savings plans:</strong> recurring deposits form sequences and cumulative sums.</li>
|
||||
<li><strong>Population models:</strong> repeated growth can be modeled geometrically.</li>
|
||||
<li><strong>Computer science:</strong> loops and algorithm costs often use summation notation.</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="references" class="book-prose__heading">References</h2>
|
||||
<ul>
|
||||
<li>Standard high-school algebra curricula on arithmetic and geometric progressions.</li>
|
||||
<li>Precalculus texts on sigma notation and finite/infinite geometric series.</li>
|
||||
</ul>
|
||||
</div>
|
||||
152
content/math/variations/_index.md
Normal file
152
content/math/variations/_index.md
Normal file
|
|
@ -0,0 +1,152 @@
|
|||
+++
|
||||
title = "Variations"
|
||||
description = "Model direct, inverse, joint, and partial variation and solve combined variation problems."
|
||||
template = "chapter.html"
|
||||
weight = 18
|
||||
[extra]
|
||||
subject = "math"
|
||||
chapter_id = "variations"
|
||||
strand = "Number & Algebra"
|
||||
+++
|
||||
|
||||
<div class="book-prose">
|
||||
<p>
|
||||
Variation describes how one quantity changes with another. It turns word statements into useful
|
||||
algebraic models.
|
||||
</p>
|
||||
|
||||
<h2 id="direct-variation" class="book-prose__heading">Direct variation</h2>
|
||||
<p>
|
||||
\(y\) varies directly as \(x\):
|
||||
\[
|
||||
y\propto x \quad\Rightarrow\quad y=kx
|
||||
\]
|
||||
where \(k\) is the constant of variation.
|
||||
</p>
|
||||
<p><strong>Example:</strong> If \(y=18\) when \(x=6\), then \(k=3\), so \(y=3x\).</p>
|
||||
|
||||
<h2 id="inverse-variation" class="book-prose__heading">Inverse variation</h2>
|
||||
<p>
|
||||
\(y\) varies inversely as \(x\):
|
||||
\[
|
||||
y\propto\frac1x \quad\Rightarrow\quad y=\frac{k}{x}.
|
||||
\]
|
||||
</p>
|
||||
<p><strong>Example:</strong> If \(y=5\) when \(x=4\), then \(k=20\), so \(y=\frac{20}{x}\).</p>
|
||||
|
||||
<h2 id="power-variation" class="book-prose__heading">Variation with powers</h2>
|
||||
<p>
|
||||
You may see statements like:
|
||||
</p>
|
||||
<ul>
|
||||
<li>\(y\propto x^2 \Rightarrow y=kx^2\)</li>
|
||||
<li>\(y\propto \sqrt{x} \Rightarrow y=k\sqrt{x}\)</li>
|
||||
<li>\(y\propto \frac{1}{x^2} \Rightarrow y=\frac{k}{x^2}\)</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="joint-variation" class="book-prose__heading">Joint variation</h2>
|
||||
<p>
|
||||
If \(y\) varies jointly as \(x\) and \(z\):
|
||||
\[
|
||||
y\propto xz \Rightarrow y=kxz.
|
||||
\]
|
||||
</p>
|
||||
<p><strong>Example:</strong> \(y=24\) when \(x=2,z=3\Rightarrow k=4\), so \(y=4xz\).</p>
|
||||
|
||||
<h2 id="partial-variation" class="book-prose__heading">Partial variation</h2>
|
||||
<p>
|
||||
If \(y\) varies partly as \(x\), model has constant and variable part:
|
||||
\[
|
||||
y=mx+c,\quad c\ne0.
|
||||
\]
|
||||
</p>
|
||||
<p>
|
||||
This appears in pricing: fixed fee + per-unit charge.
|
||||
</p>
|
||||
|
||||
<h2 id="solving-workflow" class="book-prose__heading">Solving workflow</h2>
|
||||
<ol>
|
||||
<li>Translate words into proportional equation with \(k\).</li>
|
||||
<li>Use given data to find \(k\).</li>
|
||||
<li>Substitute required values to answer question.</li>
|
||||
<li>Check units and reasonableness.</li>
|
||||
</ol>
|
||||
|
||||
<h2 id="word-problems" class="book-prose__heading">Common word-problem forms</h2>
|
||||
<ul>
|
||||
<li>“\(A\) is directly proportional to \(B\)”</li>
|
||||
<li>“\(A\) varies inversely as \(B\)”</li>
|
||||
<li>“\(A\) varies jointly as \(B\) and \(C\)”</li>
|
||||
<li>“\(A\) varies directly as square/cube of \(B\)”</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="exam-strategy" class="book-prose__heading">Exam strategy</h2>
|
||||
<ul>
|
||||
<li>Always introduce \(k\) first before substituting numbers.</li>
|
||||
<li>Keep symbolic form until \(k\) is found.</li>
|
||||
<li>For inverse models, domain often excludes zero.</li>
|
||||
<li>State final answer with units when applicable.</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="book-prose">
|
||||
<h2 id="history" class="book-prose__heading">History</h2>
|
||||
<p>
|
||||
Variation models grew from early physics and astronomy, where scientists needed formulas for how
|
||||
one quantity depends on another. The language of proportionality became a bridge between algebra
|
||||
and real measurements.
|
||||
</p>
|
||||
|
||||
<h2 id="derivation" class="book-prose__heading">Derivation and reasoning</h2>
|
||||
<h3 id="why-constant-k" class="book-prose__heading">Why we use a constant \(k\)</h3>
|
||||
<p>
|
||||
“Directly proportional” means ratio \(\frac{y}{x}\) stays constant, so \(\frac{y}{x}=k\) and
|
||||
\(y=kx\). For inverse variation, product \(xy\) stays constant, so \(xy=k\).
|
||||
</p>
|
||||
|
||||
<h2 id="checkpoints" class="book-prose__heading">Checkpoints</h2>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">If \(y\propto x\) and \(y=15\) when \(x=3\), find \(y\) when \(x=10\).</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> \(k=5\Rightarrow y=5x\Rightarrow y=50\).</p>
|
||||
</div>
|
||||
</details>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">If \(y\propto \frac1x\) and \(y=8\) when \(x=5\), find \(y\) when \(x=20\).</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> \(k=40\Rightarrow y=\frac{40}{x}\Rightarrow y=2\).</p>
|
||||
</div>
|
||||
</details>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">\(y\) varies as \(x^2\). If \(y=27\) when \(x=3\), find \(y\) when \(x=5\).</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> \(y=kx^2,\ k=3\Rightarrow y=3(25)=75\).</p>
|
||||
</div>
|
||||
</details>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">\(y\) varies jointly as \(x\) and \(z\). If \(y=30\) when \(x=3,z=2\), find \(y\) when \(x=5,z=4\).</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> \(y=kxz,\ k=5\Rightarrow y=5(5)(4)=100\).</p>
|
||||
</div>
|
||||
</details>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">A taxi fare \(F\) varies partly as distance \(d\): \(F=md+c\). If \(F=26\) at \(d=8\), and \(F=38\) at \(d=14\), find \(m,c\).</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> Solve two equations: \(8m+c=26,\ 14m+c=38\).</p>
|
||||
<p>\(6m=12\Rightarrow m=2,\ c=10\). So \(F=2d+10\).</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<h2 id="applications" class="book-prose__heading">Applications</h2>
|
||||
<ul>
|
||||
<li><strong>Physics:</strong> pressure, speed, and force models often use direct/inverse variation.</li>
|
||||
<li><strong>Business:</strong> cost models combine fixed and variable components.</li>
|
||||
<li><strong>Engineering:</strong> scaling laws use power variation relations.</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="references" class="book-prose__heading">References</h2>
|
||||
<ul>
|
||||
<li>Standard high-school algebra units on direct and inverse variation.</li>
|
||||
<li>Elementary modeling texts for joint and partial variation.</li>
|
||||
</ul>
|
||||
</div>
|
||||
79
content/math/variations/core.html
Normal file
79
content/math/variations/core.html
Normal file
|
|
@ -0,0 +1,79 @@
|
|||
<div class="book-prose">
|
||||
<p>
|
||||
Variation describes how one quantity changes with another. It turns word statements into useful
|
||||
algebraic models.
|
||||
</p>
|
||||
|
||||
<h2 id="direct-variation" class="book-prose__heading">Direct variation</h2>
|
||||
<p>
|
||||
\(y\) varies directly as \(x\):
|
||||
\[
|
||||
y\propto x \quad\Rightarrow\quad y=kx
|
||||
\]
|
||||
where \(k\) is the constant of variation.
|
||||
</p>
|
||||
<p><strong>Example:</strong> If \(y=18\) when \(x=6\), then \(k=3\), so \(y=3x\).</p>
|
||||
|
||||
<h2 id="inverse-variation" class="book-prose__heading">Inverse variation</h2>
|
||||
<p>
|
||||
\(y\) varies inversely as \(x\):
|
||||
\[
|
||||
y\propto\frac1x \quad\Rightarrow\quad y=\frac{k}{x}.
|
||||
\]
|
||||
</p>
|
||||
<p><strong>Example:</strong> If \(y=5\) when \(x=4\), then \(k=20\), so \(y=\frac{20}{x}\).</p>
|
||||
|
||||
<h2 id="power-variation" class="book-prose__heading">Variation with powers</h2>
|
||||
<p>
|
||||
You may see statements like:
|
||||
</p>
|
||||
<ul>
|
||||
<li>\(y\propto x^2 \Rightarrow y=kx^2\)</li>
|
||||
<li>\(y\propto \sqrt{x} \Rightarrow y=k\sqrt{x}\)</li>
|
||||
<li>\(y\propto \frac{1}{x^2} \Rightarrow y=\frac{k}{x^2}\)</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="joint-variation" class="book-prose__heading">Joint variation</h2>
|
||||
<p>
|
||||
If \(y\) varies jointly as \(x\) and \(z\):
|
||||
\[
|
||||
y\propto xz \Rightarrow y=kxz.
|
||||
\]
|
||||
</p>
|
||||
<p><strong>Example:</strong> \(y=24\) when \(x=2,z=3\Rightarrow k=4\), so \(y=4xz\).</p>
|
||||
|
||||
<h2 id="partial-variation" class="book-prose__heading">Partial variation</h2>
|
||||
<p>
|
||||
If \(y\) varies partly as \(x\), model has constant and variable part:
|
||||
\[
|
||||
y=mx+c,\quad c\ne0.
|
||||
\]
|
||||
</p>
|
||||
<p>
|
||||
This appears in pricing: fixed fee + per-unit charge.
|
||||
</p>
|
||||
|
||||
<h2 id="solving-workflow" class="book-prose__heading">Solving workflow</h2>
|
||||
<ol>
|
||||
<li>Translate words into proportional equation with \(k\).</li>
|
||||
<li>Use given data to find \(k\).</li>
|
||||
<li>Substitute required values to answer question.</li>
|
||||
<li>Check units and reasonableness.</li>
|
||||
</ol>
|
||||
|
||||
<h2 id="word-problems" class="book-prose__heading">Common word-problem forms</h2>
|
||||
<ul>
|
||||
<li>“\(A\) is directly proportional to \(B\)”</li>
|
||||
<li>“\(A\) varies inversely as \(B\)”</li>
|
||||
<li>“\(A\) varies jointly as \(B\) and \(C\)”</li>
|
||||
<li>“\(A\) varies directly as square/cube of \(B\)”</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="exam-strategy" class="book-prose__heading">Exam strategy</h2>
|
||||
<ul>
|
||||
<li>Always introduce \(k\) first before substituting numbers.</li>
|
||||
<li>Keep symbolic form until \(k\) is found.</li>
|
||||
<li>For inverse models, domain often excludes zero.</li>
|
||||
<li>State final answer with units when applicable.</li>
|
||||
</ul>
|
||||
</div>
|
||||
61
content/math/variations/supplement.html
Normal file
61
content/math/variations/supplement.html
Normal file
|
|
@ -0,0 +1,61 @@
|
|||
<div class="book-prose">
|
||||
<h2 id="history" class="book-prose__heading">History</h2>
|
||||
<p>
|
||||
Variation models grew from early physics and astronomy, where scientists needed formulas for how
|
||||
one quantity depends on another. The language of proportionality became a bridge between algebra
|
||||
and real measurements.
|
||||
</p>
|
||||
|
||||
<h2 id="derivation" class="book-prose__heading">Derivation and reasoning</h2>
|
||||
<h3 id="why-constant-k" class="book-prose__heading">Why we use a constant \(k\)</h3>
|
||||
<p>
|
||||
“Directly proportional” means ratio \(\frac{y}{x}\) stays constant, so \(\frac{y}{x}=k\) and
|
||||
\(y=kx\). For inverse variation, product \(xy\) stays constant, so \(xy=k\).
|
||||
</p>
|
||||
|
||||
<h2 id="checkpoints" class="book-prose__heading">Checkpoints</h2>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">If \(y\propto x\) and \(y=15\) when \(x=3\), find \(y\) when \(x=10\).</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> \(k=5\Rightarrow y=5x\Rightarrow y=50\).</p>
|
||||
</div>
|
||||
</details>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">If \(y\propto \frac1x\) and \(y=8\) when \(x=5\), find \(y\) when \(x=20\).</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> \(k=40\Rightarrow y=\frac{40}{x}\Rightarrow y=2\).</p>
|
||||
</div>
|
||||
</details>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">\(y\) varies as \(x^2\). If \(y=27\) when \(x=3\), find \(y\) when \(x=5\).</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> \(y=kx^2,\ k=3\Rightarrow y=3(25)=75\).</p>
|
||||
</div>
|
||||
</details>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">\(y\) varies jointly as \(x\) and \(z\). If \(y=30\) when \(x=3,z=2\), find \(y\) when \(x=5,z=4\).</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> \(y=kxz,\ k=5\Rightarrow y=5(5)(4)=100\).</p>
|
||||
</div>
|
||||
</details>
|
||||
<details class="book-question">
|
||||
<summary class="book-question__prompt">A taxi fare \(F\) varies partly as distance \(d\): \(F=md+c\). If \(F=26\) at \(d=8\), and \(F=38\) at \(d=14\), find \(m,c\).</summary>
|
||||
<div class="book-question__solution">
|
||||
<p><strong>Answer:</strong> Solve two equations: \(8m+c=26,\ 14m+c=38\).</p>
|
||||
<p>\(6m=12\Rightarrow m=2,\ c=10\). So \(F=2d+10\).</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<h2 id="applications" class="book-prose__heading">Applications</h2>
|
||||
<ul>
|
||||
<li><strong>Physics:</strong> pressure, speed, and force models often use direct/inverse variation.</li>
|
||||
<li><strong>Business:</strong> cost models combine fixed and variable components.</li>
|
||||
<li><strong>Engineering:</strong> scaling laws use power variation relations.</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="references" class="book-prose__heading">References</h2>
|
||||
<ul>
|
||||
<li>Standard high-school algebra units on direct and inverse variation.</li>
|
||||
<li>Elementary modeling texts for joint and partial variation.</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -519,7 +519,7 @@
|
|||
"slug": "factor-remainder-theorems",
|
||||
"title": "Factor & remainder theorems",
|
||||
"description": "Use the factor and remainder theorems to factorise higher-degree polynomials and solve related equations.",
|
||||
"status": "planned",
|
||||
"status": "live",
|
||||
"tier": "non-foundation",
|
||||
"curriculumCoverage": {
|
||||
"DSE": "extension",
|
||||
|
|
@ -534,7 +534,7 @@
|
|||
"slug": "complex-numbers",
|
||||
"title": "Complex numbers",
|
||||
"description": "Represent complex numbers in Cartesian form and perform operations including conjugates and division.",
|
||||
"status": "planned",
|
||||
"status": "live",
|
||||
"tier": "non-foundation",
|
||||
"curriculumCoverage": {
|
||||
"DSE": "extension",
|
||||
|
|
@ -549,7 +549,7 @@
|
|||
"slug": "functions-graphs",
|
||||
"title": "Functions & graphs",
|
||||
"description": "Study domains, ranges, transformations, and graphs of common functions including quadratics and rationals.",
|
||||
"status": "planned",
|
||||
"status": "live",
|
||||
"curriculumCoverage": {
|
||||
"DSE": "core",
|
||||
"IGCSE": "core",
|
||||
|
|
@ -567,7 +567,7 @@
|
|||
"slug": "exponential-logarithmic",
|
||||
"title": "Exponential & logarithmic functions",
|
||||
"description": "Explore laws of logarithms, exponential growth and decay, and sketch related graphs.",
|
||||
"status": "planned",
|
||||
"status": "live",
|
||||
"tier": "non-foundation",
|
||||
"curriculumCoverage": {
|
||||
"DSE": "extension",
|
||||
|
|
@ -586,7 +586,7 @@
|
|||
"slug": "sequences-series",
|
||||
"title": "Sequences & series",
|
||||
"description": "Work with arithmetic and geometric sequences, sigma notation, and finite summation formulas.",
|
||||
"status": "planned",
|
||||
"status": "live",
|
||||
"curriculumCoverage": {
|
||||
"DSE": "core",
|
||||
"IGCSE": "core",
|
||||
|
|
@ -604,7 +604,7 @@
|
|||
"slug": "variations",
|
||||
"title": "Variations",
|
||||
"description": "Model direct, inverse, joint, and partial variation and solve combined variation problems.",
|
||||
"status": "planned",
|
||||
"status": "live",
|
||||
"curriculumCoverage": {
|
||||
"DSE": "core",
|
||||
"IB": "related",
|
||||
|
|
@ -618,7 +618,7 @@
|
|||
"slug": "linear-programming",
|
||||
"title": "Linear programming",
|
||||
"description": "Graph linear inequalities, identify feasible regions, and optimise objective functions in two variables.",
|
||||
"status": "planned",
|
||||
"status": "live",
|
||||
"tier": "non-foundation",
|
||||
"curriculumCoverage": {
|
||||
"DSE": "extension",
|
||||
|
|
|
|||
|
|
@ -38,6 +38,29 @@ function mountFooterYear() {
|
|||
}
|
||||
}
|
||||
|
||||
function localizeChapterLastModified() {
|
||||
const times = document.querySelectorAll<HTMLTimeElement>("time[data-localize-lastmod]");
|
||||
if (times.length === 0) return;
|
||||
|
||||
const formatter = new Intl.DateTimeFormat(undefined, {
|
||||
year: "numeric",
|
||||
month: "short",
|
||||
day: "2-digit",
|
||||
hour: "2-digit",
|
||||
minute: "2-digit",
|
||||
timeZoneName: "short",
|
||||
});
|
||||
|
||||
for (const timeEl of times) {
|
||||
const iso = timeEl.getAttribute("datetime");
|
||||
if (!iso) continue;
|
||||
|
||||
const date = new Date(iso);
|
||||
if (Number.isNaN(date.getTime())) continue;
|
||||
timeEl.textContent = formatter.format(date);
|
||||
}
|
||||
}
|
||||
|
||||
function scheduleBookMath() {
|
||||
void import("./lib/katex").then(({ renderBookMath }) => {
|
||||
requestAnimationFrame(() => renderBookMath());
|
||||
|
|
@ -150,6 +173,7 @@ function mountSubjectInit() {
|
|||
initBookMath();
|
||||
mountSubjectInit();
|
||||
mountChapterWidgets();
|
||||
localizeChapterLastModified();
|
||||
|
||||
const catalogRoot = document.getElementById("catalog-app");
|
||||
if (catalogRoot) {
|
||||
|
|
|
|||
|
|
@ -30,12 +30,15 @@ type UrlEntry = {
|
|||
description: string;
|
||||
sourcePaths: string[];
|
||||
lastmod: Date | null;
|
||||
isChapter: boolean;
|
||||
chapterKey: string | null;
|
||||
};
|
||||
|
||||
const ROOT = join(import.meta.dir, "..");
|
||||
const CONTENT_DIR = join(ROOT, "content");
|
||||
const DATA_DIR = join(ROOT, "data");
|
||||
const STATIC_DIR = join(ROOT, "static");
|
||||
const CHAPTER_LASTMOD_PATH = join(DATA_DIR, "_generated", "chapter-lastmod.json");
|
||||
const SITEMAP_PATH = join(STATIC_DIR, "sitemap.xml");
|
||||
const FEED_PATH = join(STATIC_DIR, "feed.xml");
|
||||
|
||||
|
|
@ -60,6 +63,15 @@ function normalizeBaseUrl(rawBaseUrl: string): string {
|
|||
return rawBaseUrl.replace(/\/+$/, "");
|
||||
}
|
||||
|
||||
function formatLastmodDisplay(date: Date): string {
|
||||
const year = date.getUTCFullYear();
|
||||
const month = String(date.getUTCMonth() + 1).padStart(2, "0");
|
||||
const day = String(date.getUTCDate()).padStart(2, "0");
|
||||
const hour = String(date.getUTCHours()).padStart(2, "0");
|
||||
const minute = String(date.getUTCMinutes()).padStart(2, "0");
|
||||
return `${year}-${month}-${day} ${hour}:${minute} UTC`;
|
||||
}
|
||||
|
||||
function ensureTrailingSlash(path: string): string {
|
||||
return path.endsWith("/") ? path : `${path}/`;
|
||||
}
|
||||
|
|
@ -214,6 +226,8 @@ async function buildEntries(): Promise<UrlEntry[]> {
|
|||
description: fm.description ?? fm.title ?? key.split("/")[1],
|
||||
sourcePaths,
|
||||
lastmod,
|
||||
isChapter: true,
|
||||
chapterKey: key,
|
||||
});
|
||||
continue;
|
||||
}
|
||||
|
|
@ -238,6 +252,8 @@ async function buildEntries(): Promise<UrlEntry[]> {
|
|||
description: fm.description ?? fm.title ?? fallbackTitle,
|
||||
sourcePaths,
|
||||
lastmod,
|
||||
isChapter: false,
|
||||
chapterKey: null,
|
||||
});
|
||||
}
|
||||
|
||||
|
|
@ -304,19 +320,34 @@ function renderFeed(baseUrl: string, entries: UrlEntry[]): string {
|
|||
return lines.join("\n");
|
||||
}
|
||||
|
||||
function buildChapterLastmodData(entries: UrlEntry[]): string {
|
||||
const byKey: Record<string, { iso: string; display: string }> = {};
|
||||
for (const entry of entries) {
|
||||
if (!entry.isChapter || !entry.chapterKey || !entry.lastmod) continue;
|
||||
byKey[entry.chapterKey] = {
|
||||
iso: entry.lastmod.toISOString(),
|
||||
display: formatLastmodDisplay(entry.lastmod),
|
||||
};
|
||||
}
|
||||
return `${JSON.stringify({ byKey }, null, 2)}\n`;
|
||||
}
|
||||
|
||||
async function main() {
|
||||
const baseUrl = await readBaseUrlFromConfig();
|
||||
const entries = await buildEntries();
|
||||
await mkdir(dirname(SITEMAP_PATH), { recursive: true });
|
||||
await mkdir(dirname(CHAPTER_LASTMOD_PATH), { recursive: true });
|
||||
await writeFile(SITEMAP_PATH, renderSitemap(baseUrl, entries));
|
||||
await writeFile(FEED_PATH, renderFeed(baseUrl, entries));
|
||||
await writeFile(CHAPTER_LASTMOD_PATH, buildChapterLastmodData(entries));
|
||||
|
||||
if (!existsSync(SITEMAP_PATH) || !existsSync(FEED_PATH)) {
|
||||
throw new Error("Failed to generate sitemap/feed outputs");
|
||||
if (!existsSync(SITEMAP_PATH) || !existsSync(FEED_PATH) || !existsSync(CHAPTER_LASTMOD_PATH)) {
|
||||
throw new Error("Failed to generate site metadata outputs");
|
||||
}
|
||||
|
||||
console.log(`Generated ${toPosixPath(relative(ROOT, SITEMAP_PATH))} with ${entries.length} URL(s).`);
|
||||
console.log(`Generated ${toPosixPath(relative(ROOT, FEED_PATH))} with ${entries.length} item(s).`);
|
||||
console.log(`Generated ${toPosixPath(relative(ROOT, CHAPTER_LASTMOD_PATH))}.`);
|
||||
}
|
||||
|
||||
main();
|
||||
|
|
|
|||
|
|
@ -4,19 +4,68 @@
|
|||
<title>Open Free Books</title>
|
||||
<link>https://openfreebooks.org/</link>
|
||||
<description>Recent updates to Open Free Books pages and live chapters.</description>
|
||||
<lastBuildDate>Thu, 21 May 2026 06:54:29 GMT</lastBuildDate>
|
||||
<lastBuildDate>Thu, 21 May 2026 07:32:39 GMT</lastBuildDate>
|
||||
<item>
|
||||
<title>Linear programming</title>
|
||||
<link>https://openfreebooks.org/math/linear-programming/</link>
|
||||
<guid isPermaLink="true">https://openfreebooks.org/math/linear-programming/</guid>
|
||||
<pubDate>Thu, 21 May 2026 07:32:39 GMT</pubDate>
|
||||
<description>Graph linear inequalities, identify feasible regions, and optimise objective functions in two variables.</description>
|
||||
</item>
|
||||
<item>
|
||||
<title>Factor & remainder theorems</title>
|
||||
<link>https://openfreebooks.org/math/factor-remainder-theorems/</link>
|
||||
<guid isPermaLink="true">https://openfreebooks.org/math/factor-remainder-theorems/</guid>
|
||||
<pubDate>Thu, 21 May 2026 07:32:39 GMT</pubDate>
|
||||
<description>Use the factor and remainder theorems to factorise higher-degree polynomials and solve related equations.</description>
|
||||
</item>
|
||||
<item>
|
||||
<title>Exponential & logarithmic functions</title>
|
||||
<link>https://openfreebooks.org/math/exponential-logarithmic/</link>
|
||||
<guid isPermaLink="true">https://openfreebooks.org/math/exponential-logarithmic/</guid>
|
||||
<pubDate>Thu, 21 May 2026 07:32:39 GMT</pubDate>
|
||||
<description>Use exponential and logarithmic models, apply log laws, and solve growth and decay equations.</description>
|
||||
</item>
|
||||
<item>
|
||||
<title>Complex numbers</title>
|
||||
<link>https://openfreebooks.org/math/complex-numbers/</link>
|
||||
<guid isPermaLink="true">https://openfreebooks.org/math/complex-numbers/</guid>
|
||||
<pubDate>Thu, 21 May 2026 07:32:39 GMT</pubDate>
|
||||
<description>Represent complex numbers in Cartesian form and perform operations including conjugates and division.</description>
|
||||
</item>
|
||||
<item>
|
||||
<title>Functions & graphs</title>
|
||||
<link>https://openfreebooks.org/math/functions-graphs/</link>
|
||||
<guid isPermaLink="true">https://openfreebooks.org/math/functions-graphs/</guid>
|
||||
<pubDate>Thu, 21 May 2026 07:32:39 GMT</pubDate>
|
||||
<description>Model input-output rules, work with domain and range, and sketch key function graphs and transformations.</description>
|
||||
</item>
|
||||
<item>
|
||||
<title>Sequences & series</title>
|
||||
<link>https://openfreebooks.org/math/sequences-series/</link>
|
||||
<guid isPermaLink="true">https://openfreebooks.org/math/sequences-series/</guid>
|
||||
<pubDate>Thu, 21 May 2026 07:32:39 GMT</pubDate>
|
||||
<description>Work with arithmetic and geometric sequences, sigma notation, and finite summation formulas.</description>
|
||||
</item>
|
||||
<item>
|
||||
<title>Variations</title>
|
||||
<link>https://openfreebooks.org/math/variations/</link>
|
||||
<guid isPermaLink="true">https://openfreebooks.org/math/variations/</guid>
|
||||
<pubDate>Thu, 21 May 2026 07:32:39 GMT</pubDate>
|
||||
<description>Model direct, inverse, joint, and partial variation and solve combined variation problems.</description>
|
||||
</item>
|
||||
<item>
|
||||
<title>Laws of indices</title>
|
||||
<link>https://openfreebooks.org/math/laws-of-indices/</link>
|
||||
<guid isPermaLink="true">https://openfreebooks.org/math/laws-of-indices/</guid>
|
||||
<pubDate>Thu, 21 May 2026 06:54:29 GMT</pubDate>
|
||||
<pubDate>Thu, 21 May 2026 06:54:57 GMT</pubDate>
|
||||
<description>Apply index laws to simplify expressions with integer and rational exponents.</description>
|
||||
</item>
|
||||
<item>
|
||||
<title>Linear inequalities in one unknown</title>
|
||||
<link>https://openfreebooks.org/math/linear-inequalities-one-unknown/</link>
|
||||
<guid isPermaLink="true">https://openfreebooks.org/math/linear-inequalities-one-unknown/</guid>
|
||||
<pubDate>Thu, 21 May 2026 06:33:43 GMT</pubDate>
|
||||
<pubDate>Thu, 21 May 2026 06:54:57 GMT</pubDate>
|
||||
<description>Solve, represent, and apply linear inequalities in one unknown using number lines and interval notation.</description>
|
||||
</item>
|
||||
<item>
|
||||
|
|
|
|||
|
|
@ -44,6 +44,10 @@
|
|||
<loc>https://openfreebooks.org/math/basic-math-notation/</loc>
|
||||
<lastmod>2026-05-21T01:07:39.000Z</lastmod>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://openfreebooks.org/math/complex-numbers/</loc>
|
||||
<lastmod>2026-05-21T07:32:39.566Z</lastmod>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://openfreebooks.org/math/counting-and-numbers/</loc>
|
||||
<lastmod>2026-05-21T05:05:38.000Z</lastmod>
|
||||
|
|
@ -52,9 +56,21 @@
|
|||
<loc>https://openfreebooks.org/math/directed-numbers-rates/</loc>
|
||||
<lastmod>2026-05-20T20:17:25.000Z</lastmod>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://openfreebooks.org/math/exponential-logarithmic/</loc>
|
||||
<lastmod>2026-05-21T07:32:39.567Z</lastmod>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://openfreebooks.org/math/factor-remainder-theorems/</loc>
|
||||
<lastmod>2026-05-21T07:32:39.697Z</lastmod>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://openfreebooks.org/math/functions-graphs/</loc>
|
||||
<lastmod>2026-05-21T07:32:39.566Z</lastmod>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://openfreebooks.org/math/laws-of-indices/</loc>
|
||||
<lastmod>2026-05-21T06:54:29.553Z</lastmod>
|
||||
<lastmod>2026-05-21T06:54:57.000Z</lastmod>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://openfreebooks.org/math/linear-equations-two-unknowns/</loc>
|
||||
|
|
@ -62,7 +78,11 @@
|
|||
</url>
|
||||
<url>
|
||||
<loc>https://openfreebooks.org/math/linear-inequalities-one-unknown/</loc>
|
||||
<lastmod>2026-05-21T06:33:43.000Z</lastmod>
|
||||
<lastmod>2026-05-21T06:54:57.000Z</lastmod>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://openfreebooks.org/math/linear-programming/</loc>
|
||||
<lastmod>2026-05-21T07:32:39.831Z</lastmod>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://openfreebooks.org/math/polynomials-expansion-factorisation/</loc>
|
||||
|
|
@ -76,6 +96,14 @@
|
|||
<loc>https://openfreebooks.org/math/quadratic-equations/</loc>
|
||||
<lastmod>2026-05-20T20:17:25.000Z</lastmod>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://openfreebooks.org/math/sequences-series/</loc>
|
||||
<lastmod>2026-05-21T07:32:39.286Z</lastmod>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://openfreebooks.org/math/variations/</loc>
|
||||
<lastmod>2026-05-21T07:32:39.286Z</lastmod>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://openfreebooks.org/math/written-calculation/</loc>
|
||||
<lastmod>2026-05-21T05:05:38.000Z</lastmod>
|
||||
|
|
|
|||
|
|
@ -457,6 +457,19 @@ a.book-chapter-link:focus-visible {
|
|||
margin: 0.75rem 0 0;
|
||||
}
|
||||
|
||||
.book-chapter__lastmod {
|
||||
margin: 2.25rem 0 0;
|
||||
font-family: var(--mono);
|
||||
font-size: 0.72rem;
|
||||
letter-spacing: 0.06em;
|
||||
text-transform: uppercase;
|
||||
color: var(--muted);
|
||||
}
|
||||
|
||||
.book-chapter__lastmod time {
|
||||
color: var(--soft-ink);
|
||||
}
|
||||
|
||||
.ratio-demo__bars {
|
||||
display: flex;
|
||||
width: 100%;
|
||||
|
|
|
|||
|
|
@ -16,12 +16,12 @@
|
|||
{% set chapter_key = subject ~ "/" ~ slug %}
|
||||
{% set chapters_meta = load_data(path="data/_generated/chapters-meta.json", format="json") %}
|
||||
{% set subjects_meta = load_data(path="data/_generated/subjects-meta.json", format="json") %}
|
||||
{% set chapter_meta = chapters_meta.chapters[chapter_key] %}
|
||||
{% set chapter_meta = chapters_meta.chapters | get(key=chapter_key, default=false) %}
|
||||
{% set subject_meta = subjects_meta.subjects[subject] | default(value=false) %}
|
||||
{% if subject_meta and subject_meta.hasCss %}
|
||||
<link rel="stylesheet" href="{{ get_url(path='css/subjects/' ~ subject ~ '.css', trailing_slash=false) | safe }}" />
|
||||
{% endif %}
|
||||
{% if chapter_meta.hasCss %}
|
||||
{% if chapter_meta and chapter_meta.hasCss %}
|
||||
<link rel="stylesheet" href="{{ get_url(path='css/chapters/' ~ subject ~ '-' ~ slug ~ '.css', trailing_slash=false) | safe }}" />
|
||||
{% endif %}
|
||||
{% endblock extra_head %}
|
||||
|
|
@ -31,6 +31,8 @@
|
|||
{% set slug = section.extra.chapter_id | default(value=section.slug) %}
|
||||
{% set chapter_key = subject ~ "/" ~ slug %}
|
||||
{% set subject_catalog = load_data(path="data/" ~ subject ~ "-curriculum.json", format="json") %}
|
||||
{% set chapter_lastmod_data = load_data(path="data/_generated/chapter-lastmod.json", format="json") %}
|
||||
{% set chapter_lastmod = chapter_lastmod_data.byKey[chapter_key] | default(value=false) %}
|
||||
{% set catalog_subject_url = get_url(path="/catalog/") ~ "?subject=" ~ subject %}
|
||||
<section class="book-page book-page--chapter">
|
||||
<div class="container">
|
||||
|
|
@ -62,6 +64,16 @@
|
|||
|
||||
<div id="chapter-heading-nav" data-pagefind-ignore></div>
|
||||
{{ section.content | safe }}
|
||||
{% if chapter_lastmod %}
|
||||
<p class="book-chapter__lastmod" data-pagefind-ignore>
|
||||
Last modified:
|
||||
<time
|
||||
datetime="{{ chapter_lastmod.iso }}"
|
||||
data-localize-lastmod
|
||||
data-utc-fallback="{{ chapter_lastmod.display }}"
|
||||
>{{ chapter_lastmod.display }}</time>
|
||||
</p>
|
||||
{% endif %}
|
||||
{% include "partials/chapter-footer-nav.html" %}
|
||||
</article>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -100,7 +100,7 @@
|
|||
<section class="tree-cta" aria-labelledby="tree-cta-title">
|
||||
<div class="container tree-cta__inner">
|
||||
<p class="section-kicker">For Every Learner</p>
|
||||
<h2 id="tree-cta-title" class="tree-cta__title">The next generation is the future.</h2>
|
||||
<h2 id="tree-cta-title" class="tree-cta__title">The next generation is our future.</h2>
|
||||
<p class="tree-cta__lead">Let's provide good, free education that anyone can read, share, and improve.</p>
|
||||
<div class="tree-cta__actions">
|
||||
<a class="button button-primary" href="{{ config.extra.browse_url | safe }}">Start reading</a>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue