Expand description
Mathematical certificates from which Diffableβs concrete geometry is built.
The flat namespace contains the foundational algebra, tensor, chart, and
metric traits most generic code uses. Higher differentiation lives in
calculus, global finite-cover topology in simplicial, and the
feature-gated property-test suites in testing.
ModulesΒ§
- arrow
- calculus
- Tensor constructions, tangent lifts, and forward automatic differentiation.
- field
- homotopy
- jet
- manifold
- signature
- simplicial
- Finite covers, nerves, global geodesics, and fundamental groups.
- tensor
- tensor_
of - testing
- Property-test suites for the axioms represented by Diffableβs traits.
- ππ
- π
π π₯π - π
ππ¨π§ - πππππ€π’π§π
- π π₯π
- ππ«π©
- πππ§
- ππ¨π§
- πππ
- ππ«π
- ππ«π
π π₯π - ππππ₯
- ππ’π§π
- πππ
- πππ§π¬
- ππ¨π©
- ππππ
MacrosΒ§
- C
- impl_
abelian_ group_ via_ grothendieck - Implements
Zero,Add, andNegfor$targetvia Grothendieck group completion of the commutative monoid$monoid. - impl_
group_ via_ add - Bridges a
+/--flavoured type into the spelling-agnosticGroupby delegatingidentity/compose/inverseto itsZero/Add/Neg. - impl_
group_ via_ mul - Bridges a
*/Inv-flavoured type into the spelling-agnosticGroupby delegatingidentity/compose/inverseto itsOne/Mul/Inv. - impl_
lie_ group_ via_ quotient - Implements
GroupandLieGroupfor$typeby routing every operation through itsQuotient<$g, $h, V>implementation. - impl_
ring_ via_ grothendieck - Implements
Zero,Add,Neg,One, andMulfor$targetvia Grothendieck completion of the commutative semiring (βrigβ)$rig. - impl_
vector_ ops - Implements the canonical coordinate-wise operations for a tensor type.
StructsΒ§
- Absent
- Type-level result proving that a property is absent from a closed property graph.
- Arrow
- A concrete callable admitted as a morphism in structural context
C. - Arrow
Signature - The signature of an arrow in the structural category
C. - At
- The first hop of a labelled path from the current reflected object.
- Atomic
- Marks a tensor as a leaf in the tensor-expression normalization tree.
- Binds
- A concrete associated-type binding.
- BindsAs
- A concrete binding whose child context is supplied explicitly.
- Binds
Property - A resolved property edge.
- Binds
Typing - Bind the
arrow::Typingof an arrow inC. - Different
- Dual
- The dual space
V*β the linear functionals onV. - Equal
- Equality of two associated paths.
- Follow
- One further associated-type projection along an existing path.
- NonZero
- A newtype which certifies the value is non-zero
- Present
- Type-level result of a total property-membership query.
- Requires
- A canonical associated-type requirement.
- Root
OfUnity - An
N-th root of unity inFβ an element of the finite cyclic groupΞΌ_N. - Root
OfUnity Primitive - A primitive
N-th root of unity β one that generates all ofΞΌ_N. - Rooted
- A concrete structural context rooted at one Rust object and nominal category.
- Same
- Type-level result of a proved comparison.
- Sinister
- The same two-sided module as
V, with the opposite preferred hand. - Succ
- The successor
n + 1at the type level. SeeNat. - Symmetrized
- A field
Fwith its involution trivialised:conj = id, henceFixed = Self. - This
- Unspecified
- Placeholder used as [
AssocEntry::Value] by a canonical requirement. - With
Payload - Refine
πwith one associated object carrying functor-specific metadata. - Γ
- The empty type-level list.
- Λ
- A type-level list node with
Headfollowed byTail. - ππ«π«
- The theory of arrows in structural category
C. - πππ
- The category of categories visible at higher-structure level
N. - ππ¨π¦
- ππ¨π¦π¨ππ¨π©π²
- The theory of homotopies between arrows in
C. - ππ
- The theory of an object carrying structural category
C. - ππ²π©π’π§π
- The theory of arrow typings in
C. - π―
- The canonical category/signature pair.
EnumsΒ§
- Both
Sided - A tensor with compatible left and right scalar actions.
- Hand
- The runtime witness for a moduleβs elected scalar-action side.
- Left
- Type-level left scalar action.
- NatZero
- Type-level zero β the base of the
Nattower. - NoSided
- A tensor with no externally available scalar action.
- OneSided
- A tensor with only its preferred scalar action available.
- Right
- Type-level right scalar action.
- Side
- Runtime reflection of a type-level
Sidedness.
TraitsΒ§
- Action
Exists - A
Sidednesswhich permits participation in another tensor product. - Applicable
Tensor Decoration - Array
- A fixed-size coordinate container with a canonical flat index order.
- Assoc
Name - Marker implemented by names of reflected associated types.
- Bilinear
- A symmetric bilinear form on a vector space.
- CField
- A marker that asserts that a
Fieldis multiplicatively commutative. - CGroup
- An abelian group, in additive notation.
- CMonoid
- A commutative monoid, in additive notation.
- Cat
- A first-class name for a reflected Rust trait / mathematical category.
- Category
- A concrete structural signature of a reflected trait.
- Chart
- A chart in an atlas of a manifold.
- DivRing
- A division ring.
- Equivalent
- Reversible equivalence of concrete objects as observed in category
π. - Euclidean
- A finite-dimensional Euclidean space.
- Exact
Cmp - The genuine, transitive ordering on a real-number type, independent of
whatever tolerance its
PartialOrdmay carry for equality testing β seeRealβs doc comment on why that tolerance exists and why it is deliberately not transitive. An iterative numerical algorithmβs convergence check needs the former: comparing against a tolerance-relation order can report βnot less thanβ forever once both sides fall inside the tolerance band, regardless of which is truly smaller. - ExpMap
- By implementing ExpMap you certify that for C<P, V>: ExpMap<P, V> that straight lines through the origin in R^N map to geodesics on M, and that distances from the origin equal arc lengths along those geodesics.
- Field
- A field.
- Field
Exp - A characteristic-zero field equipped with an exponential map.
- Form
- A vector space equipped with a lowering map
β: V β V*. - From
Real - Embeds an
Interval::Rvalue into the interval-bearing scalar type. - Group
- A group, spelled with operator-agnostic named methods.
- Handedness
- A type-level choice of left- or right-handed scalar action.
- Inner
Product - An inner product structure on a vector space.
- Interval
- A signed interval on a manifold β the pseudo-Riemannian analogue of
Metric. WhereMetricreturns a non-negative distance,Intervalreturns the signed squared interval sΒ²(a,b): negative timelike, zero null, positive spacelike (or your sign convention). No metric-space axioms are claimed β this is not a distance, it is the value of the line element between two points along the connecting geodesic. - LieGroup
- A Lie group structure on a manifold.
- Manifold
- A smooth manifold compatible with Diffableβs existing tangent-bundle API.
- Metric
- A notion of distance on a manifold.
- Monoid
- A monoid, in multiplicative notation, with no commutativity assumed.
- MulGroup
- A (possibly non-abelian) group, in multiplicative notation.
- Nat
- A type-level natural number (Peano encoding).
- NatCompare
- NatEq
- Nondegenerate
- A
Formwhose lowering map is invertible β a nondegenerate form. - Normalize
- Ob
- The proposition that
Selfis an object of structural categoryC. - Optionally
Option - A value which is either statically present or dynamically optional.
- Point
- An element of the carrier set of a manifold, group, or metric space.
- Pseudo
Riemannian - A manifold whose exponential coordinates preserve the signed interval β a pseudo-Riemannian manifold.
- Quotient
- A quotient of a Lie group by a central subgroup.
- Real
- A real-number field: totally ordered, and its own involution fixed field
(
Fixed = Self, soconj = id). - RealNum
- A scalar field for use as the coordinate type of a Euclidean space.
- Reflect
- Elaborate the structural body of
Xinterpreted asπ. - Rehandable
- A sidedness for which the opposite scalar action exists, so the preferred hand may be reversed without inventing structure.
- Rig
- A commutative semiring (βrigβ β a ring without negation).
- Ring
- A ring.
- Sesquilinear
- A Hermitian (sesquilinear) form on a vector space.
- Sidedness
- The number of externally available scalar actions on a
Tensor. - Signature
- Project the domain and codomain from an arrow signature.
- Smooth
- Intrinsic smooth structure on a manifold.
- Tangent
Bundle - A tangent bundle structure on a manifold.
- Tensor
- A finite-dimensional element of the tensor algebra, represented in a basis.
- Tensor
Product Action - Computes the exterior action and preferred hand of a tensor product.
- Topological
- A chosen topology on a point type.
- Vector
- A tensor on which the elected scalar action is available directly.
- ΞΉ
- Include a concrete Rust type into the ontology with its canonical structural context.
- Ο
- Project a named child of a category context.
- ⱡ
- Judge whether a concrete context satisfies theory
π.
Type AliasesΒ§
- Arrow
Category - Construct the concrete context of an arrow
D -> EinC. - Binds
Included - Bind an associated object using its distinguished included context.
- Binds
Reflected - The ordinary reflected binding, whose child context is the canonical
reflection of
Valuein the edge role. - Codomain
Of - The concrete Rust codomain of an arrow context.
- Domain
Of - The concrete Rust domain of an arrow context.
- Jetted
- The reflected codomain of jettification on
π. - Model
- The canonical model of theory
πobtained from the included Rust typeX. - NatOne
- Tensor
Of - The reflected codomain of re-presenting an object of
πover new scalars. - ππ’ππ
- Diffeomorphisms are the first Hom level over smooth manifolds.