Documentation

Mathlib.Analysis.Complex.UpperHalfPlane.MoebiusAction

The upper half plane and its automorphisms #

This file defines the GLPos 2 ℝ action on the upper half-plane by fractional linear transformations.

The coercion first into an element of GL(2, ℝ)⁺, then GL(2, ℝ) and finally a 2 × 2 matrix.

This notation is scoped in namespace UpperHalfPlane.

Equations
Instances For
    instance UpperHalfPlane.instCoeFun :
    CoeFun (Matrix.GLPos (Fin 2) ) fun (x : (Matrix.GLPos (Fin 2) )) => Fin 2Fin 2
    Equations

    The coercion into an element of GL(2, R) and finally a 2 × 2 matrix over R. This is similar to ↑ₘ, but without positivity requirements, and allows the user to specify the ring R, which can be useful to help Lean elaborate correctly.

    This notation is scoped in namespace UpperHalfPlane.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For

      Numerator of the formula for a fractional linear transformation

      Equations
      Instances For

        Denominator of the formula for a fractional linear transformation

        Equations
        Instances For
          theorem UpperHalfPlane.linear_ne_zero (cd : Fin 2) (z : UpperHalfPlane) (h : cd 0) :
          (cd 0) * z + (cd 1) 0

          Fractional linear transformation, also known as the Moebius transformation

          Equations
          Instances For

            Fractional linear transformation, also known as the Moebius transformation

            Equations
            Instances For
              theorem UpperHalfPlane.denom_cocycle (x y : (Matrix.GLPos (Fin 2) )) (z : UpperHalfPlane) :
              denom (x * y) z = denom x (smulAux y z) * denom y z
              theorem UpperHalfPlane.mul_smul' (x y : (Matrix.GLPos (Fin 2) )) (z : UpperHalfPlane) :
              smulAux (x * y) z = smulAux x (smulAux y z)

              The action of GLPos 2 ℝ on the upper half-plane by fractional linear transformations.

              Equations
              • One or more equations did not get rendered due to their size.
              theorem UpperHalfPlane.specialLinearGroup_apply {R : Type u_1} [CommRing R] [Algebra R ] (g : Matrix.SpecialLinearGroup (Fin 2) R) (z : UpperHalfPlane) :
              g z = mk ((((algebraMap R ) (g 0 0)) * z + ((algebraMap R ) (g 0 1))) / (((algebraMap R ) (g 1 0)) * z + ((algebraMap R ) (g 1 1))))
              @[simp]
              theorem UpperHalfPlane.coe_smul (g : (Matrix.GLPos (Fin 2) )) (z : UpperHalfPlane) :
              ↑(g z) = num g z / denom g z
              @[simp]
              theorem UpperHalfPlane.re_smul (g : (Matrix.GLPos (Fin 2) )) (z : UpperHalfPlane) :
              (g z).re = (num g z / denom g z).re
              theorem UpperHalfPlane.im_smul (g : (Matrix.GLPos (Fin 2) )) (z : UpperHalfPlane) :
              (g z).im = (num g z / denom g z).im
              @[simp]
              theorem UpperHalfPlane.neg_smul (g : (Matrix.GLPos (Fin 2) )) (z : UpperHalfPlane) :
              -g z = g z
              theorem UpperHalfPlane.exists_SL2_smul_eq_of_apply_zero_one_eq_zero (g : Matrix.SpecialLinearGroup (Fin 2) ) (hc : g 1 0 = 0) :
              ∃ (u : { x : // 0 < x }) (v : ), (fun (x : UpperHalfPlane) => g x) = (fun (x : UpperHalfPlane) => v +ᵥ x) fun (x : UpperHalfPlane) => u x
              theorem UpperHalfPlane.exists_SL2_smul_eq_of_apply_zero_one_ne_zero (g : Matrix.SpecialLinearGroup (Fin 2) ) (hc : g 1 0 0) :
              ∃ (u : { x : // 0 < x }) (v : ) (w : ), (fun (x : UpperHalfPlane) => g x) = (fun (x : UpperHalfPlane) => w +ᵥ x) (fun (x : UpperHalfPlane) => ModularGroup.S x) (fun (x : UpperHalfPlane) => v +ᵥ x) fun (x : UpperHalfPlane) => u x

              Canonical embedding of SL(2, ℤ) into GL(2, ℝ)⁺.

              Equations
              Instances For
                @[simp]
                theorem ModularGroup.coe_inj (a b : Matrix.SpecialLinearGroup (Fin 2) ) :
                a = b a = b
                @[deprecated ModularGroup.coe (since := "2024-11-19")]

                Alias of ModularGroup.coe.


                Canonical embedding of SL(2, ℤ) into GL(2, ℝ)⁺.

                Equations
                Instances For

                  Canonical embedding of SL(2, ℤ) into GL(2, ℝ)⁺, bundled as a group hom.

                  Equations
                  Instances For
                    @[simp]
                    theorem ModularGroup.coe_apply_complex {g : Matrix.SpecialLinearGroup (Fin 2) } {i j : Fin 2} :
                    (g i j) = (g i j)
                    @[deprecated ModularGroup.coe_apply_complex (since := "2024-11-19")]
                    theorem ModularGroup.coe'_apply_complex {g : Matrix.SpecialLinearGroup (Fin 2) } {i j : Fin 2} :
                    (g i j) = (g i j)

                    Alias of ModularGroup.coe_apply_complex.

                    @[simp]
                    theorem ModularGroup.det_coe {g : Matrix.SpecialLinearGroup (Fin 2) } :
                    (↑g).det = 1
                    @[deprecated ModularGroup.det_coe (since := "2024-11-19")]
                    theorem ModularGroup.det_coe' {g : Matrix.SpecialLinearGroup (Fin 2) } :
                    (↑g).det = 1

                    Alias of ModularGroup.det_coe.

                    theorem ModularGroup.denom_apply (g : Matrix.SpecialLinearGroup (Fin 2) ) (z : UpperHalfPlane) :
                    UpperHalfPlane.denom (↑g) z = (g 1 0) * z + (g 1 1)