The last time I wrote here on Daily Kos about my Java program that draws diagrams of prime numbers in rings of imaginary quadratic integers, I mentioned rumors that Secretary of Educatuon Betsy DeVos was on her way out (I don’t quite remember the source of the deliberate misspelling now).
I tossed out the names of Kaplan CEO Peter Houillon and actress Michelle Pfeiffer as two possible replacements. One heads up a test prep company, the other played a teacher in a movie, so both know a lot more about education than DeVos.
But alas, DeVos is still heading up the U. S. Department of Education. For all we know, she will outlast the barely educated dolt who appointed her.
Is our children learning math and other subjects? They are, despite DeVos, though there are plenty of problems with our education system without her adding to them.
In particular I’m concerned that our children are not learning about complex numbers. I know some very intelligent adults who are completely befuddled by the concept of purely imaginary numbers like √−2 or complex numbers like 1 + √−2.
Despite the foreboding terminology, complex numbers often simplify things in math. For example, how are prime numbers in Z[√−93] distributed? Are they packed close together? Do they form any sort of interesting geometrical pattern?
Enter −93 into my program and you’ll get a diagram like this:
That's at 2 pixels per unit interval, the maximum zoom out available in my program. You can zoom in to 6400 pixels per unit interval but that’s not very interesting; I should probably reduce that to maybe 400.
The program doesn’t yet have the ability to drag around like on Google Maps (that’s gonna be Version 2.0 at the earliest, though I already have some untested things in there that may or not help).
If instead we want to know about primes in the ring of algebraic integers of Q(√93) rather than Q(√−93), well, that’s considerably more difficult even though no complex numbers are involved.
I could draw you a diagram by clicking around in Photoshop, but it would take me at least a few hours. I’m working on a Java program for that, but I’m running into a lot of problems.
Like yesterday, I had a unit test fail due to the Java Virtual Machine (JVM) running out of heap space. It looks like I should rewrite a factorization subroutine from scratch specifically to deal with the “simple” real numbers.
That’s something I’m developing in a separate project. The source code, unit tests and an executable JAR for the one with just complex quadratics are all available on GitHub.
As for the mathematical concepts underpinning this endeavor, here’s a Medium article in which I try to explain it so that hopefully anyone who got through high school algebra can understand (that’s not on Medium Premium, so don’t worry if you’ve already read your three free articles for the month).
This is a project that I expect to eventually involve a team of programmers rather than just me. Though even before a second programmer joins the team, I can still use help from other people using the program and giving me feedback.
If you have the JVM installed on your computer, you can download the executable JAR (in the dist-jar folder) and have the JVM run it. The program can put diagrams on the system clipboard or save to files (in the PNG format) in a directory you specify.
Or if you prefer, you can “git clone” the whole project into your Java IDE (like NetBeans or IntelliJ) and examine the source code and unit tests.
Currently the Java program is at Version 0.97. Is this ready for Version 1.0 or does it need more work? I would appreciate feedback in the comments.
And if you come across an interesting diagram you think I might not have seen yet, please also post it in a comment.