Máte špatnou definici kauzality. Ve skutečnosti je mnohem jednodušší a mnohem intuitivnější. Kauzální systém je systém, ve kterém výstup nezávisí na budoucích hodnotách vstupu. Tato vlastnost se netýká výhradně lineárních systémů a může se vztahovat na systémy obecně. Pro ilustraci uvádíme několik příkladů:
Kausální lineární časově invariantní systém:
$$y = x – 2x + 0,5y$$
Tady $y$ závisí pouze na současných a předchozích hodnotách $x$ a $y$.
Nekauzální lineární časově invariantní systém:
$$y = \frac{1}{2}x + \frac{1}{2}x$
Tato funkce, známá také jako centrální klouzavý průměr, je nekauzální, protože pro výstup $y$ člen $x$ nahlíží do budoucnosti našeho vstupu.
Kausální nelineární časově invariantní systém:
$$y = \cos(x)$$
Tento příklad jste uvedli. Jak už asi tušíte, protože se nikdy nedíváme na budoucí vstup, je tento systém kauzální. Ve skutečnosti je ještě zvláštnější. Protože aktuální výstup je funkcí pouze aktuálního vstupu (nikoliv minulých nebo budoucích vstupů), nazývá se tento systém systémem bez paměti.
Kauzální lineární časově proměnný systém:
$$y = (n+1)x$$
Tento jsem si vymyslel, aby byl tak trochu hlavolam. Na první pohled se může zdát, že tato soustava je nekauzální, protože je zde tento člen $(n+1)$. Ale to nevadí, protože to není časový index $x$. Stále se díváme pouze na aktuální hodnotu vstupu a nekoukáme dopředu. To je také příklad systému bez paměti.
Záludný kauzální nelineární časově proměnný systém:
$$y = e^nx + \ln\left(\left|x\right|+1\right) – \pi y$$
Je jasné, že to je nekauzální systém kvůli členu $y$, že? Špatně! Jedná se o klasickou definici rekurzivního kauzálního systému s několika přeskupenými členy. Přistoupíme k jejímu převedení do standardnější podoby ve třech krocích:$$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$$$$y = \frac{e^nx + \ln\left(\left|x\right|+1\right) – y}{\pi}$
Předposledního řádku bylo dosaženo substitucí $k=n+1$. Vtip je v tom, že mezi výstupy v různých časech existují vztahy. Ale jakmile to vyřešíte, žádný výstup nikdy nezávisí na budoucí hodnotě vstupu vzhledem k sobě samému. Nelinearita a časová proměnlivost byly vhozeny, aby to bylo zábavnější a náročnější. Ujistěte se, že rozumíte tomu, co se tu píše.
Jak vidíte, kauzalita může být vlastností nejrůznějších systémů a lze vymyslet mnoho dalších zábavných a bizarních příkladů.
Nyní se pustíme do řešení vašeho paradoxu. Klíč spočívá v tom, že si uvědomíme, že vaše definice kauzality a linearity (a možná i časové invariantnosti) se trochu proplétají a pletou. Vyřešit paradox zábavně je tak snadné, jako přidat do obou vašich definic slovo lineární (časová invariantnost bude také hrát jemnou roli). Zde je návod.
Definice 1: Lineární systém je kauzální tehdy a jen tehdy, když výstup $y$ je funkcí lineární kombinace vstupů $x$ tak, že $k \ge0$.
To proto, že ne všechny systémy jsou lineární kombinací vstupů. Lineární systémy jsou. Kauzální systém závisí pouze na minulých a současných vstupech, proto je kauzální lineární systém lineární kombinací současných a předchozích vstupů. Abychom byli s definicí přesní, lineární systémy jsou vlastně lineárními kombinacemi vstupů i výstupů a v kauzálních lineárních systémech nemohou výstupy v čase $n$ záviset na vstupu v čase $m \gt n$.
Také,
Definice 2: Lineární časově invariantní systém je kauzální tehdy a jen tehdy, když impulsní odezva$h=0$ pro všechny $n<0$.
Tato je také zcela intuitivní. Všechny položky $h$ pro $k \ge 0$ jsou koeficienty, kterými vynásobíte aktuální a minulé hodnoty $x$, abyste získali aktuální výstup (zda je systém rekurzivní, je pro tento případ irelevantní). Všimněte si, že tato definice má smysl pouze pro lineární časově invariantní systémy! Je to proto, že konvoluce existuje pouze pro ně. Podívejme se, proč je linearita nutná. Pokud máte $h \ne 0$, pak $x$ přispívá k $y$ a to je to, co ji činí nekauzální. To je pravda, protože v lineárních systémech platí, že pokud nic nevstupuje dovnitř, pak nic nevystupuje ven. To obecně neplatí pro nelineární systémy (jako v příkladu, který jste uvedl), takže tato definice by neplatila.
Systém musí být také časově invariantní, protože nemůže být zcela definován svou impulsní odezvou, pokud není plně LTI. Pokud systémem proženete impulsní funkci $\delta $$y = x + (n+1)x,$$ dostanete výstup, který je sám o sobě impulsem (kauzálním… že?). Systém však zjevně není kauzální. Proto je důležitá časová invariantnost. Když spustíte posunutou impulsní funkci $\delta$ pro $m \ne 0$, začne se projevovat její nekauzální povaha.
Takže, když pomineme všechny řeči, váš systém je dokonale kauzální, ale vaše definice platí pouze pro lineární systémy, zatímco váš systém je nelineární. Správná definice kauzálního systému je, že žádný výstup $y$ nemůže záviset na vstupu $x$, kde $k \gt 0$.