This evening
keywords jump up and down,
Okay. I'm beginning to notice a number of international students. Is there a preference
to do the course in English? That's one yes, more yeses. Yeah, of course. Some of you know
that. Okay, we can put it to a vote. Who would agree to having the course in English? That's
everybody except one, right? Is there anybody who doesn't speak German? Half a person. Okay.
All right. That sort of leaves it on the edge, right? Okay. One point to add to that. The
course material will remain in German because it currently is in German and I'm not maintaining
two versions of the material. So under that proviso, who would agree to having the course
in German? Nobody. Sorry. No, that was really wrong. So under that proviso, the material
being in German, who would agree to the lectures being in English? Okay. So that is now a sort
of semi-unanimous vote. Okay. Let's try this. It will carry the slight problem that while
the material is in German, I'm really off the material, right? So bear with me. As some
of you may have noticed, the sheet's been online since this morning. Okay. One thing
to notice is the hand in date, so that's two weeks from now. Currently, you're not able
to solve any of the exercises that are on the sheet, but I'm hoping to cover most of
the necessary material today and the rest on Monday. So two weeks from now is like 11
days from Monday, which I guess should be enough time to solve it because it's also
not excessively hard. I'll show it to you now, although you don't yet know some of the
keywords just to basically raise flags when the words that are on the sheet actually crop
up in the lecture. So there's an exercise on currying and number one. Well, I mean,
many of you who knows about functional programming will of course know this, but we're nevertheless
going to make it explicit one more time. Then there's a number of exercises and number two
on just a particular format of recursive definitions that we're hopefully going to see either today
or on Monday, specifically the fold format. Then there's one example of an inductive proof
for functions that are defined in terms of fold will be defined in terms of fold in the
lecture. So defining them. So this basically, this is the map function of this, we just
call it list instead of map. So this will be seen in the lectures, defining it as not
part of the exercise. And then there's an exercise at the end that is slightly more
substantial where you're asked to actually define a data type of trees of a certain shape,
then come up with the, well, two laws of the general nature that we're going to see in
the lecture, as I said, even now on Monday. And to use the, well, generic induction principle,
if you will, that you get from this data type to prove a very simple equation. Okay. I'm
going to switch this off.
Sure.
Okay.
So the first session last week was a basic recap of things to know about sets and functions.
And well, we're going to delve a bit deeper into certain functions that are going to be
important in the course, and which in particular we're going to want to generalize NATO to,
well, when we think about categories other than sets.
So basically we're going to look at some important functions or actually types of functions.
So one operator on functions that we talked about last time is composition of functions,
which we wrote in applicative form, so f composed with g means execute g first then f.
And we have this notation for the function space x arrow y denotes the set of all functions
from a set x into another set y.
And first thing to note is that under this notation we can write the composition operator
itself as a map.
So we can call this comp to be definite.
We'll occasionally use it.
And well, it takes two arguments.
Presenters
Zugänglich über
Offener Zugang
Dauer
01:28:49 Min
Aufnahmedatum
2017-05-05
Hochgeladen am
2019-04-02 14:14:34
Sprache
de-DE