aboutsummaryrefslogtreecommitdiff
path: root/src/algebra/ffcat.spad.pamphlet
diff options
context:
space:
mode:
Diffstat (limited to 'src/algebra/ffcat.spad.pamphlet')
-rw-r--r--src/algebra/ffcat.spad.pamphlet27
1 files changed, 24 insertions, 3 deletions
diff --git a/src/algebra/ffcat.spad.pamphlet b/src/algebra/ffcat.spad.pamphlet
index c87c4c12..b69923d4 100644
--- a/src/algebra/ffcat.spad.pamphlet
+++ b/src/algebra/ffcat.spad.pamphlet
@@ -117,8 +117,18 @@ ExtensionField(F:Field) : Category == Join(Field,RetractableTo F,VectorSpace F)
Frobenius(a,s) == a ** (size()$F ** s)
@
+
\section{category FAXF FiniteAlgebraicExtensionField}
+
<<category FAXF FiniteAlgebraicExtensionField>>=
+import Boolean
+import NonNegativeInteger
+import PositiveInteger
+import Vector
+import Matrix
+import SparseUnivariatePolynomial
+import OnePointCompletion
+import CardinalNumber
)abbrev category FAXF FiniteAlgebraicExtensionField
++ Author: J. Grabmeier, A. Scheerhorn
++ Date Created: 11 March 1991
@@ -283,7 +293,7 @@ FiniteAlgebraicExtensionField(F : Field) : Category == _
m
algebraic? a == true
transcendent? a == false
- extensionDegree() == (#basis()) :: PositiveInteger
+ extensionDegree(): PositiveInteger == (#basis()) :: PositiveInteger
-- degree a == degree(minimalPolynomial a)$SUP(F) :: PI
trace a ==
b := basis()
@@ -384,7 +394,7 @@ FiniteAlgebraicExtensionField(F : Field) : Category == _
for i in 0..extensionDegree()-1]
gcd(p,f) = 1 => true
false
- degree a ==
+ degree(a: %): PositiveInteger ==
y:$:=Frobenius a
deg:PI:=1
while y~=a repeat
@@ -475,8 +485,19 @@ DiscreteLogarithmPackage(M): public == private where
disclog pretend NonNegativeInteger
@
+
\section{category FFIELDC FiniteFieldCategory}
+
<<category FFIELDC FiniteFieldCategory>>=
+import Boolean
+import Integer
+import NonNegativeInteger
+import PositiveInteger
+import Matrix
+import List
+import Table
+import OnePointCompletion
+import SparseUnivariatePolynomial
)abbrev category FFIELDC FiniteFieldCategory
++ Author: J. Grabmeier, A. Scheerhorn
++ Date Created: 11 March 1991
@@ -600,7 +621,7 @@ FiniteFieldCategory() : Category ==_
-- equalone := one?(a**(q quo exp.factor))
equalone := ((a**(q quo exp.factor)) = 1)
not equalone
- order e ==
+ order(e: %): PositiveInteger ==
e = 0 => error "order(0) is not defined "
ord:Integer:= size()-1 -- order e divides ord
a:Integer:= 0