Live data from Hacker News

For mathematicians, = does not mean equality

jeremykun.com

21–30 of 206 posts

Re: For mathematicians, = does not mean equality

#22

Operators in mathematics are overloaded in a very similar way to operators in computer science (in languages that permit overloading). I think the author hints toward a good point: there is no use arguing over the meaning of "=" in a general sense, because the meaning is contextual. I think this whole discussion is merely indicative of inexperience on the part of computer scientists attempting to navigate mathematics…

CS already abuses equality all the time with big-O notation. Often you see stuff like f(n) = O(N²), when they mean that f ∈ O(N²). It's fine because everyone knows what's going on, but it's not using it in the sense of equality.

Sure it is, O notation denotes equivalence classes and being part of the same equivalence class is a perfectly cromulent notion of equality.

Re: For mathematicians, = does not mean equality

#23

There are few more examples that come to mind, like statements about intervals (π = 3.14 ± 0.01) and the usual notation for modular arithmetic; 3 * 3 = 1 (mod 4). Oh, and the wonderful notation for integrals, ∫ 2x dx = x² + C

Isn't the integral notation just saying that two sets (or equivalence classes or similar) are equal?

Re: For mathematicians, = does not mean equality

#24
post #18
post #14

Fully agreed, though to nitpick: > Rather than precisely say, f(2) = 7, we say that for x=2, f(x) = 7. So x is simultaneously an indeterminate input and a concrete value This seems like a perfectly by-the-book piece of second-order logic with two equality predicates. i.e., the statement asserts that if you look at the space of all possible values for x, then for each value where the predicate "x = 2" holds, the other…

Fair point. I'd add that f(x) = 7 can be both equality of functions and equality of evaluations, and binding x=2 suddenly changes the meaning of the equality and the expression.

True. I don't want to dispute that there is a hell of ambiguity in using =.

Re: For mathematicians, = does not mean equality

#25

There are few more examples that come to mind, like statements about intervals (π = 3.14 ± 0.01) and the usual notation for modular arithmetic; 3 * 3 = 1 (mod 4). Oh, and the wonderful notation for integrals, ∫ 2x dx = x² + C

The integral notation is a set-builder in disguise:

∫ f(x) dx = set of solutions of diff. eq. g'(x) = f(x)

Of course, writing

∫ 2x dx = { x² + C | C ∊ R }

grows old pretty fast, so we drop a couple of characters here and there, but it's pretty consistent with set-builder.

Of course, this only goes to show the article's point that what "=" means here requires a lot of context.

Re: For mathematicians, = does not mean equality

#26
post #19

I agree with the thoughts on the = sign but I'm not so sure about mutations. > If mutation is so great, why do mathematicians use recursion so much? Huh? Huh? > Well, I’ve got two counterpoints. The first is that the goal here is to reason about the sequence, not to describe it in a way that can be efficiently carried out by a computer. Most high level languages try to avoid making the programmer describe the most ef…

>> If mutation is so great, why do mathematicians use recursion so much?

> Huh? Huh?

The deal here is surely that induction and other recursive approaches are conducive to being reasoned about in traditional mathematical contexts (e.g. taking a walk). Mutation is impossible to keep track of, mentally. Though others' mileage will vary on that.

Re: For mathematicians, = does not mean equality

#27

There are few more examples that come to mind, like statements about intervals (π = 3.14 ± 0.01) and the usual notation for modular arithmetic; 3 * 3 = 1 (mod 4). Oh, and the wonderful notation for integrals, ∫ 2x dx = x² + C

The usual notation for modular arithmetic uses three dashes, not two, to denote congruence.

Re: For mathematicians, = does not mean equality

#28

Earlier quoted context omitted.

CS already abuses equality all the time with big-O notation. Often you see stuff like f(n) = O(N²), when they mean that f ∈ O(N²). It's fine because everyone knows what's going on, but it's not using it in the sense of equality.

Mathamaticians also abuse big-O in a simmilar way. For instance we might say: sin(x) = x -x^3/6 + x^5/120 + O(x^7) To indicate that the terms we did not write are in O(x^7). Also note that, in this case, we are actually looking at big-O as x->0.

The statement about sine above is not something mathematicians would write. It makes little sense to use big-O notation in this context, as it doesn't say anything useful here: the O(x^7) element absolutely dominates the remaining explicit elements of lower order, so including them tells us absolutely nothing. In fact, sin(x) = O(1).

However, mathematicians do indeed use similar notation in this context, that is, little-o notation. It is in fact true that

sin(x) = x -x^3/6 + x^5/120 + o(x^5), x -> 0.

Re: For mathematicians, = does not mean equality

#29

Earlier quoted context omitted.

CS already abuses equality all the time with big-O notation. Often you see stuff like f(n) = O(N²), when they mean that f ∈ O(N²). It's fine because everyone knows what's going on, but it's not using it in the sense of equality.

Sure it is, O notation denotes equivalence classes and being part of the same equivalence class is a perfectly cromulent notion of equality.

Big-theta gives you equivalence classes. Big-O only gives you partial ordering.

For instance, we might say x = O(x^2) and x=O(x), but we would not say O(x^2)=O(x).

Interestingly, in my experience, some people will actually say O(x)=O(x^2), but that seems a bit too abusive for my liking.

Re: For mathematicians, = does not mean equality

#30
post #9
post #6

This. It's even more obvious in linear algebra where mathematicians routinely start with the premise "Ax = b", even if there is no solution x that would satisfy the equation exactly.

I disagree: "Ax = b" is a statement. It does not need to be true. This is quite useful and often used for "proofs by contradiction".

I see it being used all over the place as a starting point to solve for x, even if A is non-square and/or x ends up being a least squares solution.
Post reply on HN