Reference · Natural numbers
rainbow.math.nat.distance
Computational natural distance and additive foreign-vocabulary bridges.
algebra/heterogeneous-add
algebra/heterogeneous-add.{u, v, w} :
(A : Type u) (B : Type v) (C : Type w) (dictionary : A → B → C) (x₁ : A) (x₂ : B)
→ Calgebra/homogeneous-add-instance
algebra/homogeneous-add-instance.{u} :
(A : Type u) (dictionary : A → A → A) (x₁ x₂ : A)
→ Anat/distance
nat/distance : (x₁ x₂ : ℕ) → ℕ
ℕ = data/Nat
nat/distance-successor
nat/distance-successor : (left right : ℕ) → nat/distance (data/succ left) (data/succ right) = nat/distance left right
= = equality/Eqℕ = data/Nat
nat/distance-commutative
nat/distance-commutative : (left right : ℕ) → nat/distance left right = nat/distance right left
= = equality/Eqℕ = data/Nat
nat/distance-add-left
nat/distance-add-left : (prefix left right : ℕ) → nat/distance (algebra/nat-add prefix left) (algebra/nat-add prefix right) = nat/distance left right
= = equality/Eqℕ = data/Nat
nat/distance-add-right
nat/distance-add-right : (left suffix right : ℕ) → nat/distance (algebra/nat-add left suffix) (algebra/nat-add right suffix) = nat/distance left right
= = equality/Eqℕ = data/Nat
nat/distance-right-bound
nat/distance-right-bound : (left right : ℕ) → right ≤ algebra/nat-add left (nat/distance left right)
ℕ = data/Nat≤ = nat/at-most
nat/distance-left-bound
nat/distance-left-bound : (left right : ℕ) → right ≤ algebra/nat-add (nat/distance left right) left
ℕ = data/Nat≤ = nat/at-most