Macaulay2 » Documentation
Packages » M0nbar :: curveClassRepresentativeM0nbar
next | previous | forward | backward | up | index | toc

curveClassRepresentativeM0nbar -- creates an object of type CurveClassRepresentativeM0nbar

Synopsis

Description

This function creates an object of type CurveClassRepresentativeM0nbar. Here is a basic example:

i1 : L1= { {{{1,2},{3},{4},{5}},1}, {{{1,3},{2},{4},{5}},1} };
i2 : curveClassRepresentativeM0nbar(5,L1)

o2 = CurveClassRepresentativeM0nbar{"CurveExpression" => HashTable{{{1, 2}, {3}, {4}, {5}} => 1}}
                                                                   {{1, 3}, {2}, {4}, {5}} => 1
                                    "NumberOfMarkedPoints" => 5

o2 : CurveClassRepresentativeM0nbar

The input can be a list or a hash table (see the documentation for (curveClassRepresentativeM0nbar,ZZ,HashTable)) . The elements of the list should be pairs {{I1,I2,I3,I4},c}. This will add $c F_{I_1,I_2,I_3,I_4}$ to the curve class expression. Equivalently, you can type {I1,I2,I3,I4}=> instead of {{I1,I2,I3,I4},c}.

i3 : L2= { {{1,2},{3},{4},{5}}=>1, {{1,3},{2},{4},{5}}=>1 };
i4 : curveClassRepresentativeM0nbar(5,L2)

o4 = CurveClassRepresentativeM0nbar{"CurveExpression" => HashTable{{{1, 2}, {3}, {4}, {5}} => 1}}
                                                                   {{1, 3}, {2}, {4}, {5}} => 1
                                    "NumberOfMarkedPoints" => 5

o4 : CurveClassRepresentativeM0nbar

The function does some minimal testing to make sure the expression makes sense. If you type "L2=new HashTable from \{ \{\{1,7\},\{2\},\{3\},\{4\}\} =>1 \}" and then run "curveClassRepresentativeM0nbar(6,L2)", you will get an error that "The curve expression is invalid."

The function sorts the curve class labels. If sorting creates like terms, they are combined:

i5 : L3={ {{{1,2},{3},{4},{5}},1}, {{{1,3},{2},{4},{5}},1}, {{{3},{4},{2,1},{5}},1}};
i6 : curveClassRepresentativeM0nbar(5,L3)

o6 = CurveClassRepresentativeM0nbar{"CurveExpression" => HashTable{{{1, 2}, {3}, {4}, {5}} => 2}}
                                                                   {{1, 3}, {2}, {4}, {5}} => 1
                                    "NumberOfMarkedPoints" => 5

o6 : CurveClassRepresentativeM0nbar

It deletes terms whose coefficient is zero.

i7 : L4={ {{{1,2},{3},{4},{5}},1}, {{{1,3},{2},{4},{5}},1}, {{{3},{4},{2,1},{5}},-1}};
i8 : curveClassRepresentativeM0nbar(5,L4)

o8 = CurveClassRepresentativeM0nbar{"CurveExpression" => HashTable{{{1, 3}, {2}, {4}, {5}} => 1}}
                                    "NumberOfMarkedPoints" => 5

o8 : CurveClassRepresentativeM0nbar

Ways to use curveClassRepresentativeM0nbar:

For the programmer

The object curveClassRepresentativeM0nbar is a method function.