DSPRelated.com
Forums

wow! appalling foolishness taken for sage wisdom at the DSP stack exchange.

Started by robert bristow-johnson October 3, 2014
so, someone named "johnny" comes and asks if his anti-causal system is 
linear.  here is the entire original post:

    TITLE: Is this system linear?

    I have this system:

        y[n] = (-1/2 * x[n+2]) - y[n+1]

    I have no idea how to prove if the system is linear or not, because,
    it depends on future outputs...

    Thanks for the help


what say you?  is it linear or not?




-- 

r b-j                  rbj@audioimagination.com

"Imagination is more important than knowledge."


robert bristow-johnson <rbj@audioimagination.com> wrote:
 
> so, someone named "johnny" comes and asks if his anti-causal system is > linear. here is the entire original post:
> TITLE: Is this system linear?
> I have this system:
> y[n] = (-1/2 * x[n+2]) - y[n+1]
> I have no idea how to prove if the system is linear or not, because, > it depends on future outputs...
> what say you? is it linear or not?
Since it ONLY depends on future outputs, you can just time reverse it and test it. Must be more interesting when it depends on future and past outputs, though. y[n] = (-1/2 * x[n]) - (y[n+1] + y[n-1])/2 -- glen
On 10/3/14 10:01 AM, glen herrmannsfeldt wrote:
> robert bristow-johnson<rbj@audioimagination.com> wrote: > >> so, someone named "johnny" comes and asks if his anti-causal system is >> linear. here is the entire original post: > >> TITLE: Is this system linear? > >> I have this system: > >> y[n] = (-1/2 * x[n+2]) - y[n+1] > >> I have no idea how to prove if the system is linear or not, because, >> it depends on future outputs... > >> what say you? is it linear or not? > > Since it ONLY depends on future outputs, you can just time > reverse it and test it. >
okay, so then what do you get, glen?
> Must be more interesting when it depends on future and past > outputs, though. > > y[n] = (-1/2 * x[n]) - (y[n+1] + y[n-1])/2 >
well that's neither causal nor anti-causal. (since it's not causal, it must be acausal.) causal or not, still the question remains: Is it Linear? -- r b-j rbj@audioimagination.com "Imagination is more important than knowledge."
On Fri, 03 Oct 2014 10:28:09 -0400, robert bristow-johnson wrote:

