File: Mathlib/Algebra/Order/CompleteField.lean

full_name: ConditionallyCompleteLinearOrderedField
code: /-- A field which is both linearly ordered and conditionally complete with respect to the order.
This axiomatizes the reals. -/
-- @[protect_proj] -- Porting note: does not exist anymore
class ConditionallyCompleteLinearOrderedField (α : Type*) extends
    LinearOrderedField α, ConditionallyCompleteLinearOrder α
goal: Type u_5

full_name: ConditionallyCompleteLinearOrderedField.to_archimedean
code: /-- Any conditionally complete linearly ordered field is archimedean. -/
instance (priority := 100) ConditionallyCompleteLinearOrderedField.to_archimedean
    [ConditionallyCompleteLinearOrderedField α] : Archimedean α 
goal: Archimedean α

full_name: instConditionallyCompleteLinearOrderedFieldReal
code: /-- The reals are a conditionally complete linearly ordered field. -/
instance : ConditionallyCompleteLinearOrderedField ℝ 
goal: ConditionallyCompleteLinearOrderedField ℝ

full_name: LinearOrderedField.cutMap
code: /-- The lower cut of rationals inside a linear ordered field that are less than a given element of
another linear ordered field. -/
def cutMap (a : α) : Set β 
goal: Set β

full_name: LinearOrderedField.cutMap_mono
code: theorem cutMap_mono (h : a₁ ≤ a₂) : cutMap β a₁ ⊆ cutMap β a₂ 
goal: LinearOrderedField.cutMap β a₁ ⊆ LinearOrderedField.cutMap β a₂

full_name: LinearOrderedField.mem_cutMap_iff
code: @[simp]
theorem mem_cutMap_iff : b ∈ cutMap β a ↔ ∃ q : ℚ, (q : α) < a ∧ (q : β) = b 
goal: b ∈ LinearOrderedField.cutMap β a ↔ ∃ q, ↑q < a ∧ ↑q = b

full_name: LinearOrderedField.coe_mem_cutMap_iff
code: theorem coe_mem_cutMap_iff [CharZero β] : (q : β) ∈ cutMap β a ↔ (q : α) < a 
goal: ↑q ∈ LinearOrderedField.cutMap β a ↔ ↑q < a

full_name: LinearOrderedField.cutMap_self
code: theorem cutMap_self (a : α) : cutMap α a = Iio a ∩ range (Rat.cast : ℚ → α) 
goal: LinearOrderedField.cutMap α a = Set.Iio a ∩ Set.range Rat.cast

full_name: LinearOrderedField.cutMap_coe
code: theorem cutMap_coe (q : ℚ) : cutMap β (q : α) = Rat.cast '' {r : ℚ | (r : β) < q} 
goal: LinearOrderedField.cutMap β ↑q = Rat.cast '' {r | ↑r < ↑q}

full_name: LinearOrderedField.cutMap_nonempty
code: theorem cutMap_nonempty (a : α) : (cutMap β a).Nonempty 
goal: (LinearOrderedField.cutMap β a).Nonempty

full_name: LinearOrderedField.cutMap_bddAbove
code: theorem cutMap_bddAbove (a : α) : BddAbove (cutMap β a) 
goal: BddAbove (LinearOrderedField.cutMap β a)

full_name: LinearOrderedField.cutMap_add
code: theorem cutMap_add (a b : α) : cutMap β (a + b) = cutMap β a + cutMap β b 
goal: LinearOrderedField.cutMap β (a + b) = LinearOrderedField.cutMap β a + LinearOrderedField.cutMap β b

full_name: LinearOrderedField.inducedMap
code: /-- The induced order preserving function from a linear ordered field to a conditionally complete
linear ordered field, defined by taking the Sup in the codomain of all the rationals less than the
input. -/
def inducedMap (x : α) : β 
goal: β

full_name: LinearOrderedField.inducedMap_mono
code: theorem inducedMap_mono : Monotone (inducedMap α β) 
goal: Monotone (LinearOrderedField.inducedMap α β)

full_name: LinearOrderedField.inducedMap_rat
code: theorem inducedMap_rat (q : ℚ) : inducedMap α β (q : α) = q 
goal: LinearOrderedField.inducedMap α β ↑q = ↑q

full_name: LinearOrderedField.inducedMap_zero
code: @[simp]
theorem inducedMap_zero : inducedMap α β 0 = 0 
goal: LinearOrderedField.inducedMap α β 0 = 0

full_name: LinearOrderedField.inducedMap_one
code: @[simp]
theorem inducedMap_one : inducedMap α β 1 = 1 
goal: LinearOrderedField.inducedMap α β 1 = 1

full_name: LinearOrderedField.inducedMap_nonneg
code: theorem inducedMap_nonneg (ha : 0 ≤ a) : 0 ≤ inducedMap α β a 
goal: 0 ≤ LinearOrderedField.inducedMap α β a

full_name: LinearOrderedField.coe_lt_inducedMap_iff
code: theorem coe_lt_inducedMap_iff : (q : β) < inducedMap α β a ↔ (q : α) < a 
goal: ↑q < LinearOrderedField.inducedMap α β a ↔ ↑q < a

full_name: LinearOrderedField.lt_inducedMap_iff
code: theorem lt_inducedMap_iff : b < inducedMap α β a ↔ ∃ q : ℚ, b < q ∧ (q : α) < a 
goal: b < LinearOrderedField.inducedMap α β a ↔ ∃ q, b < ↑q ∧ ↑q < a

full_name: LinearOrderedField.inducedMap_self
code: @[simp]
theorem inducedMap_self (b : β) : inducedMap β β b = b 
goal: LinearOrderedField.inducedMap β β b = b

full_name: LinearOrderedField.inducedMap_inducedMap
code: @[simp]
theorem inducedMap_inducedMap (a : α) : inducedMap β γ (inducedMap α β a) = inducedMap α γ a 
goal: LinearOrderedField.inducedMap β γ (LinearOrderedField.inducedMap α β a) = LinearOrderedField.inducedMap α γ a

full_name: LinearOrderedField.inducedMap_inv_self
code: theorem inducedMap_inv_self (b : β) : inducedMap γ β (inducedMap β γ b) = b 
goal: LinearOrderedField.inducedMap γ β (LinearOrderedField.inducedMap β γ b) = b

full_name: LinearOrderedField.inducedMap_add
code: theorem inducedMap_add (x y : α) :
    inducedMap α β (x + y) = inducedMap α β x + inducedMap α β y 
goal: LinearOrderedField.inducedMap α β (x + y) = LinearOrderedField.inducedMap α β x + LinearOrderedField.inducedMap α β y

full_name: LinearOrderedField.le_inducedMap_mul_self_of_mem_cutMap
code: /-- Preparatory lemma for `inducedOrderRingHom`. -/
theorem le_inducedMap_mul_self_of_mem_cutMap (ha : 0 < a) (b : β) (hb : b ∈ cutMap β (a * a)) :
    b ≤ inducedMap α β a * inducedMap α β a 
goal: b ≤ LinearOrderedField.inducedMap α β a * LinearOrderedField.inducedMap α β a

full_name: LinearOrderedField.exists_mem_cutMap_mul_self_of_lt_inducedMap_mul_self
code: /-- Preparatory lemma for `inducedOrderRingHom`. -/
theorem exists_mem_cutMap_mul_self_of_lt_inducedMap_mul_self (ha : 0 < a) (b : β)
    (hba : b < inducedMap α β a * inducedMap α β a) : ∃ c ∈ cutMap β (a * a), b < c 
goal: ∃ c ∈ LinearOrderedField.cutMap β (a * a), b < c

full_name: LinearOrderedField.inducedAddHom
code: /-- `inducedMap` as an additive homomorphism. -/
def inducedAddHom : α →+ β 
goal: α →+ β

full_name: LinearOrderedField.inducedOrderRingHom
code: /-- `inducedMap` as an `OrderRingHom`. -/
@[simps!]
def inducedOrderRingHom : α →+*o β 
goal: α →+*o β

full_name: LinearOrderedField.inducedOrderRingHom_toFun
code: /-- `inducedMap` as an `OrderRingHom`. -/
@[simps!]
def inducedOrderRingHom : α →+*o β 
goal: ∀ (a : α), (LinearOrderedField.inducedOrderRingHom α β) a = (LinearOrderedField.inducedAddHom α β) a

full_name: LinearOrderedField.inducedOrderRingIso
code: /-- The isomorphism of ordered rings between two conditionally complete linearly ordered fields. -/
def inducedOrderRingIso : β ≃+*o γ 
goal: β ≃+*o γ

full_name: LinearOrderedField.coe_inducedOrderRingIso
code: @[simp]
theorem coe_inducedOrderRingIso : ⇑(inducedOrderRingIso β γ) = inducedMap β γ 
goal: ⇑(LinearOrderedField.inducedOrderRingIso β γ) = LinearOrderedField.inducedMap β γ

full_name: LinearOrderedField.inducedOrderRingIso_symm
code: @[simp]
theorem inducedOrderRingIso_symm : (inducedOrderRingIso β γ).symm = inducedOrderRingIso γ β 
goal: (LinearOrderedField.inducedOrderRingIso β γ).symm = LinearOrderedField.inducedOrderRingIso γ β

full_name: LinearOrderedField.inducedOrderRingIso_self
code: @[simp]
theorem inducedOrderRingIso_self : inducedOrderRingIso β β = OrderRingIso.refl β 
goal: LinearOrderedField.inducedOrderRingIso β β = OrderRingIso.refl β

full_name: LinearOrderedField.uniqueOrderRingHom
code: /-- There is a unique ordered ring homomorphism from an archimedean linear ordered field to a
conditionally complete linear ordered field. -/
instance uniqueOrderRingHom : Unique (α →+*o β) 
goal: Unique (α →+*o β)

full_name: LinearOrderedField.uniqueOrderRingIso
code: /-- There is a unique ordered ring isomorphism between two conditionally complete linear ordered
fields. -/
instance uniqueOrderRingIso : Unique (β ≃+*o γ) 
goal: Unique (β ≃+*o γ)

full_name: ringHom_monotone
code: theorem ringHom_monotone (hR : ∀ r : R, 0 ≤ r → ∃ s : R, s ^ 2 = r) (f : R →+* S) : Monotone f 
goal: Monotone ⇑f

full_name: Real.RingHom.unique
code: /-- There exists no nontrivial ring homomorphism `ℝ →+* ℝ`. -/
instance Real.RingHom.unique : Unique (ℝ →+* ℝ) 
goal: Unique (ℝ →+* ℝ)