This blog is about Simon, a young gifted mathematician and programmer, who had to move from Amsterdam to Antwerp to be able to study at the level that fits his talent, i.e. homeschool. Visit https://simontiger.com
Simon has had hours of fun with Test Tube Games, a science games portal featuring interactive explanations and dynamic puzzles on Chemistry and Physics. He has created two simulations based on the games he played. The first one is an electromagnetic field simulator:
Simon is working on a clone of Tchisla, an absorbing number puzzle app from the (Russian!!) creators of Euclidea. The aim is to represent numbers as arithmetical expressions using only one of the digits from 1 to 9 and the shortest way possible. (For example 96 = 99 – √9 or 96 = 4 * 4! or 96 = 2 * 2 * (22 + 2) are all valid representations of 96).
It’s true what the makers say: “You suddenly discover that you know a lot of numbers and their properties: factorials, squares, cubes, prime numbers, roots and others. Tchisla imperceptibly helps you to improve your calculating skills.”
Simon doesn’t like the fact that you can currently only find Tchisla as an app while he wants to screenshare with his friends in a browser, so he has decided to develop his own version. So far he has completed these steps in Glitch:
I wrote a small program that copies itself. When the program doubles itself it executes itself twice. The code that doubles itself is now doubled. The second time you run it you will get 8 times its original copy. The following time it’s going to double 8 copies of itself 8 times. Afterwards it doubles 2048 copies of itself 2048 times — that I can’t run because it would overwhelm the universe 5 times!
You can easily turn every statement into a program. If the program stops, or “halts”, then the statement is true, and if it never stops, or “loops”, the statement is false.
Like, for example, the following program corresponds to the statement: “There’s at least one even number that cannot be expressed as the sum of two primes” (this is the negation of the so-called “Goldbach Conjecture”):
So, if we can figure out if any program will halt or not halt, we can prove everything! Can we do that, though?
Simon is obsessed with Euclidea https://www.euclidea.xyz/ — a learning environment for geometric constructions and proofs. He has also downloaded the Euclidea app (which has more features), so that he could continue engaging with it while at the beach.
Yesterday, he finished the whole first section (called Alpha), completing all of its 7 tasks in several ways, most of which he solved himself without using hints. The goal is to solve a problem using the minimum number of moves:
Each solution is scored in two types of moves: L (straight or curved lines) and E (elementary Euclidean constructions). Points are not taken into account.
L counts tool actions: constructing a line, a perpendicular, and so on. E counts moves as if a construction was made with real compass and straightedge. (Each advanced tool has its own E cost).
Each level has L and E goals. They are independent. A lot of problems have universal solution that satisfies both goals. But some problems should be solved twice: one solution to reach L goal and another solution to reach E goal.
You can receive the following stars on each level:
* the challenge was solved * the L goal was reached * the E goal was reached * all variants (V) of answer were found
If there are several objects satisfying the statement of a problem, you can get a hidden V-star by constructing all the answers (solutions) at the same drawing. Usually this implies some kind of symmetry. You need to guess on what levels it is possible because the presence of a V-star is not shown until you find it.
– Euclidea Manual
The five images below are an example of solving a Euclidea puzzle:
Simon also loves recreating all the puzzles:
For the last puzzle, Simon couldn’t find the minimum number of moves independently and looked the solution up on stackexchange. “It would have taken me a year to figure this out”, he said:
This is something Simon worked on for days and he was thrilled to be able to present a working bot to Daniel. The only issue that remains unresolved is whether the mods should control the bot via a secret password or should a more advanced security system be developed. Daniel has decided to take a long break from live streaming, so the whole project probably won’t be revived until the streams resume. In any case, as Simon has put it, “I know, it’s messy, but it works. And that’s what’s important to me”.
Simon has also created several other bots (and built a separate Discord playground where other people can test their bots as well). He has been doing quite a lot of server side programming lately.
Thanks to our usual summer hang-outs (Dutch beaches, local playgrounds and terraces) being closed, we have discovered that Simon doesn’t hate small hikes in the woods after all. At least not if he can continue thinking about math along the way.
Last week, we spent a good deal of our walk arguing whether math has been invented or discovered, juxtaposing a Plato-like ideal view on math to a more rational one, that I believe Stephen Wolfram shares, that math is an artifact. In the end, Simon brought us to a whole new level of abstract thinking, saying that, of course, math is made up, i.e. it has been invented, but just like everything that is made up it has also been discovered because the idea of anything that has been or will be invented already exists somewhere as information.
This week, Simon brought a sheet of paper to solve a puzzle he had seen on Euclidea https://www.euclidea.xyz/ — a wonderful learning environment for geometric constructions and proofs done the fun way (we believe, built by Russian developers).
How Can Math Help Resolve Racial Segregation? This video and coding project is based on Segregation Solitaire by Thomas Schelling, an American mathematician and economist who was awarded the 2005 Nobel Memorial Prize in Economic Sciences for “having enhanced our understanding of conflict and cooperation through game-theory analysis.”
I don’t like the name ‘Segregation Solitaire’, so I call it Schelling’s Game. This is also inspired by the famous Parable of the Polygons playable essay on the shape of society by Vi Hart and Nicky Case: https://ncase.me/polygons/
Simon binge reads Nicky Case’s essays and has made several remixes of their projects, all the more timely, considering today’s context.
Simon created a physics engine in Python with Turtle. He used Verlet integration (French pronunciation: [vɛʁˈlɛ]), a numerical method for integrating Newton’s equations of motion in calculating trajectories of particles in molecular dynamics simulations and computer graphics.
Verlet Integration is a way to implement a physics engine without having to care about velocity.
Instead of storing the velocity, you store the previous position, and you calculate the velocity on the fly. Then if you add that velocity to the current position, you get the new position. But then you also have to add on the acceleration, because acceleration changes velocity.
We watched both on Wednesday, May 27 and Saturday, May 30 when it actually happened: the historic launch of Crew Dragon Demo-2, a commercial state-of-the-art aircraft, marking the start of a whole new era of space exploration for the whole of humankind. And then, 23 minutes after the launch, we rushed towards the balcony to watch them fly over Belgium, only to realize that it was too light outside… But we did get lucky the second time they passed! Exactly at 23:18, we spotted a little bright dot going from West to East, vanishing mid-way. It was a very memorable moment.#LaunchAmerica