The duality theorem for the height of a subspace #
A subspace and its annihilator have the same height. This is W. M. Schmidt's theorem: the Plücker coordinates of the annihilator are those of the subspace read at the complementary index, up to a sign at each index and one common nonzero factor, and every height in this development is insensitive to exactly that much — a signed reindexing and a scalar.
Main results #
Submodule.mulHeight_comap_piEquiv_dualAnnihilator, with its Arakelov and absolute companionsSubmodule.arakelovMulHeight_comap_piEquiv_dualAnnihilatorandSubmodule.absMulHeight_comap_piEquiv_dualAnnihilatorand every logarithmic form: the duality theorem, the height ofVagainst the height of its annihilator, transported back toι → Kalong the standard basis.Matrix.mulHeight_ker_mulVecLinand its five companions: the solution space ofA x = 0and the row space ofAhave the same height in each supported normalization. The Arakelov case corresponds to Bombieri–Gubler Corollary 2.8.12.Submodule.exists_plucker_eq_plucker_compl: the coordinate statement behind both. A subspace and its annihilator have bases whose Plücker coordinates agree at complementary indices up to a sign and one common nonzero factor — Schmidt's involutionτ.Submodule.mem_comap_piEquiv_dualAnnihilator: the transported annihilator is the orthogonal complement for the standard bilinear form, andSubmodule.eq_comap_piEquiv_dualAnnihilator_of_forall_dotProduct_eq_zerois that reading as a way into the theorems above.Submodule.comap_piEquiv_dualAnnihilator_eq_mapis the same subspace in the other spelling, themapalong the inverse identification.Height.mulHeight_eq_of_forall_eq_or_eq_negand its Arakelov and absolute companions: no height in this development sees a change of sign in a coordinate. These are statements about Mathlib's heights and belong upstream.
Implementation notes #
The annihilator lives in the dual space, so it is transported back to ι → K along
Module.piEquiv ι K K, whose value at x is the functional v ↦ v ⬝ᵥ x; the transported
annihilator is therefore the orthogonal complement of V for the standard bilinear form.
Submodule.comap_piEquiv_dualAnnihilator_eq_map turns the comap used here into the map along
the inverse equivalence, which is the other spelling in use.
⚠ The annihilator and not the orthogonal complement is what the proof must use, even though the
two are identified here. Over a field that is not formally real the two summands V and V^⊥ can
meet — over ℚ(i), the line spanned by (1, i) is its own orthogonal complement — so the matrix
whose rows are a basis of V stacked on a basis of V^⊥ is singular, and every argument through
its determinant fails. The proof below is stated for a complement W of V, which always
exists, and reaches the annihilator through the dual basis.
The proof is elementary, and in particular uses neither a Laplace expansion along a block of rows
nor Jacobi's identity for the complementary minors of an inverse, neither of which Mathlib has.
Instead: let the rows of C be a basis of ι → K whose first block is a basis of V, and let the
rows of D be the dual basis read back in ι → K, so that C * Dᵀ = 1. For a set s of k
columns, multiply C by the matrix whose first k columns are the standard basis vectors at s
and whose remaining columns are the second block of Dᵀ. The product is block triangular with the
s-minor of the first block of C in one corner and an identity in the other, while the second
factor, read through the enumeration of ι that lists s and then its complement, is block
triangular with the complementary minor of the second block of D in one corner. Two applications
of Matrix.det_fromBlocks_zero₁₂ and Matrix.det_fromBlocks_zero₂₁ give the identity, and the
factor that appears is the determinant of C read through that enumeration, which depends on s
only through a permutation sign (Matrix.det_permute').
References #
W. M. Schmidt, On heights of algebraic subspaces and diophantine approximations, Annals of Mathematics 85 (1967), §1, equations (2) and (4), where the involution on Grassmann coordinates that reverses the index order and attaches a sign is what makes the theorem hold in every normalization at once. E. Bombieri and W. Gubler, Heights in Diophantine Geometry, Cambridge University Press (2006), Proposition 2.8.10 and Corollary 2.8.12 for the absolute Arakelov version. The same Plücker identity also gives the sup-norm counterparts here. The underlying linear algebra is Hindry–Silverman, Diophantine Geometry: An Introduction, Exercise A.1.11(c).
This is Layer 3.5 of the ArithmeticHeights roadmap.
A change of sign in a coordinate does not change the height. Every absolute value takes
the same value at x and at -x, and the tuple is zero exactly when the original is, so both
the displayed product and the junk value are unchanged. This is the invariance that the duality
theorem of Layer 3.5 needs, the Plücker coordinates of an annihilator carrying a sign that depends
on the index.
The logarithmic form of Height.mulHeight_eq_of_forall_eq_or_eq_neg.
A change of sign in a coordinate does not change the Arakelov height either: the archimedean factor is a sum of squares of absolute values and the finite factor a supremum of absolute values, and neither sees a sign.
The logarithmic form of NumberField.arakelovMulHeight_eq_of_forall_eq_or_eq_neg.
A change of sign in a coordinate does not change the absolute height. The coordinates of
y lie in the field generated by those of x and conversely, so the two are computed in one and
the same number field, where the relative statement applies.
Two enumerations of the column index differ by a permutation, so the determinants they produce differ by a sign.
Rows dual to a family of rows are linearly independent.
The complementary-minor identity, for any enumeration. If the rows of C and of D are
dual for the standard bilinear form, the Plücker coordinate at s of the first block of C is,
up to a sign, the determinant of C read through e times the Plücker coordinate at the
complement of s of the second block of D. The factor does not depend on s; this is the
local form of duality the twisted duality theorem runs on.
The transported annihilator is the orthogonal complement. Module.piEquiv ι K K sends
x to the functional v ↦ v ⬝ᵥ x, so a vector lies in the annihilator of V read back in
ι → K exactly when it is orthogonal to V for the standard bilinear form.
The two spellings of the transported annihilator: the comap along the identification of
ι → K with its dual, and the map along the inverse. This is Mathlib's
Submodule.comap_equiv_eq_map_symm in the form the roadmap pins.
Every subspace sits in a dual pair of matrices. The rows of C are a basis of ι → K
whose first block is a basis of V; the rows of D are the dual basis, read back in ι → K
through the standard bilinear form.
The second block of the dual basis spans the orthogonal complement.
Plücker duality in coordinates (W. M. Schmidt 1967, §1, equations (2) and (4)). A
subspace and its annihilator have bases whose Plücker coordinates agree at complementary indices,
up to a sign at each index and one common nonzero factor — the involution Schmidt calls τ.
Every height in this development is invariant under exactly that much.
Sup-norm duality: a subspace and its annihilator have the same height, with the annihilator
read back in ι → K along the standard basis. This is the sup-norm counterpart of the Arakelov
version in Bombieri–Gubler Proposition 2.8.10. By Submodule.mem_comap_piEquiv_dualAnnihilator
the subspace on the left is the orthogonal complement of V for the standard bilinear form.
The logarithmic form of Submodule.mulHeight_comap_piEquiv_dualAnnihilator.
The relative multiplicative form of Arakelov duality (Bombieri–Gubler Proposition 2.8.10). Schmidt's mechanism gives both normalizations at once: the two coordinate tuples differ by a signed reindexing and a scalar, and no height in Layer 0 sees either.
The logarithmic form of Submodule.arakelovMulHeight_comap_piEquiv_dualAnnihilator.
The duality theorem for the absolute height.
The logarithmic form of Submodule.absMulHeight_comap_piEquiv_dualAnnihilator.
The orthogonal-complement form of the hypothesis. A subspace cut out by orthogonality to
V for the standard bilinear form is the transported annihilator, so each duality theorem above
applies to it. Submodule.comap_piEquiv_dualAnnihilator_eq_map turns the comap into a map
along the inverse, which is the other spelling in use.
The solution space of A x = 0 is the orthogonal complement of the row space of A.
The sup-norm heights of the solution space of A x = 0 and the row space of A agree.
This is the sup-norm counterpart of the Arakelov duality in Bombieri–Gubler Corollary 2.8.12.
The logarithmic form of Matrix.mulHeight_ker_mulVecLin.
The relative Arakelov heights of the solution space and row space agree.
This is the relative multiplicative form of Bombieri–Gubler Corollary 2.8.12. In the full-row-rank
number-field setting of Bombieri–Vaaler, the right-hand side is H(A) ^ [K : ℚ].
The logarithmic form of Matrix.arakelovMulHeight_ker_mulVecLin.
The absolute height of a subspace is the absolute height of any matrix cutting it out.
The logarithmic form of Matrix.absMulHeight_ker_mulVecLin.