Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Merged by Bors] - feat(FieldTheory/PurelyInseparable): definition and basic results of purely inseparable extensions #9488

Closed
wants to merge 69 commits into from

Conversation

acmepjz
Copy link
Collaborator

@acmepjz acmepjz commented Jan 6, 2024

Main defintions:

  • IsPurelyInseparable: typeclass for purely inseparable field extension: an algebraic extension
    E / F is purely inseparable if and only if the minimal polynomial of every element of E ∖ F
    is not separable.

Main results (not exhaustive):

  • isPurelyInseparable_iff_mem_pow: a field extension E / F of exponential characteristic q is
    purely inseparable if and only if for every element x of E, there exists a natural number n
    such that x ^ (q ^ n) is contained in F.

  • IsPurelyInseparable.trans: if E / F and K / E are both purely inseparable extensions, then
    K / F is also purely inseparable.

  • isPurelyInseparable_iff_natSepDegree_eq_one: E / F is purely inseparable if and only if for
    every element x of E, its minimal polynomial has separable degree one.

  • isPurelyInseparable_iff_minpoly_eq_X_pow_sub_C: a field extension E / F of exponential
    characteristic q is purely inseparable if and only if for every element x of E, the minimal
    polynomial of x over F is of form X ^ (q ^ n) - y for some natural number n and some
    element y of F.

  • isPurelyInseparable_iff_minpoly_eq_X_sub_C_pow: a field extension E / F of exponential
    characteristic q is purely inseparable if and only if for every element x of E, the minimal
    polynomial of x over F is of form (X - x) ^ (q ^ n) for some natural number n.

  • isPurelyInseparable_iff_finSepDegree_eq_one: an algebraic extension is purely inseparable
    if and only if it has (finite) separable degree one.

    TODO: remove the algebraic assumption. (will be in later PR)

  • IsPurelyInseparable.normal: a purely inseparable extension is normal.

  • separableClosure.isPurelyInseparable: if E / F is algebraic, then E is purely inseparable
    over the (relative) separable closure of E / F.

  • IsPurelyInseparable.injective_comp_algebraMap: if E / F is purely inseparable, then for any
    reduced ring L, the map (E →+* L) → (F →+* L) induced by algebraMap F E is injective.
    In other words, a purely inseparable field extension is an epimorphism in the category of fields.

  • isPurelyInseparable_adjoin_iff_mem_pow: if F is of exponential characteristic q, then
    F(S) / F is a purely inseparable extension if and only if for any x ∈ S, x ^ (q ^ n) is
    contained in F for some n : ℕ.

  • Field.finSepDegree_eq: if E / F is algebraic, then the Field.finSepDegree F E is equal to
    Field.sepDegree F E as a natural number. This means that the cardinality of Field.Emb F E
    and the degree of (separableClosure F E) / F are both finite or infinite, and when they are
    finite, they coincide.

TODO: (will be in later PR)

  • IsPurelyInseparable.of_injective_comp_algebraMap: if L is an algebraically closed field
    containing E, such that the map (E →+* L) → (F →+* L) induced by algebraMap F E is
    injective, then E / F is purely inseparable. In other words, epimorphisms in the category of
    fields must be purely inseparable extensions. Need to use the fact that Emb F E is infintie
    when E / F is (purely) transcendental.

  • Prove that the (infinite) inseparable degree are multiplicative; linearly disjoint argument is needed.


Open in Gitpod

Mathlib/FieldTheory/PurelyInseparable.lean Outdated Show resolved Hide resolved
Mathlib/FieldTheory/PurelyInseparable.lean Show resolved Hide resolved
Mathlib/FieldTheory/PurelyInseparable.lean Outdated Show resolved Hide resolved
Mathlib/FieldTheory/PurelyInseparable.lean Outdated Show resolved Hide resolved
Copy link
Member

@erdOne erdOne left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the reviewing process will be faster if you can split everything except the new file into a new PR.

Mathlib/FieldTheory/PurelyInseparable.lean Outdated Show resolved Hide resolved
Mathlib/FieldTheory/PurelyInseparable.lean Outdated Show resolved Hide resolved
Mathlib/FieldTheory/PurelyInseparable.lean Show resolved Hide resolved
Mathlib/FieldTheory/PurelyInseparable.lean Show resolved Hide resolved
Mathlib/FieldTheory/IsAlgClosed/Basic.lean Outdated Show resolved Hide resolved
@erdOne erdOne added awaiting-author A reviewer has asked the author a question or requested changes and removed awaiting-review labels Jan 7, 2024
@acmepjz
Copy link
Collaborator Author