> On 10/3/14 10:01 AM, glen herrmannsfeldt wrote: >> robert bristow-johnson<rbj@audioimagination.com> wrote: >> >>> so, someone named "johnny" comes and asks if his anti-causal system is >>> linear. here is the entire original post: >> >>> TITLE: Is this system linear? >> >>> I have this system: >> >>> y[n] = (-1/2 * x[n+2]) - y[n+1] >> >>> I have no idea how to prove if the system is linear or not, >>> because, >>> it depends on future outputs... >> >>> what say you? is it linear or not? >> >> Since it ONLY depends on future outputs, you can just time reverse it >> and test it. >> >> > okay, so then what do you get, glen? > >> Must be more interesting when it depends on future and past outputs, >> though. >> >> y[n] = (-1/2 * x[n]) - (y[n+1] + y[n-1])/2 >> >> > well that's neither causal nor anti-causal. (since it's not causal, it > must be acausal.) > > causal or not, still the question remains: Is it Linear?
Linearity is orthogonal to causality (and both are orthogonal to time invariance). If it obeys superposition (with some really anal-retentive caviats that I can never remember), it's a linear system. It can be time- varying or not, causal or not, but if it's linear it's linear. Both of the systems described so far are linear, although neither are causal. -- www.wescottdesign.com
On 10/3/14 12:14 PM, tim wrote:
> On Fri, 03 Oct 2014 10:28:09 -0400, robert bristow-johnson wrote: > >> On 10/3/14 10:01 AM, glen herrmannsfeldt wrote: >>> robert bristow-johnson<rbj@audioimagination.com> wrote: >>> >>>> so, someone named "johnny" comes and asks if his anti-causal system is >>>> linear. here is the entire original post: >>> >>>> TITLE: Is this system linear? >>> >>>> I have this system: >>> >>>> y[n] = (-1/2 * x[n+2]) - y[n+1] >>> >>>> I have no idea how to prove if the system is linear or not, >>>> because, >>>> it depends on future outputs... >>> >>>> what say you? is it linear or not? >>> >>> Since it ONLY depends on future outputs, you can just time reverse it >>> and test it. >>> >>> >> okay, so then what do you get, glen? >> >>> Must be more interesting when it depends on future and past outputs, >>> though. >>> >>> y[n] = (-1/2 * x[n]) - (y[n+1] + y[n-1])/2 >>> >>> >> well that's neither causal nor anti-causal. (since it's not causal, it >> must be acausal.) >> >> causal or not, still the question remains: Is it Linear? > > Linearity is orthogonal to causality (and both are orthogonal to time > invariance). If it obeys superposition (with some really anal-retentive > caviats that I can never remember), it's a linear system. It can be time- > varying or not, causal or not, but if it's linear it's linear. Both of > the systems described so far are linear, although neither are causal. >
well, Dr. Matt L., who has 6 times the SE reputation that i have, would disagree with both of us, Tim. (he claims that if y[0] != 0, then it is neither Linear nor Time-Invariant.) and 4 people upvoted his answer (i wonder if Dilip S did or if Peter K did?) which i find appalling. oh, i forgot to post the link to the question: http://dsp.stackexchange.com/questions/18431/is-this-system-linear how silly of me. it's related to a similar question that got asked and answered without me seeing it until yesterday (MattL had referred to it): http://dsp.stackexchange.com/questions/18210/checking-linearity-time-invariance-etc-for-recursive-system -- r b-j rbj@audioimagination.com "Imagination is more important than knowledge."
On Fri, 03 Oct 2014 12:52:11 -0400, robert bristow-johnson wrote:

