[Next][Prev] [Right] [____] [Up] [Index] [Root]

LATTICES

 
Acknowledgements
 
Introduction
 
Presentation of Lattices
 
Creation of Lattices
      Elementary Creation of Lattices
      Lattices from Linear Codes
      Lattices from Algebraic Number Fields
      Special Lattices
 
Lattice Elements
      Creation of Lattice Elements
      Operations on Lattice Elements
      Predicates and Boolean Operations
      Access Operations
 
Properties of Lattices
      Associated Structures
      Attributes of Lattices
      Predicates and Booleans on Lattices
      Base Ring and Base Change
 
Construction of New Lattices
      Sub- and Superlattices and Quotients
      Standard Constructions of New Lattices
 
Reduction of Matrices and Lattices
      LLL Reduction
      Pair Reduction
      Seysen Reduction
      HKZ Reduction
      Recovering a Short Basis from Short Lattice Vectors
 
Minima and Element Enumeration
      Minimum, Density and Kissing Number
      Shortest and Closest Vectors
      Short and Close Vectors
      Short and Close Vector Processes
      Successive Minima and Theta Series
      Lattice Enumeration Utilities
 
Theta Series as Modular Forms
 
Voronoi Cells, Holes and Covering Radius
 
Orthogonalization
 
Testing Matrices for Definiteness
 
Genera and Spinor Genera
      Genus Constructions
      Invariants of Genera and Spinor Genera
      Invariants of p-adic Genera
      Neighbour Relations and Graphs
 
Attributes of Lattices
 
Database of Lattices
      Creating the Database
      Database Information
      Accessing the Database
      Hermitian Lattices
 
Bibliography







DETAILS

 
Introduction

 
Presentation of Lattices

 
Creation of Lattices

      Elementary Creation of Lattices
            Lattice(X, M) : ModMatRngElt, AlgMatElt -> Lat
            Lattice(X) : ModMatRngElt -> Lat
            LatticeWithBasis(B, M) : ModMatRngElt, AlgMatElt -> Lat
            LatticeWithBasis(B) : ModMatRngElt -> Lat
            LatticeWithGram(F) : AlgMatElt -> Lat
            StandardLattice(n) : RngIntElt -> Lat
            CoordinateLattice(L) : Lat -> Lat
            ScaledLattice(L,n) : Lat, RngIntElt -> Lat
            Example Lat_LatticeCreate (H30E1)

      Lattices from Linear Codes
            Lattice(C, "A") : Code -> Lat
            Lattice(C, "B") : Code -> Lat
            Example Lat_Code (H30E2)

      Lattices from Algebraic Number Fields
            MinkowskiLattice(O) : RngOrd -> Lat, Map
            MinkowskiLattice(I) : RngOrdIdl -> Lat, Map
            MinkowskiSpace(K) : FldNum -> KModTup, Map
            Example Lat_OrderLattice (H30E3)

      Special Lattices
            Lattice(X, n) : MonStgElt, RngIntElt -> Lat

 
Lattice Elements

      Creation of Lattice Elements
            L . i : Lat, RngIntElt -> LatElt
            L ! Q : Lat, [ RngElt ] -> LatElt
            CoordinatesToElement(L, C) : Lat, [ RngIntElt ] -> LatElt
            L ! 0 : Lat, RngIntElt -> LatElt

      Operations on Lattice Elements
            - v : LatElt -> LatElt
            v + w : LatElt, LatElt -> LatElt
            v - w : LatElt, LatElt -> LatElt
            v * s : LatElt, RngIntElt -> .
            v / s : LatElt, RngIntElt -> .
            v div d : LatElt, RngIntElt -> LatElt
            v +:= w : LatElt, LatElt ->
            v -:= w : LatElt, LatElt ->
            v *:= n : LatElt, RngIntElt ->
            v * T : LatElt, AlgMatElt -> LatElt
            InnerProduct(v, w) : LatElt, LatElt -> RngElt
            Norm(v) : LatElt -> RngElt
            Length(v, K) : LatElt, Fld -> FldReElt
            Support(v) : LatElt -> SetEnum

      Predicates and Boolean Operations
            v in L : LatElt, Lat -> BoolElt
            v eq w : LatElt, LatElt -> BoolElt
            v ne w : LatElt, LatElt -> BoolElt
            IsZero(v) : LatElt -> BoolElt

      Access Operations
            ElementToSequence(v) : LatElt -> [ RngElt ]
            Coordinates(v) : LatElt -> [ RngIntElt ]
            Coordinates(L, v) : Lat, LatElt -> [ RngIntElt ]
            CoordinateVector(v) : LatElt -> LatElt
            CoordinateVector(L, v) : Lat, LatElt -> LatElt
            Example Lat_LatticeFunctions (H30E4)

 
