Course syllabus for Domain Specific Languages of Mathematics

Course syllabus adopted 2023-02-04 by Head of Programme (or corresponding).

Overview

  • Swedish nameMatematikens domänspecifika språk
  • CodeDAT326
  • Credits7.5 Credits
  • OwnerTKDAT
  • Education cycleFirst-cycle
  • Main field of studyComputer Science and Engineering, Software Engineering, Mathematics
  • DepartmentCOMPUTER SCIENCE AND ENGINEERING
  • GradingTH - Pass with distinction (5), Pass with credit (4), Pass (3), Fail

Course round 1

  • Teaching language English
  • Application code 49116
  • Open for exchange studentsYes
  • Only students with the course round in the programme overview.

Credit distribution

0116 Written and oral assignments 3.5 c
Grading: UG
0 c0 c3.5 c0 c0 c0 c
0216 Examination 4 c
Grading: TH
0 c0 c4 c0 c0 c0 c

In programmes

Examiner

Eligibility

General entry requirements for bachelor's level (first cycle)
Applicants enrolled in a programme at Chalmers where the course is included in the study programme are exempted from fulfilling the requirements above.

Specific entry requirements

The same as for the programme that owns the course.
Applicants enrolled in a programme at Chalmers where the course is included in the study programme are exempted from fulfilling the requirements above.

Course specific prerequisites

The student should have successfully completed
  • 7,5 hec in discrete mathematics
  • 15 hec other courses in mathematics, for example Linear Algebra and Calculus
  • 15 hec in computer science, for example two programming courses
  • an additional 22.5 hec of any mathematics or computer science courses.

Aim

The course will present classical mathematical topics from a computing science perspective: giving specifications of the concepts introduced, paying attention to syntax and types, and ultimately constructing DSLs of some mathematical areas mentioned below.

Learning outcomes (after completion of the course the student should be able to)

Knowledge and understanding
  • design and implement a DSL (Domain-Specific Language) for a new domain
  • organize areas of mathematics in DSL terms
  • explain main concepts of elementary real and complex analysis, algebra, and linear algebra

Skills and abilities
  • develop adequate notation for mathematical concepts
  • perform calculational proofs
  • use power series for solving differential equations
  • use Laplace transforms for solving differential equations

Judgement and approach
  • discuss and compare different software implementations of mathematical concepts

Content

The lecture topics are:
  • Introduction to functional programming and calculational proofs
  • Introduction to Domain-Specific Languages (DSLs): case study linear algebra
  • DSLs and mathematics: case study category theory
  • Real analysis: mean value theorems, Taylor formulas
  • Real analysis: a DSL for power series
  • More linear algebra: eigenvalues and optimization

Organisation

The main forms of instruction are lectures, seminars, case studies and group work.

Literature

See separate list.

Examination including compulsory elements

The course is examined by an individual written exam which is carried out in an examination hall at the end of the course and by written assignments carried out in groups of normally 3-4 students. To pass the course, students must receive a passing grade in both modules. The grade for the entire course will be determined by the written exam.

The course examiner may assess individual students in other ways than what is stated above if there are special reasons for doing so, for example if a student has a decision from Chalmers on educational support due to disability.