acmepjz commented Jan 7, 2024

I think the reviewing process will be faster if you can split everything except the new file into a new PR.

OK, will do it later.

@acmepjz
Copy link
Collaborator Author

acmepjz commented Feb 4, 2024

I also have this

/-- If `E` is a perfect field of characteristic `p`, then the (relative) perfect closure
`perfectClosure F E` is perfect. -/
instance perfectClosure.perfectRing (p : ℕ) [ExpChar F p] [ExpChar E p]
    [PerfectRing E p] : PerfectRing (perfectClosure F E) p := .ofSurjective _ p fun x ↦ by

but maybe let's leave it for next PR?

@alreadydone
Copy link
Contributor

As you like!

Mathlib/FieldTheory/PurelyInseparable.lean Outdated Show resolved Hide resolved
Mathlib/FieldTheory/PurelyInseparable.lean Outdated Show resolved Hide resolved
Mathlib/FieldTheory/PurelyInseparable.lean Outdated Show resolved Hide resolved
Mathlib/FieldTheory/PurelyInseparable.lean Outdated Show resolved Hide resolved
Mathlib/FieldTheory/PurelyInseparable.lean Outdated Show resolved Hide resolved
Mathlib/FieldTheory/PurelyInseparable.lean Outdated Show resolved Hide resolved

variable (E)

-- TODO: remove `halg` assumption
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What are we missing for this TODO?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we need some result that for a transcendental extension E / F, the finSepDegree cannot be one, namely, there are at least two F-embeddings from E to the algebraic closure of E. Maybe @alreadydone has some preliminary works on it.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's keep this for another PR, has this one is already pretty long.

Copy link
Contributor

@alreadydone alreadydone Feb 6, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mainly we need a version of IsTranscendenceBasis.isAlgebraic with IntermediateField.adjoin rather than Algebra.adjoin, and we need to construct different embeddings of these IntermediateField.adjoin (which are purely transcendental extensions, and for this purpose IsTranscendenceBasis can be relaxed to AlgebraicIndependent).
If we want to count the number of embeddings, even more work need to be done.
All these would better be done in another PR touching RingTheory/AlgebraicIndependent.

@riccardobrasca
Copy link
Member

Thanks!

bors d+

@mathlib-bors
Copy link
Contributor

mathlib-bors bot commented Feb 6, 2024

✌️ acmepjz can now approve this pull request. To approve and merge a pull request, simply reply with bors r+. More detailed instructions are available here.

@acmepjz
Copy link
Collaborator Author

acmepjz commented Feb 6, 2024

bors r+

