The other possible solution to the regrabbing problem is to use input stealing, where an atom from the 7th input is used to create the 6th slightly faster than it could otherwise be finished. So for this to work, you would do a regular pipeline up until the last input, then do a sliding pipeline like this one. Here is an ( ) of this being done for a single set of products, courtesy of biggiemac. This allows both the fire and water to be grabbed on the first cycle, avoiding time loss due to regrabs. Unlike swinging, sliding can be done by multiple arms at the same time. In order to do this, you must slide the 6th input until the bonds are all broken. One solution is to avoid the last regrab. This forces one of them to have L=4, pushing the solution to 17 cycles.īut if we allow special-casing of the last output, we can potentially shave that off! The water has L=3 to unbond the two salts and the fire, and you have to regrab each of them after unbonding. This means that only one atom from the input can be grabbed. The molecule is too big to be slid off of the input without blocking it, meaning that any full throughput solution must swing the input. The slide is relatively well known in the optimization community, and documented on the ( ) page, but the steal is not as well known, perhaps because it requires an additional trick. 17 cycles is the optimal looping pipeline, and there are two potential routes to 16: doing the last input as a slide to avoid a regrab, or stealing an atom for the last output from the 7th input. I popped into Discord today and ended up rehashing a conversation I had a while back, about theoretical routes to Alcohol Separation in 16 cycles.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |