aboutsummaryrefslogtreecommitdiff
path: root/src/input/ffx72.input.pamphlet
blob: 4a7de8dbab33867e8fb51fa793b609d0d252bb62 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
\documentclass{article}
\usepackage{axiom}
\begin{document}
\title{\$SPAD/src/input ffx72.input}
\author{The Axiom Team}
\maketitle
\begin{abstract}
\end{abstract}
\eject
\tableofcontents
\eject
\section{License}
<<license>>=
--Copyright The Numerical Algorithms Group Limited 1994.
@
<<*>>=
<<license>>

-- This file demonstrates some calculations with the finite field of
-- 49 elements. It is built as a degree 2 extension of the Galois
-- field with 7 elements.
)cl all
)time off
 
gf72 := FF(7, 2)
-- x**2+1 is irreducible over PF 7
 
u: UP(x,PF 7) := x**2 + 1
factor u
 
-- but factors over FF(PF 7, 2)
 
u2 : UP(x,gf72) := u
factor u2
 
-- the following is the irreducible polynomial used in the representation
-- of GF(7**2) over PF 7. It will be the same every time this field is
-- used.
 
definingPolynomial()$gf72
 
-- e is a randomly chosen element
 
e := index(size()$gf72 quo 3)$gf72
norm e
trace e
 
-- the order of an element is the minimum positive integer to which
-- it can be raised to yield 1.
 
order e
 
-- we can display all the nonzero elements in the field
 
allElts := [index(i :: PI)$gf72 for i in 1..48]
 
-- we can sum over them
 
reduce(+,allElts)
 
-- and we can determine the order of each of them.  Each element of
-- order 48 generates the multiplicative group of non-zero elements.
 
[order e for e in allElts]
@
\eject
\begin{thebibliography}{99}
\bibitem{1} nothing
\end{thebibliography}
\end{document}