Files
calctext/_bmad-output/implementation-artifacts/6-2-logarithmic-and-exponential-functions.md
2026-03-16 19:54:53 -04:00

2.0 KiB

epic, story, title, status
epic story title status
6 6.2 Logarithmic & Exponential Functions 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)