Let \mathbb{K} be a field. A hyperplane arrangment is a finite set \mathcal{A} = \{H_1,\ldots,H_n\} of hyperplanes in a finite dimensional \mathbb{K}-vector space V.
‣ HyperplaneArrangement( R ) | ( operation ) |
Returns: A hyperplane arrangement
Constructs a hyperplane arrangement from a list R of vectors representing defining linear forms of hyperplanes.
Each vector [a_1,\dots,a_\ell] in R corresponds to the hyperplane
a_1 x_1 + \cdots + a_\ell x_\ell = 0.
The vectors must lie in the same vector space.
Linearly dependent defining forms are removed automatically.
gap> A := HyperplaneArrangement([[1,0,0],[0,1,0],[0,0,1]]); <HyperplaneArrangement: 3 hyperplanes in 3-space> gap> Roots(A); [ [ 1, 0, 0 ], [ 0, 1, 0 ], [ 0, 0, 1 ] ]
‣ Dimension( A ) | ( attribute ) |
Returns: A non-negative integer.
Returns the dimension of the ambient vector space in which the hyperplane arrangement A is defined.
gap> A:=HyperplaneArrangement([[1,0,0],[0,1,0]]); Dimension(A); <HyperplaneArrangement: 2 hyperplanes in 3-space> 3
‣ Roots( A ) | ( attribute ) |
Returns: A list of vectors.
Returns the list of vectors giving defining linear forms (also called roots) of the hyperplanes in the arrangement A.
gap> A:=AGpql(3,3,2); Roots(A); <HyperplaneArrangement: 3 hyperplanes in 2-space> [ [ 1, -E(3) ], [ 1, -E(3)^2 ], [ 1, -1 ] ]
‣ HArrDefField( A ) | ( attribute ) |
Returns: A field
Returns the field of definition of A. For further compuations, in characterisic 0 only cyclotomic fields are considered.
gap> A:=HyperplaneArrangement(Z(3)^0*[[1,0],[0,1],[1,1]]); HArrDefField(A); <HyperplaneArrangement: 3 hyperplanes in 2-space> GF(3) gap> A:=AGpql(5,5,2); HArrDefField(A); <HyperplaneArrangement: 5 hyperplanes in 2-space> CF(5)
‣ IntersectionLattice( A ) | ( attribute ) |
Returns: An object of type IsGeomLattice.
Computes the intersection lattice of the hyperplane arrangement A.
The ground set L (see LGroundSet (2.4-1)) of the lattice is represented level-by-level. The entry L[k] contains all intersections of rank k.
Each lattice element is stored as a list of indices referring to hyperplanes in Roots(A).
For example, the list [1,3] represents the intersection of the first and third hyperplane of the arrangement.
gap> A := HyperplaneArrangement([[1,0,0],[0,1,0],[0,0,0],[1,1,1]]); <HyperplaneArrangement: 3 hyperplanes in 3-space> gap> L:=IntersectionLattice(A); LGroundSet(L); <Geometric lattice: 3 atoms, rank 3> [ [ [ 1 ], [ 2 ], [ 3 ] ], [ [ 1, 2 ], [ 1, 3 ], [ 2, 3 ] ], [ [ 1, 2, 3 ] ] ]
‣ CharPoly( A ) | ( attribute ) |
Returns: a univariate polynomial with integral coefficients.
Returns \chi_{\mathcal{A}} the characterisitc polynomial of the arrangement A.
gap> A:=AGpql(2,2,3); <HyperplaneArrangement: 6 hyperplanes in 3-space> gap> CharPoly(A); t^3-6*t^2+11*t-6
‣ ExpArr( A ) | ( attribute ) |
Returns: a list of integers, or fail
Returns exponents of the arrangement \mathcal{A} if the characteristic polynomial factors over the integers.
gap> A:=HyperplaneArrangement([[1,0],[0,1],[1,1]]); <HyperplaneArrangement: 3 hyperplanes in 2-space> gap> ExpArr(A); [ 1, 2 ]
‣ MSetInvL( A ) | ( attribute ) |
Returns: An object of type IsGeomLattice.
Computes multiset invariants of the intersection lattice (see IntersectionLattice (2.2-4)) of the hyperplane arrangement A.
For each level of the lattice, the function records how many intersections occur with a given number of defining hyperplanes.
gap> A:=HyperplaneArrangement([[1,0,0,],[0,1,0],[0,0,1],[1,1,1]]); <HyperplaneArrangement: 4 hyperplanes in 3-space> gap> MSetInvL(A); [ [ [ 1, 4 ] ], [ [ 2, 6 ] ], [ [ 4, 1 ] ] ]
‣ IsReal( A ) | ( property ) |
Returns: true or false.
Determines, if the hyperplane arrangement is defined over the reals, i.e., if the entries of the defining linear forms are real.
‣ HArrIsIrreducible( A ) | ( property ) |
Returns: true or false.
Determines, if the hyperplane arrangement is irreducible.
‣ HArrIsGeneric( A ) | ( property ) |
Returns: true or false.
Determines, if the hyperplane arrangement is generic. See also LIsGeneric (2.5-3).
gap> A := HyperplaneArrangement([[1,0,0],[0,1,0],[0,0,1],[1,1,0],[1,1,1]]); <HyperplaneArrangement: 5 hyperplanes in 3-space> gap> HArrIsGeneric(A); false gap> A := HyperplaneArrangement([[1,0,0],[0,1,0],[0,0,1],[1,1,1]]); <HyperplaneArrangement: 4 hyperplanes in 3-space> gap> HArrIsGeneric(A); true
‣ LGroundSet( L ) | ( attribute ) |
Returns: list of lists
Returns the ground set of the geometric lattice L.
‣ LAtoms( L ) | ( attribute ) |
Returns: list
Returns the set of atoms of L.
‣ LRank( L ) | ( attribute ) |
Returns: a non-negative integer
Returns the rank of L.
‣ LkFlats( L ) | ( attribute ) |
Returns: a function
Returns a function extracting the flats of rank k in L.
‣ LRankFunction( L ) | ( attribute ) |
Returns: A function
Returns the rank function of the geometric lattice L.
‣ LGraph( L ) | ( attribute ) |
Returns: a graph
Constructs the directed graph of the Hasse diagram of L.
‣ LAutGroup( L ) | ( attribute ) |
Returns: a group
Computes the autmorphism group of L as a subgroup of Sym(LAtoms(L)).
‣ LMoebius( L ) | ( attribute ) |
Returns: function
Returns the Moebius function of L.
‣ LCharPoly( L ) | ( attribute ) |
Returns: function
Computes the characteristic polynomial of L.
‣ LBases( L ) | ( attribute ) |
Returns: list of bases
Determines the subsets of LAtoms(L) which are bases.
‣ LIsIrreducible( L ) | ( property ) |
Returns: true or false.
Determines, if L is irreducible.
‣ LIsBoolean( L ) | ( property ) |
Returns: true or false.
Determines, if L is a boolean lattice.
gap> L:=IntersectionLattice(HyperplaneArrangement([[1,0],[1,1]])); <Geometric lattice: 2 atoms, rank 2> gap> LIsBoolean(L); true gap> L:=IntersectionLattice(HyperplaneArrangement([[1,0],[0,1],[1,1]])); <Geometric lattice: 3 atoms, rank 2> gap> LIsBoolean(L); false
‣ LIsGeneric( L ) | ( property ) |
Returns: true or false.
Determines, if L is generic, i.e. if L is irreducible and all proper intervals are boolean.
gap> A := HyperplaneArrangement([[1,0,0],[0,1,0],[0,0,1],[1,1,1]]); <HyperplaneArrangement: 4 hyperplanes in 3-space> gap> L:=IntersectionLattice(A); <Geometric lattice: 4 atoms, rank 3> gap> LIsGeneric(L); true gap> A := HyperplaneArrangement([[1,0,0],[0,1,0],[0,0,1],[1,1,0],[1,1,1]]); <HyperplaneArrangement: 5 hyperplanes in 3-space> gap> L:=IntersectionLattice(A); <Geometric lattice: 5 atoms, rank 3> gap> LIsGeneric(L); false
‣ LIsIsomorphic( LA, LB ) | ( operation ) |
Returns: true or false
Determines if the geometric lattices LA and LB are isomorphic.
gap> A:=HyperplaneArrangement([[1,0],[0,1],[1,1]]); B:=HyperplaneArrangement([[1,0],[1,1],[1,2]]); <HyperplaneArrangement: 3 hyperplanes in 2-space> <HyperplaneArrangement: 3 hyperplanes in 2-space> gap> LA:=IntersectionLattice(A); LB:=IntersectionLattice(B); <Geometric lattice: 3 atoms, rank 2> <Geometric lattice: 3 atoms, rank 2> gap> LIsIsomorphic(LA,LB); true
‣ IsLEquiv( A, B ) | ( operation ) |
Returns: true or false
Determines if the arrangements A and B have isomorphic intersection lattices.
gap> A:=HyperplaneArrangement(([[1,0,0],[0,1,0],[0,0,1],[1,1,0],[0,1,1],[1,1,3]]); <HyperplaneArrangement: 6 hyperplanes in 3-space> gap> B:=AGpql(2,2,3); <HyperplaneArrangement: 6 hyperplanes in 3-space> gap> IsLEquiv(A,B); false gap> A:=HyperplaneArrangement(([[1,0,0],[0,1,0],[0,0,1],[1,1,0],[0,1,1],[1,1,1]]); <HyperplaneArrangement: 6 hyperplanes in 3-space> gap> IsLEquiv(A,B); true
‣ Essentialization( A ) | ( operation ) |
Returns: A hyperplane arrangement.
Computes the essentialization of the hyperplane arrangement A. An arrangement is called essential if the intersection of all its hyperplanes is the origin. If this is not the case, the function restricts the arrangement to a complementary subspace so that the resulting arrangement becomes essential.
gap> A:=HyperplaneArrangement(([[1,0,0],[0,1,0],[1,1,0]]); <HyperplaneArrangement: 3 hyperplanes in 3-space> gap> B:=Essentialization(A); Roots(B); <HyperplaneArrangement: 3 hyperplanes in 2-space> [ [ 1, 0 ], [ 0, 1 ], [ 1, 1 ] ]
‣ HArrRestriction( A, i ) | ( operation ) |
Returns: A hyperplane arrangement.
Computes the restriction of the arrangement A to the i-th hyperplane of Roots(A).
‣ HArrRestriction( A, S ) | ( operation ) |
Returns: A hyperplane arrangement.
Computes the restriction of the arrangement A to the subspace orthogonal to the vectors in S.
‣ HArrAddition( A, h ) | ( operation ) |
Returns: A hyperplane arrangement.
Computes the addition of the arrangement A with respect to hyperplane h.
‣ HArrDeletion( A, i ) | ( operation ) |
Returns: A hyperplane arrangement.
Computes the deletion of the arrangement A with respect to i-th hyperplane of Roots(A).
generated by GAPDoc2HTML