Forms — interactive mathematics. Four handles, one expression.
  • Rust 43.1%
  • JavaScript 22.5%
  • TypeScript 18.7%
  • HTML 11.7%
  • Python 2.3%
  • Other 1.7%
Find a file
Rowan Valle 3ad1fe2724 feat(math-core): exact BigInt fib/nCr/nPr on the answer path (Razor A)
The symbolic answer path routed fib/nCr/nPr through i64 math_fns, so results were
capped (fib n<=92) or overflowed to None (nCr/nPr beyond i64) — lossy for a tool
that already carries exact rationals. gcd/lcm were already exact via BigRational.

- math_fns: add fibonacci_big (fast doubling), combinations_big, permutations_big —
  exact BigInt, arbitrary-magnitude result, compute-capped at 1e6 multiplications.
- apply_number_theory: fib/nCr/nPr now produce Term::Num(from_big_integer(..)).
  nCr/nPr read numer_big() so n,k may exceed i64 (e.g. nCr(2^100, 2) now computes).
- The fast f64 plotting path (eval_numeric) is unchanged.

Frozen regressions (oracle_regressions.rs, all values independently verified):
fib(100), fib(200), nCr(50,25), nPr(20,10), nCr(2^100,2), gcd/lcm large coprimes.
Updated the internal large-nCr test to assert the exact value (was no-panic only).

Suite 493 + 15 regressions + 7 prop + 3 spike green; wasm32 clean.

Authored by Rowan Valle; Executed by Claude Code.
2026-06-13 10:38:56 -04:00
.claude docs: record forms.symbiont.systems deploy procedure in handoff 2026-06-12 15:04:49 -04:00
assets forms: 8 rendering engines, separation of concerns, symbolic differentiation 2026-04-16 11:12:22 -04:00
docs/decisions feat(math-core): adopt astro-float arbitrary-precision backend (Razor B0) 2026-06-13 10:32:42 -04:00
manual refactor: eval modularization + master plan consolidation + manual corrections 2026-04-21 17:58:52 -04:00
math-core feat(math-core): exact BigInt fib/nCr/nPr on the answer path (Razor A) 2026-06-13 10:38:56 -04:00
math-wasm feat: BigRational + eval refactor + cited manual + sliders + implicit curves + Vite 2026-04-20 19:17:26 -04:00
public refactor: eval modularization + master plan consolidation + manual corrections 2026-04-21 17:58:52 -04:00
sources refactor: eval modularization + master plan consolidation + manual corrections 2026-04-21 17:58:52 -04:00
src refactor: flense dead code 2026-06-12 14:43:03 -04:00
tests forms: 8 rendering engines, separation of concerns, symbolic differentiation 2026-04-16 11:12:22 -04:00
.gitignore feat: BigRational + eval refactor + cited manual + sliders + implicit curves + Vite 2026-04-20 19:17:26 -04:00
Cargo.lock feat(math-core): adopt astro-float arbitrary-precision backend (Razor B0) 2026-06-13 10:32:42 -04:00
Cargo.toml feat: BigRational + eval refactor + cited manual + sliders + implicit curves + Vite 2026-04-20 19:17:26 -04:00
favicon.png meta: favicon, Open Graph tags, page title 2026-04-16 12:30:11 -04:00
index.html fix: equation input audit remediation 2026-06-12 12:43:00 -04:00
manual.json refactor: eval modularization + master plan consolidation + manual corrections 2026-04-21 17:58:52 -04:00
no-dead-symbols.md docs: No Dead Symbols — FORMS design law 2026-06-12 12:42:47 -04:00
package-lock.json test: add Vitest + unit tests for pure functions 2026-06-12 13:10:50 -04:00
package.json build: strict TypeScript config + typecheck gate 2026-06-12 13:13:27 -04:00
ROADMAP.md docs: update ROADMAP test count, trim completed remediation 2026-04-22 09:09:09 -04:00
style.css feat: stable coordinate frame, variable slot model, start-alive seed 2026-06-12 12:42:47 -04:00
tsconfig.json chore: lock the build to TypeScript — allowJs:false 2026-06-12 14:29:31 -04:00
vite.config.ts feat: BigRational + eval refactor + cited manual + sliders + implicit curves + Vite 2026-04-20 19:17:26 -04:00