Submersive presentations #
In this file we define PreSubmersivePresentation
. This is a presentation P
that has
fewer relations than generators. More precisely there exists an injective map from σ
to ι
. To such a presentation we may associate a Jacobian. P
is then a submersive
presentation, if its Jacobian is invertible.
Algebras that admit such a presentation are called standard smooth. See
Mathlib.RingTheory.Smooth.StandardSmooth
for applications.
Main definitions #
All of these are in the Algebra
namespace. Let S
be an R
-algebra.
PreSubmersivePresentation
: APresentation
ofS
asR
-algebra, equipped with an injective mapP.map
fromσ
toι
. This map is used to define the differential of a presubmersive presentation.
For a presubmersive presentation P
of S
over R
we make the following definitions:
PreSubmersivePresentation.differential
: A linear endomorphism ofσ → P.Ring
sending thej
-th standard basis vector, corresponding to thej
-th relation, to the vector of partial derivatives ofP.relation j
with respect to the coordinatesP.map i
fori : σ
.PreSubmersivePresentation.jacobian
: The determinant ofP.differential
.PreSubmersivePresentation.jacobiMatrix
: Ifσ
has aFintype
instance, we may form the matrix corresponding toP.differential
. Its determinant isP.jacobian
.SubmersivePresentation
: A submersive presentation is a finite, presubmersive presentationP
with inS
invertible Jacobian.
Notes #
This contribution was created as part of the AIM workshop "Formalizing algebraic geometry" in June 2024.
A PreSubmersivePresentation
of an R
-algebra S
is a Presentation
with relations equipped with an injective map : relations → vars
.
This map determines how the differential of P
is constructed. See
PreSubmersivePresentation.differential
for details.
- val : ι → S
- σ' : S → MvPolynomial ι R
- algebra : Algebra (MvPolynomial ι R) S
- map : σ → ι
A map from the relations type to the variables type. Used to compute the differential.
- map_inj : Function.Injective self.map
Instances For
The standard basis of σ → P.ring
.
Equations
- P.basis = Pi.basisFun P.Ring σ
Instances For
The differential of a P : PreSubmersivePresentation
is a P.Ring
-linear map on
σ → P.Ring
:
The j
-th standard basis vector, corresponding to the j
-th relation of P
, is mapped
to the vector of partial derivatives of P.relation j
with respect
to the coordinates P.map i
for all i : σ
.
The determinant of this map is the Jacobian of P
used to define when a PreSubmersivePresentation
is submersive. See PreSubmersivePresentation.jacobian
.
Equations
- P.differential = (P.basis.constr P.Ring) fun (j i : σ) => (MvPolynomial.pderiv (P.map i)) (P.relation j)
Instances For
PreSubmersivePresentation.differential
pushed forward to S
via aeval P.val
.
Equations
- P.aevalDifferential = ((Pi.basisFun S σ).constr S) fun (j i : σ) => (MvPolynomial.aeval P.val) ((MvPolynomial.pderiv (P.map i)) (P.relation j))
Instances For
The Jacobian of a P : PreSubmersivePresentation
is the determinant
of P.differential
viewed as element of S
.
Equations
- P.jacobian = (algebraMap P.Ring S) (LinearMap.det P.differential)
Instances For
If σ
has a Fintype
and DecidableEq
instance, the differential of P
can be expressed in matrix form.
Equations
- P.jacobiMatrix = (LinearMap.toMatrix P.basis P.basis) P.differential
Instances For
If algebraMap R S
is bijective, the empty generators are a pre-submersive
presentation with no relations.
Equations
- One or more equations did not get rendered due to their size.
Instances For
If S
is the localization of R
at r
, this is the canonical submersive presentation
of S
as R
-algebra.
Equations
- Algebra.PreSubmersivePresentation.localizationAway S r = { toPresentation := Algebra.Presentation.localizationAway S r, map := fun (x : Unit) => (), map_inj := ⋯ }
Instances For
Given an R
-algebra S
and an S
-algebra T
with pre-submersive presentations,
this is the canonical pre-submersive presentation of T
as an R
-algebra.
Equations
Instances For
The dimension of the composition of two finite submersive presentations is the sum of the dimensions.
Jacobian of composition #
Let S
be an R
-algebra and T
be an S
-algebra with presentations P
and Q
respectively.
In this section we compute the Jacobian of the composition of Q
and P
to be
the product of the Jacobians. For this we use a block decomposition of the Jacobi matrix and show
that the upper-right block vanishes, the upper-left block has determinant Jacobian of Q
and
the lower-right block has determinant Jacobian of P
.
The Jacobian of the composition of presentations is the product of the Jacobians.
If P
is a pre-submersive presentation of S
over R
and T
is an R
-algebra, we
obtain a natural pre-submersive presentation of T ⊗[R] S
over T
.
Equations
- Algebra.PreSubmersivePresentation.baseChange T P = { toPresentation := Algebra.Presentation.baseChange T P.toPresentation, map := P.map, map_inj := ⋯ }
Instances For
Given a pre-submersive presentation P
and equivalences ι' ≃ ι
and
σ' ≃ σ
, this is the induced pre-submersive presentation with variables indexed
by ι
and relations indexed by `κ
Equations
Instances For
The naive pre-submersive presentation of a quotient R[Xᵢ] ⧸ (vⱼ)
.
If the definitional equality of the section matters, it can be explicitly provided.
To construct the associated submersive presentation, use
PreSubmersivePresentation.jacobiMatrix_naive
.
Equations
- Algebra.PreSubmersivePresentation.naive a ha s hs = { toPresentation := Algebra.Presentation.naive s hs, map := a, map_inj := ha }
Instances For
A PreSubmersivePresentation
is submersive if its Jacobian is a unit in S
and the presentation is finite.
- val : ι → S
- σ' : S → MvPolynomial ι R
- algebra : Algebra (MvPolynomial ι R) S
- map : σ → ι
- map_inj : Function.Injective self.map
Instances For
If algebraMap R S
is bijective, the empty generators are a submersive
presentation with no relations.
Equations
- Algebra.SubmersivePresentation.ofBijectiveAlgebraMap h = { toPreSubmersivePresentation := Algebra.PreSubmersivePresentation.ofBijectiveAlgebraMap h, jacobian_isUnit := ⋯ }
Instances For
The canonical submersive R
-presentation of R
with no generators and no relations.
Equations
Instances For
Given an R
-algebra S
and an S
-algebra T
with submersive presentations,
this is the canonical submersive presentation of T
as an R
-algebra.
Equations
Instances For
If S
is the localization of R
at r
, this is the canonical submersive presentation
of S
as R
-algebra.
Equations
- Algebra.SubmersivePresentation.localizationAway S r = { toPreSubmersivePresentation := Algebra.PreSubmersivePresentation.localizationAway S r, jacobian_isUnit := ⋯ }
Instances For
If P
is a submersive presentation of S
over R
and T
is an R
-algebra, we
obtain a natural submersive presentation of T ⊗[R] S
over T
.
Equations
- Algebra.SubmersivePresentation.baseChange T P = { toPreSubmersivePresentation := Algebra.PreSubmersivePresentation.baseChange T P.toPreSubmersivePresentation, jacobian_isUnit := ⋯ }
Instances For
Given a submersive presentation P
and equivalences ι' ≃ ι
and
σ' ≃ σ
, this is the induced submersive presentation with variables indexed
by ι'
and relations indexed by σ'
Instances For
If P
is submersive, PreSubmersivePresentation.aevalDifferential
is an isomorphism.
Equations
Instances For
If P
is a submersive presentation, the partial derivatives of P.relation i
by
P.map j
form a basis of σ → S
.
Equations
- P.basisDeriv = (Pi.basisFun S σ).map P.aevalDifferentialEquiv