This blog has a really interesting assortment of articles on mathematics and programming. You can use the tags to your right to find topics that interest you, or you may want to have a look at

- the problems I wrote to get your brain working;
- some twitter proofs of mathematical facts.

You can also subscribe to the blog newsletter.

Alice and Bob are going to be locked away separately and their faith depends on their guessing random coin tosses!

In this blog post we will go over some significant changes, from implementing APL's array model to introducing dyadic operators!

The 2020 APL programming competition was tough! In this post I share a couple of thoughts and my solutions.

Let's prove that, if a set has size \(n\), then that same set has exactly \(2^n\) subsets.

If there's one thing I like about Python is how I can use it to automate boring tasks for me. Today I used it to help me manage my own blog!

The 24 Game is a well-known maths game that is played with kids in school to help them master the four basic arithmetic operations. In this blog post we will study the game in depth.

Today we are visiting a specific instance of a well-known *basic* mathematics game, the 24 Game. The "24 Game" is usually played with younger students because it helps them develop skills related to the basic arithmetic operations.

Today is the day! Today is the day we take our APL programs and interpret them, so that something like `÷ 1 2 3 -⍨ 1.1 2.2 3.3`

can output `10 5 3.33333333`

.

Take out a piece of paper and a pencil, I am going to ask you to write some letters in your sheet of paper and then I am going to challenge you to fold the sheet of paper... with a twist!

\(n\) mathematicians with numbered party hats gather around in a circle... It is a matter of life or death!

Let's build a simple APL interpreter! APL is an array-oriented programming language I picked up recently. The ease with which I can write code related to mathematics, its strange built-ins (which look like `⍴`

, `⍨`

, `⍒`

or `⍣`

) and the fact that it is executed from right to left make it a fresh learning experience!

*Py-don'ts*
are anti-tips for writing good Python code. Sometimes learning what is good isn't enough. You have to compare it with what is bad as well!

493

In high school I had a colleague that had his birthday on the same day as I did. What a coincidence, right? Right..?

Is it true that every integer you can think of has a multiple written out only with \(0\)s and \(1\)s?

I find the problem in this post rather fun to think about because it is a problem about a game that can actually be played between two players.

In this post we will talk about three different, all very common, ways of writing proofs: proofs by construction, by contrapositive and by contradiction.

This post's problem is a really interesting problem I solved two times. The first time I solved it I failed to prove exactly how it works... then some years later I remembered the problem statement and was able to solve it properly. Let's see how you do!

I have always loved solving mazes... so naturally I had to write a program to solve mazes for me!

**HueHue** is a very colourful game I wrote with my colleague @inesfmarques.

In this post I talked about the riddle of the water buckets. Now I challenge you to prove that in some situations it is *impossible* to solve it!