initial commit
This commit is contained in:
@@ -0,0 +1,69 @@
|
||||
---
|
||||
epic: 6
|
||||
story: 6.2
|
||||
title: "Logarithmic & Exponential Functions"
|
||||
status: draft
|
||||
---
|
||||
|
||||
## Epic 6 — Advanced Math & Functions
|
||||
**Goal:** Scientific, financial, and power-user math.
|
||||
|
||||
### Story 6.2: Logarithmic & Exponential Functions
|
||||
|
||||
As a **CalcPad user**,
|
||||
I want to use logarithmic and exponential functions including ln, log, log2, exp, pow, sqrt, cbrt, and nth-root,
|
||||
So that I can perform scientific, financial, and engineering calculations involving growth, decay, and roots.
|
||||
|
||||
**Acceptance Criteria:**
|
||||
|
||||
**Given** the user writes `ln(1)`
|
||||
**When** the engine evaluates
|
||||
**Then** the result is `0`
|
||||
|
||||
**Given** the user writes `ln(e)` where `e` is Euler's number
|
||||
**When** the engine evaluates
|
||||
**Then** the result is `1`
|
||||
|
||||
**Given** the user writes `log(100)`
|
||||
**When** the engine evaluates
|
||||
**Then** the result is `2` (base-10 logarithm)
|
||||
|
||||
**Given** the user writes `log2(256)`
|
||||
**When** the engine evaluates
|
||||
**Then** the result is `8`
|
||||
|
||||
**Given** the user writes `exp(1)`
|
||||
**When** the engine evaluates
|
||||
**Then** the result is approximately `2.71828` (e^1)
|
||||
|
||||
**Given** the user writes `2^10`
|
||||
**When** the engine evaluates
|
||||
**Then** the result is `1024`
|
||||
|
||||
**Given** the user writes `pow(2, 10)`
|
||||
**When** the engine evaluates
|
||||
**Then** the result is `1024`
|
||||
|
||||
**Given** the user writes `e^3`
|
||||
**When** the engine evaluates
|
||||
**Then** the result is approximately `20.0855`
|
||||
|
||||
**Given** the user writes `sqrt(144)`
|
||||
**When** the engine evaluates
|
||||
**Then** the result is `12`
|
||||
|
||||
**Given** the user writes `cbrt(27)`
|
||||
**When** the engine evaluates
|
||||
**Then** the result is `3`
|
||||
|
||||
**Given** the user writes an nth-root expression such as `4th root of 625` or `root(625, 4)`
|
||||
**When** the engine evaluates
|
||||
**Then** the result is `5`
|
||||
|
||||
**Given** the user writes `ln(0)` or `log(-1)`
|
||||
**When** the engine evaluates
|
||||
**Then** the engine displays an error indicating the argument is out of the valid domain
|
||||
|
||||
**Given** the user writes `sqrt(-4)`
|
||||
**When** the engine evaluates
|
||||
**Then** the engine displays an error (complex numbers are out of scope unless explicitly supported)
|
||||
Reference in New Issue
Block a user