For mathematicians, = does not mean equality
21–30 of 206 posts
Re: For mathematicians, = does not mean equality
#22Operators 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.
Re: For mathematicians, = does not mean equality
#23There 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
Re: For mathematicians, = does not mean equality
#24Fully 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.
Re: For mathematicians, = does not mean equality
#25There 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
∫ 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
#26I 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…
> 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
#27There 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
Re: For mathematicians, = does not mean equality
#28Earlier 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.
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
#29Earlier 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.
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
#30This. 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".