# CoCoA Tutorials Computer Algebra Course in Genoa John Abbott - 2014

## Lesson 1: Introduction to CoCoA

Using CoCoA to implement Euclid's Algorithm (for integers and for univariate polynomials)
• 01-EuclideanAlgm.cocoa5
• ## Lesson 2: Advanced use of CoCoA

Using polynomial factorization as the main topic, we shall see how to define and use polynomial rings, homomorphisms, records, and matrices.
• 02-factorization.cocoa5
• ## Lesson 3: Operations on monomial ideals

Monomial ideals are a simple yet useful subclass of general (polynomial) ideals. We look at various operations on monomial ideals; a first encounter between algebra and algorithmics, and also a foretaste of what is to come.
• 03-MonomialIdeals.cocoa5
• ## Lesson 4: Term orderings

Terms orderings lie at the core of Groebner basis theory. We see how to create and use term orderings in CoCoA; also some special properties of certain orderings.
• 04-TermOrdering.cocoa5
• ## Lesson 5: Division Algorithm

We look at the division algorithm which lies at the heart of Groebner bases.
• 05-DivisionAlgm.cocoa5
• ## Lesson 6: Leading term ideal

We consider how to compute LT(I), and the utility of doing so.
• ## Lesson 7: Buchberger's Algorithm

Presentazione dell'Algoritmo di Buchberger; esempi ed esercizi.
• 07-BuchbergerAlgm.cocoa5
• ## Lesson 8: Elimination

Algorithms and exercises related to elimination ideals
• 08-elimination.cocoa5
• ## Lesson 9: Polynomial system solving

We look at exact (algebraic) techniques for solving systems of polynomial equations
• 09-SystemSolving.cocoa5
• ## Lesson 10: Graph colouring

We look at an application of polynomial system solving to colouring graphs.
• 10-BuchbergerMoeller.cocoa5
• 10-GraphColouring.cocoa5