|
| class | dedekind::numbers::Complex< R > |
| struct | dedekind::numbers::PartialAddComplex< R > |
| | Partial addition transform for Complex<R>. More...
|
| struct | dedekind::numbers::PartialMulComplex< R > |
| | Partial multiplication transform for Complex<R>. More...
|
| struct | dedekind::category::is_exact_total< dedekind::numbers::Complex< R >, std::plus< dedekind::numbers::Complex< R > > > |
| struct | dedekind::category::is_exact_total< dedekind::numbers::Complex< R >, std::multiplies< dedekind::numbers::Complex< R > > > |
| struct | dedekind::category::is_associative< dedekind::numbers::Complex< R >, std::plus< dedekind::numbers::Complex< R > > > |
| struct | dedekind::category::is_commutative< dedekind::numbers::Complex< R >, std::plus< dedekind::numbers::Complex< R > > > |
| struct | dedekind::category::inverse_trait< dedekind::numbers::Complex< R >, std::multiplies< dedekind::numbers::Complex< R > > > |
| struct | dedekind::numbers::UnitRoot< N > |
| | A SYMBOLIC N-th root of unity \(\zeta_N^{\,p}\), carried by its exponent p ∈ ℤ/N (Modular<N>). The unit harmonics \(\mu_N=\{z:z^N=1\}\): the torsion subgroup of the unit circle U(1), cut out of ℂ, cyclic of order N and \(\cong\mathbb{Z}/N\) via de Moivre. More...
|
| struct | dedekind::numbers::Character< N > |
| | The de Moivre CHARACTER \(\chi_m : \mathbb{Z}/N \to \mu_N\), \(k \mapsto \zeta_N^{\,mk}\) — the plane wave "as such", carried SYMBOLICALLY in UnitRoot<N> (consumes the μ_N layer; resolve() collapses to exact ℂ at N=8). More...
|
| struct | dedekind::numbers::DiscreteCos< N > |
| | The exact discrete COSINE \(\cos_N(k) = \cos(2\pi k/N) =
\Re\,\zeta_N^k\) over the Modular<N> angle — the EVEN part of the de Moivre character (= the \(\tfrac12(I+U)\) projection's real value). More...
|
| struct | dedekind::numbers::DiscreteSin< N > |
| | The exact discrete SINE \(\sin_N(k) = \sin(2\pi k/N) =
\Im\,\zeta_N^k\) — the ODD part of the character (Im of character<N>(1) resolved). An IsArrow Modular<N> → ℝ, exact at N=8. More...
|
| struct | dedekind::category::is_exact_total< dedekind::numbers::UnitRoot< N >, std::multiplies< dedekind::numbers::UnitRoot< N > > > |
| struct | dedekind::category::is_associative< dedekind::numbers::UnitRoot< N >, std::multiplies< dedekind::numbers::UnitRoot< N > > > |
| struct | dedekind::category::is_commutative< dedekind::numbers::UnitRoot< N >, std::multiplies< dedekind::numbers::UnitRoot< N > > > |
| struct | dedekind::category::unit_trait< dedekind::numbers::UnitRoot< N >, std::multiplies< dedekind::numbers::UnitRoot< N > > > |
| struct | dedekind::category::inverse_trait< dedekind::numbers::UnitRoot< N >, std::multiplies< dedekind::numbers::UnitRoot< N > > > |
| struct | dedekind::category::is_cyclic_group< dedekind::numbers::UnitRoot< N >, std::multiplies< dedekind::numbers::UnitRoot< N > > > |
| struct | dedekind::category::cyclic_order< dedekind::numbers::UnitRoot< N >, std::multiplies< dedekind::numbers::UnitRoot< N > > > |
| struct | dedekind::category::SpeciesTraits< dedekind::numbers::Complex< R > > |
| struct | dedekind::category::is_homomorphism< std::decay_t< decltype(dedekind::numbers::embed_ℝ_ℂ)>, dedekind::numbers::QuadraticReal< 2 >, std::plus< dedekind::numbers::QuadraticReal< 2 > >, std::plus< dedekind::numbers::Complex< dedekind::numbers::QuadraticReal< 2 > > > > |
| struct | dedekind::category::is_homomorphism< std::decay_t< decltype(dedekind::numbers::embed_ℝ_ℂ)>, dedekind::numbers::QuadraticReal< 2 >, std::multiplies< dedekind::numbers::QuadraticReal< 2 > >, std::multiplies< dedekind::numbers::Complex< dedekind::numbers::QuadraticReal< 2 > > > > |
| struct | dedekind::category::quotient_algebra_base< dedekind::numbers::Complex< R > > |
| struct | dedekind::category::is_linear_action< dedekind::numbers::Complex< R >, R, std::plus< dedekind::numbers::Complex< R > >, std::plus< R >, std::multiplies< R >, std::multiplies<> > |
| struct | dedekind::category::unit_trait< dedekind::numbers::Complex< R >, std::plus< dedekind::numbers::Complex< R > > > |
| struct | dedekind::category::unit_trait< dedekind::numbers::Complex< R >, std::multiplies< dedekind::numbers::Complex< R > > > |
| struct | dedekind::category::inverse_trait< dedekind::numbers::Complex< R >, std::plus< dedekind::numbers::Complex< R > > > |
|
| template<IsComplexScalar R> |
| constexpr Complex< R > | dedekind::numbers::conj (const Complex< R > &z) |
| | Complex conjugate: conj(a + bi) = a − bi.
|
| template<IsComplexScalar R> |
| constexpr R | dedekind::numbers::dot (const Complex< R > &z, const Complex< R > &w) |
| | The real inner product on ℂ ≅ ℝ²: dot(z, w) = Re(z · conj w) = re_z·re_w + im_z·im_w.
|
| template<IsComplexScalar R> |
| constexpr R | dedekind::numbers::abs2 (const Complex< R > &z) |
| | Squared norm abs2(z) = <z, z> = |z|² = re² + im²: exact, √-free.
|
|
template<IsComplexScalar R> |
| constexpr R | dedekind::numbers::euclidean_norm_squared (const Complex< R > &z) |
| | Squared Euclidean norm on Complex<R>: a synonym for abs2, kept so it stays reachable by ADL in dedekind::numbers for callers that do not import dedekind.geometry (e.g. the Mandelbrot escape test and the set-algebra predicates). Kept squared to avoid a square root in hot paths.
|
|
template<unsigned N> |
| constexpr UnitRoot< N > | dedekind::numbers::unit_root () |
| | The primitive N-th root \(\zeta_N=\zeta_N^{1}\) (the μ_N generator).
|
| template<unsigned N> |
| constexpr Character< N > | dedekind::numbers::character (dedekind::morphologies::Modular< N > m) |
| | The character \(\chi_m\) at frequency m.
|
template<unsigned N>
requires (N == 8u) |
| constexpr DiscreteCos< N > | dedekind::numbers::cos_n () |
| | \(\cos_N = \Re\,\zeta_N^{(\cdot)}\) as an arrow.
|
template<unsigned N>
requires (N == 8u) |
| constexpr DiscreteSin< N > | dedekind::numbers::sin_n () |
| | \(\sin_N = \Im\,\zeta_N^{(\cdot)}\) as an arrow.
|
|
| template<typename R> |
| constexpr bool | dedekind::category::is_kleene_commutative_v< dedekind::numbers::Complex< R >, dedekind::numbers::PartialAddComplex< R > > |
| | Kleene traits for complex arithmetic.
|
| template<typename R> |
| constexpr dedekind::numbers::Complex< R > | dedekind::category::partial_unit_v< dedekind::numbers::Complex< R >, dedekind::numbers::PartialAddComplex< R > > |
| template<typename R> |
| constexpr bool | dedekind::category::is_kleene_commutative_v< dedekind::numbers::Complex< R >, dedekind::numbers::PartialMulComplex< R > > |
| template<typename R> |
| constexpr dedekind::numbers::Complex< R > | dedekind::category::partial_unit_v< dedekind::numbers::Complex< R >, dedekind::numbers::PartialMulComplex< R > > |
| template<typename R> |
| constexpr bool | dedekind::category::is_associative_v< dedekind::numbers::Complex< R >, std::multiplies< dedekind::numbers::Complex< R > > > |
| template<typename R> |
| constexpr bool | dedekind::category::is_commutative_v< dedekind::numbers::Complex< R >, std::multiplies< dedekind::numbers::Complex< R > > > |
| template<typename R> |
| constexpr bool | dedekind::category::is_distributive_v< dedekind::numbers::Complex< R >, std::multiplies< dedekind::numbers::Complex< R > >, std::plus< dedekind::numbers::Complex< R > > > |
| constexpr auto | dedekind::numbers::embed_ℝ_ℂ |
| | The Birkhoff S leg \(\mathbb{R}\hookrightarrow\mathbb{C}\) over the coat-hanger: QuadraticReal<2> → Complex<QuadraticReal<2>>, \(r\mapsto (r,0)\).
|
| constexpr auto | dedekind::numbers::root8 |
| | The exact de Moivre exponential \(\zeta_8 : \mathbb{Z}/8 \to
\mathbb{C}^\times\) over the coat-hanger ℝ = ℚ(√2): \(k \mapsto \zeta_8^{\,k} = (\cos\tfrac{2\pi k}{8},\ \sin\tfrac{2\pi
k}{8})\).
|
| constexpr Complex< QuadraticReal< 2 > > | dedekind::numbers::ζ8 |
| | The primitive 8th root of unity ζ8 = e^{2πi/8} = ½√2 + ½√2·i, exact in ℂ(ℚ(√2)) — the generator of the de Moivre map root8.
|
|
template<unsigned N> |
| constexpr bool | dedekind::category::is_invertible_v< dedekind::numbers::UnitRoot< N >, std::multiplies< dedekind::numbers::UnitRoot< N > > > = true |
| constexpr QuadraticReal< 2 > | dedekind::numbers::half_root2 |
| constexpr auto | dedekind::numbers::ℂ |
| | The canonical complex-number universe ℂ = 𝔸<Complex<QuadraticReal<2>>, Boole, ℶ_1> — the coat-hanger ℂ = Cplx(ℝ) over the genuine ℝ = ℚ(√2) (mirroring ℝ and 𝔻). Equality on ℚ(√2)[i] is decidable, so ℂ answers in Boole; ℶ_1 is the cardinality of the ℂ it models, not a logic.
|
| template<> |
| constexpr bool | dedekind::category::is_monic_arrow_v< std::decay_t< decltype(dedekind::numbers::embed_ℝ_ℂ)> > |
| template<dedekind::numbers::IsComplexScalar R> |
| constexpr bool | dedekind::category::is_invertible_v< dedekind::numbers::Complex< R >, std::plus< dedekind::numbers::Complex< R > > > |
Minimal complex wrapper for experimental reintegration.
@partition :complex
- Copyright
- 2026 The Dedekind Authors Licensed under the Apache License, Version 2.0.
- Note
- "Les mathematiciens n'etudient pas des objets, mais des relations
entre des objets." ("Mathematicians do not study objects, but the relations between
objects.") – Henri Poincare, La Science et l'hypothese (1902)