Cocoa 4.7 Manual

Cocoa 4.7 Manual

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

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    363 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us