Murderous Maths, Geometry Joys, Notes on everyday life, Crafty, motor skills, Simon's sketch book

A Knot Theory Puzzle

Simon has shown us a curious puzzle: if you hang a poster on a string using two pins, what is the way to arrange the string so that the poster definitely falls once you remove any pin? The math behind the trick involves Knot Theory. Simon has learned the trick from this video by Jade, the creator of the science and phlosophy Up an Atom channel that Simon loves.

It’s relatively easy to solve the puzzle for one particular pin. The picture below shows the solution for removing the right pin:

But the puzzle asks us to think of a configuration that makes the poster fall once ANY pin is removed, doesn’t matter which! And that’s way more difficult. Simon said that we should simplify the problem by removing the poster altogether and replacing the pins with two small loops of string.

What Simon did next was show us the math behind the trick, trying to come up with such a combination of the three loops that would stay connected but, if you remove any of the three, the rest of the construction would fall apart. “Wait, that sound familiar! We’ve actually turned the problem into Borromean rings!”

The letters x and y stand for the ways to intertwine the strings, with x wrapping around 1 and y wrapping around 3. The regular x and y are clockwise (x or y) and the inverse x and y are anticlockwise (x^-1 or y^-1). Obviously, a sequence of clockwise-anticlockwise of the same string should be avoided as it unties itself.
the moment of truth!
performing in front of our guests the day after (in Dutch)
the solution
Biology, Murderous Maths

The All Common Ancestors Generation

This project is a simulation of how many people can stem from the same ancestor, something Simon has learned from James Grime’s “Every Baby is a Royal Baby” video on Numberphile. In this simplified version, there’re only 6 people per generation. Simon was throwing two dice to determine who the two parents were for every person (in the case when both dice came out to be the same number, this was considered “virgin birth” or simply that the father had come from outside the limited sample Simon was working with).

the present generation
Simon marking who the children of a person were in pink pencil
Some parents don’t have the digits corresponding to their children written next to them, but letters N and E: N means that that person from the parent generation had no children and is therefore related to no one from the future generations; E on the conrrary, means that that person “has been busy” and is related to everyone in the next generation!
identifying the most recent common ancestor generation and the identical ancestors generation
the all common ancestors generation
Computer Science, Milestones, Murderous Maths, Notes on everyday life, Set the beautiful mind free

E-mail from Ron Graham

Wow! We have received an e-mail from his mathematical majesty Ron Graham today! In reaction to Simon’s Graham Scan project:

“Hi Sophia and Simon, I love the video on Graham’s Scan. I’m sure it was not so easy to make! Simon, you are certainly special! Keep up the good work and keep me posted! Best regards, Ron Graham”

Milestones, Murderous Maths

Tower of Hanoi moves plotted under a binary log plot

What you see here is the sequence of moves to solve the Towers of Hanoi puzzle. The sequence goes up to 2 to the power of the number of rings in your puzzle. The picture here is the sequence for 8 discs, so 256 moves. “If you plot log_2 (binary log), this shape (in red) would be under that log plot, except for the powers of 2 which would be exactly on the log plot!” Simon has noticed.

Simon has plotted this sequence including 256 moves using Paint

detail of the plot, including 2^4
Simon explaining his “discovery”


Simon’s earlier video about the math behind the Towers of Hanoi puzzle:

Coding, Community Projects, Computer Science, Contributing, Geometry Joys, Group, Milestones, Murderous Maths, Notes on everyday life

More examples of Simon’s chat contributions on math and coding

Simon is always extremely active in the discussions about the current projects made by/ lectures given by NYU’s Asdociate Professor Daniel Shiffman during his live sessions on the Coding Train channel. He also enjoys “initiating discussions” among the channel’s patrons (grown-up programmers) and Daniel. “Mom, the discussion I initiated is still going on!” I couldn’t possibly post all the coding and math comments/ suggestions that Simon makes in the chats on YouTube, Slack and GitHub (and I don’t believe I should either), but every now and then, I like collecting samples of Simon’s contributing to the discussion:

Simon contributing to a discussion prior to a live session on ray tracing
Simon contributing to Daniel Shiffman’s tutorial on the computational geometry “minimum spanning tree” problem

The small font above says:

Correction: The MST problem does not allow any loops (like A->B, B->C, C->D, D->A again.) So the solution at 2:30 is wrong! In fact, _no wonder it does that_, because Prim’s Algorithm will never find a loop. Here’s why:

Let’s suppose that it could find a loop (let’s say, a loop of 4, so A->B, B->C, C->D, D->A again, but this argument would work the same each way.) Ok, so it will start from A, and mark it as reached. It will check A against B, C and D, find B, and mark B as reached. Then, it will check A against C and D, and B against C and D. and it will find that it should connect B and C, and mark C as reached. Then, it will check A, B and C all against D, and find that it should connect C and D, and mark D as reached. But now, we reach a problem. It will not connect D and A, because both are already reached!

