← Back to context

Comment by inigyou

3 hours ago

SORT(1,2,3,4,5,5,6) = 1,2,3,4,5,6

I'm sorry, do all 5's look the same to you!! /s

aka, one item in I is missing in your output.

  • No, if it had one more 5 it would violate your specification that every time must occur exactly once.

    Also, SORT(1,2,3,4) = 1,2,3,4,7

    • Not my specification (drive by third party)

      but I do take the view that ( 1, 2, 3, 4, 5, 5, 6 ) is a list of seven values (perhaps the number of dollars in the pockets of seven distinct unique people) and when sorted the output should also have seven items that correspond to the seven input items.

      > Also ...

      Yeah, that needs tightening up by pastel8739

      9 replies →

  • > I'm sorry, do all 5's look the same to you!! /s

    You have that /s tag, but this is actually the problem with pastel8739's spec as written.

    >> 1. Every item in I is present exactly once in S

    This actually does require inigyou's example to be the result of calling SORT when you cannot distinguish repeated items from each other.

      SORT([1,1]) => [1,1]
    

    The item 1 (which one? doesn't matter, they both do but we only need one to fail the post-condition to invalidate the result) in the source list has a count of 2 in the destination list, so this is an invalid result by the supplied spec.

    pastel8739's spec also doesn't exclude the possibility of inserting new values (so long as they aren't duplicates of items in the source list).