This post begins a review of examples of ALS-wings from the ultrahardcore review. The review will illustrate a DIY strategy for constructing them, that is compatible with the concurrent ALS mapping and ALS_XZ building processes of the previous posts. Ultrahardcore 3 starts us off.
An ALS-wing is an AIC with ALS nodes only. The previous posts describe an ALS mapping process, starting with the calculation of all ALS in suset tables, then as these are drawn in row, column and box maps, copying those with promise as AIC extension nodes onto a current grid with AIC segments as a background. Also described was a ALS_XZ scanning process in which, as an ALS is drawn on its map, it is matched against ALS already drawn to form ALS_XZ for immediate removals. An ALS-wing is a special AIC made up of ALS only. It is complete in itself, and independent of existing AIC. To build it as its ALS are added to the ALS map, we leave information on the ALS map, which allows the wing to be constructed when its last ALS is added to the map. From the review we have a host of examples that illustrate how it’s done.
For perspective on ALS-wings, here’s a tally of ways ALS are used in the review puzzles. For ALS_XZ we considered bv or box or line ALS partners for the ALS entering the map. Line vs line, bv and box partners are counted separately, as are singles only vs. alignment restricted commons. Of 12 review puzzles, only one double ALS turned up, and one had no ALS_XZ before trial. There were many AIC with one or two ALS nodes. Of the ALS-wings, more had a bv ALS than didn’t.
Many situations arise as a new ALS is drawn on one of the three maps. Let’s review them by considering how each ALS-wing of the ultrahardcore review gets put together.
Here is the first ALS-wing, from UHC 3. It is an ANL. One terminal is an ALS value 7 group slinked to a 6 value group winked to a single 6 in the same box. Internal slink to 2, box wink to 2 in the yellow ALS and internal slink to 7.
Which ALS is last added? Orange. Looking at the column map as the orange ALS is added, we see the scan of column ALS added before it would pick up the 2 singles in red and the scan back from the red single 6 would find the 6 value group in the green ALS that slinks to the 7 group, the ALS terminal working with the single 7 for the ANL.
The green ALS is on the column map because it is a column ALS as well as a box one. It’s also on the box map, but the yellow ALS column scan comes first.
Now having followed all that, can you see why, in our scanning order, the ALS-wing would be bypassed by a two ALS chain?
I’ll give other readers that answer after the next one.
This next one came a few moves later. Is it different?
Yes, a blue ALS overlaps the green one. The ALS chain
(9=6)green – (6=2)red – (2=9)blue is an ANL confirming the green 9 group, and the chain
(7=6)green – (6-2)red – (2=7)blue confirms the green 7 group.
To account for finding this, notice first that this is two ALS wings. Figure out the black removal first. The red ALS is the last added. There’s the singles match with blue and the wink to the 6 group and slink to 9. The red removal is the same.
Now look back if you need to, to see what would happen if you were a computer code doing our wing finding process. By the way, that’s how it’s done. You create the data first, and then imagine the actions and translate. The orange ALS is not on the map yet. Red is last added. Scanning from the single green 2, you see the single blue 2 and the coloring slink to the green 7. Its an ANL with two ALS nodes.
Many moves later, with very little change in the c78 columns, two of the ALS are reused and a third is expanded by one cell for a fourth ALS-wing from the ALS column map. The green ALS gained one cell and the value 4. In fact, both of the ALS were on the c7 column in the suset table and on the map. The switch places 4 in the green ALS, where it becomes a single ANL terminal, along with single terminal 4r7c2. But why does this occur now, and not immediately after the wing above? It’s because in Beeby code, the completion of an ALS-wing does not prompt a repeated attempt to build ALS-wings from neighboring ALS. It did prompt a repeat of the build, in case the change leads to another removal, and it did.
For what happened to trigger a rebuild from a different ALS, look at what Beeby did just before this ALS-wing. It was the only double ALS_XZ in the review, and it made removals that prompted ALS revisions, ALS_XZ, and ALS-wing rebuilds, including one from ALS c7 1234/34679.
Finally, a challenge for the three part ALS map, a row vs. column scan. Without the green ALS, it’s a grouped ALS_93, but adding in the green internal 34 slink, you get a nice loop, made up of ALS internal slinks and ALS to ALS winks.
Solver Beeby does credit the 3r1c2 removal, and that means it recognizes the nice loop despite 3r1c2 not seeing both ends of the green internal slink, or both ALS_93 ANL terminals. And Beeby does see both ends of the wink between 3r4c2 and the green ALS value group 3. And by the way, that is the only single value nice loop link that can be seen by outside candidates. Both victims see that wink.
That was fun, but the challenge was how would you construct this thing as the last ALS comes in on the column map. Without the green ALS, there’s no slink between the 3 and 4 value groups in the Southwest box. For this one, you would have to scan for box or aligned connections to ALS on the maps, and scan for a common connection between them for a nice loop. Quite a burden.
On the other hand, if these appear frequently enough, you might , for every ALS on its map having the X with the added ALS, but failing the Z, draw a curve on the map connecting them, to represent the chain to be supplied by a later ALS. You could even draw the curve to a transfer terminal for the other map, and continue it to an ALS on the other map.
We’ve burned the oxygen for this post, and will come up for air next time on UHC 47 ass our survey of ultrahardcore ALS-wings continues.