-- -*- M2-comint -*- hash: 16549374772986338171

i1 : S = ZZ[w,x,y,z];

i2 : A = arrangement(matrix{{1,1,1,0,0,0},{-1,0,0,1,1,0},{0,-1,0,-1,0,1},{0,0,-1,0,-1,-1}}, S)

o2 = {w - x, w - y, w - z, x - y, x - z, y - z}

o2 : Hyperplane Arrangement 

i3 : ring A

o3 = S

o3 : PolynomialRing

i4 : assert(ring A === S)

i5 : S' = ZZ/101[w,x,y,z];

i6 : A' = typeA(3, S')

o6 = {w - x, w - y, w - z, x - y, x - z, y - z}

o6 : Hyperplane Arrangement 

i7 : ring A'

o7 = S'

o7 : PolynomialRing

i8 : assert(ring A' === S')

i9 : assert(A' =!= A)

i10 : R = S'/(w+x+y+z)

o10 = R

o10 : QuotientRing

i11 : A'' = sub(A, R) -- this changes the coordinate ring of the arrangement

o11 = {- 2x - y - z, - x - 2y - z, - x - y - 2z, x - y, x - z, y - z}

o11 : Hyperplane Arrangement 

i12 : ring A''

o12 = R

o12 : QuotientRing

i13 : assert(rank A'' == dim ring A'')

i14 : trivial = arrangement({}, S)

o14 = {}

o14 : Hyperplane Arrangement 

i15 : assert(ring trivial === S)

i16 : trivial' = arrangement({},R)

o16 = {}

o16 : Hyperplane Arrangement 

i17 : assert(ring trivial' === R)

i18 : 