> On 10/3/14 12:14 PM, tim wrote: >> On Fri, 03 Oct 2014 10:28:09 -0400, robert bristow-johnson wrote: >> >>> On 10/3/14 10:01 AM, glen herrmannsfeldt wrote: >>>> robert bristow-johnson<rbj@audioimagination.com> wrote: >>>> >>>>> so, someone named "johnny" comes and asks if his anti-causal system >>>>> is linear. here is the entire original post: >>>> >>>>> TITLE: Is this system linear? >>>> >>>>> I have this system: >>>> >>>>> y[n] = (-1/2 * x[n+2]) - y[n+1] >>>> >>>>> I have no idea how to prove if the system is linear or not, >>>>> because, >>>>> it depends on future outputs... >>>> >>>>> what say you? is it linear or not? >>>> >>>> Since it ONLY depends on future outputs, you can just time reverse it >>>> and test it. >>>> >>>> >>> okay, so then what do you get, glen? >>> >>>> Must be more interesting when it depends on future and past outputs, >>>> though. >>>> >>>> y[n] = (-1/2 * x[n]) - (y[n+1] + y[n-1])/2 >>>> >>>> >>> well that's neither causal nor anti-causal. (since it's not causal, >>> it must be acausal.) >>> >>> causal or not, still the question remains: Is it Linear? >> >> Linearity is orthogonal to causality (and both are orthogonal to time >> invariance). If it obeys superposition (with some really >> anal-retentive caviats that I can never remember), it's a linear >> system. It can be time- >> varying or not, causal or not, but if it's linear it's linear. Both of >> the systems described so far are linear, although neither are causal. >> >> > well, Dr. Matt L., who has 6 times the SE reputation that i have, would > disagree with both of us, Tim. (he claims that if y[0] != 0, then it is > neither Linear nor Time-Invariant.) and 4 people upvoted his answer (i > wonder if Dilip S did or if Peter K did?) which i find appalling. > > oh, i forgot to post the link to the question: > > http://dsp.stackexchange.com/questions/18431/is-this-system-linear > > how silly of me. > > it's related to a similar question that got asked and answered without > me seeing it until yesterday (MattL had referred to it): > > > http://dsp.stackexchange.com/questions/18210/checking-linearity-time-
invariance-etc-for-recursive-system Well, he's using a different definition of linearity than I am, then, or he's made himself a brilliant little short cut that doesn't apply to this situation, and he's forgotten how to think. The whole stackexchange concept is a really good example of taking a good concept and screwing it up by a stupid rule. Any time it gets interesting, some moderator steps in and says "that's not a question with one answer, so I'm closing this down" or similar. Basically, if you're smart enough to know what to ask, yet are somehow too stupid to know the answer, you can ask on Stackexchange. That may be a good model for computer repair and homework questions, but it's not a good model for the questions I tend to have, and the ones I tend to answer here. -- Tim Wescott Wescott Design Services http://www.wescottdesign.com
robert bristow-johnson <rbj@audioimagination.com> writes:
> [...] > well, Dr. Matt L., who has 6 times the SE reputation that i have, > would disagree with both of us, Tim. (he claims that if y[0] != 0, > then it is neither Linear nor Time-Invariant.)
Robert, I agree with the claim that such systems are not linear. This comes right from the definition in [signalsandsystems], a part of which is: y(a * x(t)) = a * y(x(t)) This is the homogeneity property, which basically means that when y is viewed as a function, it must pass through zero at t = 0. Basic stuff, really. Or did I miss your point? --Randy @BOOK{signalsandsystems, title = "{Signals and Systems}", author = "{Alan~V.~Oppenheim, Alan~S.~Willsky, with Ian~T.~Young}", publisher = "Prentice Hall", year = "1983"} -- Randy Yates Digital Signal Labs http://www.digitalsignallabs.com
On 10/3/14 1:09 PM, Tim Wescott wrote:
> > Well, he's using a different definition of linearity than I am, then, or > he's made himself a brilliant little short cut that doesn't apply to this > situation, and he's forgotten how to think. >
i dunno about any of that. all's i know is that the system as depicted by the OP is certainly linear, certainly time-invariant, and certainly anti-causal (but i think i got the h[n] off by one sample and i am not entirely sure why).
> The whole stackexchange concept is a really good example of taking a good > concept and screwing it up by a stupid rule. Any time it gets > interesting, some moderator steps in and says "that's not a question with > one answer, so I'm closing this down" or similar. Basically, if you're > smart enough to know what to ask, yet are somehow too stupid to know the > answer, you can ask on Stackexchange. That may be a good model for > computer repair and homework questions, but it's not a good model for the > questions I tend to have, and the ones I tend to answer here.
i haven't found too much of closing down questions on the dsp.se, but i have seen it alot on the christianity.se . of course the latter SE is about more subjective and touchy issues. but, while we differ in practices (like, which is better, implementing this DSP in an FPGA or on an ARM or on an intel board with linux?) but, like math, the principles should be pretty uncontroversial. at least if we agree on the definitions (like the definitions of L and TI), then the rest should just be math and there should be very little subjectivity on that. -- r b-j rbj@audioimagination.com "Imagination is more important than knowledge."
On 10/3/14 1:25 PM, Randy Yates wrote:
> robert bristow-johnson<rbj@audioimagination.com> writes: >> [...] >> well, Dr. Matt L., who has 6 times the SE reputation that i have, >> would disagree with both of us, Tim. (he claims that if y[0] != 0, >> then it is neither Linear nor Time-Invariant.) > > Robert, > > I agree with the claim that such systems are not linear. This comes > right from the definition in [signalsandsystems], a part of which > is: > > y(a * x(t)) = a * y(x(t)) > > This is the homogeneity property, which basically means that when y is > viewed as a function, it must pass through zero at t = 0. > > Basic stuff, really. > > Or did I miss your point?
i think that you are not exactly missing *my* point, and the homogeneity property (i've not used that term). but i don't get at all the "it must pass through zero at t = 0" thing. it's an operator that sends an entire function, x(t), to another function y(t), or, in discrete-time systems, an entire sequence, x[n], to another sequence y[n]. y[n] = LTI{ x[n] } yes, certainly for an LTI operator, if x[n] is identically zero, so must also be y[n] identically zero. now, what i don't get is how you see y[n] in y[n] = (-1/2 * x[n+2]) - y[n+1] as coming out as non-zero when x[n] is identically zero for all n. i don't get how you come to that conclusion, Randy.
> > @BOOK{signalsandsystems, > title = "{Signals and Systems}", > author = "{Alan~V.~Oppenheim, Alan~S.~Willsky, with Ian~T.~Young}", > publisher = "Prentice Hall", > year = "1983"}
i actually don't have that book, even though i once used it in a course in 2005 i was teaching at UVM (borrowed the department's copy). sometimes i am bothered by definitions O comes up with. he defines "Nyquist frequency" the wrong way (remember that faux pas of mine when i got after Rick Lyons for evading that definition in his book?) in comparison to the rest of the lit. no one else (except here http://en.wikibooks.org/wiki/Signals_and_Systems/Time_Domain_Analysis#Homogeneity and i think it's copied from O&W) calls the scaling property of Linearity the "homogeneity property". oh well. Randy here is an example of a system that satisfies this "homogeneity" and is time-invariant, but is certainly not linear: y[n] = x[n]*x[n-2]/x[n-1] satisfies the scaling or homogeneity criterion (and the TI criterion), but it ain't LTI. -- r b-j rbj@audioimagination.com "Imagination is more important than knowledge."
On 10/3/14 1:51 PM, robert bristow-johnson wrote:
> On 10/3/14 1:25 PM, Randy Yates wrote: >> robert bristow-johnson<rbj@audioimagination.com> writes: >>> [...] >>> well, Dr. Matt L., who has 6 times the SE reputation that i have, >>> would disagree with both of us, Tim. (he claims that if y[0] != 0, >>> then it is neither Linear nor Time-Invariant.) >> >> Robert, >> >> I agree with the claim that such systems are not linear. This comes >> right from the definition in [signalsandsystems], a part of which >> is: >> >> y(a * x(t)) = a * y(x(t)) >> >> This is the homogeneity property, which basically means that when y is >> viewed as a function, it must pass through zero at t = 0. >> >> Basic stuff, really. >> >> Or did I miss your point? > > i think that you are not exactly missing *my* point, and the homogeneity > property (i've not used that term). but i don't get at all the "it must > pass through zero at t = 0" thing. it's an operator that sends an entire > function, x(t), to another function y(t), or, in discrete-time systems, > an entire sequence, x[n], to another sequence y[n]. > > y[n] = LTI{ x[n] } > > > yes, certainly for an LTI operator, if x[n] is identically zero, so must > also be y[n] identically zero. > > now, what i don't get is how you see y[n] in > > y[n] = (-1/2 * x[n+2]) - y[n+1] > > as coming out as non-zero when x[n] is identically zero for all n. i > don't get how you come to that conclusion, Randy. >
almost immediately after posting this, i saw an immediate response. if all of x[n] = 0 in y[n] = (-1/2 * x[n+2]) - y[n+1] then y[n] = -y[n+1] and y[n] = A*(-1)^n for any A is a solution. if y[0] != 0, then this thing is oscillating. now, i would say that the system above *still* is satisfied by +inf y[n] = SUM{ h[i] * x[n-i] } i=-inf and that, in LTI system theory, we normally say that the system is "completely relaxed" at infinity. but, the summation can be split up 0 +inf y[n] = SUM{ h[i] * x[n-i] } + SUM{ h[i] * x[n-i] } i=-inf i=1 and for an anti-causal system, the second summation is 0. then 0 y[0] = SUM{ h[i] * x[-i] } i=-inf and if all of those values of x[n] are zero for n >= 0, then y[0] must be zero. so i do not see how this critically-stable, anti-causal system gets started. -- r b-j rbj@audioimagination.com "Imagination is more important than knowledge."