mathlib icon indicating copy to clipboard operation
mathlib copied to clipboard

feat(algebra/order/complete.field): add real.ring_hom_eq_id

Open xroblot opened this issue 3 years ago • 1 comments

Proves that there are no nontrivial ring homomorphism from ℝ to ℝ.

This is motivated by a remark of K. Buzzard (see https://leanprover.zulipchat.com/#narrow/stream/217875-Is-there-code-for-X.3F/topic/Continuous.20complex.20ring.20hom/near/293264751).

It looks like it should be a direct consequence of the results of algebra/order/complete.field but I was not able to see how to do it more directly.


Open in Gitpod

xroblot avatar Aug 14 '22 08:08 xroblot

This PR really makes me wonder if the rest of the file can be simplified a bit! But that's a question for another PR I guess

alexjbest avatar Aug 15 '22 08:08 alexjbest

Is this generalization useful? Are there archimedean linearly-ordered fields that are not isomorphic to the reals?

instance real.ring_hom_subsingleton {R : Type*} [linear_ordered_field R] [archimedean R] :
  subsingleton (ℝ →+* R) :=
⟨λ f g, begin
  have fmon := real.ring_hom_monotone f,
  have gmon := real.ring_hom_monotone g,
  haveI : subsingleton (ℝ →+*o R) := order_ring_hom.subsingleton,
  exact congr_arg order_ring_hom.to_ring_hom (subsingleton.elim ⟨f, fmon⟩ ⟨g, gmon⟩),
end⟩

/-- There are no nontrivial ring homorphism `ℝ → ℝ`. -/
instance real.ring_hom_unique {R : Type*} [linear_ordered_field R] : unique (ℝ →+* ℝ) :=
unique_of_subsingleton default

eric-wieser avatar Aug 15 '22 09:08 eric-wieser

Yes, the rationals are a Archimedean field that is linearly ordered but is not the reals

alexjbest avatar Aug 15 '22 09:08 alexjbest

So that would give a way to prove that there's at most one ring hom from ℝ to ℚ. But I would rather just have a proof that no such ring hom exists.

jcommelin avatar Aug 15 '22 15:08 jcommelin

Perhaps I should have asked whether there are any archimedean linearly-ordered fields that strictly embed the reals?

eric-wieser avatar Aug 15 '22 15:08 eric-wieser

After a quick search online, it would appear that the answer is no

xroblot avatar Aug 17 '22 09:08 xroblot

Here is a new version with a lemma:

variables {R S : Type*} [linear_ordered_field R] [linear_ordered_field S]
lemma ring_hom_monotone (hR : ∀ r : R, 0 ≤ r → ∃ s : R, s^2 = r) (f : R →+* S) : monotone f

and then we deduce the proof that unique (ℝ →+* ℝ)

xroblot avatar Aug 17 '22 14:08 xroblot

Pull request successfully merged into master.

Build succeeded:

bors[bot] avatar Aug 17 '22 20:08 bors[bot]