News for hackers. Stuff that matters.
Re:Why Don't Computer Scientists Learn Math? by j-pb on Saturday November 19, 2016 @10:44AM (#12993930)
I would argue that this formulation is outright confusing not because it is so dense but because it has so much unnecessary cruft to misguide the reader.

The entire formula of

{f ∈ [1..N ⟶ 1..N] : ∀ y ∈ 1..N : ∃ x ∈ 1..N : f[x]=y}

could actually be written as

[1..N ⟶ 1..N]

Most CS people myself included will not trust their own senses when confronted with such a tautological statement and continue to search for meaning where there is non because it is so common to encounter cases in your everyday code where something that you thought was dead code has actually semantic meaning.

Re:Why Don't Computer Scientists Learn Math? by berbc on Saturday November 19, 2016 @10:51AM (#12993962)
If by [1..N ⟶ 1..N] you mean the set of functions from [1..N] that have values in [1..N], I think you are wrong. The formula in the post describes a subset, the set of such functions that are surjective.
Re:Why Don't Computer Scientists Learn Math? by j-pb on Saturday November 19, 2016 @11:14AM (#12994081)
Yeah I think your right, in this context I saw the case of [ A -> B ] as a function from coimage A to image B which are all bijective. But it is meant as the more standard domain A to codomain B.

His natural language description is somewhat lacking in that aspect

> I had already explained that [1..N ⟶ 1..N] is the set of functions that map the set 1..N of integers from 1 through N into itself,

Re:Why Don't Computer Scientists Learn Math? by sampo on Saturday November 19, 2016 @09:37PM (#12996960)
Well, he did say "into itself", not "onto itself".