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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
|
\documentclass{article}
\usepackage{axiom}
\begin{document}
\title{\$SPAD/src/input matrix.input}
\author{The Axiom Team}
\maketitle
\begin{abstract}
\end{abstract}
\eject
\tableofcontents
\eject
\section{License}
<<license>>=
--Copyright The Numerical Algorithms Group Limited 1991.
@
<<*>>=
<<license>>
)cl all
-- A number of matrix computations over the integers and over the
-- rationals using various algortihms and indexing schemes.
-- Hilbert matrix
mat : MATRIX FRAC INT := matrix [[1/(i + j) for i in 1..5] for j in 1..5]
matinv := inverse mat
mat * matinv
-- same computation, different indexing
mat1 : IMATRIX(FRAC INT,-3,47) := _
matrix [[1/(i + j) for i in 1..5] for j in 1..5]
mat1inv := inverse mat1
mat1 * mat1inv
-- Vandermonde determinant
mat2 : MATRIX INT := matrix [[j**i for i in 0..4] for j in 1..5]
rowEchelon mat2
determinant mat2
minordet mat2
-- same computation, different indexing
mat3 : IMATRIX(INT,13,-7) := _
matrix [[j**i for i in 0..4] for j in 1..5]
rowEchelon mat3
determinant mat3
minordet mat3
-- same computation, work over the rationals
mat4 : MATRIX FRAC INT := matrix [[j**i for i in 0..4] for j in 1..5]
rowEchelon mat4
determinant mat4
minordet mat4
-- same computation, different indexing
mat5 : IMATRIX(FRAC INT,-113,37) := _
matrix [[j**i for i in 0..4] for j in 1..5]
rowEchelon mat5
determinant mat5
minordet mat5
mat6 : MATRIX INT := matrix [[1,2,3],[4,5,6],[7,8,9]]
rowEchelon mat6
rank mat6
nullity mat6
nullSpace mat6
mat7 : IMATRIX(FRAC INT,163,61657) := matrix [[1,2,3],[4,5,6],[7,8,9]]
rowEchelon mat7
rank mat7
nullity mat7
nullSpace mat7
mat8 : MATRIX INT := _
matrix [[1,-2,13,0,5,-47],[-4,15,0,16,-2,1],[-7,0,8,-11,9,0]]
rowEchelon mat8
rank mat8
nullity mat8
nullSpace mat8
mat9 : IMATRIX(FRAC INT,163,61657) := _
matrix [[1,-2,13,0,5,-47],[-4,15,0,16,-2,1],[-7,0,8,-11,9,0]]
rowEchelon mat9
rank mat9
nullity mat9
nullSpace mat9
@
\eject
\begin{thebibliography}{99}
\bibitem{1} nothing
\end{thebibliography}
\end{document}
|