• radix
    link
    fedilink
    arrow-up
    10
    arrow-down
    4
    ·
    1 year ago

    The biggest difference (other than the existence of infinity) is that the upper limit is inclusive in summation notation and exclusive in for loops. Threw me for a loop (hah) for a while.

    • outdated_belated@lemmy.sdf.org
      link
      fedilink
      arrow-up
      13
      ·
      1 year ago

      Nah, look at the implementation above:

      n <= 4

      Means it’s inclusive.

      You’re probably referring to some other implementation that doesn’t involve such fine control, like Python where range(4) means [0 1 2 3]

      • radix
        link
        fedilink
        arrow-up
        2
        ·
        1 year ago

        Oh yeah, I meant generally. Isn’t it most common if not best practice to say for (i = 0; i < whatever; i++)?

    • affiliate@lemmy.world
      link
      fedilink
      arrow-up
      3
      ·
      1 year ago

      i thought this was pretty weird too when i found out about it. i’m not entirely sure why it’s done this way but i think it has to do with conventions on where to start indexing. most programming languages start their indexing at 0 while much of the time in math the indexing starts at 1, so i=0 to n-1 becomes i=1 to n.

      • radix
        link
        fedilink
        arrow-up
        5
        ·
        1 year ago

        My abstract math professor showed us that sometimes it’s useful to count natural numbers from 1 instead of 0, like in one problem we did concerning the relation Q on A = N × N defined by (m,n)Q(p,q) iff m/n = p/q. I don’t hate counting natural numbers from 1 anymore because of how commonly this sort of thing comes up in non-computer math contexts.

        • affiliate@lemmy.world
          link
          fedilink
          arrow-up
          2
          ·
          1 year ago

          yeah thats a good example and it shows weird the number 0 is compared to the positive integers. it seems like a lot of the time things are first “defined” for the positive integers and then afterwards the definition is extended to 0 in a “consistent way”. for example, the idea of taking exponents an makes sense when n is a positive integer, but its not immediately clear how to define a0. so, we do some digging and see that am+n = aman when m and n are positive integers. this observation makes defining a0=1 “consistent” with the definition on positive integers, since it makes am+n = aman true when n=0.

          i think this sort of thing makes mathematicians think of 0 as a weird index and its why they tend to prefer starting at 1, and then making 0 the index for the “weird” term when it’s included (like the displacement vector in affine space or the constant term in a taylor series).