I start every course with a sort of philosophical introduction. It is usually about asking *`What is the most important idea of …?’*, and by trying to answer the question, I can give an overview of the whole course.
Today I started a computing-focused discrete math course, so the question was:

*What is the most fundamental idea of digital computation?*

Opinions differ about the relationship of mathematics and programming. Depending on temperament, one might say that they are essentially the same as both strive for understanding in a precise formal manner. Or, it can be argued that practical engineering goals are rather different from aiming for unquestionable proofs. Functional programmers, in particular, are probably more comfortable with the connection. They tend to know that some mathematical constructs like lambda calculus, or whole theories like category theory form the basis of their favourite languages.

The holonomy algorithm is the main method used in SgpDec for computational tools of the Krohn-Rhodes theory. The details of the algorithm might not be the easiest to grasp, but the underlying ideas are quite simple. Here is a short description of the general ideas used in the holonomy decomposition.

The whole course content, tutorial notes, assignments can be found on GitHub.

I am not particularly interested in doing philosophy, as my research is about using computers to extend mathematical knowledge. But it turns out that this involves questions that are not mathematical or technical, but of fundamental nature. I write code and run computer experiments all the time, so the question `What is computation?’ is on my mind continuously. Here is an attempt, a draft version of a somewhat philosophical paper to address the question for the $(n+1)$th time.

Once complex numbers are introduced in a College Algebra/PreCalculus course, why not discuss Euler’s formula? Especially the equation $e^{\pi i}+1=0$, that looks good on a T-shirt. A full proof is out of question, but the power series definitions of the exponential and trigonometric functions provide a narrow, but walkable path up to the summit. With a computer algebra system it is easy to demonstrate how the approximations work, just by entering a few terms of the infinite sums.

Here are the slides for my talk “Finite Computational Structures and Implementations” for the The 4th International Symposium on Computing and Networking CANDAR’16 held in Hiroshima, Japan, November 22-25, 2016.

The photo was taken in the Higashi Hiroshima Arts and Culture Hall, the venue of the conference.

Teaching, digitally disrupted (PDF) mini keynote and Hackathon guidelines (PDF) in general and for curriculum design in particular. These documents were prepared for the Digital Studies Hackathon Event at Akita International University, 2016 November 26. http://www.aiu-digitalstudies.org/