• Zagorath@aussie.zone
    link
    fedilink
    arrow-up
    10
    arrow-down
    1
    ·
    1 year ago

    I was about to reply to you with a comment that started with “oh shit you’re right!” But as I wrote it I started rethinking and I’m not sure now.

    Because I actually don’t think it matters whether we’re BB1 or BB2. They’re both only one generation of the four possible initial states. Which child opens the door is determined after the determination of which child is which gender. Basically, given that they have two boys, we’re guaranteed to see a boy, so you shouldn’t count it twice.

    Still, I’m now no where near as confident in my answer as I was a moment ago. I might actually go and write the code to perform the experiment as I outlined in an earlier comment (let me know if you think that methodology is flawed/biased, and how you think it should be changed) to see what happens.

    • Hacksaw@lemmy.ca
      link
      fedilink
      arrow-up
      11
      ·
      1 year ago

      That’s a great idea let me know how it turns out. If you randomly pick the genders and randomly pick who opens the door, I think it will be 50-50. With these kinds of things they can get pretty tricky. Just because an explanation seems to make sense doesn’t mean it’s right so I’m curious!

      • Zagorath@aussie.zone
        link
        fedilink
        English
        arrow-up
        16
        ·
        1 year ago

        I put it together. Here’s the code I wrote in Python.

        import random
        
        genders = ['boy', 'girl']
        
        def run():
            other_child_girls = 0
            for i in range(10000):
                other_child = get_other_child()
                if other_child == 'girl':
                    other_child_girls += 1
            print(other_child_girls)
        
        def get_other_child():
            children = random.choices(genders, k=2)
            first_child_index = random.randint(0, 1)
            first_child = children[first_child_index]
            if first_child == 'boy':
                other_child_index = (first_child_index + 1) % 2
                return children[other_child_index]
            # Recursively repeat this call until the child at the door is a boy
            # (i.e., discard any cases where the child at the door is a girl)
            return get_other_child()
        
        if __name__ == '__main__':
            run()
        

        And it turns out you were right. I ran it a few times and got answers ranging from 4942 to 5087, i.e., clustered around 50%.

        • Hacksaw@lemmy.ca
          link
          fedilink
          arrow-up
          11
          ·
          1 year ago

          That’s cool. Always nice to see a practical example of theory. Thanks to you I got to brush up on my Python too! I think it all makes sense. Everything is random, you exclude examples where s girl comes to the door. The odds are 50-50. Looks like you were right in the end though, this DID stir quite a bit of conversation lol!

        • starman2112@sh.itjust.works
          link
          fedilink
          arrow-up
          3
          ·
          edit-2
          1 year ago

          There’ve been a lot of times when I simply didn’t believe something in statistics until I simulated it. Like this problem:

          I have two children. One is a boy born on a Tuesday. What is the probability I have two boys?

          I wanted to simulate that because the answer seems absurd. 13/27? Where does that even come from? I’m scared of snakes, so I use Baby’s First Programming Language: Tasker.

          1. Variable randomize %sex Min:1 Max:2

          2. Variable randomize %day Min:1 Max:7

          3. Variable set %child1 “%sex%day”

          4. Variable randomize %sex Min:1 Max:2

          5. Variable randomize %day Min:1 Max:7

          6. Variable set %child2 “%sex%day”

          7. Goto 1 IF %child1 != 11 AND %child2 != 11

          Now I’ve generated two random children, at least one of which is 11–a specific sex born on a specific day.

          1. Variable add %BoyGirl IF %child1 = 2* OR %child2 = 2*

          2. Variable add %BoyBoy IF %child1 = 1* AND %child2 = 1*

          If either child is a girl, it adds one to the BG bucket. If neither one is a girl, it adds one to the BB bucket.

          1. Variable add %Counter

          2. Goto 1 IF %Counter > 1,000

          Hit play and yep, about 48% of families were BB. But remove the Tuesday part and just simulate the question “I have two children, and at least one of them is a boy,” and it drops down to 33% again. I don’t understand it, but apparently the math maths.

          • Zagorath@aussie.zone
            link
            fedilink
            English
            arrow-up
            5
            ·
            1 year ago

            the math maths

            Ha. As someone from the “mathematics is shortened to maths” part of the world, this sounds weird to me. I’d probably say “the maths mathses”. I just thought you might enjoy that.

            Anyway, I Googled the problem you presented, and came across this excellent answer:

            There are even trickier aspects to this question. For example, what is the strategy of the guy telling you about his family? If he always mentions a boy first and not a daughter, we get one probability; if he talks about the sex of the first born child, we get a different probability. Your calculation makes a choice in this issue - you choose the version of “if the father has a boy and a girl, he’ll mention the boy”.

            What I’m aiming to is this: the question is not well-defined mathematically. It has several possible interpretations, and as such the “problem” here is indeed of the language; or more correctly, the fact that a simple statement in English does not convey enough information to specify the precise model for the problem.

            The whole answer is worth reading, but that part there is the crux of it. It goes back to one of my earliest comments on this topic in this thread. The problem isn’t that maths is weird, it’s that language’s ability to describe mathematical problems is lacking. There are so many different ways to translate the described problem into mathematical formulae and they necessarily carry assumptions. Even far more subtle assumptions than I at first thought.

            • nilloc
              link
              fedilink
              English
              arrow-up
              3
              ·
              1 year ago

              I know this wasn’t the main point of your comment, but to be grammatically correct, it would be “the maths math.”

              Plural verbs go with their plural noun subject and don’t need the s:

              • This book belongs on the shelf.
              • These books belong on the shelf.

              And like you said, maths being short for mathematics means it’s plural.

    • Smoked_Brie@lemmy.blahaj.zone
      link
      fedilink
      arrow-up
      4
      ·
      1 year ago

      And this interaction is why lemmy (and others) is superior. No “fuck you, you’re wrong” just “well I think it’s this” followed by “okay, let me try that” 10/10