Part 1
Chapter 1: Preamble
Version
Preface
System Distribution
System Requirements
Copyright and Trademarks
Acknowledgments
Part 2
Chapter 1: The CoCoA System
An Overview of the System
System Structure
Contributions
CoCoA and Macaulay
Pointers to the Literature
Chapter 2: Tutorial
A Tutorial Introduction to CoCoA
Setting Up CoCoA for the Tutorial
Entering Commands
Examples of Entering Commands
More on Entering Commands
After the Tutorial
Arithmetic
Variables
The Variable
It
Making Lists
Setting Up a Ring
A Groebner Basis Example
Eliminating Variables
Using More Than One Ring
Substitutions
First Functions
More First Functions
Rings Inside User-Defined Functions
Rational Normal Curve
Generic Minors
Leading Term (Initial) Ideals, Generic Polynomials
Ring Mapping Example
Output to a File
Finite Point Sets: Buchberger-Moeller
Syzygies and Resolution Example
Factoring Polynomials
Part 3
Chapter 1: Introduction to CoCoA Programming
An Overview of CoCoA Programming
Chapter 2: Language Elements
Character Set and Special Symbols
Identifiers
Names of Indeterminates
Reserved Names
Comments
Data Types
Commands and Functions for Data Types
Chapter 3: Operators
CoCoA Operators
Algebraic Operators
Relational Operators
Boolean Operators
Selection Operators
Range Operator
Chapter 4: Evaluation and Assignment
Evaluation
Assignment
Chapter 5: User-Defined Functions
Introduction to User-Defined Functions
Commands and Functions for User-Defined Functions
Chapter 6: Flow Control: Conditional Statements and Loops
Commands and Functions for Branching
Commands and Functions for Loops
Chapter 7: Input/Output
Introduction to IO
Standard IO
File IO
String IO
Commands and Functions for IO
Tagged Printing
Tagging an Object
Printing a Tagged Object
Describing a Tagged Object
Another Example Using Tags
Commands and Functions for Tags
Chapter 8: Memory Management
Introduction to Memory
Working Memory
Global Memory
Ring-Bound Memory
Commands and Functions for Memory
Chapter 9: CoCoA Packages
Introduction to Packages
First Example of a Package
Package Essentials
Package Sourcing and Autoloading
Global Aliases
Local Aliases
More Examples of Packages
Package Initialization
Sharing Your Package
Commands and Functions for Packages
Supported Packages
K-Algebra Homomorphisms
Ext Modules
Galois Package
Integer Programming
Algebra of Invariants
Primary Ideals
Special Varieties
Statistics
Geometrical Theorem-Proving
Typevectors
Conductor
Matrix Normal Form
Part 4
Chapter 1: Booleans
Introduction to Booleans
Commands and Functions for Booleans
Chapter 2: Numbers
Introduction to Numbers
Rationals
Numerators and Denominators for Rational Numbers
Modular Integers
Commands and Functions for Numbers
Chapter 3: Strings
Introduction to Strings
Concatenation
Substrings
Quotes Within Strings
Commands and Functions for Strings
Chapter 4: Lists
Introduction to Lists
Commands and Functions for Lists
Chapter 5: Records
Introduction to Records
Commands and Functions for Records
Chapter 6: Vectors
Introduction to Vectors
Commands and Functions for Vectors
Chapter 7: Matrices
Introduction to Matrices
Commands and Functions for Matrices
Chapter 8: Rings
Introduction to Rings
New Rings
Coefficient Rings
Indeterminates
Weights Modifier
Orderings
Predefined Term-Orderings
Temporary Term-Orderings
Custom Term-Orderings
Module Orderings
Accessing Other Rings
Ring Mappings: the Image Function
Quotient Rings
Commands and Functions for Rings
Chapter 9: Polynomials
Introduction to Polynomials
Evaluation of Polynomials
Commands and Functions for Polynomials
Chapter 10: Rational Functions
Introduction to Rational Functions
Numerators and Denominators for Rational Functions
Commands and Functions for Rational Functions
Chapter 11: Ideals
Introduction to Ideals
Commands and Functions for Ideals
Chapter 12: Modules
Introduction to Modules
Quotient Modules
Shifts
Commands and Functions for Modules
Chapter 13: Groebner Bases and Related Computations
Introduction to Groebner Bases in CoCoA
Commands and Functions for Groebner-Type Computations
The Interactive Groebner Framework
Example: Interactive Groebner Basis Computation
Example: Verbose Mode
Example: Interactive Resolution Computation
Example: Truncations
Hilbert-Driven Computations
Part 5
Chapter 1: CoCoA Panels
Introduction to Panels
Setting Options
Options in the GENERAL Panel
Echo
Timer
Trace
Indentation
TraceSources
SuppressWarnings
ComputationStack
Options in the GROEBNER Panel
Sugar
FullRed
SingleStepRed
Verbose
Commands and Functions for Panels
Chapter 2: CoCoA's Help System
Online Help
Quick Tips for Using Online Help
Commands and Functions for Online Help
Other Help
Chapter 3: Fine Tuning At Start-up
User Initialization
Chapter 4: CoCoA Interfaces
CoCoA on a Macintosh
CoCoA under Unix
CoCoA under Windows/DOS