Unit SYMBOLIC COMPUTATION FOR DISCRETE MATHEMATICS

Course
Mathematics
Study-unit Code
A006174
Curriculum
Matematica per la crittografia
Teacher
Stefano Marcugini
Teachers
  • Stefano Marcugini
Hours
  • 42 ore - Stefano Marcugini
CFU
6
Course Regulation
Coorte 2026
Offered
2026/27
Learning activities
Affine/integrativa
Area
Attività formative affini o integrative
Sector
INFO-01/A
Type of study-unit
Obbligatorio (Required)
Type of learning activities
Attività formativa monodisciplinare
Language of instruction
English
Contents
Use of the MAGMA symbolic computation system and its related programming language for computations on groups, rings, fields, finite fields, polynomials, and matrix groups.

Exhaustive and heuristic algorithms for searching and classifying sets of points in finite projective spaces such as arcs, caps, and saturating sets.
Reference texts
Lecture notes provided by the teacher

http://magma.maths.usyd.edu.au/calc/
(online interpreter to try the MAGMA language)

http://magma.maths.usyd.edu.au/magma/documentation/ (official Magma documentation)
Educational objectives
Expected learning outcomes.

Knowledge-oriented.
Knowledge of the main functions and data structures of the MAGMA symbolic computing system; knowledge of the related programming language; exhaustive and heuristic algorithms for constructing specific sets of points in projective spaces.

Skill-oriented.
Ability to use the knowledge learned to model, design, and implement solutions to computational problems related to the construction, classification, and proof of nonexistence of specific sets of points in projective spaces.
Ability to develop applications using the MAGMA language.
Prerequisites
Basic knowledge of calculus, algebra, and combinatorial geometry: groups, rings, fields, finite fields, and the projective plane.
Teaching methods
Lectures, laboratory exercises
Other information
Website: www.unistudium.unipg.it For the exam schedule, see: https://www.dmi.unipg.it/didattica/corsi-di-studio-in-informatica/informatica-magistrale/calendario-esami
Learning verification modality
Final project and oral exam.
The final project is designed to test the ability to correctly apply the theoretical knowledge and understanding of the issues proposed.

The oral exam is a discussion lasting about 30 minutes designed to ascertain the level of knowledge and understanding about the theoretical contents of the course reached by the student. Also the oral exam will test the ability of communication of the student and the ability of autonomous organization of the speech.
At the request of the student the exam may be taken also in English.
Extended program
The MAGMA symbolic computation system and its related programming language
Applications to: groups, rings, fields (rational, real, complex), finite fields;
Permutation groups and subgroups; uni- and multivariable polynomials: decomposition, roots, nonlinear systems, resultant;
matrix groups and linear systems;
Planes and finite projective spaces;
Arcs, caps, saturating sets;
Linear and additive codes;
Cryptography;
Exhaustive and heuristic algorithms for searching and classifying sets of points in finite projective spaces such as arcs, caps, and saturating sets.