Chooses a random line bundle on the hyperelliptic curve E of genus g given by the equation y^2-(-1)^{g}*f, where f is the branch equation of degree (2g+2). Input with an integer d gives a random line bundle of degree d on E.
Note that a line bundle on E is given by the y-action which is represented by a traceless 2x2 matrix
b c
a -b
whose determinant equals to (-1)^{g}*f. We find such a matrix over a finite ground field by picking randomly b, a homogeneous form of degree (g+1), since the binary form b^2 + (-1)^{g}*f frequently factors.
i1 : kk=ZZ/101; |
i2 : g=1; |
i3 : rNP=randNicePencil(kk,g); |
i4 : cM=cliffordModule(rNP.matFact1,rNP.matFact2,rNP.baseRing); |
i5 : f=cM.hyperellipticBranchEquation 3 2 2 3 4 o5 = - 12s t - 50s t - 16s*t + 47t o5 : kk[s, t] |
i6 : L=randomLineBundle(f) o6 = VectorBundleOnE{...1...} o6 : VectorBundleOnE |
i7 : degOnE L o7 = -1 |
i8 : m=L.yAction o8 = {-2} | 39s2+21st+34t2 44s3-34s2t+7st2+2t3 | {-1} | 32s+t -39s2-21st-34t2 | 2 2 o8 : Matrix (kk[s, t]) <--- (kk[s, t]) |
i9 : (m)^2_(0,0)+(-1)^g*f==0 o9 = true |
i10 : L0=randomLineBundle(0,f) o10 = VectorBundleOnE{...1...} o10 : VectorBundleOnE |
i11 : degOnE L0 o11 = 0 |
i12 : orderInPic L0 o12 = 37 |
The ground field kk has to be finite.
The object randomLineBundle is a method function.