Documentation

MyProject.Heisenberg

Heisenberg's groups over a vector space #

This file defines Heisenberg's groups over a vector space and their basic properties.

Mains results #

Let kbe a field, V a finite dimensional vector space over k, and Module.Dual k V its dual space. We also take the convention that Vis in bijection with Module.Dual k (Module.Dual k V) by $(x,y)=-(y,x)$. We define the group of Heisenberg, some subgroups, and basic properties of these groups. The main results are :

structure Heisenberg (V : Type u_1) (k : Type u_2) [inst1 : Field k] [inst2 : AddCommGroup V] [inst3 : Module k V] :
Type (max u_1 u_2)
Instances For
    theorem Heisenberg.ext {V : Type u_1} {k : Type u_2} {inst1 : Field k} {inst2 : AddCommGroup V} {inst3 : Module k V} {x y : Heisenberg V k} (z : x.z = y.z) :
    x.x = y.xx.y = y.yx = y
    theorem Heisenberg.ext_iff {V : Type u_1} {k : Type u_2} {inst1 : Field k} {inst2 : AddCommGroup V} {inst3 : Module k V} {x y : Heisenberg V k} :
    x = y x.z = y.z x.x = y.x x.y = y.y
    def Heisenberg.mul {V : Type u_1} {k : Type u_2} [inst1 : Field k] [inst2 : AddCommGroup V] [inst3 : Module k V] (H1 H2 : Heisenberg V k) :

    Intern law over Heisenberg

    Equations
    Instances For
      def Heisenberg.inverse {V : Type u_1} {k : Type u_2} [inst1 : Field k] [inst2 : AddCommGroup V] [inst3 : Module k V] (H : Heisenberg V k) :

      Inverse of an element of Heisenberg by mul

      Equations
      Instances For
        instance Heisenberg.group {V : Type u_1} {k : Type u_2} [inst1 : Field k] [inst2 : AddCommGroup V] [inst3 : Module k V] :

        Together with Heisenberg.mul and Heisenberg.inverse, Heisenbergforms a group.

        Equations
        • One or more equations did not get rendered due to their size.
        def Heisenberg.center (V : Type u_1) (k : Type u_2) [inst1 : Field k] [inst2 : AddCommGroup V] [inst3 : Module k V] :

        Center of Heisenberg

        Equations
        Instances For
          def Heisenberg.Hom_k_to_H (V : Type u_1) (k : Type u_2) [inst1 : Field k] [inst2 : AddCommGroup V] [inst3 : Module k V] :

          The map $(z,x,y) ↦ (z,0,0)$ defines a homorphism from Heisenberg to its center Heisenberg.center.

          Equations
          Instances For
            def Heisenberg.Hom_H_to_V_x_Dual (V : Type u_1) (k : Type u_2) [inst1 : Field k] [inst2 : AddCommGroup V] [inst3 : Module k V] :

            The map $(z,x,y)↦(x,y)$ defines a homomorphism from Heisenberg to $V × V^*$.

            Equations
            Instances For
              def Heisenberg.exact_sequence (V : Type u_1) (k : Type u_2) [inst1 : Field k] [inst2 : AddCommGroup V] [inst3 : Module k V] :

              We have an exact sequence $0 → k → H(V) → V × V^* → 0$ given by Heisenberg.Hom_k_to_H and Heisenberg.Hom_H_to_V_x_Dual.

              Equations
              • =
              Instances For
                def Heisenberg.Hom_H_to_V_x_Dual_sub_V (V : Type u_1) (k : Type u_2) [inst1 : Field k] [inst2 : AddCommGroup V] [inst3 : Module k V] :

                The pull-back of $V$ by Heisenberg.Hom_H_to_V_x_Dualis a subgroup.

                Equations
                • One or more equations did not get rendered due to their size.
                Instances For
                  instance Heisenberg.Hom_H_to_V_x_Dual_sub_V_commutative (V : Type u_1) (k : Type u_2) [inst1 : Field k] [inst2 : AddCommGroup V] [inst3 : Module k V] :

                  The subgroup Heisenberg.Hom_H_to_V_x_Dual_sub_V is commutative.

                  instance Heisenberg.Hom_H_to_V_x_Dual_sub_V_normal (V : Type u_1) (k : Type u_2) [inst1 : Field k] [inst2 : AddCommGroup V] [inst3 : Module k V] :

                  The subgroup Heisenberg.Hom_H_to_V_x_Dual_sub_V is a normal subgroup.

                  theorem Heisenberg.Hom_H_to_V_x_Dual_sub_V_maximal (V : Type u_1) (k : Type u_2) [inst1 : Field k] [inst2 : AddCommGroup V] [inst3 : Module k V] (Q : Subgroup (Heisenberg V k)) :

                  The subgroup Heisenberg.Hom_H_to_V_x_Dual_sub_V is maximal among the commutative subgroups of Heisenberg

                  def Heisenberg.Hom_H_to_V_x_Dual_sub_Dual (V : Type u_1) (k : Type u_2) [inst1 : Field k] [inst2 : AddCommGroup V] [inst3 : Module k V] :

                  The pull-back of $V^*$ by Heisenberg.Hom_H_to_V_x_Dualis a subgroup.

                  Equations
                  • One or more equations did not get rendered due to their size.
                  Instances For
                    instance Heisenberg.Hom_H_to_V_x_Dual_sub_Dual_commutative (V : Type u_1) (k : Type u_2) [inst1 : Field k] [inst2 : AddCommGroup V] [inst3 : Module k V] :

                    The subgroup Heisenberg.Hom_H_to_V_x_Dual_sub_Dual is commutative.

                    instance Heisenberg.Hom_H_to_V_x_Dual_sub_Dual_normal (V : Type u_1) (k : Type u_2) [inst1 : Field k] [inst2 : AddCommGroup V] [inst3 : Module k V] :

                    The subgroup Heisenberg.Hom_H_to_V_x_Dual_sub_Dual is a normal subgroup.

                    @[simp]
                    theorem Heisenberg.commutator_of_elements {V : Type u_1} {k : Type u_2} [inst1 : Field k] [inst2 : AddCommGroup V] [inst3 : Module k V] (H1 H2 : Heisenberg V k) :
                    H1, H2 = { z := H1.y H2.x - H2.y H1.x, x := 0, y := 0 }

                    Commutator of two elements of Heisenberg

                    theorem Heisenberg.commutator_ne_bot (V : Type u_1) (k : Type u_2) [inst1 : Field k] [inst2 : AddCommGroup V] [inst3 : Module k V] [inst4 : FiniteDimensional k V] [inst5 : Nontrivial V] :

                    The commutator subgroup of Heisenberg is non trivial

                    theorem Heisenberg.commutator_caracterisation {V : Type u_1} {k : Type u_2} [inst1 : Field k] [inst2 : AddCommGroup V] [inst3 : Module k V] [inst4 : FiniteDimensional k V] (p : Heisenberg V k) :
                    p commutator (Heisenberg V k)p.x = 0 p.y = 0

                    Caracterisation of elements in the commutator of Heisenberg

                    theorem Heisenberg.two_step_nilpotent {V : Type u_1} {k : Type u_2} [inst1 : Field k] [inst2 : AddCommGroup V] [inst3 : Module k V] [inst4 : FiniteDimensional k V] [inst5 : Nontrivial V] :

                    Heisenberg is a twostep nilpotent group

                    noncomputable def Heisenberg.equiv_Dual (V : Type u_1) (k : Type u_2) [inst1 : Field k] [inst2 : AddCommGroup V] [inst3 : Module k V] [inst4 : FiniteDimensional k V] :

                    $H(V)$ is in bijection with $H(V*)$.

                    Equations
                    • One or more equations did not get rendered due to their size.
                    Instances For
                      noncomputable def Heisenberg.anti_iso_Dual (V : Type u_1) (k : Type u_2) [inst1 : Field k] [inst2 : AddCommGroup V] [inst3 : Module k V] [inst4 : FiniteDimensional k V] :

                      With the convention $(x,y)=-(y,x)$, $H(V)$ is antiisomorphic to $H(V*)$.

                      Equations
                      Instances For
                        theorem Heisenberg.card_H (V : Type u_1) (k : Type u_2) [inst1 : Field k] [inst2 : AddCommGroup V] [inst3 : Module k V] [inst4 : FiniteDimensional k V] [inst6 : Fintype k] :

                        Cardinal of Heisenberg when $k$ is a finite field

                        theorem Heisenberg.card_center (V : Type u_1) (k : Type u_2) [inst1 : Field k] [inst2 : AddCommGroup V] [inst3 : Module k V] :

                        Cardinal of Heisenberg.center

                        theorem Heisenberg.ord_V (V : Type u_1) (k : Type u_2) [inst1 : Field k] [inst2 : AddCommGroup V] [inst3 : Module k V] [inst4 : FiniteDimensional k V] [inst6 : Fintype k] :

                        The index of the center of Heisenberg is equal to the cardinal of $V$ to the square.