The first does, just not empty octagons. Then empty ones appear later
I think the only reason the empty octagon doesn't appear after one iteration is that red pentagrams have blue offspring but blue pentagrams have no red offspring. So each iteration the blue pentagrams introduce more empty gaps
@MartinBüttner I have a sneaking suspicion that this tiling may have an infinite number of prototiles. Depends on whether my interpretation of the subdivision rule is correct
The areas with just blue pentagrams have no way of regaining red pentagrams as the red pentagrams red offspring are limited to their bounding pentagons. This means each iteration will introduce a slightly higher number of sides in the shapes appearing in the blue only areas
Old fashioned intelligence gathering
As we've heard in the news, some intelligence agencies have decided to go back to typewriters due to the security hazards of the Internet. You are a spy. In spite of this change in policy to make messages more secure, one of your contacts scores an intellig...
I recommend making a simple loop to give you images of each iteration without worrying about adjacency, just to see what your rule looks like. If it doesn't produce any weird partial overlaps, then you don't need to hit your brain against it any further
All that still seems to give behaviour that matches pentagram only rules. The only extra feature is filling in the octagons. Would it be easier to just add the octagon rule to the pentagram rule?
@githubphagocyte you can't just go by pentagrams because then you're neglecting the rhombs between them (you could reconstruct them but that's harder than just substituting those as well)
@githubphagocyte and no I can't add the octagon rule to the pentagram rule, because it needs to happen a step later
looking at that zoomed out picture, I love how the large pentagon in the centre and the five smaller ones around it still hint at the original pentagram :)
@githubphagocyte no, I only went the other direction :D
ah, but that's referring to the tiling before the pentagram one
okay but in any case... with those new update rules I can probably figure this out. the only thing that I need to think about is how to match up the newly created vertices
interestingly, if this a decoration of the penrose tiling, there a) has to be another tiling with these tiles which has five-fold symmetry, and b) there are an infinite amount of others which have no such symmetry
I guess you obtain a) by starting with a blue pentagram
I won't make much progress on this over the weekend... going home for a few days... but I'll be back for the bank holiday on monday, and the girlfriend is working, so I've got a full day then ^^
Just looked at the big picture again and the almost all blue areas in pentagram shapes in the middle of the outer edges do look like they are full of octagons, so I can see how that rule would cover everything.
Which the blue are going to autogenerate next iteration anyway (I know you need them catalogued for your program, but in terms of drawing them they are there automatically)
I wonder if there is a straightforward way of generating the list of tiles from the list of vertices
My traveling salesman is gradually approaching an approximation with no overlaps, but I think I should have had a grid based approach to narrow down crossed lines rather than trying at random
I'm just modeling it as a list, with connections from each member to the next, and from the last back to the first. Then I'm just picking 2 members and swapping them, or picking 1 member and moving it, or finding a crossed link and uncrossing it by reversing the order in the list of all the members joining one side to the other
Since my weights are all distances uncrossing nearly always gives a shorter path, and uncrossing is all I really need out of this for the question anyway
I know it makes certain heuristics possible, so you can get better solutions faster, but my impression was that finding a minimum solution was still NP complete
All I need is an approximation with no crossings, but there are a huge number of those, only a small number of which will be minimum
yes, you can easily tell which of two arrangements is shorter, but there are a vast number of different possibilities so finding a minimum is still NP hard
Unless you use "n-opt" which would take an unimaginably long time...
For me, since I'm focused on uncrossing, I'm thinking of having a grid, with each cell listing the lines that cross through it.
Then I can look at a given line and know I only have to check the lines that pass through the same cells as it, rather than searching around randomly to find crossings
I only have about 10,000 points but I still think a grid would speed up finding crossings considerably
Making a dichotomous key
A dichotomous key, also known as a single-access key is often used to identify plants/animals. Your task is, given a set of data, write the shortest program that outputs the shortest (in steps) possible dichotomous key. If there are multiple solutions, the program may pr...
@MartinBüttner Probably by doing inflation then subdivision back to the level you started at.
@githubphagocyte If you have the edges as well then you can walk around a tile and build it up that way. That's the phase 2 of the two-phase idea I suggested earlier. But the lower bound on how complicated it gets is higher than the lower bound on how complicated subdivision necessarily is.
It seems (from this meta thread) that we are no longer intending to retire sandboxes, and I now approve of this plan. Because the answers can be sorted by activity, old posts will not clutter the sandbox and there is no need to retire it.
Now that Mark XIII has been retired, and the only one cur...
Gun Fight at High Noon
Gameplay
This will be a 5 or 4 stage (the decision will br explained later) tournament where programs are pitched against each other to solve an integration problem faster than the other. The fastest will then go on to the next round.
Number of rounds: Due to tournament ...
it turns out everything was upside down not long ago, and that was breaking my newly added special cases for omitting the orval, now everything is the right way up, but the order of the orval is meaningless (but has been inverted), because or is or, so it might be better to have it the other way up
@MartinBüttner In this context, it seems to be the standard term for doing the opposite of subdivision. You take a tile and you say "If this had been generated by subdivision, the other tiles generated in the same step would be X, Y, Z."
@MartinBüttner For Labyrinth it wasn't too hard. Penrose, though, had options, and working out what sequences of options would allow me to grow roughly the same amount in each direction started to get messy. That's why I went for the projection.
@PeterTaylor Well as long as I'm sticking to the rotationally-symmetric tilling, I can just subdivide what I have and then map the living cells to the correct places in the new grid.
Each subdivision will always contain the original grid mirrored on the horizontal axis.
Golfing kryptonite
Choose two languages, L and S, where S is generally regarded as stronger at code golfing than L. Then provide a code golfing task K and a solution written in L, which can defeat S in golf-battle.
Both L and S must be Turing-complete languages (ignoring memory limits).
Tags: p...
XKCD: (Battle of the) Hats
Enough background, get into the game
A king-of-the-hill challenge.
You all started at a point. At the count on 3, you decides to wear yourself 1 black hat, 2 black hats or 1 white hat.
Here's what happened:
If you use 1 black hat ->
-> If your opponent also us...
@Geobits Sounds cold for summer that far south. I'm on about the same latitude as NY and what you've described is the weather here. And it's cold for August.
@PeterTaylor Well, I live near the coast, so the gulf breeze cools down the absolute temp, while the 80%+ humidity makes it feel much worse. But yea, this summer hasn't been as bad as some.
I understand how to combine selectors such that the results match any of the conditions, but I want to combine selectors such that results match all of the selectors.
$(Condition1, Condition2, Condition3) -> Anything matching Condition1 OR Condition2 OR Condition3
They deleted their first rule breaking answer, and then came back with a revised algorithm that still breaks the rules, and posted an image from the previous rule breaking algorithm. With a flood of upvotes and no support for doing something about rule breaking answers I don't know what can be done. codegolf.stackexchange.com/a/36491/20283
@Doorknob I commented to say it still has areas of dense black (even viewing the full image). The question and the clarifying comments exclude lines that touch.
It's a good algorithm if the frequency is capped to prevent the line touching, but the image as it is has a significant advantage over the rule following images, as they cannot produce dense black, as discussed in the question comments.
@Doorknob the deleted answer claims to be accidental. I didn't know whether to believe that at the time. Now that a replacement answer has been posted which still ignores the very first sentence of a very short spec, I am doubtful that it is unintentional.
Because it nowhere requires that the output be a raster image, so I could make an svg with lines 1px thick whose centres are 1.0001px apart and argue that they're not touching.
But requiring that the output be a raster image when it asks for a line is somewhat perverse.
@PeterTaylor if the answer was presented as an SVG image I could zoom in and check, or read the source. Since such clever tricks have not been used I see this as simply ignoring the rules. I'd have a lot more time for something cleverly getting around the rules - I think that's a big part of what this site is about.
My problem is with a rule being ignored in order to get an advantage without even the effort of finding a loophole.
The comments also clarify whether pixels of the line can touch - corner touching is acceptable on odd occasions, otherwise none is permitted.
@PeterTaylor I agree the question could be improved, but it is more than clear enough to make this answer invalid.
What seems a bigger problem is that such answers are being posted wilfully. Problems caused by misunderstanding are just part of a process of learning and I've got a lot of time for explaining in such cases. It's answers from people who already know better and demonstrate more than enough skill to write a valid answer that I see as the problem
I agree, and I'd rather see a more clearly defined question with fewer exceptions.
@PeterTaylor I notice you commented at the bottom of that comment thread 2 days ago - you must have blanked it out of your memory as too horrific to think about ;)