Properties of Lattices

      Associated Structures
            AmbientSpace(L) : Lat -> ModTupFld, Map
            CoordinateSpace(L) : Lat -> ModTupFld, Map
            Category(L) : Lat -> Cat

      Attributes of Lattices
            Dimension(L) : Lat -> RngIntElt
            Degree(L) : Lat -> RngIntElt
            Degree(v) : LatElt -> RngIntElt
            Content(L) : Lat -> RngElt
            Level(L) : Lat -> RngElt
            Determinant(L) : Lat -> RngElt
            GramMatrix(L) : Lat -> AlgMatElt
            GramMatrix(X) : ModMatRngElt : -> AlgMatElt
            InnerProductMatrix(L) : Lat -> AlgMatElt
            Basis(L) : Lat -> [ FldReElt ]
            BasisMatrix(L) : Lat -> ModMatRngElt
            BasisDenominator(L) : Lat -> RngIntElt
            QuadraticForm(L) : Lat -> RngMPolElt

      Predicates and Booleans on Lattices
            L eq M : Lat, Lat -> BoolElt
            L ne M : Lat, Lat -> BoolElt
            L subset M: Lat, Lat -> BoolElt
            IsExact(L) : Lat -> BoolElt
            IsIntegral(L) : Lat -> BoolElt
            IsEven(L) : Lat -> BoolElt

      Base Ring and Base Change
            BaseRing(L) : Lat -> Rng
            CoordinateRing(L) : Lat -> RngInt
            ChangeRing(L, S) : Lat, Rng -> Lat, Map

 
Construction of New Lattices

      Sub- and Superlattices and Quotients
            sub<L | S> : Lat, List -> Lat
            ext< L | S > : Lat, List -> Lat
            T * L : AlgMatElt, Lat -> Lat
            s * L : RngElt, Lat -> Lat
            L / s : Lat, RngElt -> Lat
            quo< L | S > : Lat, List -> GrpAb, Map
            L / S : Lat, Lat -> GrpAb, Map
            Index(L, S): Lat, Lat -> RngInt
            Example Lat_SubSuperQuo (H30E5)

      Standard Constructions of New Lattices
            Dual(L) : Lat -> Lat
            PartialDual(L, n) : Lat, RngIntElt -> Lat
            DualBasisLattice(L) : Lat -> Lat
            DualQuotient(L) : Lat -> GrpAb, Lat, Map
            EvenSublattice(L) : Lat -> Lat, Map
            Example Lat_dual (H30E6)
            L + M : Lat, Lat -> Lat
            L meet M : Lat, Lat -> Lat
            DirectSum(L, M) : Lat, Lat -> Lat
            OrthogonalDecomposition(L) : Lat -> [Lat]
            OrthogonalDecomposition(F) : [Mtrx] -> [* Mtrx *], [* [Mtrx] *]
            TensorProduct(L, M) : Lat, Lat -> Lat
            ExteriorSquare(L) : Lat -> Lat
            SymmetricSquare(L) : Lat -> Lat
            PureLattice(L) : Lat -> Lat
            IntegralBasisLattice(L) : Lat -> Lat, RngIntElt

 
Reduction of Matrices and Lattices

      LLL Reduction
            Example Lat_LLLUsage (H30E7)
            LLL(X) : ModMatRngElt -> ModMatRngElt, AlgMatElt, RngIntElt
            BasisReduction(X) : ModMatRngElt -> ModMatRngElt, AlgMatElt, RngIntElt
            LLLGram(F) : ModMatRngElt -> ModMatRngElt, AlgMatElt, RngIntElt
            LLLBasisMatrix(L) : Lat -> ModMatElt, AlgMatElt
            LLLGramMatrix(L) : Lat -> AlgMatElt, AlgMatElt
            LLL(L) : Lat -> Lat, AlgMatElt
            BasisReduction(L) : Lat -> Lat, AlgMatElt
            SetVerbose("LLL", v) : MonStgElt, RngIntElt ->
            Example Lat_LLLXGCD (H30E8)

      Pair Reduction
            PairReduce(X) : ModMatRngElt -> ModMatRngElt, AlgMatElt
            PairReduceGram(F) : ModMatRngElt -> ModMatRngElt, AlgMatElt, RngIntElt
            PairReduce(L) : Lat -> Lat, AlgMatElt

      Seysen Reduction
            Seysen(X) : ModMatRngElt -> ModMatRngElt, AlgMatElt
            SeysenGram(F) : ModMatRngElt -> ModMatRngElt, AlgMatElt, RngIntElt
            Seysen(L) : Lat -> Lat, AlgMatElt
            Example Lat_Seysen (H30E9)

      HKZ Reduction
            HKZ(X) : ModMatRngElt -> ModMatRngElt, AlgMatElt
            HKZGram(F) : ModMatRngElt -> ModMatRngElt, AlgMatElt
            HKZ(L) : Lat -> Lat, AlgMatElt
            SetVerbose("HKZ", v) : MonStgElt, RngIntElt ->
            GaussReduce(X) : ModMatRngElt -> ModMatRngElt, AlgMatElt
            Example Lat_HKZ (H30E10)

      Recovering a Short Basis from Short Lattice Vectors
            ReconstructLatticeBasis(S, B) : ModMatRngElt, ModMatRngElt -> ModMatRngEltLat

 
Minima and Element Enumeration

      Minimum, Density and Kissing Number
            Minimum(L) : Lat -> RngElt
            PackingRadius(L) : Lat -> FldReElt
            HermiteConstant(n) : RngIntElt -> RngElt
            HermiteNumber(L) : Lat -> FldReElt
            CentreDensity(L) : Lat -> FldReElt
            Density(L) : Lat -> FldReElt
            KissingNumber(L) : Lat -> RngElt
            Example Lat_Leech (H30E11)

      Shortest and Closest Vectors
            ShortestVectors(L) : Lat -> [ LatElt ]
            ShortestVectorsMatrix(L) : Lat -> ModMatRngElt
            ClosestVectors(L, w) : Lat, ModTupRngElt -> [ LatElt ], RngElt
            ClosestVectorsMatrix(L, w) : Lat, ModTupRngElt -> ModMatRngElt, RngElt
            Example Lat_Closest (H30E12)

      Short and Close Vectors
            ShortVectors(L, u) : Lat, RngElt -> [ <LatElt, RngElt> ]
            ShortVectorsMatrix(L, u) : Lat, RngElt -> ModMatRngElt
            CloseVectors(L, w, u) : Lat, ModTupRngElt, RngElt -> [ <LatElt, RngElt> ]
            CloseVectorsMatrix(L, w, u) : Lat, ModTupRngElt, RngElt -> ModMatRngElt
            Example Lat_Knapsack (H30E13)
            Example Lat_SingularElements (H30E14)

      Short and Close Vector Processes
            ShortVectorsProcess(L, u) : Lat, RngElt -> LatEnumProc
            CloseVectorsProcess(L, w, u) : Lat, ModTupRngElt, RngElt -> LatEnumProc
            NextVector(P) : LatEnumProc -> LatElt, RngElt
            IsEmpty(P) : LatEnumProc -> BoolElt

      Successive Minima and Theta Series
            SuccessiveMinima(L) : Lat -> [ RngIntElt ], [ LatElt ]
            ThetaSeries(L, n) : Lat, RngIntElt -> RngSerElt
            Example Lat_ThetaSeries (H30E15)
            ThetaSeriesIntegral(L, n) : Lat, RngIntElt -> RngSerElt

      Lattice Enumeration Utilities
            SetVerbose("Enum", v) : MonStgElt, RngIntElt ->
            EnumerationCost(L) : Lat -> FldReElt
            EnumerationCostArray(L) : Lat -> ModTupFldElt
            Example Lat_EnumerationCost (H30E16)

 
Theta Series as Modular Forms
      ThetaSeriesModularFormSpace(L) : Lat -> ModFrm
      ThetaSeriesModularForm(L) : Lat -> ModFrmElt

 
Voronoi Cells, Holes and Covering Radius
      VoronoiCell(L) : Lat -> [ ModTupFldElt ], SetEnum , [ ModTupFldElt ]
      VoronoiGraph(L) : Lat -> GrphUnd
      Holes(L) : Lat -> [ ModTupFldElt ]
      DeepHoles(L) : Lat -> [ ModTupFldElt ]
      CoveringRadius(L) : Lat -> FldRatElt
      VoronoiRelevantVectors(L) : Lat -> [ ModTupFldElt ]
      Example Lat_Voronoi (H30E17)

 
