Skip to content

Commit 8b6e497

Browse files
committed
Readme update
1 parent 9af3d7c commit 8b6e497

2 files changed

Lines changed: 4 additions & 0 deletions

File tree

AGENTS.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,3 +30,4 @@ This file helps AI agents discover and understand how to work with this reposito
3030
- `tests/unit/test_numeric_types.cpp` now exercises `Complex`, `Polynomial`, and `F2m` helpers so the umbrella numeric helpers stay locked down.
3131
- `README.md` now documents the high-level helpers (`Float`, `Ratio`, `Complex`, `Polynomial`, `F2m`, `Fixed<N>`, `Modulus`, and `MontgomeryInt`) plus the `t81::Int` alias exposed through `t81/t81lib.hpp`.
3232
- `include/t81/t81lib.hpp` now exposes `Float::from_string`, a `Ratio``Float` conversion, the `Int81` `Fixed<48>` alias, and `std::hash` hooks for `limb`/`bigint` so hashing and string-based floats land in the umbrella header.
33+
- `README.md` plus the umbrella header now document the `FloatN` template, ternary `_t3` literal, R3 NTT helpers, and `std::formatter` specializations so overlined ternary floats behave nicely in `std::format`.

README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -130,6 +130,7 @@ convenient containers for common algebraic patterns:
130130
131131
- `t81::Float` stores a ternary mantissa/exponent pair, keeps the mantissa normalized,
132132
and supports multiplying while trimming trailing zero trits.
133+
- `t81::FloatN<N>` mirrors `Float` but pins the mantissa to `N` trits via `Fixed<N>` so you can reason about fixed precision floats at compile time.
133134
- `t81::Ratio` keeps normalized, sign-aware rational numbers powered by `core::bigint` numerators
134135
and denominators, complete with arithmetic and comparison helpers.
135136
- `t81::Complex` and `t81::Polynomial` model simple complex arithmetic and polynomial math
@@ -140,6 +141,8 @@ convenient containers for common algebraic patterns:
140141
and arithmetic in the range `-(3^N-1)/2` .. `(3^N-1)/2`.
141142
- `t81::Modulus` and `t81::MontgomeryInt` let you declaratively build Montgomery contexts,
142143
cache powers of three, and multiply/add in Montgomery space with consistent modular safety.
144+
- `t81::ntt` exposes a radix-3 NTT pipeline for `Polynomial<core::limb>` multiplication when the modulus supports a primitive third root of unity.
145+
- `t81::literals::_t3` is a user-defined literal for ternary strings (overlines included), and the new `std::formatter` specializations for `Float` and `FloatN` make `std::format`/`std::print` render the canonical ternary notation.
143146
144147
These helpers make it easy to prototype higher-level systems without leaving the umbrella header.
145148

0 commit comments

Comments
 (0)