Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


SSL kernelsize.gi   Sprache: unbekannt

 
# Computes the size of the kernel of the map I^n/I^(n+m) -> I^n*p^l/I^n*p^l+m; x -> x^(p^l), cf. Hertweck-Soriano Section 2.7
BindGlobal("KernelSizePowerMap", function(T, n, m, l)
local Res, p, max, v0, pos, tup, s, v, w, i, posm, t, count, k;
    Res := 0;
    k := T.fld;
    p := Characteristic(k);
    max := Maximum(T.wgs);
    if max < n*(p^l)+m-1 then
        Print("Weight of table is too small, recompute for weight ", n*(p^l)+m, "\n");
        return fail;
    fi;
    pos := Filtered([1..Size(T.wgs)], x -> n <= T.wgs[x] and T.wgs[x] <= n+m-1);
    s := Size(pos);
    posm := Filtered([1..Size(T.wgs)], x -> T.wgs[x] < n*(p^l)+m);
    t := Size(posm);
    v0 := ListWithIdenticalEntries(t, 0*Z(p));
    count := 0;
    #Act on "projective" space to save time, hence the s-1
    for tup in IteratorOfTuples(k, s-1) do
        count := count + 1;
        if count mod 1000 = 0 and InfoLevel(InfoModIsom) >= 1 then
            Print("Step ", count, " of ", NrTuples(k,s-1), "\n");
        fi;
        #Case last entry is 0
        v := ListWithIdenticalEntries(T.dim, 0*Z(p));
        for i in [1..s-1] do
            v[pos[1]-1+i] := tup[i]*(Z(p)^0);
        od;
        w := v;
        for i in [1..p^l-1] do
            w := MultByTable(T, w, v);
        od;
        if w{[1..t]} = v0 then
            Res := Res + 1; 
        fi;
        #Case last entry is 1
        v := ListWithIdenticalEntries(T.dim, 0*Z(p));
        v[pos[1]-1+s] := Z(p)^0;
        for i in [1..s-1] do
            v[pos[1]-1+i] := tup[i]*Z(p);
        od;
        w := v;
        for i in [1..(p^l)-1] do
            w := MultByTable(T, w, v);
        od;
        if w{[1..t]} = v0 then
        #As any multipel of w is also in the kernel
            Res := Res + Size(k)-1; 
        fi;
    od; 
    return Res;
end);

[ Verzeichnis aufwärts0.22unsichere Verbindung  Übersetzung europäischer Sprachen durch Browser  ]

                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge