Computing the zeta function of curves over finite fields.












1












$begingroup$


Given a nonsingular curve $X/mathbb{F}_q$, how can one efficiently compute its zeta function $Z(X/mathbb{F},T)$?



My current strategy is to determine the genus $g$ of $X$, then count the points $N_1,...N_g$, then use that these determine $Z(X/mathbb{F}_q,T)$.



This is doable by hand for small primes/genus, but quickly gets out of hand, and I am wondering if there are more intelligent ways to get $Z(X/mathbb{F}_q,T)$.



For instance, how could one efficiently find $Z(X/mathbb{F}_q,T)$ by hand where $X$ is the nonsingular curve associated to $y^2+y+x^5+x^3+1$ over $mathbb{F_2}$?



Presumably computer algebra packages can solve this problem, but I'm not really familiar with any, so any reference would be much appreciated.










share|cite|improve this question









$endgroup$

















    1












    $begingroup$


    Given a nonsingular curve $X/mathbb{F}_q$, how can one efficiently compute its zeta function $Z(X/mathbb{F},T)$?



    My current strategy is to determine the genus $g$ of $X$, then count the points $N_1,...N_g$, then use that these determine $Z(X/mathbb{F}_q,T)$.



    This is doable by hand for small primes/genus, but quickly gets out of hand, and I am wondering if there are more intelligent ways to get $Z(X/mathbb{F}_q,T)$.



    For instance, how could one efficiently find $Z(X/mathbb{F}_q,T)$ by hand where $X$ is the nonsingular curve associated to $y^2+y+x^5+x^3+1$ over $mathbb{F_2}$?



    Presumably computer algebra packages can solve this problem, but I'm not really familiar with any, so any reference would be much appreciated.










    share|cite|improve this question









    $endgroup$















      1












      1








      1





      $begingroup$


      Given a nonsingular curve $X/mathbb{F}_q$, how can one efficiently compute its zeta function $Z(X/mathbb{F},T)$?



      My current strategy is to determine the genus $g$ of $X$, then count the points $N_1,...N_g$, then use that these determine $Z(X/mathbb{F}_q,T)$.



      This is doable by hand for small primes/genus, but quickly gets out of hand, and I am wondering if there are more intelligent ways to get $Z(X/mathbb{F}_q,T)$.



      For instance, how could one efficiently find $Z(X/mathbb{F}_q,T)$ by hand where $X$ is the nonsingular curve associated to $y^2+y+x^5+x^3+1$ over $mathbb{F_2}$?



      Presumably computer algebra packages can solve this problem, but I'm not really familiar with any, so any reference would be much appreciated.










      share|cite|improve this question









      $endgroup$




      Given a nonsingular curve $X/mathbb{F}_q$, how can one efficiently compute its zeta function $Z(X/mathbb{F},T)$?



      My current strategy is to determine the genus $g$ of $X$, then count the points $N_1,...N_g$, then use that these determine $Z(X/mathbb{F}_q,T)$.



      This is doable by hand for small primes/genus, but quickly gets out of hand, and I am wondering if there are more intelligent ways to get $Z(X/mathbb{F}_q,T)$.



      For instance, how could one efficiently find $Z(X/mathbb{F}_q,T)$ by hand where $X$ is the nonsingular curve associated to $y^2+y+x^5+x^3+1$ over $mathbb{F_2}$?



      Presumably computer algebra packages can solve this problem, but I'm not really familiar with any, so any reference would be much appreciated.







      finite-fields zeta-functions computer-algebra-systems function-fields






      share|cite|improve this question













      share|cite|improve this question











      share|cite|improve this question




      share|cite|improve this question










      asked Jan 16 at 12:26









      user277182user277182

      518212




      518212






















          1 Answer
          1






          active

          oldest

          votes


















          1












          $begingroup$

          On magma http://magma.maths.usyd.edu.au/calc/



          F<b> := FiniteField(5^2);
          A<x,y> := AffineSpace(F,2);
          f := y^2+2*x^3+x-b-1;
          C := ProjectiveClosure(Curve(A,f));
          IsSingular(C); // SingularPoints(C);
          g:= Genus(C);
          for n in [1..2*g] do
          Cn := BaseChange(C,FiniteField((5^2)^n));
          cn := #Points(Cn);
          {n,cn};
          end for;


          Then (for non-singular projective curve) you want to identify the $alpha_j$ such that $$c_n = q^{n}+1-sum_{j=1}^{2g} alpha_j^n$$



          Let $$zeta(T) = frac{prod_{j=1}^{2g}(1-alpha_j T)}{(1-T)(1-q T)}= exp(sum_{n=1}^infty frac{c_n}{n} T^n), qquad F(T) = sum_{n=1}^{2g} frac{c_n}{n} T^n $$



          Then $$zeta(T) = exp(F(T)+O(T^{2g+1})) =exp( F(T))(1+O(T^{2g+1}))$$



          $$prod_{j=1}^{2g}(1-alpha_j T) = (1-T)(1-qT)exp( F(T))(1+O(T^{2g+1}))$$
          Let $$(1-T)(1-qT) exp(F(T)) = sum_{l=0}^{2g}b_l T^l +O(T^{2g+1})$$
          then
          $$ prod_{j=1}^{2g}(1-alpha_j T) = sum_{l=0}^{2g}b_l T^l$$






          share|cite|improve this answer











          $endgroup$














            Your Answer





            StackExchange.ifUsing("editor", function () {
            return StackExchange.using("mathjaxEditing", function () {
            StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix) {
            StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
            });
            });
            }, "mathjax-editing");

            StackExchange.ready(function() {
            var channelOptions = {
            tags: "".split(" "),
            id: "69"
            };
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function() {
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled) {
            StackExchange.using("snippets", function() {
            createEditor();
            });
            }
            else {
            createEditor();
            }
            });

            function createEditor() {
            StackExchange.prepareEditor({
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: true,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            bindNavPrevention: true,
            postfix: "",
            imageUploader: {
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            },
            noCode: true, onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            });


            }
            });














            draft saved

            draft discarded


















            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmath.stackexchange.com%2fquestions%2f3075671%2fcomputing-the-zeta-function-of-curves-over-finite-fields%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown

























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            1












            $begingroup$

            On magma http://magma.maths.usyd.edu.au/calc/



            F<b> := FiniteField(5^2);
            A<x,y> := AffineSpace(F,2);
            f := y^2+2*x^3+x-b-1;
            C := ProjectiveClosure(Curve(A,f));
            IsSingular(C); // SingularPoints(C);
            g:= Genus(C);
            for n in [1..2*g] do
            Cn := BaseChange(C,FiniteField((5^2)^n));
            cn := #Points(Cn);
            {n,cn};
            end for;


            Then (for non-singular projective curve) you want to identify the $alpha_j$ such that $$c_n = q^{n}+1-sum_{j=1}^{2g} alpha_j^n$$



            Let $$zeta(T) = frac{prod_{j=1}^{2g}(1-alpha_j T)}{(1-T)(1-q T)}= exp(sum_{n=1}^infty frac{c_n}{n} T^n), qquad F(T) = sum_{n=1}^{2g} frac{c_n}{n} T^n $$



            Then $$zeta(T) = exp(F(T)+O(T^{2g+1})) =exp( F(T))(1+O(T^{2g+1}))$$



            $$prod_{j=1}^{2g}(1-alpha_j T) = (1-T)(1-qT)exp( F(T))(1+O(T^{2g+1}))$$
            Let $$(1-T)(1-qT) exp(F(T)) = sum_{l=0}^{2g}b_l T^l +O(T^{2g+1})$$
            then
            $$ prod_{j=1}^{2g}(1-alpha_j T) = sum_{l=0}^{2g}b_l T^l$$






            share|cite|improve this answer











            $endgroup$


















              1












              $begingroup$

              On magma http://magma.maths.usyd.edu.au/calc/



              F<b> := FiniteField(5^2);
              A<x,y> := AffineSpace(F,2);
              f := y^2+2*x^3+x-b-1;
              C := ProjectiveClosure(Curve(A,f));
              IsSingular(C); // SingularPoints(C);
              g:= Genus(C);
              for n in [1..2*g] do
              Cn := BaseChange(C,FiniteField((5^2)^n));
              cn := #Points(Cn);
              {n,cn};
              end for;


              Then (for non-singular projective curve) you want to identify the $alpha_j$ such that $$c_n = q^{n}+1-sum_{j=1}^{2g} alpha_j^n$$



              Let $$zeta(T) = frac{prod_{j=1}^{2g}(1-alpha_j T)}{(1-T)(1-q T)}= exp(sum_{n=1}^infty frac{c_n}{n} T^n), qquad F(T) = sum_{n=1}^{2g} frac{c_n}{n} T^n $$



              Then $$zeta(T) = exp(F(T)+O(T^{2g+1})) =exp( F(T))(1+O(T^{2g+1}))$$



              $$prod_{j=1}^{2g}(1-alpha_j T) = (1-T)(1-qT)exp( F(T))(1+O(T^{2g+1}))$$
              Let $$(1-T)(1-qT) exp(F(T)) = sum_{l=0}^{2g}b_l T^l +O(T^{2g+1})$$
              then
              $$ prod_{j=1}^{2g}(1-alpha_j T) = sum_{l=0}^{2g}b_l T^l$$






              share|cite|improve this answer











              $endgroup$
















                1












                1








                1





                $begingroup$

                On magma http://magma.maths.usyd.edu.au/calc/



                F<b> := FiniteField(5^2);
                A<x,y> := AffineSpace(F,2);
                f := y^2+2*x^3+x-b-1;
                C := ProjectiveClosure(Curve(A,f));
                IsSingular(C); // SingularPoints(C);
                g:= Genus(C);
                for n in [1..2*g] do
                Cn := BaseChange(C,FiniteField((5^2)^n));
                cn := #Points(Cn);
                {n,cn};
                end for;


                Then (for non-singular projective curve) you want to identify the $alpha_j$ such that $$c_n = q^{n}+1-sum_{j=1}^{2g} alpha_j^n$$



                Let $$zeta(T) = frac{prod_{j=1}^{2g}(1-alpha_j T)}{(1-T)(1-q T)}= exp(sum_{n=1}^infty frac{c_n}{n} T^n), qquad F(T) = sum_{n=1}^{2g} frac{c_n}{n} T^n $$



                Then $$zeta(T) = exp(F(T)+O(T^{2g+1})) =exp( F(T))(1+O(T^{2g+1}))$$



                $$prod_{j=1}^{2g}(1-alpha_j T) = (1-T)(1-qT)exp( F(T))(1+O(T^{2g+1}))$$
                Let $$(1-T)(1-qT) exp(F(T)) = sum_{l=0}^{2g}b_l T^l +O(T^{2g+1})$$
                then
                $$ prod_{j=1}^{2g}(1-alpha_j T) = sum_{l=0}^{2g}b_l T^l$$






                share|cite|improve this answer











                $endgroup$



                On magma http://magma.maths.usyd.edu.au/calc/



                F<b> := FiniteField(5^2);
                A<x,y> := AffineSpace(F,2);
                f := y^2+2*x^3+x-b-1;
                C := ProjectiveClosure(Curve(A,f));
                IsSingular(C); // SingularPoints(C);
                g:= Genus(C);
                for n in [1..2*g] do
                Cn := BaseChange(C,FiniteField((5^2)^n));
                cn := #Points(Cn);
                {n,cn};
                end for;


                Then (for non-singular projective curve) you want to identify the $alpha_j$ such that $$c_n = q^{n}+1-sum_{j=1}^{2g} alpha_j^n$$



                Let $$zeta(T) = frac{prod_{j=1}^{2g}(1-alpha_j T)}{(1-T)(1-q T)}= exp(sum_{n=1}^infty frac{c_n}{n} T^n), qquad F(T) = sum_{n=1}^{2g} frac{c_n}{n} T^n $$



                Then $$zeta(T) = exp(F(T)+O(T^{2g+1})) =exp( F(T))(1+O(T^{2g+1}))$$



                $$prod_{j=1}^{2g}(1-alpha_j T) = (1-T)(1-qT)exp( F(T))(1+O(T^{2g+1}))$$
                Let $$(1-T)(1-qT) exp(F(T)) = sum_{l=0}^{2g}b_l T^l +O(T^{2g+1})$$
                then
                $$ prod_{j=1}^{2g}(1-alpha_j T) = sum_{l=0}^{2g}b_l T^l$$







                share|cite|improve this answer














                share|cite|improve this answer



                share|cite|improve this answer








                edited Jan 16 at 13:16

























                answered Jan 16 at 13:00









                reunsreuns

                20.5k21353




                20.5k21353






























                    draft saved

                    draft discarded




















































                    Thanks for contributing an answer to Mathematics Stack Exchange!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid



                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.


                    Use MathJax to format equations. MathJax reference.


                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function () {
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmath.stackexchange.com%2fquestions%2f3075671%2fcomputing-the-zeta-function-of-curves-over-finite-fields%23new-answer', 'question_page');
                    }
                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    Human spaceflight

                    Can not write log (Is /dev/pts mounted?) - openpty in Ubuntu-on-Windows?

                    張江高科駅