Why was it designed like that? Because that’s what the problem says! It’s a Minimum Spanning _Tree_, so it can’t have any loops.

So there you go, that’s why Prim’s algorithm will not find a loop.

Crafty, Geometry Joys, Group, Logic, Milestones, Murderous Maths, Notes on everyday life, Together with sis

Vladimir Krasnoukhov at MathsJam Antwerp!

all these beautiful puzzles we have received from Vladimir Krasnoukhov

When we arrived at the MathsJam last Tuesday, we heard a couple of people speak Russian. One of them turned out to be a well known Russian puzzle inventor Vladimir Krasnoukhov, who presented us with one colorful puzzle after another, seemingly producing them out of thin air. What a feast! Simon got extremely excited about several puzzles, especially one elegant three-piece figure (that turned out to have no possible solution, and that’s what Simon found particularly appealing) and a cube that required graph theory to solve it (Simon has tried solving the latter in Wolfram Mathematica after we got home, but hasn’t succeeded so far).

Vladimir told us he had been making puzzles for over 30 years and had more than 4 thousand puzzles at home. Humble and electricized with childlike enthusiasm, he explained every puzzle he gave to Simon, but without imposing questions or overbearing instructions. He didn’t even want a thank-you for all his generosity!

Vladimir Krasnoukhov and Simon

Vladimir also gave us two issues of the Russian kids science magazine Kvantik, with his articles published in them. One of the articles was an April fools joke about trying to construct a Penrose impossible triangle and asked to spot the step where the mistake was hidden:

Simon was very enthusiastic about trying to actually physically follow the steps, even though he realized it would get impossible at some point:

Simon and Neva constructing the shape that “allows” to convert it into Penrose impossible triangle (as seen in the optical illusion in the Kvantik magazine)
the next step was already impossible

Simon’s also working on other math problems from the magazine, so more blog posts about Kvantik will follow. We’re very happy to have discovered the website https://kvantik.com

You can find out more about Vladimir Krasnoukhov’s puzzles on planetagolovolomok.ru

Coding, Computer Science, Experiments, Geometry Joys, Milestones, Murderous Maths, Simon's Own Code

Experimenting with random walks in Wolfram Mathematica

Simon’s code is published online at:
https://www.wolframcloud.com/objects/monajune0/Published/Random_walk_distribution.nb
https://www.wolframcloud.com/objects/monajune0/Published/Random_walk_distribution2D.nb

Experimenting with random walks in Wolfram Mathematica

“If I take many random walks and see what the endpoints of those random walks are, what I’ll find is a Gaussian distribution!” Simon says. In the video, he programs 1D and 2D random walks and 2D and 3D histograms to show the distribution of the endpoints​ in Wolfram Mathematica.

Computer Science, Geometry Joys, Milestones, Murderous Maths, Notes on everyday life, Simon teaching, Simon's sketch book

Graham Scan Algorithm

“Connect some points into a convex polygon such that all of the remaining points are inside that convex polygon. The algorithm that will find it for me is called the Graham Scan Algorithm (actually invented by Ronald Graham),” Simon told me as he printed out a sheet dotted with points. He had also prepared some paper cards with numbers on them. “In general, a Convex Hull is the smallest set (in this case, of points) that contains your original set”.

In the video, Simon manually applies the Graham Scan Algorithm (using the print-out, a protractor and paper cards to create a stack). He measured the angles between the P point and the rest of the points and sorted them (“If you want to do this, you can use any sorting algorithm,” Simon adds).

Simon first learned about the algorithm from a Visualgo visualization but that resource didn’t explain how the algorithm actually works, so he looked it up on Wikipedia.

Simon got his set of points from this site.

the final result

Busy with the same algorithm during the Easter break at the summer house:

wrote the steps of the algorithm in chalk and repeated the whole procedure with fewer points
Coding, Computer Science, Good Reads, Logic, Milestones, Murderous Maths, Notes on everyday life, Python, Set the beautiful mind free

Fun with Brilliant’s Computer Courses

“Mom, how long would it take a supercomputer running at 10^15 additions per second to calculate the 1000th Fibonacci number?”

Simon has learned this problem from the new course he is following on Brilliant.org: Computer Science Algorithms. Simon worked it out on an A3 sketch book sheet and got the answer correct: it would take longer than the age of the Universe!

Simon working the answer out again to show me the way he solved it

Simon has already finished the Computer Science Fundamentals course! It has been Simon’s idea to take up the courses on Brilliant.org again and he has been working independently, driven entirely by his intrinsic motivation.

The course has also inspired Simon to work on a very large scale project: record a series of tutorials where he explains all the best known sorting algorithms and comes up with the Python code for them on his RaspberryPi!