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

Hardy's "A course of Pure Mathematics" has been highly regarded since it was first published in 1908 because it was an innovative text: rigorous, modern, well-written. Its intended readership was always first year "honours" mathematics students. This book inspired innovation in subsequent generations of textbook writers.

However, in the 21st century, this book really can no longer be recommended for its original teaching purpose. As a textbook it is outdated (a term I hate, but it is true). It is now an historical curiosity - although one which I am pleased to own, and the exercises in the book are still worth a look.

Calculus teaching has progressed considerably since 1908. The construction of the real number system in Hardy's book, using the Dedekind Cut method is overly complicated - the use of the of Least Upper Bound is much simpler and clearer. Hardy defines the concept of integral solely as the anti-derivative; there is no discussion of Riemann sums, or Darboux sums, etc. I am sure I would not want to take Hardy's approach today.

I think we are better off recommending books are more modern.

I will start by recommending "Calculus" by Michael Spivak.



I need to brush up on math for my current project:

https://github.com/WillAdams/gcodepreview

and found the book series:

- _Make:Geometry_ https://www.goodreads.com/book/show/58059196-make

- _Make:Trigonometry_ https://www.goodreads.com/book/show/123127774-make

- _Make:Calculus_ https://www.goodreads.com/book/show/61739368-make

a helpful review and extension of my slipshod math education (remember how Feynman once critiqued some math books, esp. calling out one for using made-up associations of colors and star temperatures? guess which one the school system I attended was using...).

Next step is I need to work with conic sections and after that Bézier curves/surfaces --- could you suggest texts on those subjects?


These look great, thanks for sharing :)


You're welcome!

Hopefully someone can make recommendations for books (or other references) which address the next two aspects of math I'll need, conic sections and Bézier curves/surfaces.

I have found:

- _Practical Conic Sections_ by J.W. Downs

- https://pomax.github.io/bezierinfo/

- https://www.youtube.com/watch?v=aVwxzDHniEw

and I'm reading through _METAFONT: The Program_ but if someone could provide a list of math texts which build from the Make: <foo> series (the coverage of conic sections in them was sparser than I was hoping for) I'd be glad of it. Links to helpful Github repositories would be welcome as well (for reviewing once I've digested the books).


> The construction of the real number system in Hardy's book, using the Dedekind Cut method is overly complicated - the use of the of Least Upper Bound is much simpler and clearer.

A Dedekind cut is a partition of the rational numbers into two sets, A and B, where every number that belongs to A is less than every number that belongs to B.

The cut represents a rational number if B has a least element, and an irrational number if it doesn't. (In full generality, it's a rational number if either (1) A has a greatest element, or (2) B has a least element, but in the case where A has a greatest element, we transfer that element into B, where it's the least element.)

The real number represented by a Dedekind cut is always the least upper bound of A (and the greatest lower bound of B). How does "the use of the Least Upper Bound" differ from Dedekind cuts? They aren't just the same thing in some arcane abstract sense where they both map onto the real numbers - they're the same thing in the most direct sense possible.

(For comparison, my analysis class defined real numbers as Cauchy sequences of rationals. The limit of such a sequence is a real number, but that real number need not be an upper or lower bound to anything.)


Really wished modern mathematics textbook cover geometric algebra not only complex algebra, what a shame and a lost of great opportunity [1]. It seems the contents of pure math textbooks do not changed and improved much after more than a century and when I did my pure math A level many years ago the contents are not much different than Hardy's textbook contents.

Apparently and ironically when the textbook was written when Hardy was the Savilian Chair of Geometry at Oxford University. If he had introduced GA into the contents back then it will be a game changing and I'd probably had studied GA in my pure math class back then.

[1] Projective Geometric Algebra:

https://projectivegeometricalgebra.org/


I recently looked at the syllabus of a course by my alma matar targeted at the same audience of ambitious first-year mathematics students with an emphasis on rigor. It is quite different from Hardy's book and the changes are, I think, for the better. Mostly, it introduces a lot more discrete mathematics, with a little bit of even graph theory and a little bit of enumerative combinatorics (generating functions and the like). In contrast this book is mostly focused on calculus and analysis, which are already separate courses. Freshman students should be exposed to a wider variety of topics in college-level mathematics and not just harder versions of what they already studied in high school.


What do you think of Hardy's book in number theory? I have never done number theory but having to study it a bit while I work on sets of traps that are approximable by algebraic numbers and it is really a nice read.


sets of reals, not traps.


I’m currently reading through Martin to teach myself Calculus - can really recommend it!


What do you mean by "the use of the Least Upper Bound"?


Probably what Abbott in Understanding Analysis calls the axiom of completeness: every set that is bounded above has a least upper bound.

Making this stipulation distinguishes the reals from the rationals, as e.g. the set of numbers whose square is less than 2 is bounded above by any number whose square is greater than or equal to two, but among the rationals there is no least upper bound: given any rational number whose square is greater than or equal to two we can always find a smaller such rational.

Assuming the axiom of completeness, we define the square root of two as the least upper bound of the set of numbers whose square is less than two


But that is an axiom, not a construction! The point of Dedekind cuts is that they give a construction of the real numbers, and one can prove that this satisfies the Axiom of Least Upper Bounds.


You don't need a construction for a calculus class. If you do need one Cauchy sequence completion is more generalizable and somewhat easier to work with.


I don’t really know what a “calculus” class is since here (the UK) that term isn’t really used for university-level mathematics; we’d usually say “analysis” instead, but I know that “analysis” is a class in the US too, so I don’t know if calculus is closer to what we would do just prior to university (a bit of limits, differentiation, Riemann integrals, a bit of vector calculus).

Virtually every first year UK undergraduate analysis course will start with a construction of the reals via Dedekind cuts, and this is about the level that this book is pitched at.

The original commenter suggested that “least upper bounds” is a simpler approach, and that Hardy’s book is outdated by using Dedekind cuts; it may be that constructing the reals is not something that would be done at “calculus”-level in the US, but clearly the book isn’t aimed at that level.

Dedekind cuts (or Cauchy sequences) are totally standard, and I don’t think it’s fair to criticise their use at all.


In the U.S., there is typically a separation between calculus and real analysis. Though, the amount of difference between the two depends on the university.

In calculus, there is more emphasis on learning how to mechanically manipulate derivatives and integrals and their use in science and engineering. While this includes some instruction on proving results necessary for formally defining derivatives and integrals, it is generally not the primary focus. Meaning, things like limits will be explained and then used to construct derivatives and integrals, but the construction of the reals is less common in this course. Commonly, calculus 1 focuses more on derivatives, 2 on integrals, and 3 on multivariable. However, to be clear, there is a huge variety in what is taught in calculus and how proof based it is. It depends on the department.

Real analysis focuses purely on proving the results used in calculus classes and would include a discussion on the construction of the reals. A typical book for this would be something like Principles of Mathematical Analysis by Rudin.

I'm not writing this because I don't think you don't know what these topics are, but to help explain some of the differences between the U.S. and elsewhere. I've worked at universities both in the U.S. and in Europe and it's always a bit different. As to why or what's better, no idea. But, now you know.

Side note, the U.S. also has a separate degree for math education, which I've not seen elsewhere. No idea why, but it also surprised me when I found out.


There's a POV that learning math and learning how to teach math effectively are two orthogonal things.

If one only took the method of teaching that is most common in US university lecture halls, and applied it to a small class of pre-teens or teenagers, it probably wouldn't be very effective.


I went to a University of California school which had 3 calculus tracks - one for life/social sciences students (eg biology, econ), one for physical sciences (chemistry, physics, math, ...), and an honors track.

High school went up through what we call Algebra II. Calculus is an Advanced Placement (AP) course that most students don't take.

I took physical sciences calc + multivariate calc (1 year including summer), an intro to proofs and set theory course, and then finally a rigorous construction of reals was taught in our upper division real analysis course. So somewhere in my second year as a math major. Though I had already researched the constructions myself out of curiosity.

Apart from the material being extraneous for anyone outside the major, I think they were in a sense trying to be more rigorous by first requiring set theory which included constructions of the integer and rational number systems.


The axiom is used to give an alternative construction of real. Everything starts with some axioms somewhere.


This is basically exactly a dedekind cut.


Where we define the real numbers as the least upper bounds of special sets. There is a bijection between these sets and the set of real numbers which we commonly think of and that bijection is the least upper bound of such sets.


Seconded, the “least upper bound” method for constructing the reals that I know about is… …Dedekind cuts.


I haven't looked at Hardy's but the presentation in Spivak is also Dedekind cuts. Perhaps Hardy uses a different approach and OP misnamed it? Rudin's chapter 1 annex also use Dedekind's cuts.


It looks like Hardy used Dedekind cuts from starting with the second edition (1914), but not in the first edition (1908).

What's the advantage of Dedekind cuts over say equivalence classes of Cauchy sequences of rational numbers? Particularly if you start out by introducing the integers and rational numbers as equivalence classes as well.


Cauchy sequences can be made constructive (providing a nice foundation for numerical analysis); Dedekind cuts cannot.


The equivalence class of Cauchy sequences is vastly larger and misleading compared to those of integers and rational numbers. You can take any finite sequence and prepend it to a Cauchy sequence and it will represent the same real number. For example, a sequence of 0,0,0,...,0 where the number of dots is the count of all the atoms in the universe and then followed by the decimal approximations of pi: 3, 3.1, 3.14, 3.141, ... The key component is the error clause of getting close, but that can vary greatly from sequence to sequence as to when that happens. The cute idea of being able to look at a sequence and see roughly where it is converging just is not captured well in the reality of the equivalence classes.

More or less, one can think of a Cauchy sequence of generating intervals that contain the real number, but it can be arbitrarily long before the sequence gets to "small" intervals. So comparing two Cauchy sequences could be quite difficult. Contrast that with the rational numbers where a/b ~ c/d if and only if ad = bc. This is a relatively simple thing to check if a, b, c, and d are comfortably within the realm of human computation.

Dedekind cuts avoid this as there is just one object and it is assumed to be completed. This is unrealistic in general though the n-roots are wonderful examples to think it is all okay and explicit. But if one considers e, it becomes clear that one has to do an approximation to get bounds on what is in the lower cut. The (lower) Dedekind cut can be thought of as being the set of lower endpoints of intervals that contain the real number.

My preference is to define real numbers as the set of inclusive rational intervals that contain the real number. That is a bit circular, of course, so one has to come up with properties that say when a set of intervals satisfies being a real number. The key property is based on the idea behind the intermediate value theorem, namely, given an interval containing the real number, any number in the interval divides the interval in two pieces, one which is in the set and the other is not (if the number chosen "is" the real number, then both pieces are in the set).

There is a version of this idea which is theoretically complete and uses Dedekind cuts to establish its correctness[1] and there is a version of this idea which uses what I call oracles that gets into the practical messiness of not being able to fully present a real number in practice[2].

1: https://github.com/jostylr/Reals-as-Oracles/blob/main/articl... 2: https://github.com/jostylr/Reals-as-Oracles/blob/main/articl...


> The equivalence class of Cauchy sequences is vastly larger and misleading compared to those of integers and rational numbers. You can take any finite sequence and prepend it to a Cauchy sequence and it will represent the same real number. ...

This can be addressed practically enough by introducing the notion of a 'modulus of convergence'.


> The equivalence class of Cauchy sequences is vastly larger and misleading compared to those of integers and rational numbers. You can take any finite sequence and prepend it to a Cauchy sequence and it will represent the same real number.

What's the misleading part of this supposed to be?


I’m not who you replied to, but:

The equivalence classes of integers: pairs of naturals with (a, b) ~ (c, d) := (a + d) = (b + c).

The equivalence classes of rationals: pairs of integers with (a, b) ~ (c, d) := ad = bc.

It’s “easy” to tell whether two integers/rationals are equivalent, because the equivalence rule only requires you to determine whether one pair is a translation/multiple resp. of the other (proof is left to the reader).

Cauchy sequences, on the other hand, require you to consider the limit of an infinite sequence; as the GP points out, two sequences with the same limit may differ by an arbitrarily large prefix, which makes them “hard” to compare.

We can formalise this notion by pointing out that equality of integers and rationals is decidable, whereas equality of Cauchy reals is not. On the other hand, equality of Dedekind reals isn’t decidable either, so it’s not that Cauchy reals are necessarily easier than Dedekind reals, but more that they might lull one into a false sense of security because one might naively believe that it’s easy to tell if two sequences have the same limit.


It is easy if you know the limits; if you don't, it's still true that two sequences {r_n}, {s_n} have the same limit if and only if the limit of the difference sequence {r_n - s_n} is zero, which conveniently enough is an integer and can't mess up our attempt to define the reals without invoking the reals.

That won't help you much if you don't know what you're working with, but the same is true of rationals.

I'm missing something as to this:

> equality of Dedekind reals isn’t decidable either

Two Dedekind reals (A, B) and (A', B') are equal if and only if they have identical representations. [Which is to say, A = A' and B = B'.] This is about as simple as equality gets, and is the normal rule of equality for ordered pairs. Can you elaborate on how you're thinking about decidability?


> Two Dedekind reals (A, B) and (A', B') are equal if and only if they have identical representations. […] Can you elaborate on how you're thinking about decidability?

Direct:

Make one of the sets uncomputable, at which point the equality of the sets cannot be decided. This happens when the real defined by the Dedekind cut is itself uncomputable. BB(764) is an integer (!) that I know is uncomputable off the top of my head. The same idea (defining an object in terms of some halting property) is used in the next proof.

Via undecidability of Cauchy reals:

Equality of Cauchy reals is also undecidable. The proof is by negation: consider a procedure that decides whether a real is equal to zero; consider a sequence (a_n) with a_n = 1 if Turing machine A halts within n steps on all inputs, 0 otherwise; this is clearly Cauchy, but if we can decide whether it’s equal to 0, then we can decide HALT.

Cauchy reals and Dedekind reals are isomorphic, so equality of Dedekinds must also be undecidable.

Hopefully those two sketches show what I mean by decidable; caveat that I’m not infallible and haven’t been in academia for a while, so some/all of this may be wrong!


> BB(764) is an integer (!) that I know is uncomputable

I meant BB(748) apparently.

To elaborate on this point a bit, I specifically mean uncomputable in ZFC. There may be other foundations in which it is computable, but we can just find another n for which BB(n) is uncomputable in that framework since BB is an uncomputable function.


Your method for deciding whether two rationals are or aren't equal relies on having representations of those rationals. If you don't have those, it doesn't matter that there's an efficient test of equality when you do.

But you're arguing that equality of Dedekind reals is undecidable based on a problem that occurs when you define a particular "Dedekind real" only by reference to some property that it has. If you had a representation of the values as Dedekind reals, it would be trivial to determine whether they were or weren't equal. You're holding them to a different standard than you're using for the integers and rationals. Why?

Let's decide a question about the integers. Is BB(800) equal to BB(801)?

It sure seems like it isn't. How sure are you?


The important point for me is that the equivalence for Cauchy sequences are part of the definition of real numbers as Cauchy sequences. This ought to imply that one has to be able to decide equivalence of two sequences for the definition to make sense. For Dedekind cuts, the crucial aspect is being able to define the set and that is something that can be called into question. But if that is done, it is just a computational question in comparing two Dedekind cuts, not a definitional one.


The intuition of a sequence is that the terms get closer to the convergence point. Looking at the first trillion elements of a sequence feels like it ought to give one some kind of information about the number. But without the convergence information, those first trillion elements of the sequence can be wholly useless and simply randomly chosen rational numbers. This is an "of course", but when talking about defining a real number with these sequences, as opposed to approximating them, this gives me a great deal of unease.

In particular, it is quite possible to prove a theorem that a sequence is Cauchy, but that there is no way to explicitly figure out N for a given epsilon. The sequence is effectively useless. This presumably is possible, and common, with using the Axiom of Choice. One can even imagine an algorithm for such a sequence that produces numbers and eventually converges, but the convergence is not knowable. Again, if this is just approximating something, then we can simply say it is a useless approximation scheme. But defining real numbers as the equivalence class of Cauchy sequences suggests taking such a sequence seriously in some sense and is the answer.

In contrast, consider integer and rational number versions, it is quite immediate how to reduce them to their canonical form, assuming unlimited finite arithmetic ability. For example, 200/300 ~ 2/3 and one recognizes that 200/300 and 2/3 are different forms of what we take to be the same object for most of our purposes. There is no canonical Cauchy sequence to reduce to and concluding two sequences are equivalent could take a potentially infinite number of computations /comparisons. While that is somewhat inherent to the complexity of real numbers, it feels particularly acute when it is something that must be done in defining the object.

Dedekind cuts have the opposite problem. There is only one of them for an irrational number, but it is not entirely clear what we would be computing out as an approximation, particularly if the lower cut viewpoint is adopted.

Intervals, on the other hand, inherently contain the approximation information. By dividing them and picking out the next subinterval, one also has a method to computing out a sequence of ever better approximations. I suppose one could prove the existence of the family of containment intervals without explicitly being able to produce them, but at least the emptiness of the statement would be quite clear (nothing is produced) in contrast to the sequences that could produce essentially meaningless numbers for an arbitrarily large number of terms.


What you are referring to is also called the Principle of Nested Intervals: https://en.wikipedia.org/wiki/Nested_intervals#The_construct...


Why not read both


>the use of the of Least Upper Bound is much simpler and clearer

Uh, least upper bound of what? most subsets of Q have no extrema in Q.




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

Search: