4 ms·
Infinite Craft is _not_ commutative! It's only _mostly_ commutative. Here are some examples (first|second| first+second|second+first): Flattened|Bulldozer|Land
by Scaevolus 3y ago
Infinite Craft is _not_ commutative! It's only _mostly_ commutative. Here are some examples (first|second| first+second|second+first):
Flattened|Bulldozer|Land|Road
Mosque|Cactroll|Mecca|Oasis
Offering|Ragnarok|Odin|Sacrifice
Eel|Lilo|Stitch|Nemo
Sauna|Chia|Sweat|Chia Pet
Vinegar|Owl|Wisdom|Vinaigrette
Cool|Medicine|Ice|Ice Pack
Sunken|Shatter|Ship|Treasure
- quuxplusone 3y agoInteresting. Can you expand a bit more on how you're seeing these? On both desktop and mobile, empirically I observe that Neal's front-end sorts `first` and `second` alphabetically before submitting them to the server, so that even if you (drag, tap) "Flattened" and "Bulldozer" in both orders, it will send `/api/infinite-craft/pair?first=Bulldozer&second=Flattened` to the server in both cases. Furthermore, when I use Chrome's "Copy as fetch" and paste it into the console, so that I can manually change the URL to `first=Flattened&second=Bulldozer`, I still observe that the server responds `{result: 'Road', emoji: '', isNew: false}` in both cases. The null hypothesis is that the backend server is also sorting the inputs alphabetically before consulting the cache/LLM. However, "Bulldozer + Flatten = Land"! I discovered that by accidentally mistyping "Flatten" instead of "Flattened" the first time I manually edited the URL. Is it plausible that, during whatever you were doing to generate these, you just mistyped one of the inputs... and it happened as many as eight times?
- Scaevolus 3y agoHuh, maybe Neal started sorting inputs to canonicalize them mid-way through my scrape? Without that sorting, presuming the backend is some LLM prompt plus the two input words, there's no guarantee that the LLM would emit the same result for both orders-- or it could even be up to randomness in the sampling!