This is only true if you consider the waveform to be a sine series. As I indicated, this is a perfectly legitimate way to think about a sawtooth (and indeed, it appears to be fundamentally how the human ear works too).
But a sawtooth waveform is also nothing more than a very sharp rise/drop in air pressure followed by a longer drop/rise, repeated over and over again.
If you want to synthesize a sawtooth wavefrom with analog equipment, then thinking of it as an (infinite) sine series makes sense, because that's how you will end up approximating the (perfect) sawtooth.
However, digital synthesis does not require this sort of conception at all, and can be constructed without any summing of a harmonic series.
Also, I find it assuming that in the comments of a post about nyquist, you would write
> a bunch of stuff about sounds and pressure waves that I don't think had the effect you intended. I think you lost the plot somewhere along the way.
What do you the plot is?
Those physical constraints manifest as limits on the frequency of sinusoidal harmonics it is possible for you to put into the wave; for the medium to carry; and for you to physically detect at the other end.
Mathematicians don’t break functions down into sinusoidal harmonics because they like trig functions. They do it because they fundamentally are what’s happening.
This was my point (3), though you've added an additional set of reasons why it is particularly hard for shapes like a sawtooth.
Yes, but you also cannot just make something that goes from -1 to 1 and then wraps back to -1 again, in a discrete-time (sampled) world.
You will get aliasing, because at some point your harmonic series will have partials that are noticeably large and exceed the Nyquist frequency, which will fold back into the output signal's spectrum. And, wouldn't you know it, except for a few very precise frequencies, those aliases will be inharmonic as all hell.
Here's an example (headphone warning - excessively loud) from a daft idea I had to implement a "virtual analogue" synth on an Arduino. Yes, one of the 8-bit ones, that can't do arithmetic.
https://raw.githubusercontent.com/ErroneousBosh/slttblep/mas...
The first sweep is generated with bandlimiting disabled, and you can hear the "swoopy" noises as the aliases slide up and down. The second sweep has some bandlimiting applied by "bending" the points where the signal resets to roughly correspond to a weighted sinc filter, eliminating (most of) the partials above Nyquist.
It uses 16-bit arithmetic on 8-bit lookup tables, and is output through an 8-bit PWM abused as a DAC, so it's not super clean, but it is at least not grossly incorrect.
You cannot filter the synthesized partials that go past Nyquist out after the signal has been generated, because the damage has been done.
A naive sawtooth algorithm (linear rise from -1.0 to 1.0) will create aliasing and not be a true saw. You cannot filter out this aliasing unless you do this with extreme oversampling. Otherwise you need to synthesize the waveform in an alias-free (or alias minimizing) method.
There's quite a few ways to digitally synthesize a sawtooth, all with some compromise, but they're all based on sine summation theory.
One of the more common ways is to precalculate a table of single-cycle bandlimited waveforms for every 1/3 octave or so, and choose the nearest table index for a given note-frequency being played, and interpolate as needed. (It's essentially mipmapping).