Documentation

LeanPool.MatrixMultiplicationAllFields.LinearAlgebra.MatrixMultiplication.Rectangular.ASI

Rectangular matrix multiplication algorithms and their asymptotic exponents.

theorem MatrixMultiplicationAllFields.MatrixMultiplication.Arithmetic.rectangularAdmissibleExponent_of_rankAtMost {F : Type u_1} [Field F] {a b R : ℕ} (ha : 2 ≤ a) {k τ : ℝ} (hk : 0 ≤ k) (hab : ↑a ^ k ≤ ↑b) (hRank : (Foundation.Tensor.matrixCoefficients (Fin a) (Fin b) (Fin a)).RankAtMost R) (hτ : 0 ≤ τ) (hR : ↑R ≤ ↑a ^ τ) (hin : ↑(a * b) ≤ ↑a ^ τ) (hout : ↑a ^ 2 ≤ ↑a ^ τ) :
theorem MatrixMultiplicationAllFields.MatrixMultiplication.Arithmetic.rectangular_rpow_omega_le_of_rankAtMost {F : Type u_1} [Field F] {a b R : ℕ} {B k : ℝ} (ha : 2 ≤ a) (hk : 0 ≤ k) (hab : ↑a ^ k ≤ ↑b) (hRank : (Foundation.Tensor.matrixCoefficients (Fin a) (Fin b) (Fin a)).RankAtMost R) (hout : ↑a ^ 2 ≤ B) (hin : ↑(a * b) ≤ B) (hR : ↑R ≤ B) :
theorem MatrixMultiplicationAllFields.MatrixMultiplication.Arithmetic.rectangular_rpow_omega_le_of_rank_growth {F : Type u_1} [Field F] {a b : ℕ} {q C k : ℝ} (ha : 2 ≤ a) (hk : 0 ≤ k) (hab : ↑a ^ k ≤ ↑b) (hout : ↑a ^ 2 ≤ q) (hin : ↑(a * b) ≤ q) (R : ℕ → ℕ) (hRank : ∀ (t : ℕ), (Foundation.Tensor.matrixCoefficients (Fin (a ^ t)) (Fin (b ^ t)) (Fin (a ^ t))).RankAtMost (R t)) (hcost : ∀ (t : ℕ), ↑(R t) ≤ C * q ^ t) :
theorem MatrixMultiplicationAllFields.MatrixMultiplication.Arithmetic.equalRectangular_inequality {F : Type u_1} [Field F] {a b L r : ℕ} {k : ℝ} (ha : 2 ≤ a) (hk : 0 ≤ k) (hab : ↑a ^ k ≤ ↑b) (hbatch : (Foundation.Tensor.directSum fun (x : Fin L) => Foundation.Tensor.matrixCoefficients (Fin a) (Fin b) (Fin a)).RankAtMost r) :
↑L * ↑a ^ rectangularOmega F k ≤ ↑r
theorem MatrixMultiplicationAllFields.MatrixMultiplication.Arithmetic.power_le_of_forall_pow_le_square_linear_mul_pow (d : ℕ) {x r : ℝ} (hr : 0 ≤ r) (h : ∀ (n : ℕ), 0 < n → x ^ n ≤ ↑(d * n + 1) ^ 2 * r ^ n) :
x ≤ r