Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Honestly, this is mostly an issue of syntax (a problem, but one that is remedied with a quick look-up table/cheat sheet).

Giving a legend explaining those symbols would turn the statement into this:

Given a function (f) that maps integers in the range 1 to n onto the same range (1 to n), for every y in that range (1 to n) there exists an x in that same range (1 to n) where applying the function (f) to an input x results in the value y.

(please correct the parts I got incorrect, it's been a while since my last discrete math class).

These symbols are important tools in discrete mathematics, but are easy to forget or get lost in due to the very high information density they achieve. Adding to the complexity, we explain the range of both inputs and outputs before defining the function. Intuitively, I feel CS folks would prefer to define the input range, the function's mode of operation, and finally the mapped output range.

This is especially complex when these discrete mathematics symbols operate upon one another. Throw in some sigmas and boolean operations, and it quickly become very difficult to parse.

The underlying intuition the author is trying to communicate is likely something that entire audience could understand. They simply weren't fluent in the "language" of mathematics. It's like being very articulate in English, and having to defend a thesis in French. Not only do you have to translate your thoughts, many idioms you may usually rely on are no longer valid in a new language.

Finally, why not define that same statement in Python or matlab? It's just as valid in my opinion.



Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: