3
$\begingroup$

I guess the same question is usually asked for complex numbers too, but the fact is that complex numbers are used all the time practically. However, at least on a quick google search, I couldn't find any applications of anticausal systems. So why define it in the first place?

$\endgroup$
  • 2
    $\begingroup$ I prefer the term "noncausal". To a native speaker, "anticausal" implies a system whose response is only dependent on future inputs, where "noncausal" implies a system whose response is dependent on future and past inputs. $\endgroup$ – TimWescott Jan 18 at 18:03
  • $\begingroup$ i might suggest the word "acausal" rather than "noncausal". Matt alludes to this point, but when doing non-realtime, offline processing (you are processing the sampled data of a signal stored in a file and outputing the resulting signal to another file), you can pretend the pointer to "the present" is wherever you want it to be if that makes your life simpler. For linear-phase filters, you have symmetrey in the impulse response about a common delay, but you can make that a zero-phase filter by making that location of common delay equal to the present time, when $t=0$. $\endgroup$ – robert bristow-johnson Jan 18 at 18:49
  • $\begingroup$ @TimWescott, I was indeed referring to a system where the response is dependent only on future inputs $\endgroup$ – Paddy Jan 18 at 19:00
13
$\begingroup$

Of course they don't exist. But we can stop time and use systems that would be non-causal if we hadn't stopped time. Stop time? Yes, just store your data and work offline / non-realtime. Or work on data that are not temporal but something else, for instance spatial. Of course, non-causal is a misnomer in that case, but the term is still used, in analogy with temporal signals and systems.

One common "non-causal" system that is used in offline mode is filtering followed by reversed filtering using IIR filters. This is done in order to eliminate phase distortions introduced by the conventional (causal/realtime) use of the filter. See this answer for the details.

| improve this answer | |
$\endgroup$
2
$\begingroup$

First, because noncausal systems drop out of the math all the time, often when we're looking for some form of optimal filter.

Second, because if you don't mind adding delay to your system, or working offline, you can make a FIR noncausal system into a causal system simply by delaying it by the time span that it looks into the future. For an IIR noncausal system, you can truncate the anticausal part of the response, and then delay the response so that your result is causal.

| improve this answer | |
$\endgroup$
0
$\begingroup$

[EDIT: added a 2020 paper talking about retrocausal models in quantum mechanics]

I would not say anticausal systems don't exist, and I agree with wikipedia saying that "an anticausal system is a hypothetical system".

Because we don't know in time: for traditional time-based signal processing, our human perception of time as a one-directional stream (the arrow of time) may be misleading. The fact that our brain and senses seem to perceive past only does not impede backward symmetry in physical laws. Some even model that antimatter could be matter moving backward in time (in some specific sense). Recently, the paper Bell's theorem and locally mediated reformulations of quantum mechanics evokes that:

Specifically, some [...] parameters in these models must functionally depend on measurement settings in their future [...]. This option, often called retrocausal, has been repeatedly pointed out in the literature

Exotic theories can imagine that time might be two-dimensional. From a more pragmatic point of view, in simulation, one may consider to control a present state with future predicted values, which can be formalized by an anticausal system. Of course, in practice, those future estimations are obtained by past information.

Because we can extend this notion to other system variables (like space): Now for other non-time based systems: in $s(t)$, the variable $t$ is often called an ordinal variable. But we can have signals $s(x)$ or images $s(x,y)$ based on another variable, like space. Depending on the context, for other ordinal variables, there may or may not be a "unique direction" like for time. As long as you define one "forward" direction, the other can be considered "backward". This happen in image processing, especially in image filtering (which is a system). Some filters can be implemented very efficiently with a combination of a causal (left-right, top-bottom) and an anticausal one (right-left, bottom-top). Here, the causality direction is almost arbitrary, vaguely related to raster-scans. This is employed in recursive approximations to Gaussian, Exponential filters and thier derivative, like the Canny-Deriche or the Shen-Castan filters. See for instance in a DSP.StackExchange answer to: Which IIR filters approximate a Gaussian filter?: "Both filters are causal-anti-causal pairs".

So, anticausal systems are defined not because one can exhibit one in reality (and not likely to be real-time), but because they are useful models, like instantaneous systems, or infinite precision computations, that are unlikely as well ("All models are wrong, but some are useful").

[About complex numbers] Even if they look odd (imaginary, impossible), they are very central, and some believe they are the most appropriate algebraic structure in many natural situations. Think again of the real numbers, do infinite sequences of decimals really exist?

| improve this answer | |
$\endgroup$
  • $\begingroup$ I did say that complex numbers, although weird looking, are very useful in the question $\endgroup$ – Paddy Jan 18 at 19:01
0
$\begingroup$

The same theory that is used for temporal waveforms also applies to spatial waveforms eg in a camera picture.

| improve this answer | |
$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.