CoCoA 4.7 Manual March 29, 2007 2 Contents I 17 I-1 Preamble 19 I-1.1 Version ............................................. 19 I-1.2 Preface ............................................. 19 I-1.3 System Distribution ...................................... 19 I-1.4 System Requirements ..................................... 20 I-1.5 Copyright and Trademarks .................................. 20 I-1.6 Acknowledgments ....................................... 20 II Introduction to CoCoA 21 II-1 The CoCoA System 23 II-1.1 An Overview of the System .................................. 23 II-1.2 System Structure ........................................ 23 II-1.3 Contributions .......................................... 24 II-1.4 CoCoA and Macaulay ..................................... 24 II-1.5 Pointers to the Literature ................................... 24 II-2 Tutorial 27 II-2.1 A Tutorial Introduction to CoCoA .............................. 27 II-2.2 Setting Up CoCoA for the Tutorial .............................. 27 II-2.3 Entering Commands ...................................... 27 II-2.4 Examples of Entering Commands ............................... 28 II-2.5 More on Entering Commands ................................. 28 II-2.6 After the Tutorial ....................................... 28 II-2.7 Arithmetic ........................................... 29 II-2.8 Variables ............................................ 29 II-2.9 The Variable “It” ........................................ 29 II-2.10 Making Lists .......................................... 30 II-2.11 Setting Up a Ring ....................................... 31 II-2.12 A Groebner Basis Example .................................. 31 II-2.13 Eliminating Variables ..................................... 32 II-2.14 Using More Than One Ring .................................. 33 II-2.15 Substitutions .......................................... 33 II-2.16 First Functions ......................................... 34 II-2.17 More First Functions ...................................... 35 II-2.18 Rings Inside User-Defined Functions ............................. 35 II-2.19 Rational Normal Curve .................................... 37 II-2.20 Generic Minors ......................................... 38 II-2.21 Leading Term (Initial) Ideals, Generic Polynomials ..................... 39 II-2.22 Ring Mapping Example .................................... 39 II-2.23 Output to a File ........................................ 39 II-2.24 Finite Point Sets: Buchberger-Moeller ............................ 40 II-2.25 Syzygies and Resolution Example ............................... 40 3 4 Contents II-2.26 Factoring Polynomials ..................................... 41 III The CoCoA Programming Language 43 III-1 Introduction to CoCoA Programming 45 III-1.1 An Overview of CoCoA Programming ............................ 45 III-2 Language Elements 47 III-2.1 Character Set and Special Symbols .............................. 47 III-2.2 Identifiers ............................................ 47 III-2.3 Names of Indeterminates ................................... 47 III-2.4 Reserved Names ........................................ 48 III-2.5 Comments ........................................... 48 III-2.6 Data Types ........................................... 48 III-2.7 Commands and Functions for Data Types .......................... 49 III-3 Operators 51 III-3.1 CoCoA Operators ....................................... 51 III-3.2 Algebraic Operators ...................................... 51 III-3.3 Relational Operators ...................................... 52 III-3.4 Boolean Operators ....................................... 53 III-3.5 Selection Operators ...................................... 53 III-3.6 Range Operator ........................................ 53 III-4 Evaluation and Assignment 55 III-4.1 Evaluation ........................................... 55 III-4.2 Assignment ........................................... 55 III-5 User-Defined Functions 57 III-5.1 Introduction to User-Defined Functions ........................... 57 III-5.2 Commands and Functions for User-Defined Functions ................... 57 III-6 Flow Control: Conditional Statements and Loops 59 III-6.1 Commands and Functions for Branching ........................... 59 III-6.2 Commands and Functions for Loops ............................. 59 III-7 Input/Output 61 III-7.1 Introduction to IO ....................................... 61 III-7.2 Standard IO .......................................... 61 III-7.3 File IO ............................................. 61 III-7.4 String IO ............................................ 62 III-7.5 Commands and Functions for IO ............................... 62 III-7.6 Tagged Printing ........................................ 63 III-7.7 Tagging an Object ....................................... 63 III-7.8 Printing a Tagged Object ................................... 64 III-7.9 Describing a Tagged Object .................................. 64 III-7.10 Another Example Using Tags ................................. 65 III-7.11 Commands and Functions for Tags .............................. 65 III-8 Memory Management 67 III-8.1 Introduction to Memory .................................... 67 III-8.2 Working Memory ........................................ 67 III-8.3 Global Memory ......................................... 68 III-8.4 Ring-Bound Memory ...................................... 69 III-8.5 Commands and Functions for Memory ............................ 70 Contents 5 III-9 CoCoA Packages 71 III-9.1 Introduction to Packages ................................... 71 III-9.2 First Example of a Package .................................. 71 III-9.3 Package Essentials ....................................... 72 III-9.4 Package Sourcing and Autoloading .............................. 72 III-9.5 Global Aliases ......................................... 73 III-9.6 Local Aliases .......................................... 74 III-9.7 More Examples of Packages .................................. 74 III-9.8 Package Initialization ..................................... 75 III-9.9 Sharing Your Package ..................................... 76 III-9.10 Commands and Functions for Packages ........................... 76 III-9.11 Supported Packages ...................................... 76 III-9.12 K-Algebra Homomorphisms .................................. 77 III-9.13 Galois Package ......................................... 77 III-9.14 Integer Programming ..................................... 77 III-9.15 Algebra of Invariants ...................................... 78 III-9.16 Primary Ideals ......................................... 78 III-9.17 Special Varieties ........................................ 78 III-9.18 Statistics ............................................ 79 III-9.19 Geometrical Theorem-Proving ................................ 79 III-9.20 Typevectors ........................................... 79 III-9.21 Conductor ............................................ 80 III-9.22 Matrix Normal Form ...................................... 80 III-9.23 CantStop ............................................ 80 III-9.24 Control ............................................. 80 IV Doing Mathematics with CoCoA 83 IV-1 Booleans 85 IV-1.1 Introduction to Booleans ................................... 85 IV-1.2 Commands and Functions for Booleans ........................... 85 IV-2 Numbers 87 IV-2.1 Introduction to Numbers ................................... 87 IV-2.2 Rationals ............................................ 87 IV-2.3 Numerators and Denominators for Rational Numbers ................... 87 IV-2.4 Modular Integers ........................................ 88 IV-2.5 Commands and Functions for Numbers ........................... 88 IV-3 Strings 91 IV-3.1 Introduction to Strings .................................... 91 IV-3.2 Concatenation ......................................... 91 IV-3.3 Substrings ............................................ 91 IV-3.4 Quotes Within Strings ..................................... 92 IV-3.5 Commands and Functions for Strings ............................ 92 IV-4 Lists 93 IV-4.1 Introduction to Lists ...................................... 93 IV-4.2 Commands and Functions for Lists .............................. 93 IV-5 Records 97 IV-5.1 Introduction to Records .................................... 97 IV-5.2 Commands and Functions for Records ............................ 98 IV-6 Vectors 99 IV-6.1 Introduction to Vectors .................................... 99 IV-6.2 Commands and Functions for Vectors ............................ 99 6 Contents IV-7 Matrices 101 IV-7.1 Introduction to Matrices .................................... 101 IV-7.2 Commands and Functions for Matrices ............................ 102 IV-8 Rings 103 IV-8.1 Introduction to Rings ..................................... 103 IV-8.2 New Rings ........................................... 103 IV-8.3 Coefficient Rings ........................................ 104 IV-8.4 Indeterminates ......................................... 104 IV-8.5 Weights Modifier ........................................ 105 IV-8.6 Orderings ............................................ 106 IV-8.7 Predefined Term-Orderings .................................. 106 IV-8.8 Temporary Term-Orderings .................................. 107 IV-8.9 Custom Term-Orderings .................................... 107 IV-8.10 Module Orderings ....................................... 108 IV-8.11 Accessing Other Rings
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages363 Page
-
File Size-