NOTE: The following shows, using Magma, how to determine the zeta function of (using the notation in the paper) the surface \bar X_1 over F_3 from the zeta function of the surface \bar Y_1. First one expands the two possible zeta functions as rational functions to determine the predicted values of #X_1(F_3). Then one examines the orbits of Y_1(F_9) under Frobenius and the involution P|->P+C in order to determine the actual value of #X_1(F_3). We note that a small amount of the actual computer input has been removed here. > K=PowerSeriesRing(Rationals); Magma will interpret every expression in t as a power series over Q. > P2:=1 - 7*t + 24*t^2 - 108*t^3 + 459*t^4 - 1377*t^5 + 3888*t^6 - 12393*t^7 + 37179*t^8 - 78732*t^9 + 157464*t^10 - 413343*t^11 + 531441*t^12 This is the first candidate for the factor P2, which has the irreducible degree 10 factor. > P0:=1-t; > P1:=1-2*t+3*t^2; > P3:=1-6*t+27*t^2; > P4:=1-9*t; > Z:=P1*P3/(P0*P2*P4); > Log(Z); 9*t + 103/2*t^2 + 391*t^3 + 7747/4*t^4 + 58689/5*t^5 + 501319/6*t^6 + 4606044/7*t^7 + 42825955/8*t^8 + 130366675/3*t^9 + 3515385103/10*t^10 + 31450557213/11*t^11 + 282078259507/12*t^12 + 2537893538241/13*t^13 + 11431171189451/7*t^14 + 68637300581131/5*t^15 + 1853535366859075/16*t^16 + 16679710369933101/17*t^17 + 150095901052336735/18*t^18 + 1350791035744445241/19*t^19 + O(t^20) There are 9 points predicted over F_3. > P2:= 1 - t - 6*t^2 + 18*t^3 - 27*t^4 - 81*t^5 - 729*t^7 - 2187*t^8 + 13122*t^9 - 39366*t^10 - 59049*t^11 + 531441*t^12 This is the second candidate for the factor P2, which has a reducible degree 10 factor. > Z:=P1*P3/(P0*P2*P4); > Log(Z); 3*t + 115/2*t^2 + 325*t^3 + 7843/4*t^4 + 58683/5*t^5 + 499843/6*t^6 + 4600326/7*t^7 + 42857827/8*t^8 + 130366585/3*t^9 + 703147679/2*t^10 + 31451216151/11*t^11 + 282080654803/12*t^12 + 2537877275859/13*t^13 + 11431171072025/7*t^14 + 13727465568965*t^15 + 1853535484667587/16*t^16 + 16679710877673999/17*t^17 + 150095903718545803/18*t^18 + 1350791026169266947/19*t^19 + O(t^20) 3 points predicted over F_3. Now, to count the points: > k:=GF(9); The notation here is that a is a multiplicative generator for F_9. > E; Elliptic Curve defined by y^2 = x^3 + 2*x^2 + x + 2 over GF(3^2) > C; (1 : 0 : 1) > phi:=FrobeniusMap(E); > Points(E); {@ (0 : 1 : 0), (1 : 0 : 1), (a : a^3 : 1), (a : a^7 : 1), (a^2 : 0 : 1), (a^3 : a : 1), (a^3 : a^5 : 1), (2 : a^2 : 1), (2 : a^6 : 1), (a^6 : 0 : 1), (0 : a^2 : 1), (0 : a^6 : 1) @} > [phi(P): P in Points(E)]; [ (0 : 1 : 0), (1 : 0 : 1), (a^3 : a : 1), (a^3 : a^5 : 1), (a^6 : 0 : 1), (a : a^3 : 1), (a : a^7 : 1), (2 : a^6 : 1), (2 : a^2 : 1), (a^2 : 0 : 1), (0 : a^6 : 1), (0 : a^2 : 1) ] > [P+C: P in Points(E)]; [ (1 : 0 : 1), (0 : 1 : 0), (a^3 : a^5 : 1), (a^3 : a : 1), (a^6 : 0 : 1), (a : a^7 : 1), (a : a^3 : 1), (0 : a^2 : 1), (0 : a^6 : 1), (a^2 : 0 : 1), (2 : a^2 : 1), (2 : a^6 : 1) ] Note that the only points for which Frob(P)=P+C are the pair (a^6 : 0 : 1) and (a^2 : 0 : 1), so these fibers, along with the fiber over 0, are all we need to look at. > P:=E![a^6,0,1]; > n, H :=countFiber(E,C,P,a); > H; Hyperelliptic Curve defined by y^2 = a^3*x^6 + a^7*x^4 + x^3 + a^5*x^2 + a over GF(3^2) > Points(H); {@ (1 : 1 : 1), (1 : 2 : 1), (a : a : 1), (a : a^5 : 1), (a^2 : 0 : 1), (a^3 : a^3 : 1), (a^3 : a^7 : 1), (2 : a^2 : 1), (2 : a^6 : 1), (a^5 : a^2 : 1), (a^5 : a^6 : 1), (a^6 : a^3 : 1), (a^6 : a^7 : 1), (a^7 : a^2 : 1), (a^7 : a^6 : 1) @} Note: The order of these coordinates is different from the notation in the paper. In the notation, the above points are written as (Z0 : W : Z1). We may easily compute the image of these points under the map (Z0 : W : Z1) |-> (Z1 : W : Z0) by hand. Upon doing so, we finds the following points are mapped onto their Frobenius image (a total of 7 points): (1 : 1 : 1) -> (1 : 1 : 1) (1 : 2 : 1) -> (1 : 2 : 1) (a^2 : 0 : 1) -> (a^6 : 0 : 1) (2 : a^2 : 1) -> (2 : a^6 : 1) (2 : a^6 : 1) -> (2 : a^2 : 1) (a^6 : a^3 : 1) -> (a^2 : a : 1) (a^6 : a^7 : 1) -> (a^2 : a^5 : 1) The remaining points are not mapped onto their Frobenius image: (a : a : 1) -> (a^7 : a^6 : 1) (a : a^5 : 1) -> (a^7 : a^2 : 1) (a^3 : a^3 : 1) -> (a^5 : a^2 : 1) (a^3 : a^7 : 1) -> (a^5 : a^6 : 1) (a^5 : a^2 : 1) -> (a^3 : a^3 : 1) (a^5 : a^6 : 1) -> (a^3 : a^7 : 1) (a^7 : a^2 : 1) -> (a : a^5 : 1) (a^7 : a^6 : 1) -> (a : a : 1) As a check on these calculations, we can confirm that the points computed as the images agree with the points of the fiber over P+C: > n, H:=countFiber(E,C,P+C,a); > H; Hyperelliptic Curve defined by y^2 = a*x^6 + a^5*x^4 + x^3 + a^7*x^2 + a^3 over GF(3^2) > Points(H); {@ (1 : 1 : 1), (1 : 2 : 1), (a : a : 1), (a : a^5 : 1), (a^2 : a : 1), (a^2 : a^5 : 1), (a^3 : a^3 : 1), (a^3 : a^7 : 1), (2 : a^2 : 1), (2 : a^6 : 1), (a^5 : a^2 : 1), (a^5 : a^6 : 1), (a^6 : 0 : 1), (a^7 : a^2 : 1), (a^7 : a^6 : 1) @} Now we consider the fiber over \tilde 0. > n, H:=countFiber(E,C,E!0,a); > H; Hyperelliptic Curve defined by y^2 = x^5 + 2*x^4 + x + 2 over GF(3^2) > Points(H); {@ (1 : 0 : 0), (1 : 0 : 1), (a : 0 : 1), (a^3 : 0 : 1), (2 : a^2 : 1), (2 : a^6 : 1), (a^5 : 0 : 1), (a^7 : 0 : 1), (0 : a^2 : 1), (0 : a^6 : 1) @} By inspection there are two F_3 points. This gives a total of 7+2=9 orbits of the involution that are fixed by Frobenius, which agrees with the prediction of the first candidate for P2.