Professional Documents
Culture Documents
1 - Από Την Άλγεβρα Των Υπολογισμών Στα Υπολογιστικά Συστήματα Άλγεβρας
1 - Από Την Άλγεβρα Των Υπολογισμών Στα Υπολογιστικά Συστήματα Άλγεβρας
54006
Email : karampet@math.auth.gr
.
: )
, )
,
(Computer Algebra).
, , ,
.
,
(Computer Algebra Systems). :
, ,
,
.
1. .
.
13
250 .., 6.
,
, .
,
.
.
al jabr
Kitab al jabr wal
mugabala ( ) 825
.. , Ibn Musa AlKhwarizmi (780-850 ..).
. Al-Khwarizmi,
,
al jabr
, mugabala
, . AlKhwarizmi Liber Algorismi ( AlKhwarizmi),
algorismi,
algorithm
.
Al-Khwarizmi 19 ,
.
Leonardo Fibonacci, Scipione del Fero, Niccolo
Tartaglia Gerolamo Cardano
, Ludovico Ferrari
4 .
Rene Descartes ( ), Carl Friedrich
Gauss ( ), Niels Abel
Evariste Galois ( ).
20
,
, , modules, , .
1939 ,
.
,
,
, , , , ,
, , , ....
( , ,
) .
.
: ) (
(hardware) (software)) , )
.
4
M E
Y (Computer Algebra).
[2],
, ,
(
),
( , ,
Groebner ),
( ),
( Smith Jordan ),
, ,
, , ,
( , ,
), ...
, ,
, ,
(interfaces), hardware
.
( , ,
, ..), ,
( , VLSI ,
, ..),
(, /,
..), (
, ).
2. .
,
() (Computer Algebra Systems).
, .
: )
(general purpose CAS)
.. Macsyma, Reduce,
Maple, Mathematica, .., ) (special purpose CAS)
.. PARI ( ), DELiA ( ) ...
(packages)
.. CALI REDUCE
, Control System Professional
MATHEMATICA
...
3 : )
, )
,
, )
.
LISP (
1961
1964-66
1966-67
1968
SAINT
ALTRAN, MATHLAB
SIN
REDUCE
http://www.rrz.unikoeln.de/REDUCE
1968
1968
1970s
1980
MATHLAB-68
MACSYMA
http://www.macsyma.com
muMATH
1980s
1984
1988
1989
1991
1980s
19861997
19901996
1992
1980s 2000
MAPLE
http://www.maplesoft.com
DERIVE
.
,
,
.
Mathlab
, muMATH
SINGULAR
http://www.mathematik.unikl.de/pub/~zca/Singular
SMP, MATHEMATICA
http://www.wolfram.com
MuPAD
http://www.mupad.de
http://www.sciface.com
AXIOM
http://www.nag.co.uk
Stratchpad. ,
,
, ,
, ...
, ,
Lie
CAYLEY
MAGMA
http://www.maths.usyd.edu.au:8000/u
/magma
GAP, GAP 2 (2000)
http://www-gap.dcs.st-and.ac.uk/~gap
FORM
LiE
http://www.mathlabo.univpoitiers.fr/~maavl/LiE
MACAULAY 2
http://www.math.uiuc.edu/Macaulay2
PARI
ftp://megrez.math.ubordeaux.fr/pub/pari
:
) .
,
: )
, )
, )
.
bits
8, 16, 32, 36, 48 64 bits.
.
. Fibonacci
100 Fortran 95
program fibonacci
implicit none! Variables
INTEGER 4::f, f1, f2, i ! Body of fibonacci
f1 = 1;
f2 = 1;
i = 3; f = f1 + f2;
Do While HMod Hf, 100L = 0L
f1 = f2; f2 = f; f = f1 + f2; i = i + 1
End Do
Print , f, i
end program fibonacci
708252800
96
Press any key to continue
f, f1,f2,i Integer*4 (
231 1 ), Integer*8 ( 263 1 )
:
8284360270132553400
Press any key to continue
522
2
100, .
Mathematica :
f1 = 1;
f2 = 1;
i = 3; f = f1 + f2;
While@Mod@f, 100D 0,
f1 = f2;
f2 = f;
f = f1 + f2;
++iD;
f
i
9969216677189303386214405760200
150
150 Fibonacci
100, 31 ,
Fortran 95.
Fortran 95
Fortran 95
(4 bytes (. 32 bits) 8 bytes (. 64bits)).
.
Mathematica
In[1]:=
Out[1]=
In[2]:=
Out[2]=
30! H2^30 1L
382760259469251166863360000000
1549411
.
(word) 32 bits 231 1 = 2147483647
l 1
d = s di bi
i =0
:
d
s d0
d1
........
dl-1
[ sl
d 0 d1 dl 1 ]
.
:
LINK1
LINK2
LINK1 (
) LINK2 .
.
2 : )
, )
. 2
,
.
.
(numerical stability)
.
) (interactivity)
,
, .
. 3 : ) , )
, ) .
In[1]:=
MatrixForm@AD
Out[2]//MatrixForm=
1
i
j
j
j
j
j2
k3
In[3]:=
2 3y
z
z
3 1z
z
z
2 1{
Eigenvalues@AD
Out[3]= 86, 2,
1<
)
.
:
1)
In[1]:=
Simplify@x Hx 2 yL ^3 + y H2 x yL ^3D
3
Out[1]= Hx yL Hx + yL
2) ,
In[2]:=
Out[2]=
Expand@Hx yL Hx + yL^3D
x4 + 2 x3 y 2 x y3 y4
3) - ,
In[3]:= Solve@x^ 2 - 5 x + 6 0, xD
Out[3]= 88x
2<, 8x 3<<
In[4]:= Reduce@a * x + b 0, xD
Out[4]= Hb
0&& a 0L Ja 0 &&x
In[5]:= Solve@x^2 - b * x + 6 0, xD
Out[5]= ::x
b
N
a
1 i
1 i
"############### y
y
j
jb + "###############
jb 24 + b2 z
z>, :x
j
z>>
24 + b2 z
{
{
2 k
2 k
In[6]:= Solve@8
x1 - x2 + 2* x3 + x4 -2,
-2 * x1 + x2 - 3 * x3 - 5 * x4 4,
x1 - x2 + x3 + 6 *x4 0,
2* x1 + 3 * x2 + 5 * x3 - 7 * x4 1< , 8x1, x2, x3, x4<D
Out[6]= ::x1
51
11
73
17
, x2
, x3
, x4
>>
2
3
6
6
In[7]:= Solve@8
x1 + x2 - x3 + x5 1,
-x1 - x2 + 2 * x3 - x4 + x5 == 2,
2* x1 + 2 * x2 - 3 * x3 + 3 * x4 + x5 0,
x1 + x2 - 3* x4 + 2 * x5 3<, 8x1, x2, x3, x4, x5<D
Out[7]= ::x1
9
7 x5
7 5 x5
1 x5
x2
, x3
, x4
>>
2
2
2
2
2
2
4) ,
In[8]:= A = 8
81, 1, 1<,
8a, b, c<,
8a^2, b^2, c^2<<
2
2
2
Out[8]= 881, 1, 1<, 8a, b, c<, 8a , b , c <<
In[9]:= Det@AD
2
2
2
2
2
2
Out[9]= a b + a b + a c b c a c + b c
In[10]:= Inverse@AD
Out[10]= ::
b2 c + b c2
a2 b + a b2 + a2 c b2 c a c2 + b c2
a2 c a c2
a2 b + a b2 + a2 c b2 c a c2 + b c2
a2 b + a b2 + a2 c b2 c a c2 + b c2
a2 b + a b2
,
,
,
b2 c2
a2 b + a b2 + a2 c b2 c a c2 + b c2
a2 + c2
a2 b + a b2 + a2 c b2 c a c2 + b c2
a2 b2
a2 b + a b2 + a2 c b2 c a c2 + b c2
,
,
,
b + c
a2 b + a b2 + a2 c b2 c a c2 + b c2
a c
a2 b + a b2 + a2 c b2 c a c2 + b c2
a + b
a2 b + a b2 + a2 c b2 c a c2 + b c2
>,
>,
>>
5) ,
In[11]:=
Out[11]=
In[12]:=
Out[12]=
In[13]:=
Out[13]=
In[14]:=
LimitA
LimitA
1
LimitA
Sin@xD
, x 0E
x
!!!!!!!!! !!!!!!!!!
1+ x 1 x
, x 0E
!!!!!!!!!!!!!!!!!!!
x2 6 x + 9
, x 3, Direction 1E
x 3
LimitA
!!!!!!!!!!!!!!!!!!!
x2 6 x + 9
x 3
, x 3, Direction 1E
Out[14]= 1
6) ,
In[15]:=
Out[15]=
In[16]:=
SumA
1
, 8k, 1, Infinity<E
k2
1
SumA , 8k, 1, Infinity<E
k
Sum ::div : Sum does not converge . More
Sum ::div : Sum does not converge . More
Out[16]=
k=1
1
k
7) ,
In[17]:=
Out[17]=
In[18]:=
D@x Sin@xD, xD
x Cos@xD + Sin@xD
D@xn, 8x, 4<D
4+n
Out[18]= H3 + nL H 2 + nL H 1 + nL n x
2
In[19]:= x Jx 5 x +
Out[19]= 5
In[20]:=
6
N
x 1
6
H 1 + xL2
+ 2x
8) ,
In[21]:=
Out[21]=
x -1
x2
-5 x +6
2 Log@3 + xD Log@ 2 + xD
1
x
In[22]:=
x
!!!!!!!!!!!!!!!!!!
0
1 + x2 x4
Out[22]=
ArcCot@2D
9) ,
In[23]:= DSolve@ y @xD == a y @xD + y@xD, y, xD
Out[23]= ::y
"########## y
1i
j
ja 4+a2 z
zx
FunctionB8x<,
2 k
"########## y
1i
j
ja+ 4+a2 z
zx
C@1D +
2 k
C@2DF>>
Out[24]= ::z@xD
In[25]:=
1 x
1 x
1 x
1 x
2x
2x
2x
2x
H1 +
L C@1D
H1 +
L C@2D, y@xD
H 1 +
L C@1D +
H1 +
L C@2D>>
2
2
2
2
Out[25]= ::F@nD
I 1 I1
2
!!!!
5 MM + I 1 I1 +
!!!!
!!!!
5 MM
>>
)
,
.
In[1]:=
Out[1]=
N@Pi, 100D
3.141592653589793238462643383279502884197169399375105820974944592307816406286208998628034825342117068
)
(XY plots, XYZ plots, polar plots, log plots ..)
format .
1) ,
In[1]:=
-1
Out[1]= Graphics
2) ,
In[2]:=
0.5
-1
-0.5
0.5
-0.5
-1
Out[2]= Graphics
3) ,
In[3]:=
<< Graphics`ImplicitPlot`
In[4]:= Options@ImplicitPlotD
Out[4]= 8AspectRatio
In[5]:= ImplicitPlot@x^2 4 + y^2 9 1, 8x, -2, 2< , 8y, -3, 3<, AxesOrigin 80, 0<D
3
-2
-1
-1
-2
-3
Out[5]= ContourGraphics
4) ,
In[6]:= Table@8x, x^2<, 8x, 1, 10<D
Out[6]= 881, 1<, 82, 4<, 83, 9<, 84, 16<, 85, 25<, 86,
In[7]:= ListPlot@%D
100
80
60
40
20
10
Out[7]= Graphics
5) ,
In[8]:= << Graphics`
In[9]:= p = 830, 20, 34, 45<
Out[9]= 830, 20, 34, 45<
B
A
Out[10]= Graphics
6) ,
In[11]:= << Graphics`Animation`
In[12]:=
ax 2 5 x + 6 [-10,10] a -2 2
0.1.
, a
.
7)
In[13]:=
Plot3DAE0.2
"#############
x2+ y2
!!!!!!!!!!!!!
0.2
0
-0.2
-0.4
10
0
-10
0
-10
10
Out[13]= SurfaceGraphics
) ,
.
) ,
,
.
Mathematica
(procedural programming),
(functional
programming),
(rule-based programming).
(
) :
In[1]:=
In[2]:=
In[3]:=
In[4]:=
In[5]:=
In[6]:=
In[7]:=
diff@a, xD b a diff@b, xD
b2
:
In[8]:=
diffAx3 3 x2 + 6 x 2, xE
6 6 x + 3 x2
x3 3 x2 + 6 x 2
In[9]:= diffA
, xE
x2 1
Out[8]=
Out[9]=
:
) ,
) , ,
,
)
,
)
,
) ,
,
) ,
, ...,
) ,
)
.
. :
2 p 1 p .
p=2,3 .
Mathematica
p.
In[1]:= i = 1;
5th prime=11
p=11 .
In[4]:=
FactorIntegerA211 1E
.
VanDermonde
1 x1
1 x2
D ( x1 , x2 ,..., xn ) = 1 x3
1 xn
x12
x22
x32
xn2
x1n 1
x2n 1
x3n 1
n 1
xn
Mathematica
..
In[1]:= A={{1,x1,x1^2},{1,x2,x2^2},{1,x3,x3^2}};
In[2]:= Factor[Det[A]]
Out[2]= -((x1 - x2) (x1 - x3) (x2 - x3))
In[3]:= A={{1,x1,x1^2,x1^3},{1,x2,x2^2,x2^3},{1,x3,x3^2,x3^3},{1,x4,x4^2,x4^3}};
In[4]:= Factor[Det[A]]
Out[4]= (x1 - x2) (x1 - x3) (x2 - x3) (x1 - x4) (x2 - x4) (x3 - x4)
:
D ( x1 , x2 ,..., xn ) = ( 1)
( x x ) = ( x x )
i
i, j
i< j
i, j
i> j
:
) ,
) ,
) ,
)
.. ,
) ,
)
,
,
)
.
,
, .
,
.
.
,
,
.
; .
,
,
.
( ),
.
,
,
, ,
, ,
.
. ...,
5
,
Mathematica.
, ..,
http://anemos.web.auth.gr/mathematica/index4.htm
http://users.auth.gr/~epsom/Symbolic/index.htm .
. Internet
:
/,
http://www.inf.uth.gr/greek/coursedesc_308.htm
http://www.inf.uth.gr/greek/coursedesc_408.htm
http://eclass.di.uoa.gr/D231/
http://www.math.uoi.gr/~nglinos/sm/ma644.html
http://www.math.uoc.gr/~marios/sy03/
,
(ACM Communications in Computer Algebra,
Journal of Symbolic Computation), (International Symposium on Symbolic
and Algebraic Computation (ISSAC)),
Association for Computing Machinery
http://www.sigsam.org/ .
, , ,
,
,
, Internet ( ),
.
.
, .
[1] K. O. Geddes, S.R. Czapor and G. Labahn, 1995, Algorithms for Computer
Algebra, Kluwer Academic Publisher.
[2] J. Grabmeier, E. Kaltofen and V. Weispfenning, 2003, Computer Algebra
Handbook, Springer-Verlag, Berlin, Heidelberg, New York.
[3] N. P. Karampetakis and A.I. Vardulakis, 2006, Special issue on the use of
computer algebra systems for computer aided control system design, International
Journal of Control, Vol.79, Issue 11, pp.1313-1320.
[4] R. Mankiewicz, 2002, , .
[5] . , 1999, , .
[6] .. , . . , 2004,
Mathematica, .
[7] The MacTutor History of Mathematics archive, http://www-groups.dcs.stand.ac.uk/~history/ .