Homographies et petits groupes de Galois

1333436383964

Réponses

  • @gai requin
    Bien content de voir que tu vas mieux.

    J'ai l'impression, encore une fois, que cela part totalement en vrille. Lorsque j'ai parlé de $C : y^n = x^n(x+a)$ rien à voir avec la courbe de Serre, cf à la fin du post, c'était juste pour avoir un exemple de paramétrage de la courbe affine par $\mathbb A^1$ ou de la courbe projective par $\mathbb P^1$. Un exemple assez pertinent disons. J'étais loin de m'imaginer que flip-flop allait compter le nombre de points sur $\mathbb F_q$ !

    Effectivement, dans le cas que tu dis i.e. $a=1$, $n$ premier et $n \wedge q = 1$, on a (avec une preuve s'il vous plaît) :
    $$
    Z_{C_{\rm aff}/\mathbb F_q}(T) = {(1-T^d)^{n-1 \over d} \over 1 - qT} \qquad
    \hbox {où $d$ est l'ordre de $q$ modulo $n$}
    $$
    J'en profite pour signaler que chez moi, je joue avec la courbe AFFINE. Et pas la courbe projective. Pourquoi ? A cause d'une espèce de trouille stupide : à un moment, dans le comptage sur $\mathbb F_q$, on trouve en affine $q+1 - \hbox {un truc}_q$ et en projectif $q+2 - \hbox {le truc}_q$. Et quand on passe de $q$ à $q^r$, cela devient $q^r +1 - \hbox {un truc}_{q^r}$ et en projectif $q^r+2 - \hbox {le truc}_{q^r}$. Et $1$ cela ne me faisait pas peur car $1 = 1^r$. Tandis que 2 me faisait peur. Evidemment, c'était stupide car $2 = 1^r + 1^r$.

    Donc, c'est parti en vrille et il va falloir se calmer un max. Sauf que je viens de faire une trouvaille expérimentale ``de multiplicativité du $L$-polynôme''.

    COURBE de Serre. Rien à voir. Deux mots, cf Topics in Galois Theory. Le ``polynôme de Serre'' (terminologie de mézigues car vu dans Serre page 42), c'est le polynôme à un paramètre :
    $$
    F_t(X) = X^n - X^{n-1} - t
    $$
    Il est lié (en caractéristique 0) au revêtement $\mathbb P^1 \to \mathbb P^1$, $x \mapsto x^n - x^{n-1}$, qui possède une structure de ramification remarquable.

    On voit parfois le polynôme $f(X) = X^n - X - 1$. Il est relié à $F$ par le fait que son polynôme réciproque est $F_1$ au signe près.
    $$
    f^\star(X) = -X^n -X^{n-1} + 1 = -F_1(X)
    $$
    Ce polynôme $f$ est irréductible sur $\Q$ et a pour groupe de Galois $S_n$.

    Et la courbe de Serre est le revêtement galoisien de $\mathbb P^1$ obtenu comme clôture galoisienne du revêtement $\mathbb P^1 \to \mathbb P^1$, $x \mapsto x^n-x^{n-1}$. Donc la courbe de Serre (terminologie de mézigues), c'est à la fois la courbe en haut ET le revêtement galoisien. Cela serait super-chouette de l'étudier un jour. J'ai commencé sans jamais terminer.
  • @Gai requin : La forme ? Je ne sais pas si tu vas t'y retrouver dans le bordel, j'ai mis un exemple en 3/ qui calcul la fonction Zéta de la courbe $y^n=x^n(x+1)$ sur $\mathbb{F}_5$ avec $n = 5^2-1$ ... Je pense que c'est valide, mais attendons Claude !

    @Claude : Ça va être complexe de s'y retrouver ! On en encore parti en vrille :-D
    1/ Edit : je viens de voir que c'est bon affine vs projectif. On est raccord !
    Un petit truc étrange, y'a une coquille dans un de nos posts ;

    Dans mon post ici

    Je trouve lorsque $a \ne 0$ sur le corps $k = \mathbb{F}_q$.
    $$N_q = q+2 - \text{Card} \mu_n(a) $$
    où $\mu_n(a) := \{ x \in k, \ x^n = a \}$.

    Si on fait $a=1$.

    Le lien entre les zétas, c'est bien :

    $$ Z(y^n=x^n(x+1) , \mathbb{F}_q) = \frac{1}{Z(x^n=1,\mathbb{F}_q)(1-qT)(1-T)^2}$$

    Tu es d'accord ? J'ai l'impression que tu as remplacé le $2$ par un $1$ ... dans le message ici ligne -8 ...

    $$
    \#C(\mathbb F_{q^r}) = q^r+1 - \#R(\mathbb F_{q^r}) \qquad R = \{x \mid x^n = a \}

    \qquad \hbox {pareil que} \qquad

    \#R(\mathbb F_{q^r}) = q^r+1 - \#C(\mathbb F_{q^r})$$

    :-S2/
    Je vais reprendre en détails ! Je vais regardé aussi les cas que tu as traité.
    3/
    Je détails un exemple plus simple de mon exemple d'hier soir.

    Prenons $q := 5$ et $n := q^2-1$. Notons : $N_r := q^r+2 - \# \{ x^n = 1 \} _{\mathbb{F}_{q^r}}$, le nombre de points de la courbe $y^n=x^n(x+1)$ sur $\mathbb{F}_{q^r}$. Et je note : $\mathcal{N}_r := \# \{ x^n = 1 \} _{\mathbb{F}_{q^r}}$

    Alors : $\mathcal{N}_1 = 4$ et $\mathcal{N}_2 =24$ (la j'ai juste demandé à magma les deux valeurs) et on a : $\mathcal{N}_{r+2}=\mathcal{N}_r$ (mon post d'hier)

    De sorte que $\mathcal{N}_r$ vérifie la récurrence linéaire $ \mathcal{N}_{r+2} -\mathcal{N}_r =0$. On en déduit déduit que il existe $x$ et $y$ vérifiant
    $$
    \mathcal{N}_r = x \times 1 ^r + y \times (-1)^r
    $$
    En solvant le système :
    $$
    \mathcal{N}_r := 14 \times 1 ^r + 10 \times (-1)^r
    $$

    D'où
    $$
    Z(x^n=1,\mathbb{F}_q) = \frac{1}{(1-T)^{14} (1+T)^{10}}
    $$

    Et :
    $$
    Z(y^n=x^n(x+1) , \mathbb{F}_q) = \frac{(1-T)^{14} (1+T)^{10}}{(1-qT)(1-T)^2}
    $$
    > p := 5; n := p^2-1;
    > A2<x,y> := AffineSpace(GF(p), 2) ;
    > Caff := Curve(A2, y^n-x^n*(x+1)) ;   
    > Cproj<x,y,z> := ProjectiveClosure(Caff) ;
    > ZetaProj<T> := ZetaFunctionOfCurveModel(Cproj) ;
    ZetaProj; 
    
    
    -T^22 + 2*T^21 + 9*T^20 - 20*T^19 - 35*T^18 + 90*T^17 + 75*T^16 - 240*T^15 -
        90*T^14 + 420*T^13 + 42*T^12 - 504*T^11 + 42*T^10 + 420*T^9 - 90*T^8 -
        240*T^7 + 75*T^6 + 90*T^5 - 35*T^4 - 20*T^3 + 9*T^2 + 2*T - 1)/(5*T - 1)
    

    Si on factorise et simplifie le haut : Le résultat magma est
    $$\frac{(T-1)^{12}*(T+1)^{10}}{1-5T}$$
  • @vous deux
    Oui, cela part en vrille. C'est de la faute à flip-flop : qu'est ce qui lui a pris de compter le nombre de points sur $\mathbb F_q$ de $y^n = x^n(x + a)$ ?

    Pour couronner le tout, flip flop joue avec la version projective et moi avec la version affine (flip flop, je l'ai mentionné dans mon dernier post). Cela fait juste, au niveau du comptage une différence (additive) d'une unité type $q+2$ versus $q+1$. Mais cela va se répercuter sur la fonction zeta avec une différence multiplicative d'un facteur $1-T$. Peut-être que j'ai eu tord ? C'était pour virer un facteur $1-T$ que je trouvais pas joli ; juste comme cela, sans véritable raison. Et j'ai donc viré en affine sans le dire suffisamment.

    Et j'ai pris l'habitude de présenter
    $$
    Z_{ \{x^n = 1\}/\mathbb F_q}(T) \quad \hbox {sous la forme} \quad {1 \over (1-T) L(T)}
    $$
    Je crois que c'est un mauvais choix de ma part (cf plus tard). Tandis que flip-flop regroupe $1-T$ et $L(T)$.

    En tout cas, flip-flop, je suis d'accord avec ton DERNIER post, celui avec $q = n^2 - 1$. Pas eu le temps de vérifier celui d'hier $q = n^3-1$.

    Autre chose. Un petit truc :
    $$
    \sum_{\alpha \in \mathbb U_d} \alpha^r = \cases {d & si $r \equiv 0 \bmod d$ \cr 0 & sinon }
    $$
  • @gai requin

    Est ce que tu arrives à t'y retrouver : un peu ? beaucoup ? pas du tout ?

    @vous deux

    Ce qu'il est bon de savoir : c'est qu'en voulant dire des choses intelligentes concernant la fonction zeta de la courbe (affine ou projective) $y^n = x^n(x + a)$ sur $\mathbb F_q$, on est conduit tôt ou tard à étudier la fonction zeta de l'ensemble fini (variété de dimension 0) $\{ x^n = a \}/\mathbb F_q$. On a fini par faire $a = 1$. Et alors :
    $$
    \#\{ x^n = 1 \}(\mathbb F_q) = \gcd(q-1,n), \qquad\qquad \#\{ x^n = 1 \}(\mathbb F_{q^r}) = \gcd(q^r - 1, n)
    $$
    On pourrait utiliser des notations de sous-groupes multiplicatifs tout aussi commodes :
    $$
    \#U_n(\mathbb F_q) = \gcd(q-1,n), \qquad\qquad \#U_n(\mathbb F_{q^r}) = \gcd(q^r - 1, n)
    $$
    Je suis persuadé que $\mathbb F_q$ finira par disparaître et il ne restera que la suite $\gcd(q^\bullet - 1, n)$, vue comme suite en $\bullet$.

    (1) Il y a de la multiplicativité dans l'air au sens suivant, pour $n \wedge n' = 1$ :
    $$
    U_{nn'} (\mathbb F_q) \simeq U_n(\mathbb F_q) \times U_{n'}(\mathbb F_q)
    \quad \hbox {donc} \quad
    \#U_{nn'} (\mathbb F_q) = \#U_n(\mathbb F_q) \times \#U_{n'}(\mathbb F_q)
    \qquad\qquad n \wedge n' = 1
    $$
    Versus pgcd-version :
    $$
    \gcd(q^r - 1, nn') = \gcd(q^r - 1, n) \gcd(q^r - 1, n') \qquad\qquad n \wedge n' = 1
    $$

    (2) ``Convolution'' (?) sur les polynômes de $\Z[T]$. Tous les polynômes $P \in \Z[T]$ qui interviennent vérifient $P(0) = 1$. On a donc intérêt à y penser dans $\C[T]$ en :
    $$
    P(T) = \prod_i (1 - \alpha_i T)
    $$
    Je définis alors :
    $$
    \hbox {pour } P(T) = \prod_i (1 - \alpha_i T) \hbox { et } Q(T) = \prod_j (1 - \beta_j T) \qquad\qquad
    P \otimes Q \quad \buildrel {\rm def} \over = \quad \prod_{i,j} (1 - \alpha_i \beta_jT)
    $$
    On a bien sûr une expression $\Z$-rationnelle à l'aide du résultant (sans avoir à factoriser les polynômes dans $\C$, rires)

    Convolution := function(P, Q) 
      AT := Parent(P) ;
      A := BaseRing(AT) ;
      AXY<X,Y> := PolynomialRing(A,2) ;
      P := ReciprocalPolynomial(P) ;  Q := ReciprocalPolynomial(Q) ;
      // Res_Y(P(Y), Y^q Q(X/Y) 
      q := Degree(Q) ;
      Qbis := AXY ! (Y^q * Evaluate(Q, X/Y)) ;
      PY := Evaluate(P,Y) ;
      R := Resultant(PY, Qbis, Y) ;
      return ReciprocalPolynomial(Evaluate(R, [AT.1, 0])) ;
    end function ;
    
    Z := IntegerRing() ;
    ZT<T> := PolynomialRing(Z) ;
    
    p := Random(1,4); Proots := [Random(1,9) : i in [1..p]] ;  
    P := &*[1-x*T : x in Proots] ;
    q := Random(1,5) ; Qroots := [Random(1,9) : i in [1..q]] ;  
    Q := &*[1-y*T : y in Qroots] ;
    PoQ := Convolution(P,Q) ;
    assert PoQ eq &*[1 - (x*y)*T : x in Proots, y in Qroots] ;
    

    Prolongement aux fractions rationnelles $R$ telles que $R(0) = 1$ comme on le pense. Par exemple :
    $$
    {1 \over 1 - \alpha T} \otimes {1 \over 1 - \beta T} = {1 \over 1 - \alpha\beta T}
    $$

    (3) Comportement de l'opérateur zeta $u \mapsto Z_u$ :
    $$
    u = (u_r)_{r \ge 1} \longmapsto Z_u = \exp\left( \sum_{r \ge 1} {u_r \over r} T^r\right)
    $$
    en fonction du produit terme à terme des suites :
    $$
    Z_{u\cdot v} = Z_u \otimes Z_v \qquad\quad (u \cdot v)_r = u_r v_r
    $$
    Pour le voir, prendre pour $u, v$ des suites élémentaires :
    $$
    u = (\alpha^r)_{r \ge 1} \mapsto Z_u = {1 \over 1 - \alpha T}, \qquad
    v = (\beta^r)_{r \ge 1} \mapsto Z_v = {1 \over 1 - \beta T}, \qquad
    u \cdot v = (\alpha\beta)^r_{r \ge 1} \mapsto Z_{u \cdot v} = {1 \over 1 - \alpha\beta\, T} = Z_u \otimes Z_v
    $$

    (4) Pour $n \wedge n' = 1$ :
    $$
    Z_{\{ x^{nn'}=1\}/\mathbb F_q} = Z_{\{ x^{n}=1\}/\mathbb F_q} \otimes Z_{\{ x^{n'}=1\}/\mathbb F_q}
    \qquad \hbox {ou plus général} \qquad
    Z_{\gcd(q^\bullet-1,nn')} =Z_{\gcd(q^\bullet-1,n)} \otimes Z_{\gcd(q^\bullet-1,n')}
    $$
    A droite, plus général signifie que l'on n'a pas à supposer $q$ puissance d'un premier.
  • @Claude : oui j'ai vu ta réponse concernant le +2, ça me rassure ! Pour une fois, j'ai pas eu peur du projectif, je progresse :-D

    On fait quoi, on laisse tomber pour le moment ? Car si on continue, ça risque de fortement partir en vrille ! Si je résume ce que j'ai compris dans cette histoire.

    Si on considère un entier $q$ (puissance d'un nombre premier $p$) et un autre entier $n$. En notant,
    $$
    \mathcal{N}_r := \gcd(q^r-1,n)
    $$
    Il existe un entier $\ell \in \N$ et des entiers (?) $a_0,\dots,a_{\ell}$ vérifiant :
    $$
    \sum_{k=0}^\ell a_i \mathcal{N}_{r+k} =0 \quad \text{pour} \quad r \geq 1
    $$
    De plus, le polynôme caractéristique $ \sum_{k=0}^\ell a_i X^{k}$ doit se factoriser en un produit de polynômes cyclotomiques de manière complètement naturelle ... pour former une jolie fonction zeta ... On y croit, on y croit.

    Mais dans quoi on a mis les pieds là :-S
  • @flip flop
    Dans ton dernier post ``on laisse tombé $\to$ on laisse tomber'', ``on continu $\to$ on continue''.

    De mon côté, dans le point (2) de http://www.les-mathematiques.net/phorum/read.php?3,1263771,1394986#msg-1394986, j'ai donné la formule (avec une preuve) de la fonction zeta de $\gcd(q^\bullet - 1, n)$ quand $n$ est premier. Ou si tu veux de $\{x^n = 1\}/\mathbb F_q$ sauf que $q$ n'a pas, dans mes affaires, à être une puissance d'un premier.

    Et dans http://www.les-mathematiques.net/phorum/read.php?3,1263771,1395174#msg-1395174, j'ai étudié des propriétés ``structurelles'' de la fonction zeta de $\gcd(q^\bullet-1, n)$ : multiplicativité (au sens ``convolution'') en $n$.

    Je pense que l'on peut mettre cela de côté ? Même si on a seulement étudié (et pas complétement) le cas $a=1$ dans l'histoire $\{x^n=a\} / \mathbb F_q$.
  • @CQ : je n'ai pas tout regardé mais je vois quand même ce dont il s'agit.
    J'imagine que la notation tensorielle de ton pénultième post n'est pas le fruit du hasard. ;-)
    Du coup, tu m'as l'air bien armé pour t'attaquer au cas $a\neq 1$. B-)-
  • @gai requin
    Le cas $a \ne 1$ dans $\{X^n = a\}/\mathbb F_q$ ? Non, je n'y pense pas du tout. Tu me connais, moi j'essaie d'en faire le moins possible. Toujours, j'essaie de nous ramener dans le droit chemin (sic), avec une ligne directrice bien claire, de faire en sorte de bien garder le cap. C'est quand même pas de ma faute si, dans la bande, il y en a un qui a quotienté la courbe de Fermat $\{x^4 + y^4 + z^4 = 0\}$ par $x \leftrightarrow y$ pour tomber sur une courbe elliptique. A ce moment là, mon sang n'a fait qu'un tour.

    Et un autre qui se met à compter le nombre de points, alors que nous sommes en train de faire joujou avec le type des cubiques de Weierstrass singulières.

    Qui c'est qui met le bord.l ? Hein ?

    Donc $a \ne 1$ pas question. Par contre, si je mettais la main sur la fonction zeta de $\gcd(q^\bullet - 1, n)$ quand $n$ est une puissance d'un premier, peut-être que je me fendrai d'un petit post. J'ai même prévu les notations $n = \ell^e$ avec $\ell$ premier. Pour $e = 1$, c'est acquis. Si on l'obtient pour $\ell^e$, on pourra assembler ensuite par $\otimes$-multiplicativité.

    Quant à la notation tensorielle, il n'y a pas de ma part d'arrière pensée. Y'a le choix mais j'ai été au plus simple :
    $$
    \circledast, \qquad \circledcirc, \qquad \circleddash, \qquad \boxtimes, \qquad \boxdot, \qquad \boxplus
    $$
    Confidence : te sachant pas en forme (mais je crois que cela va mieux), je t'avais préparé, pour ton retour, un petit quelque chose tranquille avec notre amie $y^2 = x^3 - n^2x$, les nombres congruents $n$, les triangles rectangles rationnels, et les triplets pythagoriciens. C'est prêt. Attention : ni couleur ni et étincelle(s).
  • Trop à la bourre, c'est peut-être mieux que je reparte du bon pied sur un autre sujet.
    Et comme on peut parler des nombres congruents aux lycéens, je suis intéressé !

    Il n'empêche que j'attends le cas $n=\ell^e$ avec une grande curiosité !
  • @Claude : C'est bon je pense que je sais compter :-D
    Je vais faire un pdf ... ça ne va pas être possible par post. à suivre ... dis t'aimes bien les polynômes cyclotomiques ? :-D

    Retrouvons le droit chemin :-D
  • @flipflop : t'as réussi à compter pour $a$ quelconque ?
    Je sais qu'on peut compter sur toi. :-D
  • Ah non ah non, juste $a=1$ B-)-
  • @vous deux

    En parallèle, j'ai grosso modo tout programmé ; enfin, ce que je pouvais programmer. C'est fait pour l'instant de manière inefficace, très inefficace. Et cela le restera tant que je ne disposerai pas d'une bonne formule de la zeta fonction de $\{x^n = 1\}/\mathbb F_q$ ou de $\gcd(q^\bullet - 1, n)$.
    Mon truc de $n = \ell^e$, même pour $e=2$, je n'y crois plus trop car je vois apparaître de l'inclusion-exclusion.

    J'attends donc, flip-flop, tes histoires de polynômes cyclotomiques ; surtout prends ton temps. J'ai vérifié ton $q = 5, n = q^3 - 1$. C'est BON. T'inquiètes pas ci-dessous du $44-1$, c'est que le $L$ que je calcule vire un facteur $1-T$ par rapport à toi (rappel $(1-T)L(T)$, c'est chez moi, le dénominateur de la fonction zeta de l'ensemble fini). Comme $n$ valait 124, cela a mis un certain temps. Mais peu importe, cela permet de maintenir les machines au chaud, de vérifier que tout ce beau monde est en bonne santé (les ordinateurs, magma, les affaires de flip-flop et ma fonction AffineLPolynomial) ...etc ..

    q := 5 ; n := q^3 - 1 ;
    time L<T> := AffineLPolynomial(q, 1, n) ;
    L eq (1-T)^(44-1) * (1 + T + T^2)^40 ;
    

    On en voit un ci-dessus (polynôme cyclotomique). Cela a fini par donner cela :

    Time: 3444.270   <------------------------------- quelle feign.sse
    > L eq (1-T)^(44-1) * (1 + T + T^2)^40 ;
    true
    

    Vous voulez voir $L$ ?

    > L ;
    -T^123 + 3*T^122 - 3*T^121 + 41*T^120 - 120*T^119 + 120*T^118 - 820*T^117 + 2340*T^116 - 2340*T^115 + 10660*T^114 - 
        29640*T^113 + 29640*T^112 - 101270*T^111 + 274170*T^110 - 274170*T^109 + 749398*T^108 - 1974024*T^107 + 1974024*T^106 - 
        4496388*T^105 + 11515140*T^104 - 11515140*T^103 + 22481940*T^102 - 55930680*T^101 + 55930680*T^100 - 95548245*T^99 + 
        230714055*T^98 - 230714055*T^97 + 350343565*T^96 - 820316640*T^95 + 820316640*T^94 - 1121099408*T^93 + 2542981584*T^92 - 
        2542981584*T^91 + 3159461968*T^90 - 6935404320*T^89 + 6935404320*T^88 - 7898654920*T^87 + 16760560440*T^86 - 
        16760560440*T^85 + 17620076360*T^84 - 36099668640*T^83 + 36099668640*T^82 - 35240152720*T^81 + 69620789520*T^80 - 
        69620789520*T^79 + 63432274896*T^78 - 120676035168*T^77 + 120676035168*T^76 - 103077446706*T^75 + 188556304950*T^74 - 
        188556304950*T^73 + 151584480450*T^72 - 266197136400*T^71 + 266197136400*T^70 - 202112640600*T^69 + 340140785400*T^68 - 
        340140785400*T^67 + 244662670200*T^66 - 393847225200*T^65 + 393847225200*T^64 - 269128937220*T^63 + 413539586460*T^62 - 
        413539586460*T^61 + 269128937220*T^60 - 393847225200*T^59 + 393847225200*T^58 - 244662670200*T^57 + 340140785400*T^56 - 
        340140785400*T^55 + 202112640600*T^54 - 266197136400*T^53 + 266197136400*T^52 - 151584480450*T^51 + 188556304950*T^50 - 
        188556304950*T^49 + 103077446706*T^48 - 120676035168*T^47 + 120676035168*T^46 - 63432274896*T^45 + 69620789520*T^44 - 
        69620789520*T^43 + 35240152720*T^42 - 36099668640*T^41 + 36099668640*T^40 - 17620076360*T^39 + 16760560440*T^38 - 
        16760560440*T^37 + 7898654920*T^36 - 6935404320*T^35 + 6935404320*T^34 - 3159461968*T^33 + 2542981584*T^32 - 
        2542981584*T^31 + 1121099408*T^30 - 820316640*T^29 + 820316640*T^28 - 350343565*T^27 + 230714055*T^26 - 230714055*T^25 + 
        95548245*T^24 - 55930680*T^23 + 55930680*T^22 - 22481940*T^21 + 11515140*T^20 - 11515140*T^19 + 4496388*T^18 - 
        1974024*T^17 + 1974024*T^16 - 749398*T^15 + 274170*T^14 - 274170*T^13 + 101270*T^12 - 29640*T^11 + 29640*T^10 - 10660*T^9
        + 2340*T^8 - 2340*T^7 + 820*T^6 - 120*T^5 + 120*T^4 - 41*T^3 + 3*T^2 - 3*T + 1
    

    Ah, par contre, pour factoriser, magma, il fait son fier. Bien plus que pour calculer la fonction zeta du modèle singulier affine $y^{124} = x^{124}(x + 1)$ sur $\mathbb F_5$. Quel naze.

    > time F := Factorization(-L) ;
    Time: 0.000
    > F ;
    [  <T - 1, 43>,  <T^2 + T + 1, 40> ]
    

    @gai requin.
    Faut que je me repose (je suis plus tout jeune). Les nombres congruents c'est prêt mais cela demande un peu de temps pour exécuter, copier ...etc.. Je te relancerai aussi sur $\det(xI_2 - yM) \ge 0$ plus tard. Et je n'oublie pas node unsplit :
    $$
    y^2 + bxy + cx^2 = x^3 \qquad \hbox {or the so called} \quad y^2 + a_1xy = x^3 + a_2x^2
    $$
  • @CQ : prends tout le temps dont tu as besoin. Je suis à deux doigts de relire tous vos posts sur le comptage des racines $n$-ièmes de l'unité pour soigner mon burn-out !
  • @vous deux
    Oubli (cela me semblait évident). Lorsque l'on intègre dans les programmes divers résultats prouvés, ces programmes deviennent plus efficaces, beaucoup plus efficaces. Par exemple, on a, avec $q = 5$ :
    $$
    n \quad \buildrel {\rm def} \over = \quad q^3 - 1 = (q-1)(q^2 + q + 1) = 4 \times 31
    $$
    Je vais calculer le binz avec $n_1 = 4$ et $n_2 = 31$, qui sont premiers entre eux, et je vais utiliser la $\otimes$-multiplicativité :

    > n1 := 2^2 ;  n2 := 31 ;
    > q := 5 ; 
    > assert n1*n2 eq q^3 - 1 ;
    > time L1<T> := AffineLPolynomial(q, 1, n1) ;
    Time: 0.080
    > time L2<T> := AffineLPolynomial(q, 1, n2) ;
    Time: 5.600       <---------------------------------------------------  temps de calcul
    > time FlipFlopDenominator := Convolution((1-T)*L1, (1-T)*L2) ;
    Time: 0.000
    > assert FlipFlopDenominator eq (1-T)^44 * (1 + T + T^2)^40 ;
    

    On voit deux choses. La première, c'est qu'en 6 secondes, c'est plié (alors que tout-à-l'heure, il fallait presque une heure). La seconde, c'est que le choix que j'ai fait d'isoler $L$ au dénominateur :
    $$
    Z_{\{x^n = 1\}/\mathbb F_q} = {1 \over (1-T)L(T)}
    $$
    est très très mauvais. Car c'est le dénominateur entier qui vérifie la $\otimes$-multiplicativité. J'ai bonne mine d'être obligé de multiplier par $1-T$ (la fonction Convolution implémente $\otimes$). C'est Flip -flop qui va être content ; et tout cela est un signe de bonne santé (bis).
  • Y'a un mic mac Claude, y'a un mic mac ! J'ai fais un peu le bourrin sur la décomposition des polynômes cyclotomiques dans les corps finis (je n'ai peut être pas été assez fin). Du coup, petit joueur je prend $q=p$ un nombre premier et non une puissance.

    Petite histoire, tout à l'heure ma copine m'a demandé ce que je faisait en ce moment ... Je lui ai dis que je faisait de la dentelle cyclotomique avec Claude :-D
    Pour l'instant "ma formule" ressemble à ça :
    $$
    \text{Card} (x^n=1)[\mathbb{F}_{q^r}] =\sum_{d \mid n} \delta_r(\mathcal{O}(q,d)) \times \phi(d) \quad (\bigstar)
    $$
    où :
    $$
    \mathcal{O}(q,d) := \text{Ordre de } q \text{ dans } \Z/dZ^\star
    $$
    Et $\delta_r(\ell) =1$ si $\ell$ divise $r$ et $0$ sinon. Et $\phi$ c'est l'indicatrice d'Euler.
    J'avoue c'est un peu chargé comme formule et il faut voir qu'elle est périodique en $r$ de période
    $$T = ppcm(\text{Ordre de } q \text{ dans } \Z/dZ^\star, d | n) $$
    Cette périodicité permet d'utiliser "if the author is polite" et modulo la résolution d'un système linéaire ($T \times T$) de fournir la fonction Zéta, mais oui flip-flop on y croit !
    Je traite un exemple à la main, avec quelques calculs machines seulement pour trouver les ordres dans le groupe multiplicatif $\pmod d$.

    Soit $q=p =37$ et $n=7^2 \times 2$. On commence par regarder le nombre de terme dans la somme $(\bigstar)$ et il s'agit de trouver les diviseurs $d$ de $n$. C'est simple :
    $$
    \text{Div}(n) = \{ 1,2,7,14,49,98 \}
    $$
    Ensuite, pour chaque $d \in \text{Div}(n)$, il faut faire deux choses :
    1. Calculer l'ordre multiplicatif de $p$ modulo $d$ que j'ai noté .$\mathcal{O}(q,d)$
    2. Calculer les indicatrices d'Euler de $d$ que j'ai noté $\phi(d)$
    On obtient :
    $$
    \mathcal{O}(q,d) = \{1,1,3,3, 21,21 \}
    $$
    et
    $$
    \phi(d) = \{1,1,6,6, 42,42 \}
    $$
    Ensuite, ce que je prétend c'est que la suite $\text{Card} (x^n=1)[\mathbb{F}_{q^r}] = \gcd(q^r-1,n)$ est périodique de période $ppcm(\mathcal{O}(q,d))$. C'est à dire $21$ ici !
    > q := 37;  n :=7^2*2; [Gcd(q^r - 1, n)  : r in [1..21]] ;
    > q := 37;  n :=7^2*2; [Gcd(q^r - 1, n)  : r in [1+21*142..21+21*142]] ;
    
    [ 2, 2, 14, 2, 2, 14, 2, 2, 14, 2, 2, 14, 2, 2, 14, 2, 2, 14, 2, 2, 98 ]
    [ 2, 2, 14, 2, 2, 14, 2, 2, 14, 2, 2, 14, 2, 2, 14, 2, 2, 14, 2, 2, 98 ]
    
    Ce n'est pas tout ! On peut aussi calculer les $21$ valeurs de la suite à l'aide de $\bigstar$. Par exemple, $r=6$.
    Il suffit de regarder les valeurs de $d$ pour lesquelles $\mathcal{O}(q,d)$ divise $6$ ; ici $d=\{1,2,7,14\}$ et de faire la somme :
    $$
    \sum_{d \in \{1,2,7,14\}} \phi(d) = 1+1+6+6 = 14
    $$
    On y croit flipflop, on y croit !

    Par exemple, $r =255$, on réduit modulo $21$ ... $255 = 210+45 = 242+3=3$ ... On regarde les valeurs de $d$ pour lesquelles $\mathcal{O}(q,d)$ divise $3$ ; ici $d=\{1,2,7,14\}$ et de faire la somme :
    $$
    \sum_{d \in \{1,2,7,14\}} \phi(d) = 1+1+6+6 = 14
    $$
    Donc $\text{Card} (x^n=1)[\mathbb{F}_{q^{255}}] = 14$
    CountingSqrt := function(p, a, n)
      A<x> := PolynomialRing(GF(p));
       f := A!x^n-a; 
       return #Roots(f);
    end function ;
    [<r,CountingSqrt(37^255,1,98)> : r in [1..1]] ;
    
    [ <1, 14> ]
    
    Un dernier exemple, pour la route. $r=21$, Il suffit de regarder les valeurs de $d$ pour lesquelles $\mathcal{O}(q,d)$ divise $21$ ; ici $d=\{1,2,7,14,49,98\}$ et de faire la somme :
    $$
    \sum_{d \in \{1,2,7,14,49,98\}} \phi(d) = 1+1+6+6+42+42 = 98
    $$
    Et pour la fonction Zeta ??? Comme la suite $\mathcal{N}_r := \text{Card} (x^n=1)[\mathbb{F}_{q^r}]$ est $21$ périodique. Elle satisfait la relation de récurrence linéaire :
    $$
    $\mathcal{N}_{r+21}-\mathcal{N}_r = 0
    $$
    Donc, on introduit le polynôme caractéristique $X^{21}-1$ et on fait le truc standart : il existe $\alpha_1,\dots,\alpha_{21}$
    tel que :
    $$\mathcal{N}_r = \sum_{i=1}^{21} \alpha_i \times (\zeta_{21}^i)^r$$
    Où les $\alpha_i$ sont à trouver en considèrant le système $21 \times 21$ obtenu a l'aide des $21$ premières valeurs. "if the author is polite".

    J'ajoute que je pense que le système $21 \times 21$ peut se résoudre à la main, en analysant la périodicité de chaque termes de la somme $\bistar$.

    Pour finir, la relation $\bigstar$ vient de l'analyse des degrés facteurs irréductibles de la décomposition des polynômes cyclotomiques.

    Le polynôme cyclotomique $\Phi_d$ se décompose en $\phi(d) / \eta$ facteurs irréductibles de degré $\eta$ dans le corps $\mathbb{F}_{p^r}$, où $\eta$ est l'ordre multiplicatif de $p^r$ dans $\Z/d\Z^\star$. Et j'ai compter les facteurs donnant $\eta = 1$ :-D

    J'ai remonté une discussion ici où j'utilise ce trick !
    Faut qu'on arrête de partir en vrille, Claude ... ça fait $3$ jours que je dors presque pas !!! Mais bon d'un autre côté je m'amuse tellement :-D
  • @flip flop
    Sommeil, hum .. Ce qui arrive n'était pas prévu, c'est de la faute à personne. En tout cas, je te suis en magma, si tu permets. La programmation pour l'instant c'est du petit lait. J'ai juste été obligé de contrer magma qui refusait de bosser dans le groupe des inversibles de $\mathbb Z/d\mathbb Z$ pour $d = 1$ i.e. de considérer $(\mathbb Z/\mathbb Z)^\times$ (pour être franc, cela me prend parfois la tête).

    Pour l'instant, j'ai supposé $q \wedge n = 1$ pour être clair (dans ma tête) sur l'ordre de $q$ modulo $d$ pour les diviseurs $d$ de $n$ (y compris pour $d = 1$, cf ci-dessus). Voilà ce que cela donne :

    Z := IntegerRing() ;
    
    // Ordre de q modulo d : contrer Modorder qui refuse d = 1 i.e. de bosser dans (Z/Z)^x
    OrderMod := func < q,d | d eq 1 select 1 else Modorder(q,d) > ;
    
    FlipFlopFormulae := function(n,	q, r)
      // n >= 1, q puissance d'un premier (bémol ..), r >= 1
      delta	:= map < Z -> {0,1} | l	:-> IsDivisibleBy(r,l)	select 1 else 0	> ;
      return &+[Z| delta(OrderMod(q,d)) * EulerPhi(d) : d in Divisors(n)] ;
    end function ;
    

    De plus, c'est vraiment du petit lait au sens où je n'ai pas à me fatiguer pour trouver des identificateurs ; les fonctions vont être baptisées FlipFlopTruc, tout repos pour moi. Et voilà, ce que cela donne. Tu verras que je n'ai pas hésité à prendre pour $q$ une puissance d'un premier (alors que tu t'es qualifié de petit joueur en prenant $q=p$ premier). Et même que j'ai fini par prendre $q$ quelconque (mais premier avec $n$) en remplaçant $\#\{x^n = 1\}(\mathbb F_{q^r})$ par $\gcd(q^r-1, n)$.

    n := Random(2,10^2) ;
    repeat p := RandomPrime(5) ; until Gcd(p,n) eq 1 ;
    e := Random(1,5) ;
    q := p^e ;
    printf "n = %o, p = %o, q = p^%o\n", n, p, e ;
    rMax := 10^3 ;
    time assert &and [Gcd(q^r - 1, n) eq FlipFlopFormulae(n,q,r) : r in [1..rMax]] ;
    
    // q non nécessairement	puissance d'un premier
    repeat q := Random(1,10^2) ; until Gcd(q,n) eq 1 ;
    printf "n = %o, q = %o\n", n, q ;
    time assert &and [Gcd(q^r - 1, n) eq FlipFlopFormulae(n,q,r) : r in [1..rMax]] ;
    

    Exécution :

    n = 64, p = 17, q = p^5
    Time: 0.120
    n = 64, q = 69
    Time: 0.020
    

    Signe de bonne santé, tout ça. Sauf toi avec le sommeil.

    PS-joke : le plus dur pour moi, c'est de faire tout ça sans comprendre ce que je fais ; et du coup, je couche des instructions au pif en croisant les doigts. Do you see what I mean, dear Flip-Flop ?
  • Bonjour.
    J'ai vérifié que la formule de Claude dans le cas $n$ premier, à savoir
    $$\gcd(q^r - 1, n) = \cases {n & si $r \equiv 0 \bmod d$ \cr 1 & sinon }$$
    , où $d=\mathcal{O}(q,n)$, est bien un cas particulier de la formule $(\bigstar)$ de flipflop l'insomniaque. (tu)
  • @gai requin
    Je t'ai pas oublié. Tu m'as bien dit ``Nombres congruents au Lycée'' ? Voilà, j'ai bossé un peu, mais pas pour le Lycée, pour nous. Grosso-modo, ce que j'ai envie de raconter, c'est fait partout sauf que j'ai mis mon grain de sel en homogénéisant les triangles rectangles dans $\mathbb P^3$. Rappel : on veut jouer avec les triangles rectangles rationnels $(a,b,c)$ d'aire un entier fixé $n \ge 1$. C'est cela un nombre congruent $n$ i.e. qui veut bien être l'aire d'un triangle rectangle rationnel. Le $n$ cela sera le $n$ de la courbe elliptique $y^2 = x^3 - n^2x = x(x-n)(x+n)$, chère à Koblitz et aussi à nous autres. Homogénéiser les équations de $(a,b,c)$ dans $\mathbb P^3$ signifie :
    $$
    a^2 + b^2 = c^2, \quad ab = 2n \qquad\longmapsto\qquad a^2 + b^2 = c^2, \quad ab = 2nd^2
    $$
    J'ai ajouté une variable $d$ pour homogénéisation dans $\mathbb P^3$. Et que voit-on ? L'intersection de deux quadriques dans $\mathbb P^3$. Avec un point-base s'il vous plaît :
    $$
    q_0 = (1 : 0 : -1 : 0)
    $$
    Une courbe elliptique, comme dit l'autre. Que l'on va mettre en W-cubique avec des formules explicites. Il va y avoir un peu d'homogénéisation des formules habituelles (au but et à la source) avec des formules relai(s). Bref, que du bonheur. Je te montre juste un aperçu car je suis pas mécontent. Je reprendrai cela plus tard.

    P3<a,b,c,d> := ProjectiveSpace(RationalField(), 3) ;
    > 
    > // Triangles rectangles (rationnels) d'aire n :   a^2 + b^2 = c^2   et  ab = 2n 
    > // que l'on homogénéise en une variable d pour passer dans P^3
    > // -> intersection de deux quadriques dans P^3
    > 
    > n := 6 ; // un nombre congruent car 6 = aire(4,3,5) avec 4^2 + 3^2 = 5^2 
    > 
    > C := Scheme(P3, [a^2 + b^2 - c^2, a*b - 2*n*d^2]) ;
    > C ;
    Scheme over Rational Field defined by
    a^2 + b^2 - c^2,
    a*b - 12*d^2
    > C := Curve(C) ;
    > assert Genus(C) eq 1 ;
    > q0 := C![1, 0, -1, 0] ;
    > 
    > E<x,y,z> := EllipticCurve([-n^2,0]) ;
    > E ;
    Elliptic Curve defined by y^2 = x^3 - 36*x over Rational Field
    > 
    > // Dans le sens (a,b,c) -> (x,y)
    > // x = a*(a-c) / 2 =  -n*b / (a+c)         y = -a*x = a^2 * (c-a) / 2  =  2*n^2 / (a+c) 
    > // A homogénéiser en d à la source et z au but
    > ///                                x              y       z
    > CtoEformulae1 := map < C -> E | [-n*b,         2*n^2*d,  a+c] > ;
    > CtoEformulae2 := map < C -> E | [a*d*(a-c), -a^2*(a-c),  2*d^3] > ;
    > assert CtoEformulae1 eq CtoEformulae2 ;
    > CtoE := CtoEformulae1 ;
    > 
    > CtoE(q0) ;
    (0 : 1 : 0)
    > // 6 est l'aire de (4,3,5)
    > CtoE(C![a,b,c,d]) where a is 4 where b is 3 where c is 5 where d is 1 ;
    (-2 : 8 : 1)
    


    AJOUT
    Les formules dans l'autre sens i.e. dans le sens $(x,y) \mapsto (a,b,c)$ i.e. de la courbe elliptique vers l'intersection des deux quadriques. Alors que là haut, CtoE va de l'intersection des deux quadriques vers la courbe elliptique. Mais bien sûr, les formules affines $(x,y) \mapsto (a,b,c)$ doivent être homogénéisées :
    $$
    (x : y : z) \longmapsto (a : b : c : d)
    $$

    > /*
    > Dans le sens (x,y) -> (a,b,c) (en affine)
    > a = -y/x = (n^2 - x^2) / y        b = -2*n*x / y  = 2*n/a         c = (n^2 + x^2)/y 
    > A homogénéiser à la source en z et au but en d
    > 
    >     n^2 - (x/z)^2    n^2*z^2 - x^2
    > a = ------------  = ---------------
    >        y/z              y*z
    > 
    >      -2*n*x/z      -2*n*x     -2*n*x*z
    > b = ----------  = -------- = ---------
    >       y/z            y          y*z
    > 
    >      n^2 + (x/z)^2    n^2*z^2 + x^2
    > c = --------------- = -------------
    >         y/z              y*z
    > 
    > ---> prendre d = y*z
    > */
    > 
    > //                           a               b          c            d
    > EtoC := map < E -> C | [n^2*z^2 - x^2,  -2*n*x*z,  n^2*z^2 + x^2,   y*z] > ;
    

    Un petit exemple ppur le fun (toujours pour $n=6$) :

    > G<u,v,w>, GtoE := MordellWeilGroup(E) ;
    > G ;
    Abelian Group isomorphic to Z/2 + Z/2 + Z
    Defined on 3 generators
    Relations:
        2*u = 0
        2*v = 0
    > GtoE ;
    Mapping from: Abelian Group isomorphic to Z/2 + Z/2 + Z
    Defined on 3 generators
    Relations:
        2*$.1 = 0
        2*$.2 = 0 to Set of points of E with coordinates in Rational Field
    > GtoE(w) ;
    (18 : 72 : 1)
    > EtoC(GtoE(w)) ;
    (-4 : -3 : 5 : 1)
    > EtoC(2*GtoE(w)) ;
    (-7/10 : -120/7 : 1201/70 : 1)
    > EtoC(3*GtoE(w)) ;
    (3404/1551 : 4653/851 : -7776485/1319901 : 1)
    
  • Hello,

    Normalement, je dors très bien mais là avec l'agitation (depuis deux semaines) disons que mon cerveau est un peu déréglé. Pas trop grave. Je vais dormir pendant 24 h non stop ça va aller mieux après ;-)

    Si j'ai bien compris ça fonctionne ... cool ... plus qu'a faire la fonction zéta avec ça ... il gère bien les systèmes linéaires Magma ?
  • @CQ : Sympa !
    Petits soucis de constantes même si je sais qu'on raisonne dans l'espace projectif.
    Si $n=2ab$, alors $n$ est l'aire du triangle rectangle rationnel $(2a,2b,2c)$.
    Du coup, dans ton code, $n:=6$ est l'aire de $(2,3/2,5/2)$.
    Dans la définition de $\mathcal C$ de ton code magma, pourquoi prendre $ab-2nd^2$ et plus $2ab-nd^2$ ?

    @flipflop : t'as une preuve d' $(\bigstar)$ ?
  • @gai requin
    Merci pour la coquille. J'ai corrigé (partout j'espère). Cela donne l'impression que je ne sais pas ce qu'est l'aire d'un triangle rectangle de côtés $a,b$ (angle droit) : $ab/2$ ou $2ab$ ! Si tu regardes bien, il y avait un endroit où il n'y avait pas d'erreur : c'est dans la définition du Scheme de $\mathbb P^3$ comme intersection de deux quadriques. Magma surveille tout (pas la défintion du scheme quand même !) mais les formules de morphisme(s) entre deux courbes algébriques (il vérifie qu'elles sont bien valides).

    Là où il y avait la coquille $ab/2$ versus $2ab$, c'est, à plusieurs reprises, dans les commentaires.
    Est ce que tu es ok, maintenant ?

    @flip flop
    Ce qui a été vachement dur, c'est d"implémenter FlipFlopPeriod comme tu vois toi-même ci-dessous (c'est pas 10 lignes mais 1 ligne). Je d.conne : cela m'a pris moins d'une minute (alors que pour gai-requin, homogénéiser en $z$ du côté de $\mathbb P^2$ et en $d$ de l'autre côté $\mathbb P^3$ m'a pris un peu plus de temps).

    FlipFlopPeriod := func < n, q |	LCM([OrderMod(q,d) : d in Divisors(n)]) > ;
    
    > period := FlipFlopPeriod(n, q) ; // the so called T by FlipFlop
    > printf "n = %o, q = %o period = %o\n", n, q, period ;
    n = 28, q = 79 period = 6
    > assert &and [Gcd(q^r - 1, n) eq Gcd(q^(r+period) - 1, n) : r in [1..rMax]] ;
    

    Systèmes linéaires en magma ? Ben, je crois que je vais pouvoir m'en tirer.
    A suivre. Je vais doucement car je sécurise à mort.
  • @Gai requin : Plus ou moins. Je suis entrain de tout simplifier. En fait, faut pas passer par les caractères etc.

    Faut considérer $X^n-1= 0$ dans $\mathbb{F}_{p^r}$ et écrire : $X^n-1= \prod_{d \mid n} \Phi_d$ avec le polynôme cyclotomique. Et ensuite, décomposer les polynômes cyclotomiques dans $\mathbb{F}_{p^r}$ (ils ne sont pas irréductibles) mais on a une jolie propriété c'est que $\Phi_d$ se décompose en un produit de $\phi(d) / \eta$ polynômes tous de degré $\eta$ où $\eta$ est l'ordre multiplicatif de $p^r$ modulo $d$.

    Donc nous on cherche les $d$ tel que $\eta = 1$ et si pour un $d$ on a $\eta$ un $1$ alors
    $$ \Phi_d = \prod(x-x_i) $$
    et on à $\phi(d)$ racines.

    Maintenant, comment trouver les $d$ tel que $\eta=1$ : $p^r=1 \pmod{d}$ ça veux dire que l'ordre multiplicatif de $p$ $\pmod{d}$ divise $r$. D'où la fonction, $\delta_r$.

    Finalement, je pense que c'est beaucoup, plus simple que prévu. Par contre, il faut faire attention à $n$ qui doit être premier avec $p$ (je pense que l'on a besoin de ça pour définir les polynômes cyclotomiques dans les corps finis).
  • Si $p$ divise $n$, on peut définir $\phi_n$ mais ses racines (dans une extension qui va bien) ne sont plus simples.
  • Yes Gai requin (tu) ... hum du coup, on va pouvoir faire quelque chose :-D

    @Claude : Génial les programmes :-) C'est vraiment dommage que Magma ne soit pas libre. Enfin, je comprend qu'il ne soit pas libre de droit vu le boulot (faut bien payer les chercheurs) qu'il y a eu pour programmer tout !
  • Bonjour,

    Oui, Flipflop, mais on devrait pouvoir acheter une licence.

    Codialement,

    Rescassol
  • @Rescassol

    Bonjour à toi. Mais je croyais avoir compris (un de tes posts) que magma n'était pas vendu à un particulier. Mais peut-être à des particuliers, si regroupement ? C'est cela que tu as voulu dire ?

    @flip flop
    Tout va toujours très bien. J'ai repris ton exemple (sans réfléchir, je te l'avoue).

    > n := 2 * 7^2 ;
    > q := 37 ;
    > Period := FlipFlopPeriod(n, q) ; // the FlipFlop-T, but here, T is reserved for Z(T)
    > assert Period eq 21 ;
    > r := 255 ;
    > rModPeriod := r mod Period ;
    > rModPeriod ;
    3
    > D := [d : d in Divisors(n) | IsDivisibleBy(rModPeriod, OrderMod(q,d))] ;
    > D ;
    [ 1, 2, 7, 14 ]
    > s := &+[EulerPhi(d) : d in D] ;
    > s = Gcd(q^r - 1, n) ;
    14 = 14
    

    Mais pour le système linéaire, je vais réfléchir (si, si, cela m'arrive) car je voudrais un traitement $\Z$-rationnel. Sans passer par $\Q(\root d \of 1)$, même si magma le supporte.
  • Bonjour,

    Oui, Claude, je ne peux pas l'acheter en tant que particulier.
    Il faudrait que je fasse partie d'une institution universitaire, et surtout que je parvienne à le faire acheter par cette institution.
    Je donne encore quelques cours à l'école des mines d'Alès et à l'ENAC de Montpellier, mais il n'y a aucune chance que je puisse leur faire acheter une licence Magma.

    Cordialement,

    Rescassol
  • @Claude ; en fait, on peut casser le système en sous système. Les fonctions : $$
    r \to \delta_r(\mathcal{O}(q,d))
    $$
    sont périodiques de période $\mathcal{O}(q,d)$. Cela réduit pas mal le système. Et en plus c'est à valeur dans $\{0,1\}$.
  • @flip flop
    Pour l'instant, j'ai eu l'idée suivante pour calculer la série génératrice $S$ (PAS la série zeta $Z$). Calculer en tant que fraction rationnelle of course. En effet $S$ est périodique de période connue (par toi) disons $m$ :
    $$
    S = M + Mt^m + Mt^{2m} + Mt^{3m} + \cdots \qquad \hbox {$M$ est le <<polynôme motif>> qui commence par $t + \cdots$}
    $$
    c.a.d :
    $$
    S = M (1 + t^m + t^{2m} + t^{3m} + \cdots ) = {M \over 1-t^m}
    $$
    Rappel : la série génératrice $S$ et la série zeta $Z$ sont reliées par la dérivée logarithmique décalée :
    $$
    S = T {Z' \over Z}
    $$
    J'illustre ceci avec $n = 7$, $p = 2$ et en prenant pour la fonction zeta ma formule d'hier, que je sais déterminer car $n$ est ICI PREMIER. Il s'agit de
    $$
    Z = {1 \over (1-T)(1-T^d)^{n-1 \over d}} \qquad \hbox {où $d$ est l'ordre de $p$ modulo $n$}
    $$
    Evidemment, j'ai pris un exemple sur lequel j'ai la MAIN

    > // n premier 
    > n := 7 ;
    > // p = 2 modulo n
    > p := 2 ; 
    > d := OrderMod(p,n) ;
    > d ;
    3
    > pZeta := ((1-T)*(1-T^d)^ExactQuotient(n-1,d))^-1 ;   // ma formule hier
    > pZeta ;
    -1/(T^7 - T^6 - 2*T^4 + 2*T^3 + T - 1)
    > S := T*Derivative(pZeta)/pZeta ;
    > assert &and [Coefficient(PSR!S, r) eq Gcd(b^r-1, n) : r in [1..20], b in [p..10^3 by n]] ;
    

    Jusque là, rien de nouveau. Juste des vérifications paranoïaques.

    Mais c'est là, que tu rentres en action (avec ta période .. et j'y mets un peu aussi mon grain de sel i.e. le truc là-haut). Sauf que ci-dessous, c'est $P$ à la place de $M$ ($M$ serait mieux pour motif, désolé) :

    > m := FlipFlopPeriod(n, p) ;
    > P := &+[Gcd(p^r - 1, n)*T^r : r in [1..m]] ;
    > // P = T + ...
    > P ;
    7*T^3 + T^2 + T
    > PSR ! P ;
    t + t^2 + 7*t^3
    > PSR ! S ;
    t + t^2 + 7*t^3 + t^4 + t^5 + 7*t^6 + t^7 + t^8 + 7*t^9 + t^10 + t^11 + 7*t^12 + t^13 + t^14 + 7*t^15 + t^16 + t^17 + 
        7*t^18 + t^19 + t^20 + O(t^21)
    > // La série génératrice S = t + ... est (immédiatement) périodique de période m
    > // Attention à P qui "commence par T(=t)"
    > // S = P + P*T^m + P*T^(2m) + P*T^(3m) + ....
    > //   = P * (1 + T^m + T^(2m) + T^(3m) + .... 
    > assert S eq P/(1 - T^m) ;
    

    Do you see what I mean ? Que je sais calculer la série génératrice.
    Ok, ce n'est pas ce que l'on demande : on demande la fonction zeta. Mais tout ne peut pas se faire en un jour ..

    Par contre, regarde l'efficacité du binz par rapport à hier. Je reprends ton exemple $q = p = 5$ et $n = q^3 - 1 = 124$. Tu as déterminé sur le papier la série zeta. Tu la vois ci-dessous. Je détermine la série génératrice en moins de temps que .. Et je vérifie que tout BAIGNE.

    > // Hier avec q = 5, et n = q^3-1
    > zeta<T> := ((1-T)^44 * (1 + T + T^2)^40)^-1 ;
    > q := 5 ;  n := q^3 - 1 ;
    > time S := FlipFlopGeneratingSeries(n, q) ;
    Time: 0.000    <------------------------------------ même pas le temps d'armer le timer
    > assert S eq T*Derivative(zeta)/zeta ;
    
  • @Claude : je tente un truc. En utilisant les micro-périodes (celle de $r \to \delta_r(\mathcal{O}(q,d)$) les systèmes sont triviaux à résoudre !

    $$Z(x^n=1,\mathbb{F}_q) = \prod_{d \mid n} \frac{1}{(1-T^d)^{\frac{\phi(d)}{\mathcal{O}(q,d)}}}$$

    Ouhais non en fait ...(td) Sorry

    Je tente : en mode conjecture !

    $$Z(x^n=1,\mathbb{F}_q) = \prod_{d \mid n} \frac{1}{(1-T^{\mathcal{O}q,d})^{\frac{\phi(d)}{\mathcal{O}(q,d)}}}$$

    C'est bon, j'ai un semblant de preuve !
  • @CQ : C'est bon pour l'aire d'un triangle rectangle. ;-)

    Donc la courbe définie à l'aide d'un triangle rectangle rationnel et de son aire (qui est un entier congruent) serait isomorphe à ce que nous nommons $E_{n^2}$.
    Est-ce que cela peut donner un moyen de connaître tous les nombres congruents ?
  • @Claude ; oui je pense qu'on se rapproche ... elle ne va pas nous résister encore très longtemps cette fonction Zéta B-)
  • @gai requin
    J'ai complété mon post en donnant les formules dans l'autre sens i.e. de $E_{n^2}$ vers l'intersection des deux quadriques (en homogène). Je répondrais plus tard à ta question : c'est le fameux critère de Tunnel p. 221 de Koblitz (un des sens nécessite ``weak Birch-Swinnerton-Dyer'', dont je ne saurais PAS te parler).

    Mais il est possible de GENERER beaucoup de nombres congruents car on sait générer tous les triangles rectangles rationnels (triplets pythagoriciens). Il y a là une activité pour tes lycéens (Lycée : j'ai bien compris ?). Je t'en dirais plus (sur la génération) plus tard.

    @flip flop Pause pour mézigues.
  • @flip flop
    Vu ta seconde proposition ``en mode conjecture''. Très bonne tête. Mais il faut que je me pause (pose ?). Les choses de la vie.
  • @CQ : Oui, je bosse dans un lycée. Pourquoi pas une activité sur les nombres congruents pour des jours meilleurs ?
    Bonne pause et à très bientôt. ;-)
  • @Claude : bonne pause :-)
  • @flip flop
    Quand j'ai vu ta formule, j'ai su qu'elle était BONNE. Tu vas dire que c'est prétentieux de ma part de dire cela mais tant pis, c'est dit.
    Programmation ? Toujours du petit lait. Le code, d'une complexité très modeste :

    FlipFlopZetaFunction := function(n, q)
      D := Divisors(n) ;
      denominator := &*[(1 - T^e)^ExactQuotient(EulerPhi(d),e) where e is OrderMod(q,d) : d in D] ;
      return 1/denominator ;
    end function ;
    

    De quoi faire quelques tests (20 exactement) avec des tirages aléatoires de $n, q$ :

    time for dummy := 1 to 20 do
      n := Random(2,10^3) ;
      repeat q := Random(1,10^3) ; until Gcd(n,q) eq 1 ;
      printf "n=%o q=%o\n", n, q ;
      qZeta<T> := FlipFlopZetaFunction(n,q) ;
      //qZeta ;
      S := T*Derivative(qZeta)/qZeta ;
      assert S eq FlipFlopGeneratingSeries(n, q) ;
    end for	;
    

    Résultats d'exécution :

    n=726 q=523
    n=802 q=921
    n=204 q=397
    n=819 q=209
    n=892 q=143
    n=247 q=989
    n=844 q=715
    n=427 q=965
    n=276 q=709
    n=433 q=745
    n=475 q=886
    n=320 q=691
    n=736 q=697
    n=997 q=421
    n=102 q=563
    n=943 q=784
    n=120 q=907
    n=475 q=793
    n=705 q=89
    n=890 q=73
    Time: 0.380
    

    Par contre, c'est pas rapide : 0.4 secondes pour calculer 20 séries zeta, les dériver (au sens logarithmique) et comparer cette dérivée à la série génératrice, c'est un peu lambin, non ? Note : le calcul de la série génératrice est réalisé de manière totalement différente (cf l'un de mes posts précédents) en utilisant ton histoire de période ; de plus je fais des tests de vérification dans cette dernière fonction FlipFlopGeneratingSeries.

    Bilan : c'est tout BON. Félicitations mister flip-flop. Vraiment. Mais on n'a peut-être pas de preuve ? Mais je t'assure que pour l'instant, ce n'est pas du tout le problème. L'étape la plus dure a été de dire quelque chose d'intelligent sur le problème $\{x^n = 1\}(\mathbb F_q)$ ou $\gcd(q^\bullet -1, n)$. En passant, je ne fais plus AUCUN calcul dans $\mathbb F_q$. Et cela m'étonnerait fort que les $q$ que tu vois ci-dessus, tirés au hasard, soient des puissances d'un premier.

    Je ne regrette pas d'avoir mis sur le tapis $y^n = x^n (x+a)$.

    Mais tu sais quoi, flip-flop ? Si cela se trouve (mais là je devrais fermer ma g.eule car je ne sais pas ce que c'est vraiment), peut-être que l'on vient de réinventer un machin qui s'appelle, pour $p$ premier, $p$-Euler-factor of $\Q(\root n \of 1)$. En tout cas, j'ai bien envie pour $n$ fixé, de considérer tous les $p$ premiers possibles, y compris ceux qui divisent $p$ (pour lesquels la suite $\gcd(p^\bullet - 1, n)$ est constante égale à 1) et d'assembler toutes ces séries en une série globale.

    Il faudrait oser demander à des personnes qui connaissent bien la théorie analytique des nombres (il y en a sur le forum) de manière à ce qu'elles puissent nous expliquer ce qu'est la ``Dedekind zeta function $\zeta_K(s)$'' d'un corps de nombres $K$. Ici $K = \Q(\root n \of 1)$. En des termes simples que l'on puisse comprendre. Mais le $s$ que tu vois dans $\zeta_K(s)$, c'est euh une variable complexe. Et moi, j'en ai peur (des séries analytiques).
  • Poudre réinventée ou pas, on peut quand même vous tirer un grand coup de chapeau.
    (tu)$^\infty$
  • Champagne, pour nous trois (:D

    Vraiment bonne pioche la courbe $y^n = x^n(x+a)$ !

    Bon et super bonne nouvelle, ma preuve me semble convenable :-)

    Heu, je te laisse poser la question aux spécialistes du forum. Ça serait sympa de savoir ce qu'on a réinventer ? Mais j'avoue que je suis un peu comme toi en analyse ...
  • @flip flop
    Oui, champagne. T'as vraiment bien joué sur ce coup là. Quant au machin réinventé, avant de poser des questions, il faudrait que je me clarifie sur je ne-sais-trop-quoi, c'est bien là le problème. Et ce à quoi j'ai pensé en lisant 5 lignes de Cohen est peut-être complètement débile. Bref, c'est trop tôt, beaucoup trop tôt pour moi pour poser une question, surtout que j'ignore comment la poser cette question.

    Tu as mieux dormi, j'espère ?

    @gai requin
    Oui, oui, je sais bien que tu bosses dans un Lycée (je vieillis mais je m'en souviens encore !). A propos des nombres congruents. C'est dingue, j'ai cru que c'est toi le premier qui m'avait parlé d'une (telle) activité possible au Lycée. J'ai rêvé ? J'ai cherché dans les posts mais c'est pas facile : une vache n'y retrouverait pas son veau, là-dedans.

    @vous deux
    J'ai réfléchi, non pas à des mathématiques, mais à notre ``activité qui se veut ludique'' (j'espère que vous serez un peu près d'accord sur le terme). Et j'ai constaté que, pour jouer et seulement pour jouer, j'avais besoin de mettre de l'ordre dans mes affaires. Beaucoup d'ordre dans diverses notes.

    Il a fallu par exemple que je fasse un gros effort pour savoir où on en était concernant $J(\chi_2, \chi_4)$. Ca y est, je sais où nous en sommes (et je l'ai noté !) Et l'impression que cela peut donner, c'est qu'il n'en reste rien de rien, ce qui est dû au fait que ce n'est pas terminé. C'est dommage (de penser qu'il n'en reste rien) car nous avons fait quelque chose qui n'est pas du coupé-collé des auteurs.

    J'ai mis aussi de l'ordre en ce qui concerne la fonction <<zeta de FlipFlop>>, mais là c'est plus facile car il y a une première terminaison bien claire, à savoir l'obtention de cette fonction zeta. La preuve pour bientôt probablement (cela ne m'inquiète pas) ? En passant : la $\otimes$-multiplicativité en $n$ devrait aussi se voir sur la formule de Flip-Flop. Je parle de l'égalité :
    $$
    Z_{\gcd(q^\bullet - 1, n_1n_2)} = Z_{\gcd(q^\bullet - 1, n_1)} \otimes Z_{\gcd(q^\bullet - 1, n_2)}, \qquad\quad n_1 \wedge n_2 = 1
    $$

    Pour clarifier (?) mon post. Pas du tout envie de me précipiter pour je-ne-sais-trop-quoi. Plutôt envie de revenir en arrière sur un certain nombre de points (qui ne sont pas toujours complètement clairs dans ma tête). Par exemple, pourquoi dit-on ``réduction additive'' en ce qui concerne la cubique singulière $C : y^2 = x^3$ ? C'est parce qu'il y a une loi naturelle (chord-construction) sur les points de $C_{\rm proj} \setminus \{(0 : 0: 1)\}$ (j'ai viré le point singulier) qui en fait un groupe isomorphe à $(k, +)$ où $k$ est le corps de base. Tout-à-fait abordable (sorte de courbe elliptique du pauvre).
  • Bonjour Claude. Comment va ?

    Pour les nombres congruents au lycée, c'est @mt-i qui en a parlé dans ce fil [ici].
  • Hello vous deux,

    Oui, oui bien dormi :-) Et re problème internet ... finalement, je pense que ça tombe bien. ça va permettre de mettre au clair.

    Pour la preuve oui, je pense que l'on va avoir un truc assez simple. J'ai simplifié encore un peu, et je vais intégrer la propriété de multiplicativité des Zeta-pgcd, je pense que ça va rendre le truc "straight forward" comme dirai notre ami :-)

    A suivre.
  • @gai requin
    Toi, le Lycée et les nombres congruents : ok. J'ai du rêver (faut que je fasse gaffe).

    @vous deux
    Oui, tout va bien .. mais j'essaie de mettre de l'ordre. Il y a chez moi, dans un passé relativement récent, trop de points qui ne sont pas clairs. Il faut donc que j'essaie d'y faire quelque chose. Pourquoi ? Avez vous remarqué que lorsque l'on programme cela demande une certaine précision ? si je vous disais le nombre de assert qui échouent avant que les programmes ne soient au point, vous seriez surpris.

    Exemple : quand tu (gai -requin) m'as parlé de l'inégalité de Hasse pour les courbes elliptiques $E/\mathbb F_q$, je me suis aperçu que je pensais de travers. Disposer de l'inégalité de Hasse, c'est une chose. Et savoir que le comptage sur $\mathbb F_{q^r}$ est déterminé par celui sur $\mathbb F_q$, c'est autre chose. Sauf que maintenant, on a les deux (résultats) sous la forme :
    $$
    Z_{E/\mathbb F_q}(T) = {(1- \alpha T) (1 - \overline \alpha T) \over (1-T)(1-qT)} \qquad
    \hbox {$\alpha$ entier quadratique vérifiant $|\alpha| = |\overline\alpha| = \sqrt {q}$}
    $$
  • Sauf que maintenant, on a les deux (résultats) sous la forme :

    J'avoue que je ne comprends pas trop. :-S
  • Hello,

    Y'a quand même des choses amusantes.

    Déjà le fait que la formule fonctionne pour $\gcd(p^\bullet - 1,n)$ (sans hypothèse que $p$ soit premier), ce n'était pas du tout prévu ça :-S

    Ensuite, les propriétés du produit tensoriel et de restriction à $n$ un puissance d'un nombre premier. C'est vraiment étrange que cette idée ne fonctionne pas aussi bien que ce que l'on pouvait penser.

    Du coup, je pense avoir compris un peu, "l'inclusion-exclusion" dont tu as parlé à un moment, Claude. Il faut sûrement faire entrer dans l'histoire "la fonction de Moebius" et les formules d'inversions ... je ne me souviens plus trop comment ça fonctionne. Mais il me semble que l'on utilise ça pour montrer certaines équations fonctionnelles des polynômes cyclotomiques.
  • @flip flop
    En ce qui concerne des choses amusantes et non prévues, c'est pas faux. Partir de $y^n = x^n(x+a)$ et en arriver là, qui aurait pu s'en douter ?Je pense que l'on peut laisser tomber ma tentative de preuve avec $n$ puissance d'un premier (enfin, moi j'ai laissé tomber). Rappel : pour $n$ premier, j'ai fourni une preuve en commençant par $n = 5, q = 2$ et en contemplant :
    $$
    1^r + (-1)^r + i^r + (-i)^r \quad \hbox {qui vaut $4$ ou $0$ selon que $4 \mid r$ ou pas}
    $$

    Du nouveau : je viens enfin d'étudier une ``nouvelle fonction zeta de type flip-flop'', définie pour $q \wedge n = 1$ :
    $$
    Z_{\Phi_n, q} (T) = { 1 \over (1 - T^{o(n,q)})^{\varphi(n) \over o(n,q)}} \qquad \hbox {$o(n,q)$ est l'ordre de $q$ dans $(\Z/n\Z)^\times$}
    \qquad (\star)
    $$
    C'est la fonction zeta de $\{ \Phi_n(x) = 0\}(\mathbb F_q)$ lorsque $q$ est une puissance d'un premier, $\Phi_n$ étant le polynôme cyclotomique de niveau $n$. La série génératrice est super simple :
    $$
    T{Z' \over Z} = { \varphi(n)\, T^{o(n,q)} \over 1 - T^{o(n,q)}}
    $$
    Les preuves sont super faciles et tout cela est implémenté.

    FlipFlopCyclotomicZetaFunction := function(n, q)
      assert Gcd(n,q) eq 1 ;
      return ((1 - T^e)^ExactQuotient(EulerPhi(n), e))^-1  where e is Modorder(q,n) ;
    end function ;
    
    FlipFlopCyclotomicGeneratingSeries := function(n, q)
      assert Gcd(n,q) eq 1 ;
      e := OrderMod(q,n) ;
      S := EulerPhi(n) * T^e/(1 - T^e) ;
      return S ;
    end function ;
    


    Tu vois sur la formule $(\star)$ que $Z_{\Phi_n, q}$ est un facteur de la série zeta de $\gcd(q^\bullet - 1, n)$ i.e. le facteur obtenu pour $d = n$ dans les diviseurs de $n$.

    Et cette fois, bingo : pour $p$ premier, $Z_{\Phi_n, p}$ est une sorte de $p$-Euler facteur de la fonction zeta de Dedekind du corps cyclotomique $\Q(\root n\of 1)$. Là, j'en ai ch.é vu mon ignorance du monde analytique en théorie des nombres (c'est pire que de l'ignorance).

    Plus une autre fois (scan ou TeX). Je vais essayer dans le post suivant de répondre à gai-requin à propos d'une histoire oeuf-poule.
  • flipflop a écrit:
    Par contre, mon niveau en arithmétique est vraiment proche de $0$,...

    Et ça donne quoi dans un domaine où tu touches ? ;-)
  • @Gai requin ; en fait dans ma tête arithmétique c'était plutôt des trucs analytiques (théorème des nombres premiers etc) là c'est plus de l'algèbre donc ça va j'aime bien !

    Par contre, j'ai quand même travaillé (disons plutôt joué) beaucoup ($\geq 10 h$ par jour) en deux semaines grâce à Claude !
  • @flipflop :
    Dommage pour les trucs analytiques.
    J'allais te proposer la conjecture de Riemann. ;-)

    @tous les deux :
    Je viens de m'apercevoir que j'ai une vision très précise des $37$ pages (and counting !) de ce fil et que j'arrive à retrouver un message donné assez rapidement.
    Mais mon astigmatisme est plus prononcé quand il s'agit des concepts que nous avons rencontrés. :-S
Connectez-vous ou Inscrivez-vous pour répondre.