@@ -24,12 +24,12 @@ to the property of ring homomorphisms `Locally IsStandardSmooth`
2424
2525## Implementation details
2626
27- - Our definition is equivalent to defining `IsSmooth ` as the associated scheme morphism property of
27+ - Our definition is equivalent to defining `Smooth ` as the associated scheme morphism property of
2828 the property of ring maps induced by `Algebra.Smooth`. The equivalence will follow from the
29- equivalence of `Locally IsStandardSmooth` and `Algebra.IsSmooth `, but the latter is a (hard) TODO.
29+ equivalence of `Locally IsStandardSmooth` and `Algebra.Smooth `, but the latter is a (hard) TODO.
3030
3131The reason why we choose the definition via `IsStandardSmooth`, is because verifying that
32- `Algebra.IsSmooth ` is local in the sense of `RingHom.PropertyIsLocal` is a (hard) TODO.
32+ `Algebra.Smooth ` is local in the sense of `RingHom.PropertyIsLocal` is a (hard) TODO.
3333
3434## Notes
3535
@@ -60,85 +60,99 @@ exists an affine open neighborhood `V` of `x` and an affine open neighborhood `U
6060standard smooth.
6161-/
6262@[mk_iff]
63- class IsSmooth : Prop where
63+ class Smooth : Prop where
6464 exists_isStandardSmooth : ∀ (x : X), ∃ (U : Y.affineOpens) (V : X.affineOpens) (_ : x ∈ V.1 )
6565 (e : V.1 ≤ f ⁻¹ᵁ U.1 ), IsStandardSmooth (f.appLE U V e).hom
6666
67- /-- The property of scheme morphisms `IsSmooth` is associated with the ring
67+ @ [deprecated (since := "2026-02-09" )] alias IsSmooth := Smooth
68+
69+ /-- The property of scheme morphisms `Smooth` is associated with the ring
6870homomorphism property `Locally IsStandardSmooth`. -/
69- instance : HasRingHomProperty @IsSmooth (Locally IsStandardSmooth) := by
71+ instance : HasRingHomProperty @Smooth (Locally IsStandardSmooth) := by
7072 apply HasRingHomProperty.locally_of_iff
7173 · exact isStandardSmooth_localizationPreserves.away
7274 · exact isStandardSmooth_stableUnderCompositionWithLocalizationAway
7375 · intro X Y f
74- rw [isSmooth_iff ]
76+ rw [smooth_iff ]
7577
7678/-- Being smooth is stable under composition. -/
77- instance : MorphismProperty.IsStableUnderComposition @IsSmooth :=
79+ instance : MorphismProperty.IsStableUnderComposition @Smooth :=
7880 HasRingHomProperty.stableUnderComposition <| locally_stableUnderComposition
7981 isStandardSmooth_respectsIso isStandardSmooth_localizationPreserves
8082 isStandardSmooth_stableUnderComposition
8183
8284/-- The composition of smooth morphisms is smooth. -/
83- instance isSmooth_comp {Z : Scheme.{u}} (g : Y ⟶ Z) [IsSmooth f] [IsSmooth g] :
84- IsSmooth (f ≫ g) :=
85- MorphismProperty.comp_mem _ f g ‹IsSmooth f› ‹IsSmooth g›
85+ instance smooth_comp {Z : Scheme.{u}} (g : Y ⟶ Z) [Smooth f] [Smooth g] :
86+ Smooth (f ≫ g) :=
87+ MorphismProperty.comp_mem _ f g ‹Smooth f› ‹Smooth g›
8688
8789/-- Smooth of relative dimension `n` is stable under base change. -/
88- lemma isSmooth_isStableUnderBaseChange : MorphismProperty.IsStableUnderBaseChange @IsSmooth :=
90+ lemma smooth_isStableUnderBaseChange : MorphismProperty.IsStableUnderBaseChange @Smooth :=
8991 HasRingHomProperty.isStableUnderBaseChange <| locally_isStableUnderBaseChange
9092 isStandardSmooth_respectsIso isStandardSmooth_isStableUnderBaseChange
9193
94+ @ [deprecated (since := "2026-02-09" )]
95+ alias isSmooth_isStableUnderBaseChange := smooth_isStableUnderBaseChange
96+
9297/--
9398A morphism of schemes `f : X ⟶ Y` is smooth of relative dimension `n` if for each `x : X` there
9499exists an affine open neighborhood `V` of `x` and an affine open neighborhood `U` of
95100`f.base x` with `V ≤ f ⁻¹ᵁ U` such that the induced map `Γ(Y, U) ⟶ Γ(X, V)` is
96101standard smooth of relative dimension `n`.
97102-/
98103@[mk_iff]
99- class IsSmoothOfRelativeDimension : Prop where
104+ class SmoothOfRelativeDimension : Prop where
100105 exists_isStandardSmoothOfRelativeDimension : ∀ (x : X), ∃ (U : Y.affineOpens)
101106 (V : X.affineOpens) (_ : x ∈ V.1 ) (e : V.1 ≤ f ⁻¹ᵁ U.1 ),
102107 IsStandardSmoothOfRelativeDimension n (f.appLE U V e).hom
103108
109+ @ [deprecated (since := "2026-02-09" )] alias IsSmoothOfRelativeDimension := SmoothOfRelativeDimension
110+
104111/-- If `f` is smooth of any relative dimension, it is smooth. -/
105- lemma IsSmoothOfRelativeDimension.isSmooth [IsSmoothOfRelativeDimension n f] : IsSmooth f where
112+ lemma SmoothOfRelativeDimension.smooth [SmoothOfRelativeDimension n f] : Smooth f where
106113 exists_isStandardSmooth x := by
107114 obtain ⟨U, V, hx, e, hf⟩ := exists_isStandardSmoothOfRelativeDimension (n := n) (f := f) x
108115 exact ⟨U, V, hx, e, hf.isStandardSmooth⟩
109116
110- /-- The property of scheme morphisms `IsSmoothOfRelativeDimension n` is associated with the ring
117+ @ [deprecated (since := "2026-02-09" )]
118+ alias IsSmoothOfRelativeDimension.isSmooth := SmoothOfRelativeDimension.smooth
119+
120+ /-- The property of scheme morphisms `SmoothOfRelativeDimension n` is associated with the ring
111121homomorphism property `Locally (IsStandardSmoothOfRelativeDimension n)`. -/
112- instance : HasRingHomProperty (@IsSmoothOfRelativeDimension n)
122+ instance : HasRingHomProperty (@SmoothOfRelativeDimension n)
113123 (Locally (IsStandardSmoothOfRelativeDimension n)) := by
114124 apply HasRingHomProperty.locally_of_iff
115125 · exact (isStandardSmoothOfRelativeDimension_localizationPreserves n).away
116126 · exact isStandardSmoothOfRelativeDimension_stableUnderCompositionWithLocalizationAway n
117127 · intro X Y f
118- rw [isSmoothOfRelativeDimension_iff ]
128+ rw [smoothOfRelativeDimension_iff ]
119129
120130/-- Smooth of relative dimension `n` is stable under base change. -/
121- lemma isSmoothOfRelativeDimension_isStableUnderBaseChange :
122- MorphismProperty.IsStableUnderBaseChange (@IsSmoothOfRelativeDimension n) :=
131+ lemma smoothOfRelativeDimension_isStableUnderBaseChange :
132+ MorphismProperty.IsStableUnderBaseChange (@SmoothOfRelativeDimension n) :=
123133 HasRingHomProperty.isStableUnderBaseChange <| locally_isStableUnderBaseChange
124134 isStandardSmoothOfRelativeDimension_respectsIso
125135 (isStandardSmoothOfRelativeDimension_isStableUnderBaseChange n)
126136
137+ @ [deprecated (since := "2026-02-09" )]
138+ alias isSmoothOfRelativeDimension_isStableUnderBaseChange :=
139+ smoothOfRelativeDimension_isStableUnderBaseChange
140+
127141/-- Open immersions are smooth of relative dimension `0`. -/
128- instance (priority := 900 ) [IsOpenImmersion f] : IsSmoothOfRelativeDimension 0 f :=
142+ instance (priority := 900 ) [IsOpenImmersion f] : SmoothOfRelativeDimension 0 f :=
129143 HasRingHomProperty.of_isOpenImmersion
130144 (locally_holdsForLocalizationAway <|
131145 isStandardSmoothOfRelativeDimension_holdsForLocalizationAway).containsIdentities
132146
133147/-- Open immersions are smooth. -/
134- instance (priority := 900 ) [IsOpenImmersion f] : IsSmooth f :=
135- IsSmoothOfRelativeDimension.isSmooth 0 f
148+ instance (priority := 900 ) [IsOpenImmersion f] : Smooth f :=
149+ SmoothOfRelativeDimension.smooth 0 f
136150
137151/-- If `f` is smooth of relative dimension `n` and `g` is smooth of relative dimension
138152`m`, then `f ≫ g` is smooth of relative dimension `n + m`. -/
139- instance isSmoothOfRelativeDimension_comp {Z : Scheme.{u}} (g : Y ⟶ Z)
140- [hf : IsSmoothOfRelativeDimension n f] [hg : IsSmoothOfRelativeDimension m g] :
141- IsSmoothOfRelativeDimension (n + m) (f ≫ g) where
153+ instance smoothOfRelativeDimension_comp {Z : Scheme.{u}} (g : Y ⟶ Z)
154+ [hf : SmoothOfRelativeDimension n f] [hg : SmoothOfRelativeDimension m g] :
155+ SmoothOfRelativeDimension (n + m) (f ≫ g) where
142156 exists_isStandardSmoothOfRelativeDimension x := by
143157 obtain ⟨U₂, V₂, hfx₂, e₂, hf₂⟩ := hg.exists_isStandardSmoothOfRelativeDimension (f x)
144158 obtain ⟨U₁', V₁', hx₁', e₁', hf₁'⟩ := hf.exists_isStandardSmoothOfRelativeDimension x
@@ -159,20 +173,20 @@ instance isSmoothOfRelativeDimension_comp {Z : Scheme.{u}} (g : Y ⟶ Z)
159173 exact (isStandardSmoothOfRelativeDimension_stableUnderCompositionWithLocalizationAway n).left
160174 _ r _ hf₁
161175
162- instance {Z : Scheme.{u}} (g : Y ⟶ Z) [IsSmoothOfRelativeDimension 0 f]
163- [IsSmoothOfRelativeDimension 0 g] :
164- IsSmoothOfRelativeDimension 0 (f ≫ g) :=
165- inferInstanceAs <| IsSmoothOfRelativeDimension (0 + 0 ) (f ≫ g)
176+ instance {Z : Scheme.{u}} (g : Y ⟶ Z) [SmoothOfRelativeDimension 0 f]
177+ [SmoothOfRelativeDimension 0 g] :
178+ SmoothOfRelativeDimension 0 (f ≫ g) :=
179+ inferInstanceAs <| SmoothOfRelativeDimension (0 + 0 ) (f ≫ g)
166180
167181/-- Smooth of relative dimension `0` is multiplicative. -/
168- instance : MorphismProperty.IsMultiplicative (@IsSmoothOfRelativeDimension 0 ) where
182+ instance : MorphismProperty.IsMultiplicative (@SmoothOfRelativeDimension 0 ) where
169183 id_mem _ := inferInstance
170184 comp_mem _ _ _ _ := inferInstance
171185
172186/-- Smooth morphisms are locally of finite presentation. -/
173- instance (priority := 100 ) [hf : IsSmooth f] : LocallyOfFinitePresentation f := by
187+ instance (priority := 100 ) [hf : Smooth f] : LocallyOfFinitePresentation f := by
174188 rw [HasRingHomProperty.eq_affineLocally @LocallyOfFinitePresentation]
175- rw [HasRingHomProperty.eq_affineLocally @IsSmooth ] at hf
189+ rw [HasRingHomProperty.eq_affineLocally @Smooth ] at hf
176190 refine affineLocally_le (fun hf ↦ ?_) f hf
177191 apply RingHom.locally_of_locally (Q := RingHom.FinitePresentation) at hf
178192 · rwa [RingHom.locally_iff_of_localizationSpanTarget finitePresentation_respectsIso
0 commit comments