- Are you interested in numbers and solving puzzles?
- Do you want to understand how mathematical concepts form an integral system?
- Do you want to tackle diverse projects under the guidance of Iceland's leading mathematicians?
- Do you enjoy finding solutions?
- Do you want a diverse selection of courses that suit your interests?
- Do you want to open up future opportunities in challenging careers?
A degree in mathematics is first and foremost about:
- Understanding concepts
- How concepts relate to each other
- How concepts form an integral whole
Emphasis will be placed on:
- Theoretical understanding
- Disciplined critical thinking
Specialisation
You can choose between the following specialisations:
- General mathematics
- Physics
- Geophysics
- Economics
- Probability & discrete mathematics
- Mathematical analysis
- Statistics
- Computer science
All students take the same core courses, but different electives are available depending on specialisation.
Course topics include:
- Number systems
- Linear maps
- Dynamics
- Axiomatic systems
- Differential equations
- Geometry
- Surfaces in higher dimensions
- Symmetries
- Stochastic processes
- Graph theory
Icelandic matriculation examination or a comparable qualification including a minimum number of credits (e) in the following subjects: Mathematics 30e and science 30e of which 10e should be in physics.
Further information can be found in article 27, regulation on admission requirements for undergraduate study no. 331/2022.
Applicants with qualifications from a school abroad who plan to enrol in an undergraduate programme taught in Icelandic at the faculty must also pass a special entrance exam in Icelandic, in accordance with Article 1.
180 ECTS credits have to be completed for the qualification of BSc degree, organized as a three year programme. Courses comprising a common core are 98 ECTS credits. Other compulsory courses, 44-62 ECTS credits, depend upon choice of degree programme. Mathematics courses should constitute at least 120 ECTS credits. In addition there are elective courses along the degree programme constituting a coherant whole. The student can take up to 60 ECTS in a recognised minor subject (for example physics, computing, economics, molecular biology or other with the agreement of the department) but must take a minimum of 120 ECTS in mathematics. The list of elective courses exhaustive and other electives may be taken with the approval of the Chair of the Department.
Programme structure
Check below to see how the programme is structured.
- First year
- Fall
- Computer Science 1
- Discrete mathematics
- Introduction to Mathematics
- Mathematical Analysis IA
- Linear Algebra
- Spring 1
- Computer Science 2
- Sets and Metric Spaces
- Probability and Statistics
- Mathematical Analysis IIA
- Introduction to Probability Theory
Computer Science 1 (TÖL101G)
Note: Only one course of either TÖL101G Tölvunarfræði 1 or TÖL105G Tölvunarfræði 1a can count towards the BS degree.
The Java programming language is used to introduce basic concepts in computer programming: Expressions and statements, textual and numeric data types, conditions and loops, arrays, methods, classes and objects, input and output. Programming and debugging skills are practiced in quizzes and projects throughout the semester.
Discrete mathematics (TÖL104G)
Propositions, predicates, inference rules. Set operations and Boolean algebra. Induction and recursion. Basic methods of analysis of algorithms and counting. Simple algorithms in number theory. Relations, their properties and representations. Trees and graphs and related algorithms. Strings, examples of languages, finite automata and grammars.
Introduction to Mathematics (STÆ110G)
The course covers the language of mathematics and the fundamentals of logic and set theory.
The treatment of logic and set theory is naive but sufficiently precise to serve as a foundation for the general use of logic and mathematics in further mathematical studies. Emphasis is placed on basic concepts such as quantifiers, implications, sets, mappings, injective and surjective functions. Training is provided in formulating simple proofs. The course is taught once a week, three class hours at a time. A written final exam will be held in teaching week 12. Students complete assignments during the semester that count for 30% of the final grade.
Mathematical Analysis IA (STÆ101G)
Main emphasis is on the differential and integral calculus of functions of a single variable. The systems of real and complex numbers. Least upper bound and greatest lower bound. Natural numbers and induction. Mappings and functions. Sequences and limits. Series and convergence tests. Conditionally convergent series. Limits and continuous functions. Trigonometric functions. Differentiation. Extreme values. The mean value theorem and polynomial approximation. Integration. The fundamental theorem of calculus. Logarithmic and exponential functions, hyperbolic and inverse trigonometric functions. Methods for finding antiderivatives. Real power series. First-order differential equations. Complex valued functions and second-order differential equations.
Linear Algebra (STÆ107G)
Basics of linear algebra over the reals.
Subject matter: Systems of linear equations, matrices, Gauss-Jordan reduction. Vector spaces and their subspaces. Linearly independent sets, bases and dimension. Linear maps, range space and nullk space. The dot product, length and angle measures. Volumes in higher dimension and the cross product in threedimensional space. Flats, parametric descriptions and descriptions by equations. Orthogonal projections and orthonormal bases. Gram-Schmidt orthogonalization. Determinants and inverses of matrices. Eigenvalues, eigenvectors and diagonalization.
Computer Science 2 (TÖL203G)
The programming language Java will be used in the course. Various data structures, algorithms and abstract data types will be covered. Among the data types and structures covered are lists, stacks, queues, priority queues, trees, binary trees, binary search trees and heaps along with related algorithms. Various search and sort algorithms will be covered. Algorithms will be analysed for their space and time complexity. There will be programming assignments in Java using the given data structures and algorithms. There will be many small assignments.
Sets and Metric Spaces (STÆ202G)
Elements of set theory: Sets. Mappings. Relations, equivalence relations, orderings. Finite, infinite, countable and uncountable sets. Equipotent sets. Construction of the number systems. Metric spaces: Open sets and closed sets, convergent sequences and Cauchy sequences, cluster points of sets and limit points of sequences. Continuous mappings, convergence, uniform continuity. Complete metric spaces. Uniform convergence and interchange of limits. The Banach fixed point theorem; existence theorem about solutions of first-order differential equations. Completion of metric spaces. Compact metric spaces. Connected sets. Infinite series, in particular function series.
Probability and Statistics (STÆ203G)
Basic concepts in probability and statistics based on univariate calculus.
Topics:
Sample space, events, probability, equal probability, independent events, conditional probability, Bayes rule, random variables, distribution, density, joint distribution, independent random variables, condistional distribution, mean, variance, covariance, correlation, law of large numbers, Bernoulli, binomial, Poisson, uniform, exponential and normal random variables. Central limit theorem. Poisson process. Random sample, statistics, the distribution of the sample mean and the sample variance. Point estimate, maximum likelihood estimator, mean square error, bias. Interval estimates and hypotheses testing form normal, binomial and exponential samples. Simple linear regression. Goodness of fit tests, test of independence.
Mathematical Analysis IIA (STÆ207G)
Emphasis is laid on the theoretical aspects of the material. The aim is that the students acquire understanding of fundamental concepts and are able to use them, both in theoretical consideration and in calculations. Open and closed sets. Mappings, limits and continuity. Differentiable mappings, partial derivatives and the chain rule. Jacobian matrices. Gradients and directional derivatives. Mixed partial derivatives. Curves. Vector fields and flows. Cylindrical and spherical coordinates. Taylor polynomials. Extrema and classification of stationary points. Extrema with constraints. Implicit functions and local inverses. Line integrals and potential functions. Proper and improper multiple integrals. Change of variables in multiple integrals. Simply connected regions. Integration on surfaces. Theorems of Green, Stokes and Gauss.
Introduction to Probability Theory (STÆ210G)
This is an extension of the course "Probability and Statistics" STÆ203G. The basic concepts of probability are considered in more detail with emphasis on definitions and proofs. The course is a preparation for the two M-courses in probability and the two M-courses in statistics that are taught alternately every other year.
Topics beyond those discussed in the probability part of STÆ203G:
Kolmogorov's definition. Proofs of propositions on compound events and conditional probability. Proofs for discrete and continuous variables of propositions on expectation, variance, covariance, correlation, and conditional expectation and variance. Proofs of propositions for Bernoulli, binomial, Poisson, geometric, uniform, exponential, and gamma variables. Proof of the tail-summing proposition for expectation and the application to the geometric variable. Proof of the proposition on memoryless and exponential variables. Derivation of the distribution of sums of independent variables such as binomial, Poisson, normal, and gamma variables. Probability and moment generating functions.
- Second year
- Fall
- Data Base Theory and Practice
- Programming Languages
- Complex Analysis I
- Algebra
- Mathematical Analysis IIIA
- Spring 1
- Not taught this semesterLinear algebra II
- Galois theory
- Measure and Integration Theory
- Topology
- Theoretical Numerical Analysis
- Numerical Analysis
- Analysis of Algorithms
Data Base Theory and Practice (TÖL303G)
Databases and database management systems. Physical data organization. Data modelling using the Entity-Relationship model and the Relational model. Relational algebra and calculus. The SQL query language. Design theory for relational data bases, functional dependencies, decomposition of relational schemes, normal forms. Query optimization. Concurrency control techniques and crash recovery. Database security and authorization. Data warehousing.
Programming Languages (TÖL304G)
An introduction to the most common types of programming languages. Block structured languages, list processing languages, object oriented programming. Describing programming languages, compilers and interpreters. The internal structure of block structured programming languages.Modular programming . Functions and subroutines, parameter passing. Memory management, garbage collection. The programming languages Scheme, CAML, Java, Morpho, C++ and Haskell will be considered. Object oriented programming languages. Objects and inheritance. Grammars, the structure of compilers. Modular programming will be emphasised (especially generic modules), as well as list processing, functional programming and block structure.
Complex Analysis I (STÆ301G)
Complex numbers and the topology of the complex plane. Sequences and series of complex numbers. Differentiable and holomorphic functions. Sequences and series of functions; power series. Path integration and primitives. The exponential function and related functions. Winding numbers. The Cauchy theorem, the integral formula of Cauchy and consequences. The identity theorem, the open mapping theorem and the maximum principle. Laurent series, isolated singularities and their classification. The theorem of residues and residue calculus. The argument principle and Rouché's theorem. Connections with real analysis: The Cauchy-Riemann equations, harmonic functions and the integral formulas of Poisson and Schwarz. Holomorphic functions defined by integrals (e. g. the Laplace transformation). Conformal mapping and the Riemann mapping theorem.
Algebra (STÆ303G)
Groups, examples and basic concepts. Symmetry groups. Homomorphisms and normal subgroups. Rings, examples and basic concepts. Integral domains. Ring homomorphisms and ideals. Polynomial rings and factorization of polynomials. Special topics.
Mathematical Analysis IIIA (STÆ304G)
The course is an introduction to three important tools of applied mathematics, namely ordinary differential equations, Fourier-series and partial differential equations. Some basic theoretical properties are proved and solution methods presented.
Ordinary differential equations: linear differential equations of order n, the Cauchy problem, Picard's existence theorem, solution by power series and equations with singular points. Fourier series: convergence point-wise, uniformly and in the mean-square, Parseval's equation.
Partial differential equations: the heat equation and the wave equation solved on a finite interval by separation of variables and Fourier series and their solutions compared, the Dirichlet problem for the Laplace equation on the rectangle and the disc, the Poisson integral formula.
Linear algebra II (STÆ401M)
Modules and linear maps. Free modules and matrices. Quotient modules and short exact sequences. Dual modules. Finitely generated modules over a principal ideal domain. Linear operators on finite dimensional vector spaces.
Galois theory (STÆ403M)
Selected topics in commutative algebra.
Subject matter: Fields and field extensions. Algeraic extensions, normal extensions and seperable extensions. Galois theory. Applications.
Noetherian rings. Hilbert's basis theorem and Hilbert's Nullstellensatz.
Measure and Integration Theory (STÆ402M)
Measure spaces, measures, outer measures. The Lebesgue measure on Rn. Measurable functions, the monotone convergence theorem, Fatou’s Lemma. Integrable functions, Lebesgue’s dominated convergence theorem and applications. Inequalities of Hölder and Minkowski, Lp-spaces, simple facts about Banach and Hilbert spaces. Fourier series. Product of measure spaces, theorems of Tonelli and Fubini. Complex measures. Jordan decomposition and Lebesgue decomposition of measures, Radon-Níkodým theorem. Continuous linear functionals on Lp-spaces. Image measures, transformation formula for the Lebesgue measure on Rn.
Topology (STÆ419M)
General topology: Topological spaces and continuous maps. Subspaces, product spaces and quotient spaces. Connected spaces and compact spaces. Separation axioms, the lemma of Urysohn and a metrization theorem. Completely regular spaces and compactifications.
Theoretical Numerical Analysis (STÆ412G)
This is an extension of the course "Numerical Analysis" STÆ405G. The material of Numerical Analysis (STÆ405G) is studied in more detail and more theoretically with emphasis on proofs.
Numerical Analysis (STÆ405G)
Fundamental concepts on approximation and error estimates. Solutions of systems of linear and non-linear equations. PLU decomposition. Interpolating polynomials, spline interpolation and regression. Numerical differentiation and integration. Extrapolation. Numerical solutions of initial value problems of systems of ordinary differential equations. Multistep methods. Numerical solutions to boundary value problems for ordinary differential equations.
Grades are given for programning projects and in total they amount to 30% of the final grade. The student has to receive the minimum grade of 5 for both the projects and the final exam.
Analysis of Algorithms (TÖL403G)
Methodology for the design of algorithms and the analysis of their time conplexity. Analysis of algorithms for sorting, searching, graph theory and matrix computations. Intractable problems, heuristics, and randomized algorithms.
- Third year
- Fall
- Machine Learning
- Graph Theory
- Not taught this semesterCombinatorics
- Formal Languages and Computability
- Spring 1
- Software Development
- Operating Systems
- Mathematical Seminar
Machine Learning (REI505M)
An overview of some of the main concepts, techniques and algorithms in machine learning. Supervised learning and unsupervised learning. Data preprocessing and data visualization. Model evaluation and model selection. Linear regression, nearest neighbours, support vector machines, decision trees and ensemble methods. Deep learning. Cluster analysis and the k-means algorithm. The students implement simple algorithms in Python and learn how to use specialized software packages. At the end of the course, the students work on a practical machine learning project.
Graph Theory (STÆ520M)
Graphs, homomorphisms and isomorphisms of graphs. Subgraphs, spanning subgraphs. Paths, connected graphs. Directed graphs. Bipartite graphs. Euler graphs and Hamilton graphs; the theorems of Chvátal, Pósa, Ore and Dirac. Tournaments. Trees, spanning trees, the matrix-tree theorem, Cayley's theorem. Weighted graphs, the algorithms of Kruskal and Dijkstra. Networks, the max-flow-min-cut theorem, the algorithm of Ford and Fulkerson, Menger's theorem. Matchings, Berge's theorem, Hall's marriage theorem, the König-Egerváry theorem, the Kuhn-Munkres algorithm. Inseparable and two-connected graphs. Planar graphs, Euler's formula, Kuratowski's theorem, dual graphs. Embeddings of graphs in surfaces, the Ringel-Youngs-Mayer theorem. Colourings, Heawood's coloring theorem, Brooks's theorem, chromatic polynomial; edge colourings, Vizing's theorem.
Combinatorics (STÆ533M)
This course is aimed at second and third year undergraduate mathematics students. The purpose is to introduce the student to several combinatorial structures, methods of their enumeration and useful properties. Particular emphasis will be placed on the systematic use of generating functions in enumeration.
Formal Languages and Computability (TÖL301G)
Finite state machines, regular languages and grammars, push-down automata, context-free languages and grammars, Turing machines, general languages and grammars, and their basic properties. Recursive and recursively enumerable languages, reduction between languages, connection to decision problems and proving unsolvability of such problems. The complexity classes P and NP, and NP-completeness. Examples of various models of computation.
Software Development (HBV401G)
In this course, software engineers and computer scientists take the step from programming-in-the-small (i.e. individual developers creating compact modules that solve clearly defined problems) to programming-in-the-large (i.e. teams of developers building complex systems that satisfy vague customer requirements). To deal with the complexities of such projects, this course introduces key software engineering concepts such as agile and plan-driven software process models, requirements engineering, effort estimation, object-oriented analysis and design, software architecture and test-driven development. These concepts are immediately applied in practice as students team up to develop and integrate component-based systems using the Java programming language.
Operating Systems (TÖL401G)
This course covers concepts of operating systems. Besides foundations on computer hardware structures and general operating system architectures, this includes concepts of processes and threads and their management, principles of scheduling and scheduling algorithms, communication and synchronisation between processes and deadlock issues, principles of memory management including virtual memory and page replacement algorithms, file systems and their implementation as well as mass-storage management. If time allows, principles for achieving protection and security, and aspects of distribution (e.g. concepts of distributed systems and distributed file systems) are covered as well. This course does not deal with details of implementing operating systems, but introduces generic concepts that are used when implementing operating systems and that an application developer needs to know, when creating an application program. Where appropriate, current operating systems such as Microsoft Windows and POSIX-compliant UNIX-like systems (e.g. Linux) are used as case study for implementation and offered system calls. The usage of operating system services from within high-level programming languages (e.g. C, C++ or Java) is demonstrated based on Application Programming Interfaces (APIs) offered by prevailing system libraries.
Mathematical Seminar (STÆ402G)
This course is intended for students who have completed at least 120 ECTS credits. Students who have not completed 120 ECTS credits and are interested in taking the course must obtain the approval of the supervisor prior to signing up for the course.
Each student prepares and studies a selected well-defined topic of mathematics or statistics and will be assigned a mentor related to that topic. Topics vary from year to year. A list of possible topics is released at the start of or prior to the course and students can also suggest topics (provided that a mentor can be found). Students write a thesis on their selected topic and prepare and give a lecture on the topic at a student conference. During the course, students provide each other with constructive critique both regarding the thesis writing and the preparation of the lecture. In addition to presenting their own projects at the student conference, students take active part, listen to their fellow course members and ask questions.
- Year unspecified
- Fall
- Not taught this semesterPerformance analysis of computer systems
- Innovation, IP protection, and application
- Operations Research 2
- R Programming
- Machine Learning
- Various approaches to teaching mathematics in upper secondary schools
- Research Project
- Theory of linear models
- Applied Linear Statistical Models
- Numerical Linear Algebra
- Graph Theory
- Not taught this semesterIntroduction to Logic
- Not taught this semesterBayesian Data Analysis
- Not taught this semesterCombinatorics
- Not taught this semesterNumerical Methods for Partial Differential Equations
- Formal Languages and Computability
- Not taught this semesterAlgorithms in Bioinformatics
- Spring 1
- Stochastic Processes
- Introduction to Measure-Theoretic Probability
- Algorithms in Bioinformatics
- Introduction to data science
- Statistical Consulting
- Not taught this semesterMathematical Physics
- Operations Research
- Not taught this semesterStatistical Consulting
- Applied data analysis
- Research Project
- Mathematical Analysis IV
- Topology
- Not taught this semesterRepresentation Theory of Finite groups
- Analysis of Algorithms
Performance analysis of computer systems (REI503M)
Usually taught every second year.
This course provides students with an introduction to modeling and performance evaluation of computer and communication systems. Large-scale distributed computer systems process arriving requests, e.g., web page queries, in parallel in order to optimize performance metrics, such as response time and user satisfaction. Other important performance metrics include throughput and service-level agreement in general. This course covers basic mathematical tools needed to evaluate such dynamic systems and to understand the strengths and weaknesses, for example, in different designs, scheduling disciplines, and operating policies. The approach is based on operations research methods, in particular, queueing theory and Markov processes (previous knowledge of these methods is not required).
Attendance is strongly recommended.
Innovation, IP protection, and application (VON101M)
Minimum number of students registered for the course to be taught: 10
This course will cover basics in intellectual property rights with emphasis on patents. What is intellectual property and when and how can they best be protected? How does intellectual property rights work (e.g. patents), and how can they be used and applied in innovation and industry. The system‘s organization will be covered, as well as the patent process, making a financial plan relating to patents, and database searches.
Operations Research 2 (IÐN508M)
This course will introduce the student to decision and optimization models in operations research. On completing the course the student will be able to formulate, analyze, and solve mathematical models, which represent real-world problems, and critically interpret their results. The course will cover integer programming and modeling with stochastic programming. The student will become familiar with building mathematical models using Python.
R Programming (MAS102M)
Students will perform traditional statistical analysis on real data sets. Special focus will be on regression methods, including multiple regression analysis. Students will apply sophisticated methods of graphical representation and automatic reporting. Students will hand in a projects where they apply the above mentioned methods on real datasets in order to answer research questions
Machine Learning (REI505M)
An overview of some of the main concepts, techniques and algorithms in machine learning. Supervised learning and unsupervised learning. Data preprocessing and data visualization. Model evaluation and model selection. Linear regression, nearest neighbours, support vector machines, decision trees and ensemble methods. Deep learning. Cluster analysis and the k-means algorithm. The students implement simple algorithms in Python and learn how to use specialized software packages. At the end of the course, the students work on a practical machine learning project.
Various approaches to teaching mathematics in upper secondary schools (SNU503M)
In this course, students learn to plan mathematics teaching in upper secondary school using various approaches to provide access for all. An emphasis will be put on exploring different teaching environments and teaching methods that build on research on the teaching and learning of mathematics. In the course, the aims of learning mathematics both in Iceland and its neighboring countries will be discussed based on curricular and governmental documents. Students will read about and get a chance to try out various ways to assess and analyze students’ mathematical achievements. The course format includes lectures, project work, presentations, topic studies connected to practice, and critical topic discussion. An emphasis will be put on students’ discussion about challenges and their search for solutions to problems related to the teaching and learning of mathematics.
Research Project (STÆ262L)
Research Project
Theory of linear models (STÆ310M)
Simple and multiple linear regression, analysis of variance and covariance, inference, variances and covariances of estimators, influence and diagnostic analyses using residual and influence measures, simultaneous inference. General linear models as projections with ANOVA as special case, simultaneous inference of estimable functions. R is used in assignments. Solutions to assignments are returned in LaTeX and PDF format.
In addition selected topics will be visited, e.g. generalized linear models (GLMs), nonlinear regression and/or random/mixed effects models and/or bootstrap methods etc.
Students will present solutions to individually assigned
projects/exercises, each of which is handed in earlier through a web-page.
This course is taught in semesters of even-numbered years.
Applied Linear Statistical Models (STÆ312M)
The course focuses on simple and multiple linear regression as well as analysis of variance (ANOVA), analysis of covariance (ANCOVA) and binomial regression. The course is a natural continuation of a typical introductory course in statistics taught in various departments of the university.
We will discuss methods for estimating parameters in linear models, how to construct confidence intervals and test hypotheses for the parameters, which assumptions need to hold for applying the models and what to do when they are not met.
Students will work on projects using the statistical software R.
Numerical Linear Algebra (STÆ511M)
Iterative methods for linear systems of equations. Decompositions of matrices: QR, Cholesky, Jordan, Schur, spectral and singular value decomposition (SVD) and their applications. Discrete Fourier transform (DFT) and the fast Fourier transform (FFT). Discrete cosine transform (DCT) in two-dimensions and its application for the compression of images (JPEG) and audio (MP3, AAC). Sparse matrices and their representation.
Special emphasis will be on the application and implementation of the methods studied.
Graph Theory (STÆ520M)
Graphs, homomorphisms and isomorphisms of graphs. Subgraphs, spanning subgraphs. Paths, connected graphs. Directed graphs. Bipartite graphs. Euler graphs and Hamilton graphs; the theorems of Chvátal, Pósa, Ore and Dirac. Tournaments. Trees, spanning trees, the matrix-tree theorem, Cayley's theorem. Weighted graphs, the algorithms of Kruskal and Dijkstra. Networks, the max-flow-min-cut theorem, the algorithm of Ford and Fulkerson, Menger's theorem. Matchings, Berge's theorem, Hall's marriage theorem, the König-Egerváry theorem, the Kuhn-Munkres algorithm. Inseparable and two-connected graphs. Planar graphs, Euler's formula, Kuratowski's theorem, dual graphs. Embeddings of graphs in surfaces, the Ringel-Youngs-Mayer theorem. Colourings, Heawood's coloring theorem, Brooks's theorem, chromatic polynomial; edge colourings, Vizing's theorem.
Introduction to Logic (STÆ528M)
Logical deductions and proofs. Propositional calculus, connectives, truth functions and tautologies. Formal languages, axioms, inference rules. Quantifiers. First-order logic. Interpretations. The compactness theorem. The Lövenheim-Skolem theorem. Computability, recursive functions. Gödel's theorem.
Bayesian Data Analysis (STÆ529M)
Goal: To train students in applying methods of Bayesian statistics for analysis of data. Topics: Theory of Bayesian inference, prior distributions, data distributions and posterior distributions. Bayesian inference for parameters of univariate and multivariate distributions: binomial; normal; Poisson; exponential; multivariate normal; multinomial. Model checking and model comparison: Bayesian p-values; deviance information criterion (DIC). Bayesian computation: Markov chain Monte Carlo (MCMC) methods; the Gibbs sampler; the Metropolis-Hastings algorithm; convergence diagnostistics. Linear models: normal linear models; hierarchical linear models; generalized linear models. Emphasis on data analysis using software, e.g. Matlab and R.
Combinatorics (STÆ533M)
This course is aimed at second and third year undergraduate mathematics students. The purpose is to introduce the student to several combinatorial structures, methods of their enumeration and useful properties. Particular emphasis will be placed on the systematic use of generating functions in enumeration.
Numerical Methods for Partial Differential Equations (STÆ537M)
The aim of the course is to study numerical methods to solve partial differential equations and their implementation.
Formal Languages and Computability (TÖL301G)
Finite state machines, regular languages and grammars, push-down automata, context-free languages and grammars, Turing machines, general languages and grammars, and their basic properties. Recursive and recursively enumerable languages, reduction between languages, connection to decision problems and proving unsolvability of such problems. The complexity classes P and NP, and NP-completeness. Examples of various models of computation.
Algorithms in Bioinformatics (TÖL504M)
This course will cover the algorithmic aspects of bioinformatic. We will start with an introduction to genomics and algorithms for students new to the field. The course is divided into modules, each module covers a single problem in bioinformatics that will be motivated based on current research. The module will then cover algorithms that solve the problem and variations on the problem. The problems covered are motif finding, edit distance in strings, sequence alignment, clustering, sequencing and assembly and finally computational methods for high throughput sequencing (HTS).
Stochastic Processes (STÆ415M)
Introduction to stochastic processes with main emphasis on Markov chains.
Subject matter: Hitting time, classification of states, irreducibility, period, recurrence (positive and null), transience, regeneration, coupling, stationarity, time-reversibility, coupling from the past, branching processes, queues, martingales, Brownian motion.
Introduction to Measure-Theoretic Probability (STÆ418M)
Probability based on measure-theory.
Subject matter: Probability, extension theorems, independence, expectation. The Borel-Cantelli theorem and the Kolmogorov 0-1 law. Inequalities and the weak and strong laws of large numbers. Convergence pointwise, in probability, with probability one, in distribution, and in total variation. Coupling methods. The central limit theorem. Conditional probability and expectation.
Algorithms in Bioinformatics (TÖL604M)
This course will cover the algorithmic aspects of bioinformatic. We will start with an introduction to genomics and algorithms for students new to the field. The course is divided into modules, each module covers a single problem in bioinformatics that will be motivated based on current research. The module will then cover algorithms that solve the problem and variations on the problem. The problems covered are motif finding, edit distance in strings, sequence alignment, clustering, sequencing and assembly and finally computational methods for high throughput sequencing (HTS).
Introduction to data science (REI202G)
The course provides an introduction to the methods at the heart of data science and introduces widely used software tools such as numpy, pandas, matplotlib and scikit-learn.
The course consists of 6 modules:
- Introduction to the Python programming language.
- Data wrangling and data preprocessing.
- Exploratory data analysis and visualization.
- Optimization.
- Clustering and dimensionality reduction.
- Regression and classification.
Each module concludes with a student project.
Note that there is an academic overlap with REI201G Mathematics and Scientific Computing and both courses cannot be valid for the same degree.
Statistical Consulting (LÝÐ201M)
Participants in the course will obtain training in practical statistics as used when providing general statistical counselling. The participants will be introduced to actual statistical projects by assisting students in various departments within the university. The participants will report on the projects in class, discuss options for solving the projects and subsequently assist the students with analyses using R and interpretation of results.
Mathematical Physics (EÐL612M)
Continuum mechanics: Stress and strain, equations of motion. Seismic waves. Maxwell's equations and electromagnetic waves. Plane waves, reflection and refraction. Distributions and Fourier transforms. Fundamental solutions of linear partial differential equation. Waves in homogeneous media. Huygens' principle and Ásgeirsson's mean value theorem. Dispersion, phase and group velocities, Kramers-Kronig equations. The method of stationary phase. Surface waves on liquids.
Operations Research (IÐN401G)
This course will introduce the student to decision and optimization models in operations research. On completing the course the student will be able to formulate, analyze, and solve mathematical models, which represent real-world problems, and critically interpret their results. The course will cover linear programming and the simplex algorithm, as well as related analytical topics. It will also introduce special types of mathematical models, including transportation, assignment, network, and integer programming models. The student will become familiar with a modeling language for linear programming.
Statistical Consulting (MAS201M)
Participants in the course will obtain training in practical statistics as used when providing general statistical counselling. The participants will be introduced to actual statistical projects by assisting students in various departments within the university. The participants will report on the projects in class, discuss options for solving the projects and subsequently assist the students with analyses using R and interpretation of results.
Applied data analysis (MAS202M)
The course focuses on statistical analysis using the R environment. It is assumed that students have basic knowledge of statistics and the statistical software R. Students will learn to apply a broad range of statistical methods in R (such as classification methods, resampling methods, linear model selection and tree-based methods). The course on 12 weeks and will be on "flipped" form. This means that no lectures will be given but students will read some material and watch videos before attending classes. Students will then work on assignments during the classes.
Research Project (STÆ262L)
Research Project
Mathematical Analysis IV (STÆ401G)
Aim: To introduce the student to Fourier analysis and partial differential equations and their applications.
Subject matter: Fourier series and orthonormal systems of functions, boundary-value problems for ordinary differential equations, the eigenvalue problem for Sturm-Liouville operators, Fourier transform. The wave equation, diffusion equation and Laplace's equation solved on various domains in one, two and three dimensions by methods based on the first part of the course, separation of variables, fundamental solution, Green's functions and the method of images.
Topology (STÆ419M)
General topology: Topological spaces and continuous maps. Subspaces, product spaces and quotient spaces. Connected spaces and compact spaces. Separation axioms, the lemma of Urysohn and a metrization theorem. Completely regular spaces and compactifications.
Representation Theory of Finite groups (STÆ626M)
The definition of a linear representation of a group. Schur's lemma. Group characters. The group algebra. Representation theory of the symmetric group. Applications of representation theory to group theory: Theorems of Frobenius and Burnside.
Analysis of Algorithms (TÖL403G)
Methodology for the design of algorithms and the analysis of their time conplexity. Analysis of algorithms for sorting, searching, graph theory and matrix computations. Intractable problems, heuristics, and randomized algorithms.
- Fall
- TÖL101GComputer Science 1Mandatory (required) course6A mandatory (required) course for the programme6 ECTS, creditsCourse Description
Note: Only one course of either TÖL101G Tölvunarfræði 1 or TÖL105G Tölvunarfræði 1a can count towards the BS degree.
The Java programming language is used to introduce basic concepts in computer programming: Expressions and statements, textual and numeric data types, conditions and loops, arrays, methods, classes and objects, input and output. Programming and debugging skills are practiced in quizzes and projects throughout the semester.
Face-to-face learningPrerequisitesTÖL104GDiscrete mathematicsMandatory (required) course8A mandatory (required) course for the programme8 ECTS, creditsCourse DescriptionPropositions, predicates, inference rules. Set operations and Boolean algebra. Induction and recursion. Basic methods of analysis of algorithms and counting. Simple algorithms in number theory. Relations, their properties and representations. Trees and graphs and related algorithms. Strings, examples of languages, finite automata and grammars.
Face-to-face learningPrerequisitesSTÆ110GIntroduction to MathematicsMandatory (required) course2A mandatory (required) course for the programme2 ECTS, creditsCourse DescriptionThe course covers the language of mathematics and the fundamentals of logic and set theory.
The treatment of logic and set theory is naive but sufficiently precise to serve as a foundation for the general use of logic and mathematics in further mathematical studies. Emphasis is placed on basic concepts such as quantifiers, implications, sets, mappings, injective and surjective functions. Training is provided in formulating simple proofs. The course is taught once a week, three class hours at a time. A written final exam will be held in teaching week 12. Students complete assignments during the semester that count for 30% of the final grade.Face-to-face learningPrerequisitesSTÆ101GMathematical Analysis IAMandatory (required) course8A mandatory (required) course for the programme8 ECTS, creditsCourse DescriptionMain emphasis is on the differential and integral calculus of functions of a single variable. The systems of real and complex numbers. Least upper bound and greatest lower bound. Natural numbers and induction. Mappings and functions. Sequences and limits. Series and convergence tests. Conditionally convergent series. Limits and continuous functions. Trigonometric functions. Differentiation. Extreme values. The mean value theorem and polynomial approximation. Integration. The fundamental theorem of calculus. Logarithmic and exponential functions, hyperbolic and inverse trigonometric functions. Methods for finding antiderivatives. Real power series. First-order differential equations. Complex valued functions and second-order differential equations.
Face-to-face learningPrerequisitesSTÆ107GLinear AlgebraMandatory (required) course6A mandatory (required) course for the programme6 ECTS, creditsCourse DescriptionBasics of linear algebra over the reals.
Subject matter: Systems of linear equations, matrices, Gauss-Jordan reduction. Vector spaces and their subspaces. Linearly independent sets, bases and dimension. Linear maps, range space and nullk space. The dot product, length and angle measures. Volumes in higher dimension and the cross product in threedimensional space. Flats, parametric descriptions and descriptions by equations. Orthogonal projections and orthonormal bases. Gram-Schmidt orthogonalization. Determinants and inverses of matrices. Eigenvalues, eigenvectors and diagonalization.Face-to-face learningPrerequisites- Spring 2
TÖL203GComputer Science 2Mandatory (required) course6A mandatory (required) course for the programme6 ECTS, creditsCourse DescriptionThe programming language Java will be used in the course. Various data structures, algorithms and abstract data types will be covered. Among the data types and structures covered are lists, stacks, queues, priority queues, trees, binary trees, binary search trees and heaps along with related algorithms. Various search and sort algorithms will be covered. Algorithms will be analysed for their space and time complexity. There will be programming assignments in Java using the given data structures and algorithms. There will be many small assignments.
Face-to-face learningPrerequisitesSTÆ202GSets and Metric SpacesMandatory (required) course8A mandatory (required) course for the programme8 ECTS, creditsCourse DescriptionElements of set theory: Sets. Mappings. Relations, equivalence relations, orderings. Finite, infinite, countable and uncountable sets. Equipotent sets. Construction of the number systems. Metric spaces: Open sets and closed sets, convergent sequences and Cauchy sequences, cluster points of sets and limit points of sequences. Continuous mappings, convergence, uniform continuity. Complete metric spaces. Uniform convergence and interchange of limits. The Banach fixed point theorem; existence theorem about solutions of first-order differential equations. Completion of metric spaces. Compact metric spaces. Connected sets. Infinite series, in particular function series.
Face-to-face learningPrerequisitesSTÆ203GProbability and StatisticsMandatory (required) course6A mandatory (required) course for the programme6 ECTS, creditsCourse DescriptionBasic concepts in probability and statistics based on univariate calculus.
Topics:
Sample space, events, probability, equal probability, independent events, conditional probability, Bayes rule, random variables, distribution, density, joint distribution, independent random variables, condistional distribution, mean, variance, covariance, correlation, law of large numbers, Bernoulli, binomial, Poisson, uniform, exponential and normal random variables. Central limit theorem. Poisson process. Random sample, statistics, the distribution of the sample mean and the sample variance. Point estimate, maximum likelihood estimator, mean square error, bias. Interval estimates and hypotheses testing form normal, binomial and exponential samples. Simple linear regression. Goodness of fit tests, test of independence.Face-to-face learningPrerequisitesSTÆ207GMathematical Analysis IIAMandatory (required) course8A mandatory (required) course for the programme8 ECTS, creditsCourse DescriptionEmphasis is laid on the theoretical aspects of the material. The aim is that the students acquire understanding of fundamental concepts and are able to use them, both in theoretical consideration and in calculations. Open and closed sets. Mappings, limits and continuity. Differentiable mappings, partial derivatives and the chain rule. Jacobian matrices. Gradients and directional derivatives. Mixed partial derivatives. Curves. Vector fields and flows. Cylindrical and spherical coordinates. Taylor polynomials. Extrema and classification of stationary points. Extrema with constraints. Implicit functions and local inverses. Line integrals and potential functions. Proper and improper multiple integrals. Change of variables in multiple integrals. Simply connected regions. Integration on surfaces. Theorems of Green, Stokes and Gauss.
Face-to-face learningPrerequisitesSTÆ210GIntroduction to Probability TheoryMandatory (required) course2A mandatory (required) course for the programme2 ECTS, creditsCourse DescriptionThis is an extension of the course "Probability and Statistics" STÆ203G. The basic concepts of probability are considered in more detail with emphasis on definitions and proofs. The course is a preparation for the two M-courses in probability and the two M-courses in statistics that are taught alternately every other year.
Topics beyond those discussed in the probability part of STÆ203G:
Kolmogorov's definition. Proofs of propositions on compound events and conditional probability. Proofs for discrete and continuous variables of propositions on expectation, variance, covariance, correlation, and conditional expectation and variance. Proofs of propositions for Bernoulli, binomial, Poisson, geometric, uniform, exponential, and gamma variables. Proof of the tail-summing proposition for expectation and the application to the geometric variable. Proof of the proposition on memoryless and exponential variables. Derivation of the distribution of sums of independent variables such as binomial, Poisson, normal, and gamma variables. Probability and moment generating functions.Face-to-face learningPrerequisites- Fall
- TÖL303GData Base Theory and PracticeRestricted elective course6Restricted elective course, conditions apply6 ECTS, creditsCourse Description
Databases and database management systems. Physical data organization. Data modelling using the Entity-Relationship model and the Relational model. Relational algebra and calculus. The SQL query language. Design theory for relational data bases, functional dependencies, decomposition of relational schemes, normal forms. Query optimization. Concurrency control techniques and crash recovery. Database security and authorization. Data warehousing.
Face-to-face learningPrerequisitesTÖL304GProgramming LanguagesRestricted elective course6Restricted elective course, conditions apply6 ECTS, creditsCourse DescriptionAn introduction to the most common types of programming languages. Block structured languages, list processing languages, object oriented programming. Describing programming languages, compilers and interpreters. The internal structure of block structured programming languages.Modular programming . Functions and subroutines, parameter passing. Memory management, garbage collection. The programming languages Scheme, CAML, Java, Morpho, C++ and Haskell will be considered. Object oriented programming languages. Objects and inheritance. Grammars, the structure of compilers. Modular programming will be emphasised (especially generic modules), as well as list processing, functional programming and block structure.
Face-to-face learningPrerequisitesSTÆ301GComplex Analysis IMandatory (required) course8A mandatory (required) course for the programme8 ECTS, creditsCourse DescriptionComplex numbers and the topology of the complex plane. Sequences and series of complex numbers. Differentiable and holomorphic functions. Sequences and series of functions; power series. Path integration and primitives. The exponential function and related functions. Winding numbers. The Cauchy theorem, the integral formula of Cauchy and consequences. The identity theorem, the open mapping theorem and the maximum principle. Laurent series, isolated singularities and their classification. The theorem of residues and residue calculus. The argument principle and Rouché's theorem. Connections with real analysis: The Cauchy-Riemann equations, harmonic functions and the integral formulas of Poisson and Schwarz. Holomorphic functions defined by integrals (e. g. the Laplace transformation). Conformal mapping and the Riemann mapping theorem.
Face-to-face learningPrerequisitesSTÆ303GAlgebraMandatory (required) course8A mandatory (required) course for the programme8 ECTS, creditsCourse DescriptionGroups, examples and basic concepts. Symmetry groups. Homomorphisms and normal subgroups. Rings, examples and basic concepts. Integral domains. Ring homomorphisms and ideals. Polynomial rings and factorization of polynomials. Special topics.
Face-to-face learningPrerequisitesSTÆ304GMathematical Analysis IIIAMandatory (required) course8A mandatory (required) course for the programme8 ECTS, creditsCourse DescriptionThe course is an introduction to three important tools of applied mathematics, namely ordinary differential equations, Fourier-series and partial differential equations. Some basic theoretical properties are proved and solution methods presented.
Ordinary differential equations: linear differential equations of order n, the Cauchy problem, Picard's existence theorem, solution by power series and equations with singular points. Fourier series: convergence point-wise, uniformly and in the mean-square, Parseval's equation.
Partial differential equations: the heat equation and the wave equation solved on a finite interval by separation of variables and Fourier series and their solutions compared, the Dirichlet problem for the Laplace equation on the rectangle and the disc, the Poisson integral formula.
Face-to-face learningPrerequisites- Spring 2
Not taught this semesterSTÆ401MLinear algebra IIRestricted elective course10Restricted elective course, conditions apply10 ECTS, creditsCourse DescriptionModules and linear maps. Free modules and matrices. Quotient modules and short exact sequences. Dual modules. Finitely generated modules over a principal ideal domain. Linear operators on finite dimensional vector spaces.
Face-to-face learningThe course is taught if the specified conditions are metPrerequisitesSTÆ403MGalois theoryRestricted elective course10Restricted elective course, conditions apply10 ECTS, creditsCourse DescriptionSelected topics in commutative algebra.
Subject matter: Fields and field extensions. Algeraic extensions, normal extensions and seperable extensions. Galois theory. Applications.
Noetherian rings. Hilbert's basis theorem and Hilbert's Nullstellensatz.Face-to-face learningThe course is taught if the specified conditions are metPrerequisitesSTÆ402MMeasure and Integration TheoryRestricted elective course8Restricted elective course, conditions apply8 ECTS, creditsCourse DescriptionMeasure spaces, measures, outer measures. The Lebesgue measure on Rn. Measurable functions, the monotone convergence theorem, Fatou’s Lemma. Integrable functions, Lebesgue’s dominated convergence theorem and applications. Inequalities of Hölder and Minkowski, Lp-spaces, simple facts about Banach and Hilbert spaces. Fourier series. Product of measure spaces, theorems of Tonelli and Fubini. Complex measures. Jordan decomposition and Lebesgue decomposition of measures, Radon-Níkodým theorem. Continuous linear functionals on Lp-spaces. Image measures, transformation formula for the Lebesgue measure on Rn.
Face-to-face learningThe course is taught if the specified conditions are metPrerequisitesSTÆ419MTopologyRestricted elective course8Restricted elective course, conditions apply8 ECTS, creditsCourse DescriptionGeneral topology: Topological spaces and continuous maps. Subspaces, product spaces and quotient spaces. Connected spaces and compact spaces. Separation axioms, the lemma of Urysohn and a metrization theorem. Completely regular spaces and compactifications.
Face-to-face learningThe course is taught if the specified conditions are metPrerequisitesSTÆ412GTheoretical Numerical AnalysisMandatory (required) course2A mandatory (required) course for the programme2 ECTS, creditsCourse DescriptionThis is an extension of the course "Numerical Analysis" STÆ405G. The material of Numerical Analysis (STÆ405G) is studied in more detail and more theoretically with emphasis on proofs.
Face-to-face learningPrerequisitesSTÆ405GNumerical AnalysisMandatory (required) course6A mandatory (required) course for the programme6 ECTS, creditsCourse DescriptionFundamental concepts on approximation and error estimates. Solutions of systems of linear and non-linear equations. PLU decomposition. Interpolating polynomials, spline interpolation and regression. Numerical differentiation and integration. Extrapolation. Numerical solutions of initial value problems of systems of ordinary differential equations. Multistep methods. Numerical solutions to boundary value problems for ordinary differential equations.
Grades are given for programning projects and in total they amount to 30% of the final grade. The student has to receive the minimum grade of 5 for both the projects and the final exam.
Face-to-face learningPrerequisitesTÖL403GAnalysis of AlgorithmsMandatory (required) course6A mandatory (required) course for the programme6 ECTS, creditsCourse DescriptionMethodology for the design of algorithms and the analysis of their time conplexity. Analysis of algorithms for sorting, searching, graph theory and matrix computations. Intractable problems, heuristics, and randomized algorithms.
Face-to-face learningPrerequisites- Fall
- REI505MMachine LearningRestricted elective course6Restricted elective course, conditions apply6 ECTS, creditsCourse Description
An overview of some of the main concepts, techniques and algorithms in machine learning. Supervised learning and unsupervised learning. Data preprocessing and data visualization. Model evaluation and model selection. Linear regression, nearest neighbours, support vector machines, decision trees and ensemble methods. Deep learning. Cluster analysis and the k-means algorithm. The students implement simple algorithms in Python and learn how to use specialized software packages. At the end of the course, the students work on a practical machine learning project.
Face-to-face learningPrerequisitesSTÆ520MGraph TheoryRestricted elective course8Restricted elective course, conditions apply8 ECTS, creditsCourse DescriptionGraphs, homomorphisms and isomorphisms of graphs. Subgraphs, spanning subgraphs. Paths, connected graphs. Directed graphs. Bipartite graphs. Euler graphs and Hamilton graphs; the theorems of Chvátal, Pósa, Ore and Dirac. Tournaments. Trees, spanning trees, the matrix-tree theorem, Cayley's theorem. Weighted graphs, the algorithms of Kruskal and Dijkstra. Networks, the max-flow-min-cut theorem, the algorithm of Ford and Fulkerson, Menger's theorem. Matchings, Berge's theorem, Hall's marriage theorem, the König-Egerváry theorem, the Kuhn-Munkres algorithm. Inseparable and two-connected graphs. Planar graphs, Euler's formula, Kuratowski's theorem, dual graphs. Embeddings of graphs in surfaces, the Ringel-Youngs-Mayer theorem. Colourings, Heawood's coloring theorem, Brooks's theorem, chromatic polynomial; edge colourings, Vizing's theorem.
Face-to-face learningThe course is taught if the specified conditions are metPrerequisitesNot taught this semesterSTÆ533MCombinatoricsRestricted elective course8Restricted elective course, conditions apply8 ECTS, creditsCourse DescriptionThis course is aimed at second and third year undergraduate mathematics students. The purpose is to introduce the student to several combinatorial structures, methods of their enumeration and useful properties. Particular emphasis will be placed on the systematic use of generating functions in enumeration.
Face-to-face learningThe course is taught if the specified conditions are metPrerequisitesTÖL301GFormal Languages and ComputabilityRestricted elective course6Restricted elective course, conditions apply6 ECTS, creditsCourse DescriptionFinite state machines, regular languages and grammars, push-down automata, context-free languages and grammars, Turing machines, general languages and grammars, and their basic properties. Recursive and recursively enumerable languages, reduction between languages, connection to decision problems and proving unsolvability of such problems. The complexity classes P and NP, and NP-completeness. Examples of various models of computation.
Face-to-face learningPrerequisites- Spring 2
HBV401GSoftware DevelopmentRestricted elective course6Restricted elective course, conditions apply6 ECTS, creditsCourse DescriptionIn this course, software engineers and computer scientists take the step from programming-in-the-small (i.e. individual developers creating compact modules that solve clearly defined problems) to programming-in-the-large (i.e. teams of developers building complex systems that satisfy vague customer requirements). To deal with the complexities of such projects, this course introduces key software engineering concepts such as agile and plan-driven software process models, requirements engineering, effort estimation, object-oriented analysis and design, software architecture and test-driven development. These concepts are immediately applied in practice as students team up to develop and integrate component-based systems using the Java programming language.
Face-to-face learningPrerequisitesTÖL401GOperating SystemsRestricted elective course6Restricted elective course, conditions apply6 ECTS, creditsCourse DescriptionThis course covers concepts of operating systems. Besides foundations on computer hardware structures and general operating system architectures, this includes concepts of processes and threads and their management, principles of scheduling and scheduling algorithms, communication and synchronisation between processes and deadlock issues, principles of memory management including virtual memory and page replacement algorithms, file systems and their implementation as well as mass-storage management. If time allows, principles for achieving protection and security, and aspects of distribution (e.g. concepts of distributed systems and distributed file systems) are covered as well. This course does not deal with details of implementing operating systems, but introduces generic concepts that are used when implementing operating systems and that an application developer needs to know, when creating an application program. Where appropriate, current operating systems such as Microsoft Windows and POSIX-compliant UNIX-like systems (e.g. Linux) are used as case study for implementation and offered system calls. The usage of operating system services from within high-level programming languages (e.g. C, C++ or Java) is demonstrated based on Application Programming Interfaces (APIs) offered by prevailing system libraries.
Face-to-face learningPrerequisitesSTÆ402GMathematical SeminarMandatory (required) course4A mandatory (required) course for the programme4 ECTS, creditsCourse DescriptionThis course is intended for students who have completed at least 120 ECTS credits. Students who have not completed 120 ECTS credits and are interested in taking the course must obtain the approval of the supervisor prior to signing up for the course.
Each student prepares and studies a selected well-defined topic of mathematics or statistics and will be assigned a mentor related to that topic. Topics vary from year to year. A list of possible topics is released at the start of or prior to the course and students can also suggest topics (provided that a mentor can be found). Students write a thesis on their selected topic and prepare and give a lecture on the topic at a student conference. During the course, students provide each other with constructive critique both regarding the thesis writing and the preparation of the lecture. In addition to presenting their own projects at the student conference, students take active part, listen to their fellow course members and ask questions.
Face-to-face learningPrerequisites- Fall
- Not taught this semesterREI503MPerformance analysis of computer systemsElective course6Free elective course within the programme6 ECTS, creditsCourse Description
Usually taught every second year.
This course provides students with an introduction to modeling and performance evaluation of computer and communication systems. Large-scale distributed computer systems process arriving requests, e.g., web page queries, in parallel in order to optimize performance metrics, such as response time and user satisfaction. Other important performance metrics include throughput and service-level agreement in general. This course covers basic mathematical tools needed to evaluate such dynamic systems and to understand the strengths and weaknesses, for example, in different designs, scheduling disciplines, and operating policies. The approach is based on operations research methods, in particular, queueing theory and Markov processes (previous knowledge of these methods is not required).
Attendance is strongly recommended.
Face-to-face learningThe course is taught if the specified conditions are metPrerequisitesVON101MInnovation, IP protection, and applicationElective course3Free elective course within the programme3 ECTS, creditsCourse DescriptionMinimum number of students registered for the course to be taught: 10
This course will cover basics in intellectual property rights with emphasis on patents. What is intellectual property and when and how can they best be protected? How does intellectual property rights work (e.g. patents), and how can they be used and applied in innovation and industry. The system‘s organization will be covered, as well as the patent process, making a financial plan relating to patents, and database searches.
Face-to-face learningPrerequisitesIÐN508MOperations Research 2Elective course6Free elective course within the programme6 ECTS, creditsCourse DescriptionThis course will introduce the student to decision and optimization models in operations research. On completing the course the student will be able to formulate, analyze, and solve mathematical models, which represent real-world problems, and critically interpret their results. The course will cover integer programming and modeling with stochastic programming. The student will become familiar with building mathematical models using Python.
Face-to-face learningPrerequisitesCourse DescriptionStudents will perform traditional statistical analysis on real data sets. Special focus will be on regression methods, including multiple regression analysis. Students will apply sophisticated methods of graphical representation and automatic reporting. Students will hand in a projects where they apply the above mentioned methods on real datasets in order to answer research questions
Face-to-face learningPrerequisitesCourse DescriptionAn overview of some of the main concepts, techniques and algorithms in machine learning. Supervised learning and unsupervised learning. Data preprocessing and data visualization. Model evaluation and model selection. Linear regression, nearest neighbours, support vector machines, decision trees and ensemble methods. Deep learning. Cluster analysis and the k-means algorithm. The students implement simple algorithms in Python and learn how to use specialized software packages. At the end of the course, the students work on a practical machine learning project.
Face-to-face learningPrerequisitesSNU503MVarious approaches to teaching mathematics in upper secondary schoolsElective course10Free elective course within the programme10 ECTS, creditsCourse DescriptionIn this course, students learn to plan mathematics teaching in upper secondary school using various approaches to provide access for all. An emphasis will be put on exploring different teaching environments and teaching methods that build on research on the teaching and learning of mathematics. In the course, the aims of learning mathematics both in Iceland and its neighboring countries will be discussed based on curricular and governmental documents. Students will read about and get a chance to try out various ways to assess and analyze students’ mathematical achievements. The course format includes lectures, project work, presentations, topic studies connected to practice, and critical topic discussion. An emphasis will be put on students’ discussion about challenges and their search for solutions to problems related to the teaching and learning of mathematics.
Face-to-face learningPrerequisitesAttendance required in classCourse DescriptionResearch Project
Self-studyPrerequisitesPart of the total project/thesis creditsSTÆ310MTheory of linear modelsElective course6Free elective course within the programme6 ECTS, creditsCourse DescriptionSimple and multiple linear regression, analysis of variance and covariance, inference, variances and covariances of estimators, influence and diagnostic analyses using residual and influence measures, simultaneous inference. General linear models as projections with ANOVA as special case, simultaneous inference of estimable functions. R is used in assignments. Solutions to assignments are returned in LaTeX and PDF format.
In addition selected topics will be visited, e.g. generalized linear models (GLMs), nonlinear regression and/or random/mixed effects models and/or bootstrap methods etc.
Students will present solutions to individually assigned
projects/exercises, each of which is handed in earlier through a web-page.This course is taught in semesters of even-numbered years.
Face-to-face learningOnline learningThe course is taught if the specified conditions are metPrerequisitesSTÆ312MApplied Linear Statistical ModelsElective course6Free elective course within the programme6 ECTS, creditsCourse DescriptionThe course focuses on simple and multiple linear regression as well as analysis of variance (ANOVA), analysis of covariance (ANCOVA) and binomial regression. The course is a natural continuation of a typical introductory course in statistics taught in various departments of the university.
We will discuss methods for estimating parameters in linear models, how to construct confidence intervals and test hypotheses for the parameters, which assumptions need to hold for applying the models and what to do when they are not met.
Students will work on projects using the statistical software R.
Face-to-face learningPrerequisitesSTÆ511MNumerical Linear AlgebraElective course8Free elective course within the programme8 ECTS, creditsCourse DescriptionIterative methods for linear systems of equations. Decompositions of matrices: QR, Cholesky, Jordan, Schur, spectral and singular value decomposition (SVD) and their applications. Discrete Fourier transform (DFT) and the fast Fourier transform (FFT). Discrete cosine transform (DCT) in two-dimensions and its application for the compression of images (JPEG) and audio (MP3, AAC). Sparse matrices and their representation.
Special emphasis will be on the application and implementation of the methods studied.
Face-to-face learningThe course is taught if the specified conditions are metPrerequisitesCourse DescriptionGraphs, homomorphisms and isomorphisms of graphs. Subgraphs, spanning subgraphs. Paths, connected graphs. Directed graphs. Bipartite graphs. Euler graphs and Hamilton graphs; the theorems of Chvátal, Pósa, Ore and Dirac. Tournaments. Trees, spanning trees, the matrix-tree theorem, Cayley's theorem. Weighted graphs, the algorithms of Kruskal and Dijkstra. Networks, the max-flow-min-cut theorem, the algorithm of Ford and Fulkerson, Menger's theorem. Matchings, Berge's theorem, Hall's marriage theorem, the König-Egerváry theorem, the Kuhn-Munkres algorithm. Inseparable and two-connected graphs. Planar graphs, Euler's formula, Kuratowski's theorem, dual graphs. Embeddings of graphs in surfaces, the Ringel-Youngs-Mayer theorem. Colourings, Heawood's coloring theorem, Brooks's theorem, chromatic polynomial; edge colourings, Vizing's theorem.
Face-to-face learningThe course is taught if the specified conditions are metPrerequisitesNot taught this semesterSTÆ528MIntroduction to LogicElective course8Free elective course within the programme8 ECTS, creditsCourse DescriptionLogical deductions and proofs. Propositional calculus, connectives, truth functions and tautologies. Formal languages, axioms, inference rules. Quantifiers. First-order logic. Interpretations. The compactness theorem. The Lövenheim-Skolem theorem. Computability, recursive functions. Gödel's theorem.
Face-to-face learningPrerequisitesNot taught this semesterSTÆ529MBayesian Data AnalysisElective course8Free elective course within the programme8 ECTS, creditsCourse DescriptionGoal: To train students in applying methods of Bayesian statistics for analysis of data. Topics: Theory of Bayesian inference, prior distributions, data distributions and posterior distributions. Bayesian inference for parameters of univariate and multivariate distributions: binomial; normal; Poisson; exponential; multivariate normal; multinomial. Model checking and model comparison: Bayesian p-values; deviance information criterion (DIC). Bayesian computation: Markov chain Monte Carlo (MCMC) methods; the Gibbs sampler; the Metropolis-Hastings algorithm; convergence diagnostistics. Linear models: normal linear models; hierarchical linear models; generalized linear models. Emphasis on data analysis using software, e.g. Matlab and R.
Face-to-face learningThe course is taught if the specified conditions are metPrerequisitesNot taught this semesterSTÆ533MCombinatoricsElective course8Free elective course within the programme8 ECTS, creditsCourse DescriptionThis course is aimed at second and third year undergraduate mathematics students. The purpose is to introduce the student to several combinatorial structures, methods of their enumeration and useful properties. Particular emphasis will be placed on the systematic use of generating functions in enumeration.
Face-to-face learningThe course is taught if the specified conditions are metPrerequisitesNot taught this semesterSTÆ537MNumerical Methods for Partial Differential EquationsElective course8Free elective course within the programme8 ECTS, creditsCourse DescriptionThe aim of the course is to study numerical methods to solve partial differential equations and their implementation.
Face-to-face learningThe course is taught if the specified conditions are metPrerequisitesTÖL301GFormal Languages and ComputabilityElective course6Free elective course within the programme6 ECTS, creditsCourse DescriptionFinite state machines, regular languages and grammars, push-down automata, context-free languages and grammars, Turing machines, general languages and grammars, and their basic properties. Recursive and recursively enumerable languages, reduction between languages, connection to decision problems and proving unsolvability of such problems. The complexity classes P and NP, and NP-completeness. Examples of various models of computation.
Face-to-face learningPrerequisitesNot taught this semesterTÖL504MAlgorithms in BioinformaticsElective course6Free elective course within the programme6 ECTS, creditsCourse DescriptionThis course will cover the algorithmic aspects of bioinformatic. We will start with an introduction to genomics and algorithms for students new to the field. The course is divided into modules, each module covers a single problem in bioinformatics that will be motivated based on current research. The module will then cover algorithms that solve the problem and variations on the problem. The problems covered are motif finding, edit distance in strings, sequence alignment, clustering, sequencing and assembly and finally computational methods for high throughput sequencing (HTS).
Face-to-face learningPrerequisites- Spring 2
STÆ415MStochastic ProcessesElective course10Free elective course within the programme10 ECTS, creditsCourse DescriptionIntroduction to stochastic processes with main emphasis on Markov chains.
Subject matter: Hitting time, classification of states, irreducibility, period, recurrence (positive and null), transience, regeneration, coupling, stationarity, time-reversibility, coupling from the past, branching processes, queues, martingales, Brownian motion.Face-to-face learningThe course is taught if the specified conditions are metPrerequisitesSTÆ418MIntroduction to Measure-Theoretic ProbabilityElective course10Free elective course within the programme10 ECTS, creditsCourse DescriptionProbability based on measure-theory.
Subject matter: Probability, extension theorems, independence, expectation. The Borel-Cantelli theorem and the Kolmogorov 0-1 law. Inequalities and the weak and strong laws of large numbers. Convergence pointwise, in probability, with probability one, in distribution, and in total variation. Coupling methods. The central limit theorem. Conditional probability and expectation.
Face-to-face learningThe course is taught if the specified conditions are metPrerequisitesTÖL604MAlgorithms in BioinformaticsElective course6Free elective course within the programme6 ECTS, creditsCourse DescriptionThis course will cover the algorithmic aspects of bioinformatic. We will start with an introduction to genomics and algorithms for students new to the field. The course is divided into modules, each module covers a single problem in bioinformatics that will be motivated based on current research. The module will then cover algorithms that solve the problem and variations on the problem. The problems covered are motif finding, edit distance in strings, sequence alignment, clustering, sequencing and assembly and finally computational methods for high throughput sequencing (HTS).
Face-to-face learningPrerequisitesREI202GIntroduction to data scienceElective course6Free elective course within the programme6 ECTS, creditsCourse DescriptionThe course provides an introduction to the methods at the heart of data science and introduces widely used software tools such as numpy, pandas, matplotlib and scikit-learn.
The course consists of 6 modules:
- Introduction to the Python programming language.
- Data wrangling and data preprocessing.
- Exploratory data analysis and visualization.
- Optimization.
- Clustering and dimensionality reduction.
- Regression and classification.
Each module concludes with a student project.
Note that there is an academic overlap with REI201G Mathematics and Scientific Computing and both courses cannot be valid for the same degree.
Face-to-face learningPrerequisitesLÝÐ201MStatistical ConsultingElective course6Free elective course within the programme6 ECTS, creditsCourse DescriptionParticipants in the course will obtain training in practical statistics as used when providing general statistical counselling. The participants will be introduced to actual statistical projects by assisting students in various departments within the university. The participants will report on the projects in class, discuss options for solving the projects and subsequently assist the students with analyses using R and interpretation of results.
Face-to-face learningPrerequisitesNot taught this semesterEÐL612MMathematical PhysicsElective course8Free elective course within the programme8 ECTS, creditsCourse DescriptionContinuum mechanics: Stress and strain, equations of motion. Seismic waves. Maxwell's equations and electromagnetic waves. Plane waves, reflection and refraction. Distributions and Fourier transforms. Fundamental solutions of linear partial differential equation. Waves in homogeneous media. Huygens' principle and Ásgeirsson's mean value theorem. Dispersion, phase and group velocities, Kramers-Kronig equations. The method of stationary phase. Surface waves on liquids.
Face-to-face learningPrerequisitesCourse DescriptionThis course will introduce the student to decision and optimization models in operations research. On completing the course the student will be able to formulate, analyze, and solve mathematical models, which represent real-world problems, and critically interpret their results. The course will cover linear programming and the simplex algorithm, as well as related analytical topics. It will also introduce special types of mathematical models, including transportation, assignment, network, and integer programming models. The student will become familiar with a modeling language for linear programming.
Face-to-face learningPrerequisitesNot taught this semesterMAS201MStatistical ConsultingElective course6Free elective course within the programme6 ECTS, creditsCourse DescriptionParticipants in the course will obtain training in practical statistics as used when providing general statistical counselling. The participants will be introduced to actual statistical projects by assisting students in various departments within the university. The participants will report on the projects in class, discuss options for solving the projects and subsequently assist the students with analyses using R and interpretation of results.
Face-to-face learningPrerequisitesMAS202MApplied data analysisElective course6Free elective course within the programme6 ECTS, creditsCourse DescriptionThe course focuses on statistical analysis using the R environment. It is assumed that students have basic knowledge of statistics and the statistical software R. Students will learn to apply a broad range of statistical methods in R (such as classification methods, resampling methods, linear model selection and tree-based methods). The course on 12 weeks and will be on "flipped" form. This means that no lectures will be given but students will read some material and watch videos before attending classes. Students will then work on assignments during the classes.
Face-to-face learningPrerequisitesCourse DescriptionResearch Project
Self-studyPrerequisitesPart of the total project/thesis creditsSTÆ401GMathematical Analysis IVElective course6Free elective course within the programme6 ECTS, creditsCourse DescriptionAim: To introduce the student to Fourier analysis and partial differential equations and their applications.
Subject matter: Fourier series and orthonormal systems of functions, boundary-value problems for ordinary differential equations, the eigenvalue problem for Sturm-Liouville operators, Fourier transform. The wave equation, diffusion equation and Laplace's equation solved on various domains in one, two and three dimensions by methods based on the first part of the course, separation of variables, fundamental solution, Green's functions and the method of images.Face-to-face learningPrerequisitesCourse DescriptionGeneral topology: Topological spaces and continuous maps. Subspaces, product spaces and quotient spaces. Connected spaces and compact spaces. Separation axioms, the lemma of Urysohn and a metrization theorem. Completely regular spaces and compactifications.
Face-to-face learningThe course is taught if the specified conditions are metPrerequisitesNot taught this semesterSTÆ626MRepresentation Theory of Finite groupsElective course6Free elective course within the programme6 ECTS, creditsCourse DescriptionThe definition of a linear representation of a group. Schur's lemma. Group characters. The group algebra. Representation theory of the symmetric group. Applications of representation theory to group theory: Theorems of Frobenius and Burnside.
Face-to-face learningPrerequisitesTÖL403GAnalysis of AlgorithmsElective course6Free elective course within the programme6 ECTS, creditsCourse DescriptionMethodology for the design of algorithms and the analysis of their time conplexity. Analysis of algorithms for sorting, searching, graph theory and matrix computations. Intractable problems, heuristics, and randomized algorithms.
Face-to-face learningPrerequisitesSecond year- Fall
- TÖL101GComputer Science 1Mandatory (required) course6A mandatory (required) course for the programme6 ECTS, creditsCourse Description
Note: Only one course of either TÖL101G Tölvunarfræði 1 or TÖL105G Tölvunarfræði 1a can count towards the BS degree.
The Java programming language is used to introduce basic concepts in computer programming: Expressions and statements, textual and numeric data types, conditions and loops, arrays, methods, classes and objects, input and output. Programming and debugging skills are practiced in quizzes and projects throughout the semester.
Face-to-face learningPrerequisitesTÖL104GDiscrete mathematicsMandatory (required) course8A mandatory (required) course for the programme8 ECTS, creditsCourse DescriptionPropositions, predicates, inference rules. Set operations and Boolean algebra. Induction and recursion. Basic methods of analysis of algorithms and counting. Simple algorithms in number theory. Relations, their properties and representations. Trees and graphs and related algorithms. Strings, examples of languages, finite automata and grammars.
Face-to-face learningPrerequisitesSTÆ110GIntroduction to MathematicsMandatory (required) course2A mandatory (required) course for the programme2 ECTS, creditsCourse DescriptionThe course covers the language of mathematics and the fundamentals of logic and set theory.
The treatment of logic and set theory is naive but sufficiently precise to serve as a foundation for the general use of logic and mathematics in further mathematical studies. Emphasis is placed on basic concepts such as quantifiers, implications, sets, mappings, injective and surjective functions. Training is provided in formulating simple proofs. The course is taught once a week, three class hours at a time. A written final exam will be held in teaching week 12. Students complete assignments during the semester that count for 30% of the final grade.Face-to-face learningPrerequisitesSTÆ101GMathematical Analysis IAMandatory (required) course8A mandatory (required) course for the programme8 ECTS, creditsCourse DescriptionMain emphasis is on the differential and integral calculus of functions of a single variable. The systems of real and complex numbers. Least upper bound and greatest lower bound. Natural numbers and induction. Mappings and functions. Sequences and limits. Series and convergence tests. Conditionally convergent series. Limits and continuous functions. Trigonometric functions. Differentiation. Extreme values. The mean value theorem and polynomial approximation. Integration. The fundamental theorem of calculus. Logarithmic and exponential functions, hyperbolic and inverse trigonometric functions. Methods for finding antiderivatives. Real power series. First-order differential equations. Complex valued functions and second-order differential equations.
Face-to-face learningPrerequisitesSTÆ107GLinear AlgebraMandatory (required) course6A mandatory (required) course for the programme6 ECTS, creditsCourse DescriptionBasics of linear algebra over the reals.
Subject matter: Systems of linear equations, matrices, Gauss-Jordan reduction. Vector spaces and their subspaces. Linearly independent sets, bases and dimension. Linear maps, range space and nullk space. The dot product, length and angle measures. Volumes in higher dimension and the cross product in threedimensional space. Flats, parametric descriptions and descriptions by equations. Orthogonal projections and orthonormal bases. Gram-Schmidt orthogonalization. Determinants and inverses of matrices. Eigenvalues, eigenvectors and diagonalization.Face-to-face learningPrerequisites- Spring 2
TÖL203GComputer Science 2Mandatory (required) course6A mandatory (required) course for the programme6 ECTS, creditsCourse DescriptionThe programming language Java will be used in the course. Various data structures, algorithms and abstract data types will be covered. Among the data types and structures covered are lists, stacks, queues, priority queues, trees, binary trees, binary search trees and heaps along with related algorithms. Various search and sort algorithms will be covered. Algorithms will be analysed for their space and time complexity. There will be programming assignments in Java using the given data structures and algorithms. There will be many small assignments.
Face-to-face learningPrerequisitesSTÆ202GSets and Metric SpacesMandatory (required) course8A mandatory (required) course for the programme8 ECTS, creditsCourse DescriptionElements of set theory: Sets. Mappings. Relations, equivalence relations, orderings. Finite, infinite, countable and uncountable sets. Equipotent sets. Construction of the number systems. Metric spaces: Open sets and closed sets, convergent sequences and Cauchy sequences, cluster points of sets and limit points of sequences. Continuous mappings, convergence, uniform continuity. Complete metric spaces. Uniform convergence and interchange of limits. The Banach fixed point theorem; existence theorem about solutions of first-order differential equations. Completion of metric spaces. Compact metric spaces. Connected sets. Infinite series, in particular function series.
Face-to-face learningPrerequisitesSTÆ203GProbability and StatisticsMandatory (required) course6A mandatory (required) course for the programme6 ECTS, creditsCourse DescriptionBasic concepts in probability and statistics based on univariate calculus.
Topics:
Sample space, events, probability, equal probability, independent events, conditional probability, Bayes rule, random variables, distribution, density, joint distribution, independent random variables, condistional distribution, mean, variance, covariance, correlation, law of large numbers, Bernoulli, binomial, Poisson, uniform, exponential and normal random variables. Central limit theorem. Poisson process. Random sample, statistics, the distribution of the sample mean and the sample variance. Point estimate, maximum likelihood estimator, mean square error, bias. Interval estimates and hypotheses testing form normal, binomial and exponential samples. Simple linear regression. Goodness of fit tests, test of independence.Face-to-face learningPrerequisitesSTÆ207GMathematical Analysis IIAMandatory (required) course8A mandatory (required) course for the programme8 ECTS, creditsCourse DescriptionEmphasis is laid on the theoretical aspects of the material. The aim is that the students acquire understanding of fundamental concepts and are able to use them, both in theoretical consideration and in calculations. Open and closed sets. Mappings, limits and continuity. Differentiable mappings, partial derivatives and the chain rule. Jacobian matrices. Gradients and directional derivatives. Mixed partial derivatives. Curves. Vector fields and flows. Cylindrical and spherical coordinates. Taylor polynomials. Extrema and classification of stationary points. Extrema with constraints. Implicit functions and local inverses. Line integrals and potential functions. Proper and improper multiple integrals. Change of variables in multiple integrals. Simply connected regions. Integration on surfaces. Theorems of Green, Stokes and Gauss.
Face-to-face learningPrerequisitesSTÆ210GIntroduction to Probability TheoryMandatory (required) course2A mandatory (required) course for the programme2 ECTS, creditsCourse DescriptionThis is an extension of the course "Probability and Statistics" STÆ203G. The basic concepts of probability are considered in more detail with emphasis on definitions and proofs. The course is a preparation for the two M-courses in probability and the two M-courses in statistics that are taught alternately every other year.
Topics beyond those discussed in the probability part of STÆ203G:
Kolmogorov's definition. Proofs of propositions on compound events and conditional probability. Proofs for discrete and continuous variables of propositions on expectation, variance, covariance, correlation, and conditional expectation and variance. Proofs of propositions for Bernoulli, binomial, Poisson, geometric, uniform, exponential, and gamma variables. Proof of the tail-summing proposition for expectation and the application to the geometric variable. Proof of the proposition on memoryless and exponential variables. Derivation of the distribution of sums of independent variables such as binomial, Poisson, normal, and gamma variables. Probability and moment generating functions.Face-to-face learningPrerequisites- Fall
- TÖL303GData Base Theory and PracticeRestricted elective course6Restricted elective course, conditions apply6 ECTS, creditsCourse Description
Databases and database management systems. Physical data organization. Data modelling using the Entity-Relationship model and the Relational model. Relational algebra and calculus. The SQL query language. Design theory for relational data bases, functional dependencies, decomposition of relational schemes, normal forms. Query optimization. Concurrency control techniques and crash recovery. Database security and authorization. Data warehousing.
Face-to-face learningPrerequisitesTÖL304GProgramming LanguagesRestricted elective course6Restricted elective course, conditions apply6 ECTS, creditsCourse DescriptionAn introduction to the most common types of programming languages. Block structured languages, list processing languages, object oriented programming. Describing programming languages, compilers and interpreters. The internal structure of block structured programming languages.Modular programming . Functions and subroutines, parameter passing. Memory management, garbage collection. The programming languages Scheme, CAML, Java, Morpho, C++ and Haskell will be considered. Object oriented programming languages. Objects and inheritance. Grammars, the structure of compilers. Modular programming will be emphasised (especially generic modules), as well as list processing, functional programming and block structure.
Face-to-face learningPrerequisitesSTÆ301GComplex Analysis IMandatory (required) course8A mandatory (required) course for the programme8 ECTS, creditsCourse DescriptionComplex numbers and the topology of the complex plane. Sequences and series of complex numbers. Differentiable and holomorphic functions. Sequences and series of functions; power series. Path integration and primitives. The exponential function and related functions. Winding numbers. The Cauchy theorem, the integral formula of Cauchy and consequences. The identity theorem, the open mapping theorem and the maximum principle. Laurent series, isolated singularities and their classification. The theorem of residues and residue calculus. The argument principle and Rouché's theorem. Connections with real analysis: The Cauchy-Riemann equations, harmonic functions and the integral formulas of Poisson and Schwarz. Holomorphic functions defined by integrals (e. g. the Laplace transformation). Conformal mapping and the Riemann mapping theorem.
Face-to-face learningPrerequisitesSTÆ303GAlgebraMandatory (required) course8A mandatory (required) course for the programme8 ECTS, creditsCourse DescriptionGroups, examples and basic concepts. Symmetry groups. Homomorphisms and normal subgroups. Rings, examples and basic concepts. Integral domains. Ring homomorphisms and ideals. Polynomial rings and factorization of polynomials. Special topics.
Face-to-face learningPrerequisitesSTÆ304GMathematical Analysis IIIAMandatory (required) course8A mandatory (required) course for the programme8 ECTS, creditsCourse DescriptionThe course is an introduction to three important tools of applied mathematics, namely ordinary differential equations, Fourier-series and partial differential equations. Some basic theoretical properties are proved and solution methods presented.
Ordinary differential equations: linear differential equations of order n, the Cauchy problem, Picard's existence theorem, solution by power series and equations with singular points. Fourier series: convergence point-wise, uniformly and in the mean-square, Parseval's equation.
Partial differential equations: the heat equation and the wave equation solved on a finite interval by separation of variables and Fourier series and their solutions compared, the Dirichlet problem for the Laplace equation on the rectangle and the disc, the Poisson integral formula.
Face-to-face learningPrerequisites- Spring 2
Not taught this semesterSTÆ401MLinear algebra IIRestricted elective course10Restricted elective course, conditions apply10 ECTS, creditsCourse DescriptionModules and linear maps. Free modules and matrices. Quotient modules and short exact sequences. Dual modules. Finitely generated modules over a principal ideal domain. Linear operators on finite dimensional vector spaces.
Face-to-face learningThe course is taught if the specified conditions are metPrerequisitesSTÆ403MGalois theoryRestricted elective course10Restricted elective course, conditions apply10 ECTS, creditsCourse DescriptionSelected topics in commutative algebra.
Subject matter: Fields and field extensions. Algeraic extensions, normal extensions and seperable extensions. Galois theory. Applications.
Noetherian rings. Hilbert's basis theorem and Hilbert's Nullstellensatz.Face-to-face learningThe course is taught if the specified conditions are metPrerequisitesSTÆ402MMeasure and Integration TheoryRestricted elective course8Restricted elective course, conditions apply8 ECTS, creditsCourse DescriptionMeasure spaces, measures, outer measures. The Lebesgue measure on Rn. Measurable functions, the monotone convergence theorem, Fatou’s Lemma. Integrable functions, Lebesgue’s dominated convergence theorem and applications. Inequalities of Hölder and Minkowski, Lp-spaces, simple facts about Banach and Hilbert spaces. Fourier series. Product of measure spaces, theorems of Tonelli and Fubini. Complex measures. Jordan decomposition and Lebesgue decomposition of measures, Radon-Níkodým theorem. Continuous linear functionals on Lp-spaces. Image measures, transformation formula for the Lebesgue measure on Rn.
Face-to-face learningThe course is taught if the specified conditions are metPrerequisitesSTÆ419MTopologyRestricted elective course8Restricted elective course, conditions apply8 ECTS, creditsCourse DescriptionGeneral topology: Topological spaces and continuous maps. Subspaces, product spaces and quotient spaces. Connected spaces and compact spaces. Separation axioms, the lemma of Urysohn and a metrization theorem. Completely regular spaces and compactifications.
Face-to-face learningThe course is taught if the specified conditions are metPrerequisitesSTÆ412GTheoretical Numerical AnalysisMandatory (required) course2A mandatory (required) course for the programme2 ECTS, creditsCourse DescriptionThis is an extension of the course "Numerical Analysis" STÆ405G. The material of Numerical Analysis (STÆ405G) is studied in more detail and more theoretically with emphasis on proofs.
Face-to-face learningPrerequisitesSTÆ405GNumerical AnalysisMandatory (required) course6A mandatory (required) course for the programme6 ECTS, creditsCourse DescriptionFundamental concepts on approximation and error estimates. Solutions of systems of linear and non-linear equations. PLU decomposition. Interpolating polynomials, spline interpolation and regression. Numerical differentiation and integration. Extrapolation. Numerical solutions of initial value problems of systems of ordinary differential equations. Multistep methods. Numerical solutions to boundary value problems for ordinary differential equations.
Grades are given for programning projects and in total they amount to 30% of the final grade. The student has to receive the minimum grade of 5 for both the projects and the final exam.
Face-to-face learningPrerequisitesTÖL403GAnalysis of AlgorithmsMandatory (required) course6A mandatory (required) course for the programme6 ECTS, creditsCourse DescriptionMethodology for the design of algorithms and the analysis of their time conplexity. Analysis of algorithms for sorting, searching, graph theory and matrix computations. Intractable problems, heuristics, and randomized algorithms.
Face-to-face learningPrerequisites- Fall
- REI505MMachine LearningRestricted elective course6Restricted elective course, conditions apply6 ECTS, creditsCourse Description
An overview of some of the main concepts, techniques and algorithms in machine learning. Supervised learning and unsupervised learning. Data preprocessing and data visualization. Model evaluation and model selection. Linear regression, nearest neighbours, support vector machines, decision trees and ensemble methods. Deep learning. Cluster analysis and the k-means algorithm. The students implement simple algorithms in Python and learn how to use specialized software packages. At the end of the course, the students work on a practical machine learning project.
Face-to-face learningPrerequisitesSTÆ520MGraph TheoryRestricted elective course8Restricted elective course, conditions apply8 ECTS, creditsCourse DescriptionGraphs, homomorphisms and isomorphisms of graphs. Subgraphs, spanning subgraphs. Paths, connected graphs. Directed graphs. Bipartite graphs. Euler graphs and Hamilton graphs; the theorems of Chvátal, Pósa, Ore and Dirac. Tournaments. Trees, spanning trees, the matrix-tree theorem, Cayley's theorem. Weighted graphs, the algorithms of Kruskal and Dijkstra. Networks, the max-flow-min-cut theorem, the algorithm of Ford and Fulkerson, Menger's theorem. Matchings, Berge's theorem, Hall's marriage theorem, the König-Egerváry theorem, the Kuhn-Munkres algorithm. Inseparable and two-connected graphs. Planar graphs, Euler's formula, Kuratowski's theorem, dual graphs. Embeddings of graphs in surfaces, the Ringel-Youngs-Mayer theorem. Colourings, Heawood's coloring theorem, Brooks's theorem, chromatic polynomial; edge colourings, Vizing's theorem.
Face-to-face learningThe course is taught if the specified conditions are metPrerequisitesNot taught this semesterSTÆ533MCombinatoricsRestricted elective course8Restricted elective course, conditions apply8 ECTS, creditsCourse DescriptionThis course is aimed at second and third year undergraduate mathematics students. The purpose is to introduce the student to several combinatorial structures, methods of their enumeration and useful properties. Particular emphasis will be placed on the systematic use of generating functions in enumeration.
Face-to-face learningThe course is taught if the specified conditions are metPrerequisitesTÖL301GFormal Languages and ComputabilityRestricted elective course6Restricted elective course, conditions apply6 ECTS, creditsCourse DescriptionFinite state machines, regular languages and grammars, push-down automata, context-free languages and grammars, Turing machines, general languages and grammars, and their basic properties. Recursive and recursively enumerable languages, reduction between languages, connection to decision problems and proving unsolvability of such problems. The complexity classes P and NP, and NP-completeness. Examples of various models of computation.
Face-to-face learningPrerequisites- Spring 2
HBV401GSoftware DevelopmentRestricted elective course6Restricted elective course, conditions apply6 ECTS, creditsCourse DescriptionIn this course, software engineers and computer scientists take the step from programming-in-the-small (i.e. individual developers creating compact modules that solve clearly defined problems) to programming-in-the-large (i.e. teams of developers building complex systems that satisfy vague customer requirements). To deal with the complexities of such projects, this course introduces key software engineering concepts such as agile and plan-driven software process models, requirements engineering, effort estimation, object-oriented analysis and design, software architecture and test-driven development. These concepts are immediately applied in practice as students team up to develop and integrate component-based systems using the Java programming language.
Face-to-face learningPrerequisitesTÖL401GOperating SystemsRestricted elective course6Restricted elective course, conditions apply6 ECTS, creditsCourse DescriptionThis course covers concepts of operating systems. Besides foundations on computer hardware structures and general operating system architectures, this includes concepts of processes and threads and their management, principles of scheduling and scheduling algorithms, communication and synchronisation between processes and deadlock issues, principles of memory management including virtual memory and page replacement algorithms, file systems and their implementation as well as mass-storage management. If time allows, principles for achieving protection and security, and aspects of distribution (e.g. concepts of distributed systems and distributed file systems) are covered as well. This course does not deal with details of implementing operating systems, but introduces generic concepts that are used when implementing operating systems and that an application developer needs to know, when creating an application program. Where appropriate, current operating systems such as Microsoft Windows and POSIX-compliant UNIX-like systems (e.g. Linux) are used as case study for implementation and offered system calls. The usage of operating system services from within high-level programming languages (e.g. C, C++ or Java) is demonstrated based on Application Programming Interfaces (APIs) offered by prevailing system libraries.
Face-to-face learningPrerequisitesSTÆ402GMathematical SeminarMandatory (required) course4A mandatory (required) course for the programme4 ECTS, creditsCourse DescriptionThis course is intended for students who have completed at least 120 ECTS credits. Students who have not completed 120 ECTS credits and are interested in taking the course must obtain the approval of the supervisor prior to signing up for the course.
Each student prepares and studies a selected well-defined topic of mathematics or statistics and will be assigned a mentor related to that topic. Topics vary from year to year. A list of possible topics is released at the start of or prior to the course and students can also suggest topics (provided that a mentor can be found). Students write a thesis on their selected topic and prepare and give a lecture on the topic at a student conference. During the course, students provide each other with constructive critique both regarding the thesis writing and the preparation of the lecture. In addition to presenting their own projects at the student conference, students take active part, listen to their fellow course members and ask questions.
Face-to-face learningPrerequisites- Fall
- Not taught this semesterREI503MPerformance analysis of computer systemsElective course6Free elective course within the programme6 ECTS, creditsCourse Description
Usually taught every second year.
This course provides students with an introduction to modeling and performance evaluation of computer and communication systems. Large-scale distributed computer systems process arriving requests, e.g., web page queries, in parallel in order to optimize performance metrics, such as response time and user satisfaction. Other important performance metrics include throughput and service-level agreement in general. This course covers basic mathematical tools needed to evaluate such dynamic systems and to understand the strengths and weaknesses, for example, in different designs, scheduling disciplines, and operating policies. The approach is based on operations research methods, in particular, queueing theory and Markov processes (previous knowledge of these methods is not required).
Attendance is strongly recommended.
Face-to-face learningThe course is taught if the specified conditions are metPrerequisitesVON101MInnovation, IP protection, and applicationElective course3Free elective course within the programme3 ECTS, creditsCourse DescriptionMinimum number of students registered for the course to be taught: 10
This course will cover basics in intellectual property rights with emphasis on patents. What is intellectual property and when and how can they best be protected? How does intellectual property rights work (e.g. patents), and how can they be used and applied in innovation and industry. The system‘s organization will be covered, as well as the patent process, making a financial plan relating to patents, and database searches.
Face-to-face learningPrerequisitesIÐN508MOperations Research 2Elective course6Free elective course within the programme6 ECTS, creditsCourse DescriptionThis course will introduce the student to decision and optimization models in operations research. On completing the course the student will be able to formulate, analyze, and solve mathematical models, which represent real-world problems, and critically interpret their results. The course will cover integer programming and modeling with stochastic programming. The student will become familiar with building mathematical models using Python.
Face-to-face learningPrerequisitesCourse DescriptionStudents will perform traditional statistical analysis on real data sets. Special focus will be on regression methods, including multiple regression analysis. Students will apply sophisticated methods of graphical representation and automatic reporting. Students will hand in a projects where they apply the above mentioned methods on real datasets in order to answer research questions
Face-to-face learningPrerequisitesCourse DescriptionAn overview of some of the main concepts, techniques and algorithms in machine learning. Supervised learning and unsupervised learning. Data preprocessing and data visualization. Model evaluation and model selection. Linear regression, nearest neighbours, support vector machines, decision trees and ensemble methods. Deep learning. Cluster analysis and the k-means algorithm. The students implement simple algorithms in Python and learn how to use specialized software packages. At the end of the course, the students work on a practical machine learning project.
Face-to-face learningPrerequisitesSNU503MVarious approaches to teaching mathematics in upper secondary schoolsElective course10Free elective course within the programme10 ECTS, creditsCourse DescriptionIn this course, students learn to plan mathematics teaching in upper secondary school using various approaches to provide access for all. An emphasis will be put on exploring different teaching environments and teaching methods that build on research on the teaching and learning of mathematics. In the course, the aims of learning mathematics both in Iceland and its neighboring countries will be discussed based on curricular and governmental documents. Students will read about and get a chance to try out various ways to assess and analyze students’ mathematical achievements. The course format includes lectures, project work, presentations, topic studies connected to practice, and critical topic discussion. An emphasis will be put on students’ discussion about challenges and their search for solutions to problems related to the teaching and learning of mathematics.
Face-to-face learningPrerequisitesAttendance required in classCourse DescriptionResearch Project
Self-studyPrerequisitesPart of the total project/thesis creditsSTÆ310MTheory of linear modelsElective course6Free elective course within the programme6 ECTS, creditsCourse DescriptionSimple and multiple linear regression, analysis of variance and covariance, inference, variances and covariances of estimators, influence and diagnostic analyses using residual and influence measures, simultaneous inference. General linear models as projections with ANOVA as special case, simultaneous inference of estimable functions. R is used in assignments. Solutions to assignments are returned in LaTeX and PDF format.
In addition selected topics will be visited, e.g. generalized linear models (GLMs), nonlinear regression and/or random/mixed effects models and/or bootstrap methods etc.
Students will present solutions to individually assigned
projects/exercises, each of which is handed in earlier through a web-page.This course is taught in semesters of even-numbered years.
Face-to-face learningOnline learningThe course is taught if the specified conditions are metPrerequisitesSTÆ312MApplied Linear Statistical ModelsElective course6Free elective course within the programme6 ECTS, creditsCourse DescriptionThe course focuses on simple and multiple linear regression as well as analysis of variance (ANOVA), analysis of covariance (ANCOVA) and binomial regression. The course is a natural continuation of a typical introductory course in statistics taught in various departments of the university.
We will discuss methods for estimating parameters in linear models, how to construct confidence intervals and test hypotheses for the parameters, which assumptions need to hold for applying the models and what to do when they are not met.
Students will work on projects using the statistical software R.
Face-to-face learningPrerequisitesSTÆ511MNumerical Linear AlgebraElective course8Free elective course within the programme8 ECTS, creditsCourse DescriptionIterative methods for linear systems of equations. Decompositions of matrices: QR, Cholesky, Jordan, Schur, spectral and singular value decomposition (SVD) and their applications. Discrete Fourier transform (DFT) and the fast Fourier transform (FFT). Discrete cosine transform (DCT) in two-dimensions and its application for the compression of images (JPEG) and audio (MP3, AAC). Sparse matrices and their representation.
Special emphasis will be on the application and implementation of the methods studied.
Face-to-face learningThe course is taught if the specified conditions are metPrerequisitesCourse DescriptionGraphs, homomorphisms and isomorphisms of graphs. Subgraphs, spanning subgraphs. Paths, connected graphs. Directed graphs. Bipartite graphs. Euler graphs and Hamilton graphs; the theorems of Chvátal, Pósa, Ore and Dirac. Tournaments. Trees, spanning trees, the matrix-tree theorem, Cayley's theorem. Weighted graphs, the algorithms of Kruskal and Dijkstra. Networks, the max-flow-min-cut theorem, the algorithm of Ford and Fulkerson, Menger's theorem. Matchings, Berge's theorem, Hall's marriage theorem, the König-Egerváry theorem, the Kuhn-Munkres algorithm. Inseparable and two-connected graphs. Planar graphs, Euler's formula, Kuratowski's theorem, dual graphs. Embeddings of graphs in surfaces, the Ringel-Youngs-Mayer theorem. Colourings, Heawood's coloring theorem, Brooks's theorem, chromatic polynomial; edge colourings, Vizing's theorem.
Face-to-face learningThe course is taught if the specified conditions are metPrerequisitesNot taught this semesterSTÆ528MIntroduction to LogicElective course8Free elective course within the programme8 ECTS, creditsCourse DescriptionLogical deductions and proofs. Propositional calculus, connectives, truth functions and tautologies. Formal languages, axioms, inference rules. Quantifiers. First-order logic. Interpretations. The compactness theorem. The Lövenheim-Skolem theorem. Computability, recursive functions. Gödel's theorem.
Face-to-face learningPrerequisitesNot taught this semesterSTÆ529MBayesian Data AnalysisElective course8Free elective course within the programme8 ECTS, creditsCourse DescriptionGoal: To train students in applying methods of Bayesian statistics for analysis of data. Topics: Theory of Bayesian inference, prior distributions, data distributions and posterior distributions. Bayesian inference for parameters of univariate and multivariate distributions: binomial; normal; Poisson; exponential; multivariate normal; multinomial. Model checking and model comparison: Bayesian p-values; deviance information criterion (DIC). Bayesian computation: Markov chain Monte Carlo (MCMC) methods; the Gibbs sampler; the Metropolis-Hastings algorithm; convergence diagnostistics. Linear models: normal linear models; hierarchical linear models; generalized linear models. Emphasis on data analysis using software, e.g. Matlab and R.
Face-to-face learningThe course is taught if the specified conditions are metPrerequisitesNot taught this semesterSTÆ533MCombinatoricsElective course8Free elective course within the programme8 ECTS, creditsCourse DescriptionThis course is aimed at second and third year undergraduate mathematics students. The purpose is to introduce the student to several combinatorial structures, methods of their enumeration and useful properties. Particular emphasis will be placed on the systematic use of generating functions in enumeration.
Face-to-face learningThe course is taught if the specified conditions are metPrerequisitesNot taught this semesterSTÆ537MNumerical Methods for Partial Differential EquationsElective course8Free elective course within the programme8 ECTS, creditsCourse DescriptionThe aim of the course is to study numerical methods to solve partial differential equations and their implementation.
Face-to-face learningThe course is taught if the specified conditions are metPrerequisitesTÖL301GFormal Languages and ComputabilityElective course6Free elective course within the programme6 ECTS, creditsCourse DescriptionFinite state machines, regular languages and grammars, push-down automata, context-free languages and grammars, Turing machines, general languages and grammars, and their basic properties. Recursive and recursively enumerable languages, reduction between languages, connection to decision problems and proving unsolvability of such problems. The complexity classes P and NP, and NP-completeness. Examples of various models of computation.
Face-to-face learningPrerequisitesNot taught this semesterTÖL504MAlgorithms in BioinformaticsElective course6Free elective course within the programme6 ECTS, creditsCourse DescriptionThis course will cover the algorithmic aspects of bioinformatic. We will start with an introduction to genomics and algorithms for students new to the field. The course is divided into modules, each module covers a single problem in bioinformatics that will be motivated based on current research. The module will then cover algorithms that solve the problem and variations on the problem. The problems covered are motif finding, edit distance in strings, sequence alignment, clustering, sequencing and assembly and finally computational methods for high throughput sequencing (HTS).
Face-to-face learningPrerequisites- Spring 2
STÆ415MStochastic ProcessesElective course10Free elective course within the programme10 ECTS, creditsCourse DescriptionIntroduction to stochastic processes with main emphasis on Markov chains.
Subject matter: Hitting time, classification of states, irreducibility, period, recurrence (positive and null), transience, regeneration, coupling, stationarity, time-reversibility, coupling from the past, branching processes, queues, martingales, Brownian motion.Face-to-face learningThe course is taught if the specified conditions are metPrerequisitesSTÆ418MIntroduction to Measure-Theoretic ProbabilityElective course10Free elective course within the programme10 ECTS, creditsCourse DescriptionProbability based on measure-theory.
Subject matter: Probability, extension theorems, independence, expectation. The Borel-Cantelli theorem and the Kolmogorov 0-1 law. Inequalities and the weak and strong laws of large numbers. Convergence pointwise, in probability, with probability one, in distribution, and in total variation. Coupling methods. The central limit theorem. Conditional probability and expectation.
Face-to-face learningThe course is taught if the specified conditions are metPrerequisitesTÖL604MAlgorithms in BioinformaticsElective course6Free elective course within the programme6 ECTS, creditsCourse DescriptionThis course will cover the algorithmic aspects of bioinformatic. We will start with an introduction to genomics and algorithms for students new to the field. The course is divided into modules, each module covers a single problem in bioinformatics that will be motivated based on current research. The module will then cover algorithms that solve the problem and variations on the problem. The problems covered are motif finding, edit distance in strings, sequence alignment, clustering, sequencing and assembly and finally computational methods for high throughput sequencing (HTS).
Face-to-face learningPrerequisitesREI202GIntroduction to data scienceElective course6Free elective course within the programme6 ECTS, creditsCourse DescriptionThe course provides an introduction to the methods at the heart of data science and introduces widely used software tools such as numpy, pandas, matplotlib and scikit-learn.
The course consists of 6 modules:
- Introduction to the Python programming language.
- Data wrangling and data preprocessing.
- Exploratory data analysis and visualization.
- Optimization.
- Clustering and dimensionality reduction.
- Regression and classification.
Each module concludes with a student project.
Note that there is an academic overlap with REI201G Mathematics and Scientific Computing and both courses cannot be valid for the same degree.
Face-to-face learningPrerequisitesLÝÐ201MStatistical ConsultingElective course6Free elective course within the programme6 ECTS, creditsCourse DescriptionParticipants in the course will obtain training in practical statistics as used when providing general statistical counselling. The participants will be introduced to actual statistical projects by assisting students in various departments within the university. The participants will report on the projects in class, discuss options for solving the projects and subsequently assist the students with analyses using R and interpretation of results.
Face-to-face learningPrerequisitesNot taught this semesterEÐL612MMathematical PhysicsElective course8Free elective course within the programme8 ECTS, creditsCourse DescriptionContinuum mechanics: Stress and strain, equations of motion. Seismic waves. Maxwell's equations and electromagnetic waves. Plane waves, reflection and refraction. Distributions and Fourier transforms. Fundamental solutions of linear partial differential equation. Waves in homogeneous media. Huygens' principle and Ásgeirsson's mean value theorem. Dispersion, phase and group velocities, Kramers-Kronig equations. The method of stationary phase. Surface waves on liquids.
Face-to-face learningPrerequisitesCourse DescriptionThis course will introduce the student to decision and optimization models in operations research. On completing the course the student will be able to formulate, analyze, and solve mathematical models, which represent real-world problems, and critically interpret their results. The course will cover linear programming and the simplex algorithm, as well as related analytical topics. It will also introduce special types of mathematical models, including transportation, assignment, network, and integer programming models. The student will become familiar with a modeling language for linear programming.
Face-to-face learningPrerequisitesNot taught this semesterMAS201MStatistical ConsultingElective course6Free elective course within the programme6 ECTS, creditsCourse DescriptionParticipants in the course will obtain training in practical statistics as used when providing general statistical counselling. The participants will be introduced to actual statistical projects by assisting students in various departments within the university. The participants will report on the projects in class, discuss options for solving the projects and subsequently assist the students with analyses using R and interpretation of results.
Face-to-face learningPrerequisitesMAS202MApplied data analysisElective course6Free elective course within the programme6 ECTS, credits