Téves a kauzalitás definíciója. Ez valójában sokkal egyszerűbb és sokkal intuitívabb. Az oksági rendszer olyan rendszer, amelyben a kimenet nem függ a bemenet jövőbeli értékeitől. Ez a tulajdonság nem kizárólag lineáris rendszerekre vonatkozik, hanem általában a rendszerekre is. Íme néhány példa a lényeg illusztrálására:
Kauzális lineáris időinvariáns rendszer:
$$$y = x – 2x + 0.5y$$
Itt $y$ csak az $x$ és $y$ aktuális és korábbi értékeitől függ.
Nem kauzális lineáris időinvariáns rendszer:
$$y = \frac{1}{2}x + \frac{1}{2}x$$
Ez a központi mozgóátlagként is ismert függvény azért nem kauzális, mert a $y$ kimenet esetében a $x$ kifejezés a bemenetünk jövőjébe kukkant.
Kauzális nemlineáris időinvariáns rendszer:
$$y = \cos(x)$$
Ez az általad megadott példa. Mint már kitalálhattad, mivel soha nem nézzük a jövőbeli bemenetet, ez a rendszer kauzális. Valójában még ennél is különlegesebb. Mivel az aktuális kimenet csak az aktuális bemenet függvénye (a múltbeli vagy jövőbeli bemeneteké nem), ezt a rendszert memória nélküli rendszernek nevezik.
Kauzális lineáris időben változó rendszer:
$$y = (n+1)x$$
Ezt azért találtam ki, hogy egy kicsit agytornáztassam. Első pillantásra úgy tűnhet, hogy ez a rendszer nem oksági rendszer, mert van ez az $(n+1)$ kifejezés. De ez nem számít, mert ez nem az $x$ időindexe. Továbbra is csak a bemenet aktuális értékét nézzük, és nem kukucskálunk előre. Ez is egy példa a memória nélküli rendszerre.
Egy trükkös kauzális, nemlineáris, időben változó rendszer:
$$y = e^nx + \ln\left(\left|x\right|+1\right) – \pi y$$
Láthatóan ez egy nem kauzális rendszer a $y$ kifejezés miatt, igaz? Tévedés! Ez egy rekurzív oksági rendszer klasszikus definíciója, néhány tag átrendezésével. Folytatjuk, hogy három lépésben szabványosabb formába hozzuk:$$y = e^nx + \ln\left(\left|x\right|+1\right) – \pi y$$$$\pi y = e^nx + \ln\left(\left|x\right|+1\right) – y$$$$\pi y = e^nx + \ln\left(\left|x\right|+1\right) – y$$$$\pi y = e^nx + \ln\left(\left|x\right|+1\right) – – y$$$$y = \frac{e^nx + \ln\left(\left|x\right|+1\right) – y}{\pi}$$
Az utolsó előtti sort $k=n+1$ helyettesítésével értük el. A trükk itt az, hogy a különböző időpontokban a kimenetek között összefüggések vannak. De ha egyszer kiszámoljuk, egyetlen kimenet sem függ egy bemenet jövőbeli értékétől önmagához képest. A nem-linearitást és az időbeli változékonyságot azért dobtuk be, hogy szórakoztatóbbá és kihívást jelentőbbé tegyük a dolgot. Győződj meg róla, hogy érted, mit mond ez.
Mint láthatod, a kauzalitás mindenféle rendszer tulajdonsága lehet, és még sok mókás és bizarr példával lehet előállni.
Most térjünk rá a paradoxonod feloldására. A kulcs annak felismerésében rejlik, hogy a kauzalitás és a linearitás (és talán az időinvariabilitás is) definícióid egy kicsit összekeveredtek és összezavarodtak. A paradoxon mulatságos megoldása olyan egyszerű, mintha mindkét definíciódba beillesztenéd a lineáris szót (az időinvariabilitás is finom szerepet fog játszani). Íme, hogyan.
1. definíció: Egy lineáris rendszer akkor és csak akkor kauzális, ha a $y$ kimenet a $x$ bemenetek olyan lineáris kombinációjának függvénye, hogy $k \ge0$.
Ez azért van, mert nem minden rendszer a bemenetek lineáris kombinációja. Lineáris rendszerek a következők. Egy kauzális rendszer csak a múltbeli és a jelenlegi bemenetektől függ, ezért egy kauzális lineáris rendszer a jelenlegi és a korábbi bemenetek lineáris kombinációja. Valójában, hogy pontosak legyünk a definícióval, a lineáris rendszerek mind a bemenetek, mind a kimenetek lineáris kombinációi, és a kauzális lineáris rendszerekben a kimenetek $n$ időpontban nem függhetnek egy $m \gt n$ időpontban lévő bemenettől.
Az
2. definíció: Egy lineáris időinvariáns rendszer akkor és csak akkor kauzális, ha az impulzusválasz$h=0$ minden $n<0$ esetén.
Ez is elég intuitív. $h$ minden bejegyzése $k \ge 0$ esetén azok az együtthatók, amelyekkel megszorozzuk $x$ aktuális és múltbeli értékeit, hogy megkapjuk az aktuális kimenetet (az, hogy a rendszer rekurzív-e, ebben az esetben irreleváns). Vegyük észre, hogy ennek a definíciónak csak lineáris időinvariáns rendszerek esetén van értelme! Ez azért van így, mert a konvolúció csak ezekre létezik. Lássuk, miért van szükség a linearitásra. Ha $h \ne 0$, akkor $x$ hozzájárul $y$-hoz, és ettől lesz nem kauzális. Ez azért igaz, mert a lineáris rendszerekben, ha semmi nem megy be, akkor semmi nem megy ki. Ez általában nem igaz a nemlineáris rendszerekre (mint az általad megadott példában), így ez a definíció nem alkalmazható.
A rendszernek időinvariánsnak is kell lennie, mert nem lehet teljesen meghatározni az impulzusválaszával, hacsak nem teljes mértékben LTI. Ha egy $\delta $ impulzusfüggvényt futtatsz a rendszeren$$y = x + (n+1)x,$$ akkor egy olyan kimenetet kapsz, amely maga is impulzus (kauzális… igaz?). A rendszer azonban nyilvánvalóan nem kauzális. Ezért fontos az időinvariabilitás. Ha egy $\delta$ eltolt impulzusfüggvényt $m \ne 0$-ra futtatsz, akkor a nem kauzális jellege kezd megnyilvánulni.
Szóval, félretéve minden beszédet, a rendszered tökéletesen kauzális, de a definícióid csak lineáris rendszerekre vonatkoznak, míg a te rendszered nem lineáris. A kauzális rendszer helyes definíciója az, hogy bármely $y$ kimenet nem függhet az $x$ bemenettől, ahol $k \gt 0$.