永野護さんへのお返事です。
> pやmが偶数の場合これらの記号の値は定義されていないのでしょうか。
!クロネッカー記号(Kronecker Symbol)
FUNCTION Kro(a,b)
IF b=0 THEN
IF ABS(a)=1 THEN LET Kro=1 ELSE LET Kro=0
EXIT FUNCTION
END IF
IF MOD(a,2)=0 AND MOD(b,2)=0 THEN
LET Kro=0
EXIT FUNCTION
END IF
LET v=0
DO WHILE MOD(b,2)=0
LET v=v+1
LET b=b/2
LOOP
IF MOD(v,2)=0 THEN LET k=1 ELSE LET k=(-1)^((a^2-1)/8)
IF a<0 AND b<0 THEN LET k=-k
IF b<0 THEN LET b=-b
DO WHILE a<>0
LET v=0
DO WHILE MOD(a,2)=0
LET v=v+1
LET a=a/2
LOOP
IF MOD(v,2)=1 THEN LET k=(-1)^((b^2-1)/8)*k
LET k=(-1)^((a-1)*(b-1)/4)*k
LET r=ABS(a)
LET a=MOD(b,r)
LET b=r
LOOP
IF b>1 THEN LET Kro=0 ELSE LET Kro=k
END FUNCTION
SET WINDOW 1,101,1,101
FOR n=1 TO 100
FOR m=1 TO 100
SELECT CASE Kro(n,m) !色分け
CASE 0
SET AREA COLOR 0
CASE 1
SET AREA COLOR 1
CASE -1
SET AREA COLOR 4
CASE ELSE
PRINT "エラー";m;n
STOP
END SELECT
DRAW DOT WITH SHIFT(n,m) !点を描く
NEXT m
PRINT
NEXT n
PICTURE DOT !点
PLOT AREA: 0,0; 1,0; 1,1; 0,1
END PICTURE
END