Orthogonalization
      Orthogonalize(M) : MtrxSpcElt -> MtrxSpcElt, AlgMatElt, RngIntElt
      Diagonalization(F) : MtrxSpcElt -> MtrxSpcElt, AlgMatElt, RngIntElt
      Orthogonalize(L) : Lat -> Lat, AlgMatElt
      Orthonormalize(M, K) : MtrxSpcElt, Fld -> AlgMatElt
      Orthonormalize(L, K) : Lat, FldRe -> AlgMatElt
      Example Lat_Orthogonalize (H30E18)

 
Testing Matrices for Definiteness
      IsPositiveDefinite(F) : ModMatRngElt -> BoolElt
      IsPositiveSemiDefinite(F) : ModMatRngElt -> BoolElt
      IsNegativeDefinite(F) : ModMatRngElt -> BoolElt
      IsNegativeSemiDefinite(F) : ModMatRngElt -> BoolElt

 
Genera and Spinor Genera

      Genus Constructions
            Genus(L) : Lat -> SymGen
            SpinorGenus(L) : Lat -> SymGen
            SpinorGenera(G) : SymGen -> [ SymGen ]

      Invariants of Genera and Spinor Genera
            Representative(G) : SymGen -> Lat
            IsSpinorGenus(G) : SymGen -> BoolElt
            IsGenus(G) : SymGen -> BoolElt
            Determinant(G) : SymGen -> Lat
            LocalGenera(G) : SymGen -> Lat
            Representative(G) : SymGen -> Lat
            G1 eq G2 : SymGen, SymGen -> BoolElt
            # G : SymGen -> RngIntElt
            SpinorCharacters(G) : SymGen -> [ GrpDrchElt ]
            SpinorGenerators(G) : SymGen -> [ RngIntElt ]
            AutomorphousClasses(L,p) : Lat, RngIntElt -> RngIntElt
            IsSpinorNorm(G,p) : SymGen, RngIntElt -> RngIntElt

      Invariants of p-adic Genera
            Prime(G) : SymGenLoc -> RngIntElt
            Representative(G) : SymGenLoc -> Lat
            Determinant(G) : SymGenLoc -> RngIntElt
            Dimension(G) : SymGenLoc -> RngIntElt
            G1 eq G2 : SymGenLoc, SymGenLoc -> BoolElt

      Neighbour Relations and Graphs
            Neighbour(L, v, p) : Lat, LatElt, RngIntElt -> Lat
            Neighbours(L, p) : Lat, RngIntElt -> Lat
            NeighbourClosure(L, p) : Lat, RngIntElt -> Lat
            GenusRepresentatives(L) : Lat -> [ Lat ]
            AdjacencyMatrix(G,p) : SymGen, RngIntElt -> AlgMatElt
            Example Lat_Neighbour (H30E19)
            Example Lat_Genus (H30E20)

 
Attributes of Lattices
      L`Minimum : Lat -> RngElt
      L`MinimumBound : Lat -> RngElt

 
Database of Lattices

      Creating the Database
            LatticeDatabase() : -> DB

      Database Information
            # D: DB -> RngIntElt
            LargestDimension(D): DB -> RngIntElt
            NumberOfLattices(D, d): DB, RngIntElt -> RngIntElt
            NumberOfLattices(D, N): DB, MonStgElt -> RngIntElt
            LatticeName(D, i): DB, RngIntElt -> MonStgElt, RngIntElt
            LatticeName(D, d, i): DB, RngIntElt, RngIntElt -> RecMonStgElt, RngIntElt
            LatticeName(D, N): DB, MonStgElt -> RecMonStgElt, RngIntElt
            LatticeName(D, N, i): DB, MonStgElt, RngIntElt -> RecMonStgElt, RngIntElt
            Example Lat_latdb-names (H30E21)

      Accessing the Database
            Lattice(D, i: parameters): DB, RngIntElt -> Lattice
            LatticeData(D, i): DB, RngIntElt -> Rec
            Example Lat_latdb (H30E22)

      Hermitian Lattices
            HermitianTranspose(M) : Mtrx -> Mtrx
            ExpandBasis(M) : Mtrx -> Mtrx
            HermitianAutomorphismGroup(M) : Mtrx -> GrpMat
            InvariantForms(G) : GrpMat -> SeqEnum
            QuaternionicGModule(M, I, J) : ModGrp, AlgMatElt, AlgMatElt -> ModGrp
            MooreDeterminant(M) : Mtrx -> Mtrx
            Example Lat_coxeter-todd (H30E23)
            Example Lat_quaternionic-auto-group (H30E24)

 
Bibliography

[Next][Prev] [Right] [____] [Up] [Index] [Root]
Version: V2.19 of Wed Apr 24 15:09:57 EST 2013