没有合适的资源?快使用搜索试试~ 我知道了~
https://mooc1-1.chaoxing.com/coursedata/toPreview?courseId=207755127&dataId=138061805&objectId=d99aacb85bf7472417a9d6e8f999b335
资源推荐
资源详情
资源评论
Computing with Magma
David A. Craven
June 9, 2008
Contents
1 The First Steps 1
1.1 Arithmetic and Data Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Sets, Subsets, and Belonging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3 Other Types of Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.4 Boolean Values and Conditionals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2 Iteration and Function Building 18
2.1 Iteration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.2 Procedures Versus Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.3 Writing Functions and Procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.4 Saving and Loading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.5 Outputting to Screens and Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3 Combinatorics and Graph Theory 34
3.1 General Combinatorics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.2 Partition Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.3 Graph Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.4 Generating Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
4 Number Theory and Linear Algebra 51
4.1 Real and Complex Numbers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.2 Polynomials . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
4.3 Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
4.4 Galois Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
4.5 Mappings and Homomorphisms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
4.6 Matrices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
4.7 Vector Spaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
5 Group Theory 74
5.1 Producing Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
5.2 Producing Particular Subgroups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
i
5.3 Conjugacy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
5.4 The Datatypes of Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
5.5 Power-Conjugate and Polycyclic Presentations . . . . . . . . . . . . . . . . . . . . . 88
5.6 More Hard-Coded Groups and Commands . . . . . . . . . . . . . . . . . . . . . . . . 91
5.7 Extensions and Automorphisms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
6 Representation Theory 98
6.1 Character Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
6.2 Constructing and Working with Modules . . . . . . . . . . . . . . . . . . . . . . . . . 100
6.3 Submodules and Quotient Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
A Managing Errors 110
A.1 Throwing an Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
A.2 Catching an Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
B More on Functions 113
B.1 Variadic Functions and Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
B.2 Intrinsics and Packages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
ii
Chapter 1
The First Steps
To start Magma, type magma into a terminal window. After doing this, one of two things will
happen: either the screen will display something like
Magma V2.13-15 Wed Jan 2 2008 20:09:11 on crazylegs-crane [Seed = 255043391]
Type ? for help. Type <Ctrl>-D to quit.
>
and you may begin, or you will see something like
Magma is not authorised for use on this machine.
This host has the following MAC address(es):
00:1d:60:9a:7f:dd
Please contact Magma at magma@maths.usyd.edu.au on the Internet.
and you need to log in to a different computer. [This is due to the licensing restrictions imposed
on Magma by its creators.]
The Magma on-line help can be found at
http://magma.maths.usyd.edu.au/magma/htmlhelp/Magma.htm.
1.1 Arithmetic and Data Types
Now we are all at the same place, let us try a few commands. We begin with simple arithmetic:
> 2+4;
6
> 3*7;
21
> 5/7;
5/7
1
> 3^2;
9
> 31 mod 5;
1
[Note that each individual command is ended with a semicolon; this is essential for Magma to
understand where the command ends, as Magma does not assume that a pressed ‘Enter’ key
signifies the end of a command.]
Magma believes that values like 2, 4, 0, and so on, are integers, and will treat them as such,
until you give it a command that makes it treat them as something else, like 5/7, which makes
Magma turn them into another thing, rationals. Suppose that you actually want to know the
decimal expansion of 5/7: then you need to turn it into a real number, which requires a decimal
somewhere, such as
> 5/7.0;
0.714285714285714285714285714285
We can assign numbers to letters, and do arithmetic with the letters like we did with the
numbers.
> x:=2;
> x^2;
4
> x:=x+1;
> x;
3
> x+:=1;
> x;
4
> 3*x;
12
(Note here that to return 3x, you must input 3*x.) The last but one command is a (slightly)
quicker way of altering a variable already in memory. There are similar commands for the other
arithmetic operations.
> x:=10;
> x-:=2; x;
8
> x/:=4; x;
2
> y:=7;
2
剩余118页未读,继续阅读
资源评论
weixin_46335500
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功