Don't worry about those slides, that was just something I found after Googling the name of the book they are based on (
The Algebra of Programming). I linked to that book in the second link pair of links, along with a discussion of it. I haven't read the book, but it is fairly well regarded in the Haskell community as a rather beautiful application of category theory that also uses equational reasoning. I'm afraid I don't know much about what equational reasoning is, except to say that it makes use of algebra in logic, and goes back to Boole. Haskell is
well suited for equational reasoning, though, and Bird also has a more
recent book on writing equational programs in Haskell, but this time he took out almost all the math and just used Haskell programs to demonstrate the idea.
As for homotopy type theory... this thing looks really cool. And interestingly enough, it seems to be closely connected to coq, which is a piece of software for writing verifiable specifications as a sort of game, using things called 'tactics' that can help you write programs that it turns into proofs of correctness. Most people who have used coq find it to be a major pain in the ass, though. It is not the only way one can verify software specifications, and indeed from what I can tell it is a rather low level one. Higher level modelling tools include things like TLA+ and Alloy, but these are much more geared toward industrial use (though they have a sound mathematical foundation of their own).
Jon suggested a
book on type theory, which would certainly be the best one to start with if you just care about type theory. I think it is geared toward people who care mostly about programming languages.
On the other hand, if you really care about homotopy type theory, you might want to check out coq at some point, since the
underlying theory between the two things seems to overlap. I posted a link in my previous posts to another
book where Benjamin Pierce appears as an author, which is much broader than his
book on types which Jon`C posted. This book uses coq to verify a bunch of things, not just types, though it has you verify a primitive type system in the second volume. Of course, if you just care about Homotopy Type Theory, you could just see what those people have to say about learning coq as soon as possible. It also might be worth investigating just what a dependent type system is. I wouldn't know, but it sounds like the answer might be interesting.
As it happens, Vladimir Voevodsky (RIP) was adamant about convincing mathematicians to write their proofs in something like coq, and homotopy type theory largely promises to subsume mathematics into something that can be verified, hopefully without too much trouble (although don't quote me on this, since I am sure those aren't its only motivations... actually, see the link at the end of my post for a good story on the topic's roots). As it stands today, though, most mathematicians don't want to write their proofs in something like coq, and I think most people agree that it's a still a pain to do so as of today. From what I've read there is considerable ramp up required in encoding all the tricks you've learned to rely on but may not realize it. That said, one of Voevodsky's motivations for caring about verification of proofs was that a major result of his turned out to have a critical bug in it,
and he only discovered this 20 years later!