Return to Teaching

2015 – Special course in Computer Science: Molecular Computing

Fall, Period 1, 2015


During this course we will discuss a novel fast developing interdisciplinary area called Molecular Computing and will consider both its theoretical and experimental aspects. In this area biological systems and living organisms are regarded from the Computer Science perspective, molecular-scale biological processes are considered as computations, manipulations with biologically derived materials are being designed (both in theory as well as in the lab) to perform computational functions.

This course presents the computational aspects of DNA manipulation in vitro (DNA computing) as well as in vivo (an example, gene assembly in ciliates). We review briefly the basics of DNA molecular structure and manipulation, the basic biology of ciliates and especially the gene assembly process. We then investigate several computational models to reason about DNA manipulation in vitro as well as in vivo, and will study their computational properties, including: DNA splicing and insertion/deletion, self-assembly of nano-structures by DNA, gene assembly strategies in ciliates as well as parallelism and concurrency, computing with ciliates, etc. We overview the field of Membrane Computing as a computational paradigm describing multi-compartmental membranar structure as well as distributed computations and information fluxes between different places within living systems.

In particular we will discuss:

  1. the benefits of this research for computer scientists – novell and challenging problems and paradigms which lead to broader and deeper understanding of the notion of computation;
  2. the benefits of this research for biologists – novel and uniform explanation of experimental results, new insights into DNA manipulation in vivo and in vitro, new suggestions for experiments.


  • Introduction to DNA Computing;
  • Formal models for DNA Computing;
  • DNA-based computational devices;
  • Introduction to gene assembly in ciliates;
  • Formal models for gene assembly in ciliates;
  • Computing through gene assembly;
  • Introduction to Membrane Computing.


  • The course book is Grzegorz Rozenberg, Thomas Bäck, Joost N. Kok“Handbook of Natural Computing”, Volume II, Section IV “Molecular Computation”, Springer, ISBN 978-3-540-92910-9, 2012
  • Reference on Formal Language Theory and Computability: Arto Salomaa“Computation and Automata”, Cambridge University Press, Mathematics, 2011


  • 5 study points


  • 28h lectures,
  • final examination

Time schedule:

  • 1st term of the academic year 2015-2016: weeks 36 – 43
  • First lecture: Monday 31.09.2015, 15:15, ICT Building, Cobol (map)
  • Last lecture: Thursday 22.10.2015, 10:15, ICT Building, Algol (map)
  • Lectures twice per week:
    • on Mondays: 15:15 – 16:45 in ICT Building, Cobol (map)
    • on Thursdays: 10:15 – 11:45 in ICT Building, Algol (map)
  • Exams:
    • TBD


  • No background on Biology is required, as this will be provided throughout the course, when needed.
  • Some notions and concepts of discrete mathematics and computer science, especially permutations, strings, graphs, formal languages and computability may be useful. However, those will be briefly introduced when needed.


  • Vladimir Rogojin,
  • Department of IT,
  • Åbo Akademi University,
  • vrogojin at, room B5050, ICT-house


  • August 31, 2015: Introduction 3:00 pm – 5:00 pm, ICT Building, Cobol
  • October 8, 2015: DNA Memory 10:00 am – 12:00 pm, ICT Building, Algol