Signals to learning / 5. Build systems

Lesson 17 of 40 · Intermediate · About 25 minutes

Linearity and time invariance

When can one impulse response describe a whole system?

You will be able to

  • Test linearity through superposition.
  • Distinguish linearity, time invariance and causality.

Two independent properties

A system T is linear if it preserves scaled sums: T(ax+by)=aT(x)+bT(y). It is time-invariant if shifting the input shifts the output by the same amount. These properties are distinct. A time-varying gain can be linear but not time-invariant; squaring is time-invariant but nonlinear.

The LTI shortcut

For a discrete linear time-invariant system with appropriate zero-state assumptions, the impulse response h describes the output through convolution. Causality means no dependence on future input, and is another separate property. Nonzero initial state can add a response that is not captured by convolving the new input alone.

T(ax+by)=aT(x)+bT(y); zero-state LTI: y=x*h

Worked example

T(x)[n]=2x[n] is linear and time-invariant. T(x)[n]=n x[n] is linear but time-varying. T(x)[n]=x[n]² is time-invariant but nonlinear.

A common trap

“Linear” does not mean a plotted output must be a straight line. It describes how an operator combines inputs.

Predict, then experiment

Should doubling every input to a fixed convolution double every output? Before touching the controls, say or write your prediction.

Interactive experiment

One output, multiply by multiply

Which input values contribute to one sample of a three-tap smoothing filter?

Blue is the input and dashed amber is the full output. The moving window and filled blue points show the samples under the kernel; the large amber point is the selected output. The fixed kernel is [0.25, 0.5, 0.25].

Your experiment

Inspect the fixed kernel and contributions at several output indices. Write what would happen if all input samples doubled. Contrast this with the cubic nonlinearity in the linked essay.

Change one parameter at a time. Compare what you observed with your prediction and record an explanation in your notes.

Check your understanding

Try from memory first. Hints and feedback are part of learning, not a penalty. These checks are for self-study, not a graded qualification.

1. The system y[n]=x[n]² is…
Give me a hint

Compare T(2x) with 2T(x).

2. For T(x)=3x, what is T(2) + T(4)?

Accepted absolute tolerance: ±0.001 .

Give me a hint

Apply the gain to each value.

Reference answers (after your attempt)
  1. nonlinear and time-invariant — Correct: shifting still commutes with pointwise squaring.
  2. 18 — 6+12=18, which equals T(6).

Apply it: Classify an operator

Use paper, your notes, or a local notebook/editor. Code examples are Python 3 starting points to run yourself; this page does not execute code or automatically assess the practical task.

  1. Consider y[n]=x[n]+x[n−1] with zero extension.
  2. Test superposition and a one-sample shift.
  3. Decide whether it is causal.
Reference solution & review criteria

It is linear, time-invariant and causal: it uses present/past samples and fixed coefficients. Finite-array boundary policies should be distinguished from the infinite-sequence operator.

Your notebook

Notes and progress stay in this browser. They are not sent to the server; ordinary web-server request logs still operate. Export a backup from the course page.

Review list

Completion requires both correct checks and your practical-task acknowledgement.

Go deeper

Sources support further study; the worked examples and questions here are original. Browser experiments are small, disclosed models—not evidence of production-model quality or hardware performance.