Show HN: an extremely simple program shows a 2D structure in the integers This seems unlikely to be a "new" idea, but I stumbled into it by accident and thought it was cool. Java source code below: |
Show HN: an extremely simple program shows a 2D structure in the integers This seems unlikely to be a "new" idea, but I stumbled into it by accident and thought it was cool. Java source code below: |
http://www.oftenpaper.net/sierpinski.htm
It points out that you can interpret the table as the relation "is disjoint" between the bitsets encoded in the row and col indices (CTRL+F for "binary logic"). Following links from there will take you to a rabbit hole of combinatorics that I will not claim to fully understand.The whole page is a delight, though, and given your enjoyment for your discovery, you'll certainly love browsing it.
http://en.wikipedia.org/wiki/Sierpinski_triangle
I'm sure someone with a greater intuition for mathematics than I have will be able to explain why.
main(c,r){for(r=32;r;)printf(++c>31?c=!r--,"\n":c<r?" ":~c&r?" `":" #");}
I first learned of this phenomenon in my discrete math class, and we had a competition to see who would write the shortest program to draw a Sierpinski triangle. This version would certainly have won if I'd been clever enough to write it at the time, though even shorter versions are possible in other languages.seems to be a paper on this phenomenon, with
http://faculty.msmary.edu/heinold/maa_pres2009-11-14.pdf
being a similar work in presentation form.
I've never seen it before; I like it!
internal class Program
{
public static void Main()
{
int numRows = 256;
int numColumns = 128;
for (int row = 0; row < numRows; row++)
{
StringBuilder rowOutput = new StringBuilder();
for (int column = 0; column < numColumns; column++)
{
if ((row & column) != 0) rowOutput.Append("1");
else rowOutput.Append("0");
}
Console.WriteLine("row/col {0}:\t{1}", row, rowOutput);
}
Console.Read();
}
}
Cool stuff, very interesting to see that triangle structure emerge.In the years since, I've seen primes, rationals, irrationals, Mandelbrot, and all manner of weird structures popping up out of what seemed like nothing.
How did this happen? And who put all that stuff in there?