I feel like a binary search method would work too
Comment on Replication crisis, my arse
SethTaylor@lemmy.world 2 weeks ago
Fun fact: This is not actually much different from the process of testing which foods trigger your IBS after keeping the low FODMAPs diet, wherein you initially remove all possible triggers and then test one by one to see which ones you have specifically.
FeatherConstrictor@sh.itjust.works 2 weeks ago
groet@feddit.org 2 weeks ago
A Binary search requires a ordered data set. Something like "if you react to X, you will also react to any X+1, X+2… X+n. Food is not ordered, you cant know if you react badly to bell peper because you reacted badly to whole grain wheat.
Kazumara@discuss.tchncs.de 2 weeks ago
Can’t you easily reduce this to a compatible problem though?
Let’s say you have the set of foods you suspect: red blue green yellow brown purple
You construct an ordered set from this by making the elements sets of foods such that each set is the one to its left plus any one more entry, the leftmost set is the empty one, and the rightmost is the one containing all your suspects:
{}, {red}, {red, blue}, {red, blue, green} … {red, blue, green, yellow, brown}, {red, blue, green, yellow, brown, purple}
Now a check operation means eating the elements in the current set, if you get sick you go half way to the left border and update the right one, if you don’t get sick you go half way to the right border and update the left one.
You should end up with the smallest set that makes you sick. Subtract the set to the left of it and you have the food that makes you sick left over.
groet@feddit.org 2 weeks ago
I dont think that works. If i try the 5 ingredient set and get sick, i gained no information about ingrediences 6,7,8,9,10. If next i try set 3 and get sick, i have made 2 tries and still have 0 information. If ingrediente 1 makes me sick i will need log(n) tries until i try the set that only contains ingredient 1. After that i have only one point of information because everything i tried so far was tainted by ingrediente 1. I have to try everything again.
Anytime you get sick you gain no information. If you are very lucky and ingedient 1-x are all harmless, then you will eliminate multiple at once. But if 1 is harmless, 2 makes you sick, and the next 1000 ingredients are harmelss you will still have to try log(1002) times to eliminate ingredient 2 and then you know nothing about 3-1003.
rumba@lemmy.zip 2 weeks ago
Yes, you can reduce it much faster assuming one food doesn’t contaminate random other foods and it’s not a workplace hygiene thing.
You could also ask for a bowl, dressing on the side, take it home, try the tuna, 12h try the dressing, 12h try the veggies.
veleth@lemmy.wtf 2 weeks ago
Not necessarily, but searching a data set that’s not ordered relies on an assumption that there’s a single thing you’re looking for.
If there are 10 ingredients, you get sick and you only take half next time, you need to be able to assume that there’s one set that doesn’t get you sick and one that does, and so on until you get down to the last one.
It’s a good way to e.g. quickly find the right breaker in the box, because for each device/ socket there’s just one breaker that’s responsible, so flipping half of them gives you an actionable result
Tar_alcaran@sh.itjust.works 2 weeks ago
No, it’s very different.
When you have multiple allergies/intolerances, starting at zero and then adding one thing at a time is a lot more efficient than removing one thing at a time.
Removing one thing at a time will create many false negatives, where you remove a hit but don’t notice because you left another hit behind.
Illecors@lemmy.cafe 2 weeks ago
That’s not binary search.
Tar_alcaran@sh.itjust.works 2 weeks ago
Correct. I didn’t reply to the binary search post.
poop@lemmy.zip 2 weeks ago
This is me. Turns out basically everything gives me dhiarrea.
hydroxycotton@lemmy.dbzer0.com 2 weeks ago
Is your username inspired by this?
poop@lemmy.zip 2 weeks ago
It is indeed!