|
Dedekind 0.0.0
A structuralist C++23 Module Library
|
Concepts | |
| concept | dedekind::analysis::IsKernel |
| concept | dedekind::analysis::IsDifferentialForm |
| A mapping from a Tangent Space to a Scalar. | |
| concept | dedekind::analysis::IsHamiltonian |
| Formal verification of the energy mapping. | |
| concept | dedekind::analysis::IsPoissonAlgebra |
| A Ring equipped with a bracket satisfying the Jacobi Identity. | |
Classes | |
| class | dedekind::analysis::Dual< F > |
| Represents f(x) + f'(x)ε. More... | |
| class | dedekind::analysis::TwoForm< F, N > |
| An antisymmetric bilinear form ω(u, v) = -ω(v, u). More... | |
| struct | dedekind::analysis::GaussianKernel< T > |
| Gaussian radial basis function (RBF) kernel. More... | |
| struct | dedekind::analysis::ReproducingKernel< DomainSet, T > |
| class | dedekind::analysis::OneForm< F, N > |
| The cotangent vector (The 'Gradient' components). More... | |
| struct | dedekind::analysis::HarmonicOscillator< R > |
| Concrete Hamiltonian carrier for the 1-D harmonic oscillator. More... | |
Typedefs | |
| template<std::floating_point R> | |
| using | dedekind::analysis::PhasePoint = Vector<R, 2> |
| Canonical 1D phase-space state (q, p). | |
Functions | |
| template<typename F> | |
| constexpr F | dedekind::analysis::component (const Dual< F > &d, dedekind::category::At< 1 >) |
Canonical product projections for Dual (the ADL component hook of dedekind::category::π_1 / π_2): 𝔻's storage is val / der, not the pair-like .first / .second the default projection reads, so we provide the overload here. This is what makes Dual satisfy IsProduct uniformly with Complex (P-leg), while value() / derivative() stay as the domain-specific aliases that agree with π_1 / π_2. | |
| template<typename F> | |
| constexpr F | dedekind::analysis::component (const Dual< F > &d, dedekind::category::At< 2 >) |
| template<detail::IsNumericalBridgeScalar R, typename F> requires std::invocable<F, R> | |
| constexpr R | dedekind::analysis::derivative_at (F &&f, R x, R h=static_cast< R >(1e-5)) |
| Numerical derivative witness via central difference. | |
| template<detail::IsNumericalBridgeScalar R, typename F> requires std::invocable<F, R> | |
| constexpr R | dedekind::analysis::integral_over (F &&f, R a, R b, std::size_t slices=4096) |
| Numerical integral witness via trapezoidal rule (Riemann sum). | |
|
template<detail::IsNumericalBridgeScalar R, typename F> requires std::invocable<F, R> | |
| constexpr bool | dedekind::analysis::ftc_part_i_hypotheses (F &&f, R a, R b, std::size_t samples=32) |
| FTC Part I bridge: d/dx integral_a^x f(t) dt ~= f(x). | |
|
template<detail::IsNumericalBridgeScalar R, typename F, typename Antiderivative> requires std::invocable<F, R> && std::invocable<Antiderivative, R> | |
| constexpr bool | dedekind::analysis::ftc_part_ii_hypotheses (F &&f, Antiderivative &&antiderivative, R a, R b, std::size_t samples=32, R tolerance=static_cast< R >(1e-4)) |
| Numerical bridge for the sampled Part II hypothesis F' ~= f. | |
|
template<detail::IsNumericalBridgeScalar R, typename F> requires std::invocable<F, R> | |
| constexpr bool | dedekind::analysis::ftc_part_i_bridge (F &&f, R a, R x, R tolerance=static_cast< R >(1e-4)) |
| FTC Part I bridge: d/dx integral_a^x f(t) dt ~= f(x). | |
|
template<detail::IsNumericalBridgeScalar R, typename F, typename Antiderivative> requires std::invocable<F, R> && std::invocable<Antiderivative, R> | |
| constexpr bool | dedekind::analysis::ftc_part_ii_bridge (F &&f, Antiderivative &&antiderivative, R a, R b, R tolerance=static_cast< R >(1e-4)) |
| FTC Part II bridge: integral_a^b f(x) dx ~= F(b)-F(a). | |
| template<detail::IsNumericalBridgeScalar R, typename F, typename Antiderivative> requires std::invocable<F, R> && std::invocable<Antiderivative, R> | |
| constexpr bool | dedekind::analysis::ftc_worked_theorem_chain (F &&f, Antiderivative &&antiderivative, R a, R x, R b, R tolerance=static_cast< R >(1e-4)) |
| Worked theorem chain combining both FTC directions. | |
| template<detail::IsNumericalBridgeScalar R, typename F> requires std::invocable<F, R> | |
| constexpr std::pair< R, R > | dedekind::analysis::suggest_derivative_step_size (F &&f, R x, R tolerance=static_cast< R >(1e-6)) |
| Diagnostic: suggests optimal derivative step size via convergence testing. | |
| template<detail::IsNumericalBridgeScalar R, typename F> requires std::invocable<F, R> | |
| constexpr std::pair< std::size_t, R > | dedekind::analysis::diagnose_integral_convergence (F &&f, R a, R b, R convergence_threshold=static_cast< R >(1e-5)) |
| Diagnostic: validates integral convergence via Richardson extrapolation-style sampling. | |
| template<std::floating_point F, std::size_t N> | |
| constexpr auto | dedekind::analysis::wedge (const OneForm< F, N > &a, const OneForm< F, N > &b) |
| The Wedge Product (∧): α ∧ β | |
| template<IsMatrixScalar F, std::size_t N> | |
| constexpr Covector< F, N > | dedekind::analysis::to_covector (const OneForm< F, N > &w) |
| Convert a OneForm to its Covector (row-vector) representation. | |
| template<IsMatrixScalar F, std::size_t N> | |
| constexpr OneForm< F, N > | dedekind::analysis::from_covector (const Covector< F, N > &cov) |
| Convert a Covector to its OneForm representation. | |
| template<std::floating_point R, std::size_t N> | |
| constexpr R | dedekind::analysis::poisson_bracket (auto &&f, auto &&g, const Vector< R, N > &state) |
| The Poisson Bracket: The fundamental operation of Classical Mechanics. | |
| template<std::floating_point R> | |
| constexpr PhasePoint< R > | dedekind::analysis::harmonic_oscillator_closed_form (R q0, R p0, R t, R ω=R{1}) |
| Closed-form harmonic-oscillator flow at time t. | |
| template<std::floating_point R> | |
| constexpr auto | dedekind::analysis::harmonic_oscillator_curve (R q0, R p0, R ω=R{1}) |
| Continuum-indexed Hamiltonian trajectory as a Curve. | |
| template<std::floating_point R> | |
| constexpr auto | dedekind::analysis::harmonic_oscillator_leapfrog_path (R q0, R p0, R dt, R ω=R{1}) |
| Discrete Hamiltonian trajectory via leapfrog/Verlet (infinite path). | |
| template<std::floating_point R> | |
| constexpr auto | dedekind::analysis::harmonic_oscillator_leapfrog_finite_path (R q0, R p0, R dt, std::size_t steps, R ω=R{1}) |
Variables | |
| constexpr auto | dedekind::analysis::𝔻 |
| The canonical dual-number universe 𝔻 = 𝔸<Dual<QuadraticReal<2>>, Boole, ℶ_1> — the coat-hanger 𝔻 = Dual(ℝ) over the genuine ℝ = ℚ(√2) (mirroring ℝ and ℂ). | |
| constexpr auto | dedekind::analysis::embed_ℝ_𝔻 |
The Birkhoff S leg \(\mathbb{R}\hookrightarrow\mathbb{D}\) over the coat-hanger: QuadraticReal<2> → Dual<QuadraticReal<2>>, \(r\mapsto r+0\varepsilon\) (primal r, tangent 0). | |
Files | |
| file | src/main/modules/dedekind/analysis/analysis.cppm |
| kernels, forms, exterior calculus, Hamiltonian flow. | |
| file | src/main/modules/dedekind/analysis/dual.cppm |
| Dual numbers 𝔻 = a + bε with ε² = 0 — forward-mode AD carrier. | |
| file | src/main/modules/dedekind/analysis/exterior.cppm |
| The Wedge Product and Symplectic Geometry. | |
| file | src/main/modules/dedekind/analysis/forms.cppm |
| The Exterior Algebra (Differential Forms). | |
| file | src/main/modules/dedekind/analysis/ftc.cppm |
| Fundamental Theorem of Calculus bridge hooks. | |
| file | src/main/modules/dedekind/analysis/hamilton.cppm |
| The Principle of Least Action (Hamiltonian Dynamics). | |
| file | src/main/modules/dedekind/analysis/kernels.cppm |
| Kernel primitives – Gaussian and reproducing kernels. | |