Yes, a step was missing. I've updated it to include multiplication by "a" and loop back to step 4.
And yes, this is more complex than basic reasoning. It's an optimization to the original algorithm, and like most optimized algorithms, is less transparent.
The shapes are not constrained by taxicab geometry. Not only can you have diagonal lines, but you can have curves as well. The only difference from regular geometry is how the length of lines and curves is measured.
Consider creating taxicab shapes on graph paper. If you color in cells that satisfy the definition of a circle or ellipse, you're right that you won't see diagonal lines, only colored squares. If, however, you shrink the size of the grid further and further until it's infinitesimally small, those points will take on the appearance of diagonal lines.
> Consider creating taxicab shapes on graph paper. If you color in cells that satisfy the definition of a circle or ellipse, you're right that you won't see diagonal lines, only colored squares. If, however, you shrink the size of the grid further and further until it's infinitesimally small, those points will take on the appearance of diagonal lines.
This is an interesting idea, but I'm not sure how it helps understanding. As you point out in your first paragraph, taxicab geometry differs from ordinary geometry only in the way that it measures distances (I shy away from saying 'lengths', particularly of curves, because it's not clear to me that the Euclidean theory of rectifiable curves has a nice analogue in taxicab geometry); and distance is a point-point property, not a property of cells. How could one decide whether or not a cell satisfies the definition, except by picking a point in it? (That's not a rhetorical question.)
Instead of shading in cells, consider a field of discrete, equally spaced points. For instance, mark the intersections on the graph paper instead of the open spaces.
That can dramatically affect the shapes involved. For example, if you try the same thing on a rectangular Euclidean grid, then you'll find that the 'circle' through two adjacent points has only four points!
(Of course, as you say, the error involved can be made 'small', in some sense, by making the grid suitably fine; but at that point, with such a simple metric as the taxicab one, it's not clear to me what you're gaining over just looking at the entire plane all at once.)
Just as the drawing of a physical point on a piece of paper has area while the actual Euclidean "point" that it is trying to represent does not, a specific grid point on a piece of graph paper has area whereas the actual taxicab "point" does not. It is not that some sort of error is made to be small by making the grid more fine, rather the coarseness of the grid is simply to aid visualization. In reality, taxicab geometry is continuous, rather than discrete, just as Euclidean geometry is.
Edit: For clarification, the "points" in both the Euclidean and taxicab case can be represented in Cartesian coordinates (e.g. (x, y)). What is different is how you define the distance between those points. In Euclidean geometry, the distance is r = Sqrt((x - x')^2 + (y - y')^2), whereas in taxicab geometry the distance is r = |x - x'| + |y - y'|.
> It is not that some sort of error is made to be small by making the grid more fine, rather the coarseness of the grid is simply to aid visualization.
Indeed, if one were trying to understand, say, the locus of e^(x + y) = x^2 + y^2, which is an unfamiliar shape then I would say by all means to discretise it; that's what visualisation software would do, after all.
However, conic-section analogues defined via linear constraints on distances will, in the taxicab metric, always consist of unions of line segments, and it seems to me that discretisation is likely to hurt, not help, visualisability of such shapes.
I think it often does feel that way to kids, as most things with rules do. Even as an adult the commitment to taking a weekly break sometimes seems restrictive, but only in the short term. The long term effect is rejuvenating.
It's interesting to see the secular world discover the value of resting and disconnecting. I've long thought it interesting that Stephen Covey chose the seventh habit of highly effective people to be "Sharpen the Saw".
In regard to forcing others, individuals vary, but the SDA church as a whole has long opposed the state forcing citizens to observe a Sabbath. Any members who use physical force over the matter of Sabbath observance would probably use physical force over other things too, and likely says more about the individual's character than the character of the Sabbath, Sabbath-keeping, or sabbatarians.
I've used Clojure on and off but never really learned enough Java to be comfortable with it. Clojure-py has been a lot more fun because I can use the Python libraries I'm already familiar with.
well no, the browser adds them when it loads and parses it for rendering. the inspector just shows you what the browser created. the same is true for all browsers, their inspectors will reveal how the DOM looks like for the browser.
If we're discussing semantics here, when a browser parses it for rendering what would it mean to "add them?" After all, the HTML is only a textual representation of the rendered DOM tree. I think it's perfectly valid to say the inspector is adding them in, since the browser doesn't really bother to adjust the HTML if it can already parse it.