mathlib-bors bot pushed a commit that referenced this pull request Feb 6, 2024
…purely inseparable extensions (#9488)

Main defintions:

- `IsPurelyInseparable`: typeclass for purely inseparable field extension: an algebraic extension
  `E / F` is purely inseparable if and only if the minimal polynomial of every element of `E ∖ F`
  is not separable.

Main results (not exhaustive):

- `isPurelyInseparable_iff_mem_pow`: a field extension `E / F` of exponential characteristic `q` is
  purely inseparable if and only if for every element `x` of `E`, there exists a natural number `n`
  such that `x ^ (q ^ n)` is contained in `F`.

- `IsPurelyInseparable.trans`: if `E / F` and `K / E` are both purely inseparable extensions, then
  `K / F` is also purely inseparable.

- `isPurelyInseparable_iff_natSepDegree_eq_one`: `E / F` is purely inseparable if and only if for
  every element `x` of `E`, its minimal polynomial has separable degree one.

- `isPurelyInseparable_iff_minpoly_eq_X_pow_sub_C`: a field extension `E / F` of exponential
  characteristic `q` is purely inseparable if and only if for every element `x` of `E`, the minimal
  polynomial of `x` over `F` is of form `X ^ (q ^ n) - y` for some natural number `n` and some
  element `y` of `F`.

- `isPurelyInseparable_iff_minpoly_eq_X_sub_C_pow`: a field extension `E / F` of exponential
  characteristic `q` is purely inseparable if and only if for every element `x` of `E`, the minimal
  polynomial of `x` over `F` is of form `(X - x) ^ (q ^ n)` for some natural number `n`.

- `isPurelyInseparable_iff_finSepDegree_eq_one`: an algebraic extension is purely inseparable
  if and only if it has (finite) separable degree one.

  **TODO:** remove the algebraic assumption. (will be in later PR)

- `IsPurelyInseparable.normal`: a purely inseparable extension is normal.

- `separableClosure.isPurelyInseparable`: if `E / F` is algebraic, then `E` is purely inseparable
  over the (relative) separable closure of `E / F`.

- `IsPurelyInseparable.injective_comp_algebraMap`: if `E / F` is purely inseparable, then for any
  reduced ring `L`, the map `(E →+* L) → (F →+* L)` induced by `algebraMap F E` is injective.
  In other words, a purely inseparable field extension is an epimorphism in the category of fields.

- `isPurelyInseparable_adjoin_iff_mem_pow`: if `F` is of exponential characteristic `q`, then
  `F(S) / F` is a purely inseparable extension if and only if for any `x ∈ S`, `x ^ (q ^ n)` is
  contained in `F` for some `n : ℕ`.

- `Field.finSepDegree_eq`: if `E / F` is algebraic, then the `Field.finSepDegree F E` is equal to
  `Field.sepDegree F E` as a natural number. This means that the cardinality of `Field.Emb F E`
  and the degree of `(separableClosure F E) / F` are both finite or infinite, and when they are
  finite, they coincide.

TODO: (will be in later PR)

- `IsPurelyInseparable.of_injective_comp_algebraMap`: if `L` is an algebraically closed field
  containing `E`, such that the map `(E →+* L) → (F →+* L)` induced by `algebraMap F E` is
  injective, then `E / F` is purely inseparable. In other words, epimorphisms in the category of
  fields must be purely inseparable extensions. Need to use the fact that `Emb F E` is infintie
  when `E / F` is (purely) transcendental.

- Prove that the (infinite) inseparable degree are multiplicative; linearly disjoint argument is needed.



Co-authored-by: Junyan Xu <[email protected]>
Co-authored-by: Junyan Xu <[email protected]>
@mathlib-bors
Copy link
Contributor

mathlib-bors bot commented Feb 6, 2024

Build failed (retrying...):

@mathlib-bors
Copy link
Contributor

mathlib-bors bot commented Feb 6, 2024

Canceled.

· rw [pow_mul', h, one_pow]
rw [pow_mul']
convert ← (iterateFrobenius_inj R p k).eq_iff
apply map_one
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@riccardobrasca I moved one new lemma and two golfs from #9311 to this PR to streamline this proof below.

@acmepjz
Copy link
Collaborator Author

acmepjz commented Feb 6, 2024

bors r+

mathlib-bors bot pushed a commit that referenced this pull request Feb 6, 2024
…purely inseparable extensions (#9488)

Main defintions:

- `IsPurelyInseparable`: typeclass for purely inseparable field extension: an algebraic extension
  `E / F` is purely inseparable if and only if the minimal polynomial of every element of `E ∖ F`
  is not separable.

Main results (not exhaustive):

- `isPurelyInseparable_iff_mem_pow`: a field extension `E / F` of exponential characteristic `q` is
  purely inseparable if and only if for every element `x` of `E`, there exists a natural number `n`
  such that `x ^ (q ^ n)` is contained in `F`.

- `IsPurelyInseparable.trans`: if `E / F` and `K / E` are both purely inseparable extensions, then
  `K / F` is also purely inseparable.

- `isPurelyInseparable_iff_natSepDegree_eq_one`: `E / F` is purely inseparable if and only if for
  every element `x` of `E`, its minimal polynomial has separable degree one.

- `isPurelyInseparable_iff_minpoly_eq_X_pow_sub_C`: a field extension `E / F` of exponential
  characteristic `q` is purely inseparable if and only if for every element `x` of `E`, the minimal
  polynomial of `x` over `F` is of form `X ^ (q ^ n) - y` for some natural number `n` and some
  element `y` of `F`.

- `isPurelyInseparable_iff_minpoly_eq_X_sub_C_pow`: a field extension `E / F` of exponential
  characteristic `q` is purely inseparable if and only if for every element `x` of `E`, the minimal
  polynomial of `x` over `F` is of form `(X - x) ^ (q ^ n)` for some natural number `n`.

- `isPurelyInseparable_iff_finSepDegree_eq_one`: an algebraic extension is purely inseparable
  if and only if it has (finite) separable degree one.

  **TODO:** remove the algebraic assumption. (will be in later PR)

- `IsPurelyInseparable.normal`: a purely inseparable extension is normal.

- `separableClosure.isPurelyInseparable`: if `E / F` is algebraic, then `E` is purely inseparable
  over the (relative) separable closure of `E / F`.

- `IsPurelyInseparable.injective_comp_algebraMap`: if `E / F` is purely inseparable, then for any
  reduced ring `L`, the map `(E →+* L) → (F →+* L)` induced by `algebraMap F E` is injective.
  In other words, a purely inseparable field extension is an epimorphism in the category of fields.

- `isPurelyInseparable_adjoin_iff_mem_pow`: if `F` is of exponential characteristic `q`, then
  `F(S) / F` is a purely inseparable extension if and only if for any `x ∈ S`, `x ^ (q ^ n)` is
  contained in `F` for some `n : ℕ`.

- `Field.finSepDegree_eq`: if `E / F` is algebraic, then the `Field.finSepDegree F E` is equal to
  `Field.sepDegree F E` as a natural number. This means that the cardinality of `Field.Emb F E`
  and the degree of `(separableClosure F E) / F` are both finite or infinite, and when they are
  finite, they coincide.

TODO: (will be in later PR)

- `IsPurelyInseparable.of_injective_comp_algebraMap`: if `L` is an algebraically closed field
  containing `E`, such that the map `(E →+* L) → (F →+* L)` induced by `algebraMap F E` is
  injective, then `E / F` is purely inseparable. In other words, epimorphisms in the category of
  fields must be purely inseparable extensions. Need to use the fact that `Emb F E` is infintie
  when `E / F` is (purely) transcendental.

- Prove that the (infinite) inseparable degree are multiplicative; linearly disjoint argument is needed.



Co-authored-by: Junyan Xu <[email protected]>
Co-authored-by: Junyan Xu <[email protected]>
@mathlib-bors
Copy link
Contributor

mathlib-bors bot commented Feb 6, 2024

Pull request successfully merged into master.

Build succeeded:

@mathlib-bors mathlib-bors bot changed the title feat(FieldTheory/PurelyInseparable): definition and basic results of purely inseparable extensions [Merged by Bors] - feat(FieldTheory/PurelyInseparable): definition and basic results of purely inseparable extensions Feb 6, 2024
@mathlib-bors mathlib-bors bot closed this Feb 6, 2024
@mathlib-bors mathlib-bors bot deleted the acmepjz_purely_insep branch February 6, 2024 19:27
mathlib-bors bot pushed a commit that referenced this pull request Feb 8, 2024
Change the expression "separable closure of `E / F`" to "separable closure of `F` in `E`", which IMO is closer to everyday usage. I think we should do the same for "perfect closure" in #9488.

Also remove the use of some parenthesized adjectives: IMO "(some adjective)" signifies that "some adjective" will be assumed to be the default in subsequent text, making it unnecessary to mention "some adjective" every time. This applies to "(relative)" and "(infinite)" in the file SeparableClosure. Writing both "(infinite)" and "(finite)" signifies that both are assumed to be default, which is not our intention (I think we intend to make "infinite" the default). Therefore I kept the first "(infinite)" and removed all subsequent "(infinite)" and parentheses around "finite".

In the file SeparableDegree, the infinite separable degree is not yet defined, so "finite" is the default instead: indeed the file omits "finite" almost everywhere, so I just remove the remaining three occurrences of "(finite)".



Co-authored-by: Junyan Xu <[email protected]>
Co-authored-by: acmepjz <[email protected]>
atarnoam pushed a commit that referenced this pull request Feb 9, 2024
…purely inseparable extensions (#9488)

Main defintions:

- `IsPurelyInseparable`: typeclass for purely inseparable field extension: an algebraic extension
  `E / F` is purely inseparable if and only if the minimal polynomial of every element of `E ∖ F`
  is not separable.

Main results (not exhaustive):

- `isPurelyInseparable_iff_mem_pow`: a field extension `E / F` of exponential characteristic `q` is
  purely inseparable if and only if for every element `x` of `E`, there exists a natural number `n`
  such that `x ^ (q ^ n)` is contained in `F`.

- `IsPurelyInseparable.trans`: if `E / F` and `K / E` are both purely inseparable extensions, then
  `K / F` is also purely inseparable.

- `isPurelyInseparable_iff_natSepDegree_eq_one`: `E / F` is purely inseparable if and only if for
  every element `x` of `E`, its minimal polynomial has separable degree one.

- `isPurelyInseparable_iff_minpoly_eq_X_pow_sub_C`: a field extension `E / F` of exponential
  characteristic `q` is purely inseparable if and only if for every element `x` of `E`, the minimal
  polynomial of `x` over `F` is of form `X ^ (q ^ n) - y` for some natural number `n` and some
  element `y` of `F`.

- `isPurelyInseparable_iff_minpoly_eq_X_sub_C_pow`: a field extension `E / F` of exponential
  characteristic `q` is purely inseparable if and only if for every element `x` of `E`, the minimal
  polynomial of `x` over `F` is of form `(X - x) ^ (q ^ n)` for some natural number `n`.

- `isPurelyInseparable_iff_finSepDegree_eq_one`: an algebraic extension is purely inseparable
  if and only if it has (finite) separable degree one.

  **TODO:** remove the algebraic assumption. (will be in later PR)

- `IsPurelyInseparable.normal`: a purely inseparable extension is normal.

- `separableClosure.isPurelyInseparable`: if `E / F` is algebraic, then `E` is purely inseparable
  over the (relative) separable closure of `E / F`.

- `IsPurelyInseparable.injective_comp_algebraMap`: if `E / F` is purely inseparable, then for any
  reduced ring `L`, the map `(E →+* L) → (F →+* L)` induced by `algebraMap F E` is injective.
  In other words, a purely inseparable field extension is an epimorphism in the category of fields.

- `isPurelyInseparable_adjoin_iff_mem_pow`: if `F` is of exponential characteristic `q`, then
  `F(S) / F` is a purely inseparable extension if and only if for any `x ∈ S`, `x ^ (q ^ n)` is
  contained in `F` for some `n : ℕ`.

- `Field.finSepDegree_eq`: if `E / F` is algebraic, then the `Field.finSepDegree F E` is equal to
  `Field.sepDegree F E` as a natural number. This means that the cardinality of `Field.Emb F E`
  and the degree of `(separableClosure F E) / F` are both finite or infinite, and when they are
  finite, they coincide.

TODO: (will be in later PR)

- `IsPurelyInseparable.of_injective_comp_algebraMap`: if `L` is an algebraically closed field
  containing `E`, such that the map `(E →+* L) → (F →+* L)` induced by `algebraMap F E` is
  injective, then `E / F` is purely inseparable. In other words, epimorphisms in the category of
  fields must be purely inseparable extensions. Need to use the fact that `Emb F E` is infintie
  when `E / F` is (purely) transcendental.

- Prove that the (infinite) inseparable degree are multiplicative; linearly disjoint argument is needed.



Co-authored-by: Junyan Xu <[email protected]>
Co-authored-by: Junyan Xu <[email protected]>
atarnoam pushed a commit that referenced this pull request Feb 9, 2024
Change the expression "separable closure of `E / F`" to "separable closure of `F` in `E`", which IMO is closer to everyday usage. I think we should do the same for "perfect closure" in #9488.

Also remove the use of some parenthesized adjectives: IMO "(some adjective)" signifies that "some adjective" will be assumed to be the default in subsequent text, making it unnecessary to mention "some adjective" every time. This applies to "(relative)" and "(infinite)" in the file SeparableClosure. Writing both "(infinite)" and "(finite)" signifies that both are assumed to be default, which is not our intention (I think we intend to make "infinite" the default). Therefore I kept the first "(infinite)" and removed all subsequent "(infinite)" and parentheses around "finite".

In the file SeparableDegree, the infinite separable degree is not yet defined, so "finite" is the default instead: indeed the file omits "finite" almost everywhere, so I just remove the remaining three occurrences of "(finite)".



Co-authored-by: Junyan Xu <[email protected]>
Co-authored-by: acmepjz <[email protected]>
dagurtomas pushed a commit that referenced this pull request Mar 22, 2024
Change the expression "separable closure of `E / F`" to "separable closure of `F` in `E`", which IMO is closer to everyday usage. I think we should do the same for "perfect closure" in #9488.

Also remove the use of some parenthesized adjectives: IMO "(some adjective)" signifies that "some adjective" will be assumed to be the default in subsequent text, making it unnecessary to mention "some adjective" every time. This applies to "(relative)" and "(infinite)" in the file SeparableClosure. Writing both "(infinite)" and "(finite)" signifies that both are assumed to be default, which is not our intention (I think we intend to make "infinite" the default). Therefore I kept the first "(infinite)" and removed all subsequent "(infinite)" and parentheses around "finite".

In the file SeparableDegree, the infinite separable degree is not yet defined, so "finite" is the default instead: indeed the file omits "finite" almost everywhere, so I just remove the remaining three occurrences of "(finite)".



Co-authored-by: Junyan Xu <[email protected]>
Co-authored-by: acmepjz <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
delegated t-algebra Algebra (groups, rings, fields, etc)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants