Documentation

Mathlib.Algebra.Order.CompleteField

Conditionally complete linear ordered fields #

This file shows that the reals are unique, or, more formally, given a type satisfying the common axioms of the reals (field, conditionally complete, linearly ordered) that there is an isomorphism preserving these properties to the reals. This is ConditionallyCompleteLinearOrderedField.inducedOrderRingIso. Moreover this isomorphism is unique.

We show all conditionally complete linear ordered fields are archimedean. We also construct the natural map from a LinearOrderedField to such a field.

Main definitions #

Main results #

References #

Tags #

reals, conditionally complete, ordered field, uniqueness

@[deprecated "Use `[Field α] [ConditionallyCompleteLinearOrder α] [IsStrictOrderedRing α]` instead." (since := "2026-02-23")]

A field which is both linearly ordered and conditionally complete with respect to the order. This axiomatizes the reals.

Instances For

    Any conditionally complete linearly ordered field is archimedean.

    Rational cut map #

    The idea is that a conditionally complete linear ordered field is fully characterized by its copy of the rationals. Hence we define LinearOrderedField.cutMap β : α → Set β which sends a : α to the "rationals in β" that are less than a.

    def LinearOrderedField.cutMap {α : Type u_2} (β : Type u_3) [Field α] [LinearOrder α] [DivisionRing β] (a : α) :
    Set β

    The lower cut of rationals inside a linear ordered field that are less than a given element of another linear ordered field.

    Instances For
      theorem LinearOrderedField.cutMap_mono {α : Type u_2} (β : Type u_3) [Field α] [LinearOrder α] [DivisionRing β] {a₁ a₂ : α} (h : a₁ a₂) :
      cutMap β a₁ cutMap β a₂
      @[simp]
      theorem LinearOrderedField.mem_cutMap_iff {α : Type u_2} {β : Type u_3} [Field α] [LinearOrder α] [DivisionRing β] {a : α} {b : β} :
      b cutMap β a ∃ (q : ), q < a q = b
      theorem LinearOrderedField.coe_mem_cutMap_iff {α : Type u_2} {β : Type u_3} [Field α] [LinearOrder α] [DivisionRing β] {a : α} {q : } [CharZero β] :
      q cutMap β a q < a
      theorem LinearOrderedField.cutMap_self {α : Type u_2} [Field α] [LinearOrder α] (a : α) :
      cutMap α a = Set.Iio a Set.range Rat.cast
      theorem LinearOrderedField.cutMap_coe {α : Type u_2} (β : Type u_3) [Field α] [LinearOrder α] [IsStrictOrderedRing α] [Field β] [LinearOrder β] [IsStrictOrderedRing β] (q : ) :
      cutMap β q = Rat.cast '' {r : | r < q}
      theorem LinearOrderedField.cutMap_add {α : Type u_2} (β : Type u_3) [Field α] [LinearOrder α] [IsStrictOrderedRing α] [Field β] [LinearOrder β] [IsStrictOrderedRing β] [Archimedean α] (a b : α) :
      cutMap β (a + b) = cutMap β a + cutMap β b

      Induced map #

      LinearOrderedField.cutMap spits out a Set β. To get something in β, we now take the supremum.

      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.

      Instances For
        theorem ConditionallyCompleteLinearOrderedField.lt_inducedMap_iff {α : Type u_2} {β : Type u_3} [Field α] [LinearOrder α] [IsStrictOrderedRing α] [Field β] [ConditionallyCompleteLinearOrder β] [IsStrictOrderedRing β] [Archimedean α] {a : α} {b : β} :
        b < inducedMap α β a ∃ (q : ), b < q q < a

        The isomorphism of ordered rings between two conditionally complete linearly ordered fields.

        Instances For
          @[implicit_reducible]

          There is a unique ordered ring homomorphism from an archimedean linear ordered field to a conditionally complete linear ordered field.

          Instances For
            @[implicit_reducible]

            There is a unique ordered ring isomorphism between two conditionally complete linear ordered fields.

            Instances For
              @[deprecated ConditionallyCompleteLinearOrderedField.inducedMap (since := "2026-02-24")]
              def LinearOrderedField.inducedMap (α : Type u_2) (β : Type u_3) [Field α] [LinearOrder α] [Field β] [ConditionallyCompleteLinearOrder β] (x : α) :
              β

              Alias of ConditionallyCompleteLinearOrderedField.inducedMap.


              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.

              Instances For
                @[deprecated ConditionallyCompleteLinearOrderedField.inducedMap_mono (since := "2026-02-24")]

                Alias of ConditionallyCompleteLinearOrderedField.inducedMap_mono.

                @[deprecated ConditionallyCompleteLinearOrderedField.inducedMap_rat (since := "2026-02-24")]

                Alias of ConditionallyCompleteLinearOrderedField.inducedMap_rat.

                @[deprecated ConditionallyCompleteLinearOrderedField.inducedMap_zero (since := "2026-02-24")]

                Alias of ConditionallyCompleteLinearOrderedField.inducedMap_zero.

                @[deprecated ConditionallyCompleteLinearOrderedField.inducedMap_one (since := "2026-02-24")]

                Alias of ConditionallyCompleteLinearOrderedField.inducedMap_one.

                @[deprecated ConditionallyCompleteLinearOrderedField.inducedMap_nonneg (since := "2026-02-24")]

                Alias of ConditionallyCompleteLinearOrderedField.inducedMap_nonneg.

                @[deprecated ConditionallyCompleteLinearOrderedField.coe_lt_inducedMap_iff (since := "2026-02-24")]

                Alias of ConditionallyCompleteLinearOrderedField.coe_lt_inducedMap_iff.

                @[deprecated ConditionallyCompleteLinearOrderedField.lt_inducedMap_iff (since := "2026-02-24")]
                theorem LinearOrderedField.lt_inducedMap_iff {α : Type u_2} {β : Type u_3} [Field α] [LinearOrder α] [IsStrictOrderedRing α] [Field β] [ConditionallyCompleteLinearOrder β] [IsStrictOrderedRing β] [Archimedean α] {a : α} {b : β} :
                b < ConditionallyCompleteLinearOrderedField.inducedMap α β a ∃ (q : ), b < q q < a

                Alias of ConditionallyCompleteLinearOrderedField.lt_inducedMap_iff.

                @[deprecated ConditionallyCompleteLinearOrderedField.inducedMap_self (since := "2026-02-24")]

                Alias of ConditionallyCompleteLinearOrderedField.inducedMap_self.

                @[deprecated ConditionallyCompleteLinearOrderedField.le_inducedMap_mul_self_of_mem_cutMap (since := "2026-02-24")]

                Alias of ConditionallyCompleteLinearOrderedField.le_inducedMap_mul_self_of_mem_cutMap.


                Preparatory lemma for inducedOrderRingHom.

                @[deprecated ConditionallyCompleteLinearOrderedField.exists_mem_cutMap_mul_self_of_lt_inducedMap_mul_self (since := "2026-02-24")]

                Alias of ConditionallyCompleteLinearOrderedField.exists_mem_cutMap_mul_self_of_lt_inducedMap_mul_self.


                Preparatory lemma for inducedOrderRingHom.

                @[deprecated ConditionallyCompleteLinearOrderedField.inducedAddHom (since := "2026-02-24")]

                Alias of ConditionallyCompleteLinearOrderedField.inducedAddHom.


                inducedMap as an additive homomorphism.

                Instances For
                  @[deprecated ConditionallyCompleteLinearOrderedField.inducedOrderRingHom (since := "2026-02-24")]

                  Alias of ConditionallyCompleteLinearOrderedField.inducedOrderRingHom.


                  inducedMap as an OrderRingHom.

                  Instances For
                    @[deprecated ConditionallyCompleteLinearOrderedField.inducedOrderRingIso (since := "2026-02-24")]

                    Alias of ConditionallyCompleteLinearOrderedField.inducedOrderRingIso.


                    The isomorphism of ordered rings between two conditionally complete linearly ordered fields.

                    Instances For