[Merged by Bors] - feat: predicates for extensions of complex embeddings#27977
[Merged by Bors] - feat: predicates for extensions of complex embeddings#27977smmercuri wants to merge 5 commits intoleanprover-community:masterfrom
Conversation
…mmercuri/ComplexEmbeddingExtension
Comments from Original PR #24877This section contains 2 comment(s) from the original PR, excluding bot comments. @xroblot (2025-05-20 11:10 UTC): @smmercuri (2025-05-20 16:43 UTC): Your point about duplication is valid though, particularly to the dependent PR #24882 where, for example, I define { w : InfinitePlace L // w.comap (algebraMap K L) = v ∧ w.IsUnramified K }but it could be replaced with { w : InfinitePlace L // ∃ ψ, w = mk ψ ∧ IsUnmixedExtension v.embedding ψ }or possibly removed altogether. Overall, I still feel these are different enough to have as separate |
PR summary 7fe074626bImport changes for modified filesNo significant changes to the import graph Import changes for all files
|
|
@smmercuri is this still WIP? |
Ah yes it is, I still need to incorporate feedback from the old PR. Planning to work through my WIP PRs over the next week! |
Please let me know when this is not WIP anymore so I take another look. |
…mmercuri/ComplexEmbeddingExtension
Thanks! This is now ready to review. |
xroblot
left a comment
There was a problem hiding this comment.
LGTM. I was gonna complain about the use of the term mixed by then I remembered that I was the one that named the NumberField.mixedEmbedding.mixedSpace so I should probably not 😅
On the other hand, I think I would drop the Complex in ComplexExtension but that might require to protect the definition since there seems to be quite a lot of things called Extension already in Mathlib. So it's up to you
Yes this is one reason I went for that terminology. I'm also unsure about whether it's the right term in this case so I would be open to other suggestions. Perhaps
I did have this as |
|
Thanks! bors merge |
If `L/K` and `ψ : K →+* ℂ`, we define the subtype `ComplexExtension L ψ` of `L →+* ℂ` that extend `ψ` to `L`. Also define two predicates asserting ways that `φ` can extend `ψ`. - `φ.IsMixed` : `ψ` has real image while `φ` has complex image. - `φ.IsUnmixed`: the negation of `IsMixed` -- `ψ` has real image if and only if `φ` has real image. `ComplexExtension.IsMixed` and `ComplexExtension.IsUnmixed` are the `ComplexEmbedding` analogues to ramified and unramified infinite places, which is a two-to-one isomorphism in the former and a one-to-one isomorphism in the latter, hence the slightly different terminology. This PR continues the work from #24877. Original PR: #24877
|
Pull request successfully merged into master. Build succeeded: |
…munity#27977) If `L/K` and `ψ : K →+* ℂ`, we define the subtype `ComplexExtension L ψ` of `L →+* ℂ` that extend `ψ` to `L`. Also define two predicates asserting ways that `φ` can extend `ψ`. - `φ.IsMixed` : `ψ` has real image while `φ` has complex image. - `φ.IsUnmixed`: the negation of `IsMixed` -- `ψ` has real image if and only if `φ` has real image. `ComplexExtension.IsMixed` and `ComplexExtension.IsUnmixed` are the `ComplexEmbedding` analogues to ramified and unramified infinite places, which is a two-to-one isomorphism in the former and a one-to-one isomorphism in the latter, hence the slightly different terminology. This PR continues the work from leanprover-community#24877. Original PR: leanprover-community#24877
…munity#27977) If `L/K` and `ψ : K →+* ℂ`, we define the subtype `ComplexExtension L ψ` of `L →+* ℂ` that extend `ψ` to `L`. Also define two predicates asserting ways that `φ` can extend `ψ`. - `φ.IsMixed` : `ψ` has real image while `φ` has complex image. - `φ.IsUnmixed`: the negation of `IsMixed` -- `ψ` has real image if and only if `φ` has real image. `ComplexExtension.IsMixed` and `ComplexExtension.IsUnmixed` are the `ComplexEmbedding` analogues to ramified and unramified infinite places, which is a two-to-one isomorphism in the former and a one-to-one isomorphism in the latter, hence the slightly different terminology. This PR continues the work from leanprover-community#24877. Original PR: leanprover-community#24877
If
L/Kandψ : K →+* ℂ, we define the subtypeComplexExtension L ψofL →+* ℂthat extendψtoL. Also define two predicates asserting ways thatφcan extendψ.φ.IsMixed:ψhas real image whileφhas complex image.φ.IsUnmixed: the negation ofIsMixed--ψhas real image if and only ifφhas real image.ComplexExtension.IsMixedandComplexExtension.IsUnmixedare theComplexEmbeddinganalogues to ramified and unramified infinite places, which is a two-to-one isomorphism in the former and a one-to-one isomorphism in the latter, hence the slightly different terminology.This PR continues the work from #24877.
Original PR: #24877