Documentation

Mathlib.Data.Nat.DvdSequence

Divisibility sequences #

A sequence f : ℕ → ℕ is a divisibility sequence if it satisfies f a ∣ f b whenever a ∣ b.

A sequence f : ℕ → ℕ is a strong divisibility sequence if gcd (f a) (f b) = f (gcd a b).

This file defines divisibility sequences and strong divisibility sequences, and provides some basic API for these definitions.

Main definitions #

theorem smul_dvd_smul {α : Type u_1} {β : Type u_2} [Monoid α] [Monoid β] [SMul α β] [IsScalarTower α β β] [IsScalarTower α α β] [SMulCommClass α β β] {a b : α} {c d : β} (hab : a b) (hcd : c d) :
a c b d
def IsDvdSequence {α : Type u_1} {β : Type u_2} [Dvd α] [Dvd β] (f : αβ) :

A function f : α → β is a divisibility sequence if a ∣ b implies f a ∣ f b.

Equations
Instances For
    theorem IsDvdSequence.const (α : Type u_1) {β : Type u_2} [Dvd α] [Monoid β] (b : β) :
    IsDvdSequence fun (x : α) => b
    theorem IsDvdSequence.smul' {α : Type u_1} {β : Type u_2} {γ : Type u_3} [Dvd α] [Monoid β] [Monoid γ] {f : αβ} {g : αγ} [SMul β γ] [IsScalarTower β γ γ] [IsScalarTower β β γ] [SMulCommClass β γ γ] (hf : IsDvdSequence f) (hg : IsDvdSequence g) :
    theorem IsDvdSequence.mul {α : Type u_1} {β : Type u_2} [Dvd α] [CommMonoid β] {f g : αβ} (hf : IsDvdSequence f) (hg : IsDvdSequence g) :
    theorem IsDvdSequence.smul {α : Type u_1} {β : Type u_2} {γ : Type u_3} [Dvd α] [Monoid β] [Monoid γ] {f : αγ} [SMul β γ] [IsScalarTower β γ γ] [IsScalarTower β β γ] [SMulCommClass β γ γ] (b : β) (hg : IsDvdSequence f) :

    A function f : ℕ → ℕ is a strong divisibility sequence if gcd (f a) (f b) = f (gcd a b).

    Equations
    Instances For