next | previous | forward | backward | up | index | toc

# trim(Arrangement) -- make a simple hyperplane arrangement

## Synopsis

• Function: trim
• Usage:
trim A
• Inputs:
• Optional inputs:
• Outputs:
• , a simple arrangement

## Description

A hyperplane arrangement is simple if none of its linear forms is identically $0$ and no hyperplane is cut out out by more than one form. This method returns a simple arrangement by reducing the multiplicities of the hyperplanes and eliminating the zero equation (if necessary).

 i1 : R = QQ[x, y]; i2 : A = arrangement{x,x,0_R,y,y,y,x+y,x+y,x+y,x+y,x+y} o2 = {x, x, 0, y, y, y, x + y, x + y, x + y, x + y, x + y} o2 : Hyperplane Arrangement  i3 : A' = trim A o3 = {x + y, y, x} o3 : Hyperplane Arrangement  i4 : assert(ring A' === R) i5 : assert(trim A' == A') i6 : assert(trim A' == A')

Some natural operations produce non-simple hyperplane arrangements.

 i7 : A'' = restriction(A, y) o7 = {x, x, x, x, x, x, x} o7 : Hyperplane Arrangement  i8 : trim A'' o8 = {x} o8 : Hyperplane Arrangement  i9 : A''' = dual arrangement{x, y, x-y} o9 = {-x , x , x } 1 1 1 o9 : Hyperplane Arrangement  i10 : trim A''' o10 = {x } 1 o10 : Hyperplane Arrangement