Macaulay2 » Documentation
Packages » HyperplaneArrangements :: vee(Flat,Flat)
next | previous | forward | backward | up | index | toc

# vee(Flat,Flat) -- compute the vee operation in the intersection lattice

- Function: vee
- Usage:
    `vee(F, G)`
    `F | G`
- Inputs:
  - F, a flat in an hyperplane arrangement,
  - G, a flat in an hyperplane arrangement, in the same arrangement as $F$
- Outputs:
  - a flat in an hyperplane arrangement, having the least codimension among those contained in both $F$ and $G$

## Description

In the geometric lattice of flats, the vee (also known as the supremum or least upper bound) is the join operation. Equivalently, identifying flats with subspaces, this operation is the closure of the union.

The vee operation is commutative, associative, and idempotent.

    i1 : A = typeA 6;

    i2 : F = flat(A, {0, 1, 6, 15, 20})

    o2 = {0, 1, 6, 15, 20}

    o2 : Flat of {x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x }
                   1    2   1    3   1    4   1    5   1    6   1    7   2    3   2    4   2    5   2    6   2    7   3    4   3    5   3    6   3    7   4    5   4    6   4    7   5    6   5    7   6    7

    i3 : G = flat(A, {0, 1, 2, 6, 7, 11})

    o3 = {0, 1, 2, 6, 7, 11}

    o3 : Flat of {x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x }
                   1    2   1    3   1    4   1    5   1    6   1    7   2    3   2    4   2    5   2    6   2    7   3    4   3    5   3    6   3    7   4    5   4    6   4    7   5    6   5    7   6    7

    i4 : H = flat(A, {0, 1, 2, 3, 6, 7, 8, 11, 12, 15})

    o4 = {0, 1, 2, 3, 6, 7, 8, 11, 12, 15}

    o4 : Flat of {x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x }
                   1    2   1    3   1    4   1    5   1    6   1    7   2    3   2    4   2    5   2    6   2    7   3    4   3    5   3    6   3    7   4    5   4    6   4    7   5    6   5    7   6    7

    i5 : F | G

    o5 = {0, 1, 2, 3, 6, 7, 8, 11, 12, 15, 20}

    o5 : Flat of {x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x }
                   1    2   1    3   1    4   1    5   1    6   1    7   2    3   2    4   2    5   2    6   2    7   3    4   3    5   3    6   3    7   4    5   4    6   4    7   5    6   5    7   6    7

    i6 : G | H

    o6 = {0, 1, 2, 3, 6, 7, 8, 11, 12, 15}

    o6 : Flat of {x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x }
                   1    2   1    3   1    4   1    5   1    6   1    7   2    3   2    4   2    5   2    6   2    7   3    4   3    5   3    6   3    7   4    5   4    6   4    7   5    6   5    7   6    7

    i7 : F | H

    o7 = {0, 1, 2, 3, 6, 7, 8, 11, 12, 15, 20}

    o7 : Flat of {x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x , x  - x }
                   1    2   1    3   1    4   1    5   1    6   1    7   2    3   2    4   2    5   2    6   2    7   3    4   3    5   3    6   3    7   4    5   4    6   4    7   5    6   5    7   6    7

    i8 : assert(vee(F, G) === F | G)

    i9 : assert(F | G === G | F)

    i10 : assert((F | G) | H === F | (G | H))

    i11 : assert(G | G === G)

The rank function is also semimodular.

    i12 : assert(rank F + rank G >= rank(F ^ G) + rank(F | G))

    i13 : assert(rank F + rank H >= rank(F ^ H) + rank(F | H))

    i14 : assert(rank H + rank G >= rank(H ^ G) + rank(H | G))

## See also

- rank(Flat) -- compute the rank of a flat
- vee(Flat,Flat) -- compute the vee operation in the intersection lattice

## Ways to use this method:

- vee(Flat,Flat) -- compute the vee operation in the intersection lattice

The source of this document is in /build/macaulay2-88fgJW/macaulay2-1.25.11+ds/M2/Macaulay2/packages/HyperplaneArrangements.m2:2614:0.