Hoi Andreas,
es gibt ein package finite fields, das sind die endlichen Körper:
Hilfe->Standard Extra Packages -> Algebra Packages: Finite Fields
FiniteFields/guide/FiniteFieldsPackage
In der Beilage werden die Fragen gestellt. Kann mir jemand helfen?
Wie kriegt man die übrigen Funtionswerte? Beispiele:
\[Psi][6] (* sollte {4,0} geben *)
{72/25, (504 Sqrt[3])/125}
Hmm, was soll das? Fast keine dieser Zahlen existiert in einem finiten
Feld zu p = 7. Durch Sorgfalt können Sie es aber erstmal ausrechnen
lassen, und dann verstehen. A = 3 in der Formel, dann ist die Formulierung
Needs["FiniteFields`"]
\[Psi][t_] := If[t == 1, \[GothicCapitalO],
{(4 A t)/(-1 + t)^2, (4 A^(3/2) t (1 + t))/(-1 + t)^3}]
in die Sprache der endlichen Körper zu übersetzen, also
Clear[Psi]
Psi[t_Integer /; 0 <= t < 7] :=
If[t == 1, \[GothicCapitalO], {GF[7][{4}] GF[
7][{3}] GF[7][{t}]/(GF[7][{t}] - GF[7][{1}])^2,
GF[7][{4}] GF[7][{3}]^3 GF[
7][{t}] (GF[7][{1}] +
GF[7][{t}])/(GF[7][{3}]^2 (GF[7][{t}] - GF[7][{1}])^3)}]
zu definieren und
In[20]:= Psi[6]
Out[20]= {Subscript[{4}, 7], 0}
so, wie es die "Tales" sagen.
Für Argumente, die echt aus dem Erweiterungskörper kommen, erleidet man
mit diesem Psi[] Schiffbruch,
Psi[4 + Sqrt[3]]
wirft Fehlerbotschaften aus. Deshalb kann man vesuchen, die finite
Körpererweiterung mit Sqrt[3] selbst zu erzeugen:
In[38]:= g7S3 = PowerListToField[
Rest[Flatten [Table[{i, j Sqrt[3]}, {i, 0, 6}, {j, 0, 6}], 1]]]
GF::etnim: A discrete exponential table must be a rectangular matrix (list
of lists) of integers in the range 0 to p-1. For this table p == 7. >>
aber es gelingt nicht, das package will ganze Zahlen im abgeschlossenen
Interval [0,6]. Die Verwendung einer Erweiterung statt mit Sqrt[3] mit
sich selbst ist zwar möglich
In[30]:= Clear[Psi]
Psi[{t_Integer, v_Integer}] :=
If[t == 1, \[GothicCapitalO], {GF[7, 2][{4, 0}] GF[7, 2][{3,
0}] GF[7, 2][{t, v}]/(GF[7, 2][{t, v}] - GF[7, 2][{1, 0}])^2,
GF[7, 2][{4, 0}] GF[7, 2][{3, 0}]^3 GF[7, 2][{t,
v}] (GF[7, 2][{1, 0}] +
GF[7, 2][{t,
v}])/(GF[7, 2][{3, 0}]^2 (GF[7, 2][{t, v}] -
GF[7, 2][{1, 0}])^3)}] /; 0 <= t < 7 && 0 <= v < 7
In[33]:= Psi[{0, 4}]
Out[33]= {Subscript[{0, 4}, 7], Subscript[{3, 0}, 7]}
In[34]:= Psi[{5, 6}]
Out[34]= {Subscript[{6, 6}, 7], Subscript[{1, 4}, 7]}
aber offensichtlich völlig unsachgemäss. Es läuft als darauf hinaus, die
Rechenregeln der Tales für Erweiterungskörper mit einem Element, das nicht
im Ausgangskörper enthalten ist, selbst zu implementieren ...
Gruss
Udo.