Shifted Degrees for Polynomial Rows #
def
CompPoly.PolynomialMatrix.instReprShiftedLeadingTerm.repr
{F✝ : Type u_2}
[Repr F✝]
:
ShiftedLeadingTerm F✝ → ℕ → Std.Format
Instances For
@[instance_reducible]
instance
CompPoly.PolynomialMatrix.instReprShiftedLeadingTerm
{F✝ : Type u_2}
[Repr F✝]
:
Repr (ShiftedLeadingTerm F✝)
def
CompPoly.PolynomialMatrix.rowShiftedDegree?
{F : Type u_1}
[Zero F]
[BEq F]
(row : PolynomialRow F)
(shift : Array ℕ)
:
Shifted degree of a row, with none exactly for zero rows.
Instances For
def
CompPoly.PolynomialMatrix.rowShiftedLeadingPosition?
{F : Type u_1}
[Zero F]
[BEq F]
(row : PolynomialRow F)
(shift : Array ℕ)
:
Shifted leading position of a nonzero row. Ties use the largest column index.
Instances For
def
CompPoly.PolynomialMatrix.rowShiftedLeadingTerm?
{F : Type u_1}
[Zero F]
[BEq F]
(row : PolynomialRow F)
(shift : Array ℕ)
:
Shifted leading term metadata for a nonzero row.
Instances For
theorem
CompPoly.PolynomialMatrix.shiftedEntryDegree?_eq_some_iff
{F : Type u_1}
[Zero F]
[BEq F]
[LawfulBEq F]
(row : PolynomialRow F)
(shift : Array ℕ)
(j d : ℕ)
:
A row entry has shifted degree d exactly when it is nonzero and d is its shifted degree.
theorem
CompPoly.PolynomialMatrix.rowShiftedDegree?_eq_none_iff
{F : Type u_1}
[Zero F]
[BEq F]
[LawfulBEq F]
{row : PolynomialRow F}
{shift : Array ℕ}
:
Nonzero rows are exactly the rows with a shifted degree.
theorem
CompPoly.PolynomialMatrix.shiftedEntryDegree?_le_of_rowShiftedDegree?_eq_some
{F : Type u_1}
[Zero F]
[BEq F]
{row : PolynomialRow F}
{shift : Array ℕ}
{d j e : ℕ}
(hdeg : rowShiftedDegree? row shift = some d)
(hj : j < Array.size row)
(hentry : shiftedEntryDegree? row shift j = some e)
:
A returned shifted row degree bounds every nonzero shifted entry degree.
theorem
CompPoly.PolynomialMatrix.exists_shiftedEntryDegree?_eq_of_rowShiftedDegree?_eq_some
{F : Type u_1}
[Zero F]
[BEq F]
{row : PolynomialRow F}
{shift : Array ℕ}
{d : ℕ}
(hdeg : rowShiftedDegree? row shift = some d)
:
∃ j < Array.size row, shiftedEntryDegree? row shift j = some d
A returned shifted row degree is attained by some row entry.
def
CompPoly.PolynomialMatrix.ShiftedWeakPopov
{F : Type u_1}
[Zero F]
[BEq F]
(M : PolynomialMatrix F)
(shift : Array ℕ)
:
A shifted weak-Popov matrix has distinct leading positions among nonzero rows.