lesson

Keep a rule true after every operation

1 · Learn

Program state is the information currently held. An invariant is a condition intended to remain true at defined points, such as an inventory count never becoming negative. Each operation must preserve it or reject an invalid request.

Checking only when a screen first opens is insufficient if later actions can break the rule. Identify where state changes occur.

StateInvariantOperationValidation
Key words and supplied examples.

2 · Worked example

If stock is 3, a request to remove 5 must not simply leave -2 when the invariant forbids negative stock.

3 · Your turn

Starting at stock 3, what should happen to a request to remove 5 under that invariant?

Check your answer

Reject the request or otherwise handle it explicitly without storing a negative count.

4 · Apply your learning

Trace add and remove operations, including boundary cases, and verify the invariant after each.

Adult guidance and safety

Work in an approved local sandbox with invented records and test accounts. Do not access other people's systems or collect real credentials. Practical project evidence is required in addition to these explanations; this is not a specified GCSE Computer Science course.

Open your writing and drawing pad

Write, draw or show your working. Use a mouse, pen or finger. This pad is not a submitted answer.

Not saved to your account. Download your drawing as PNG and your typed notes as TXT before leaving or refreshing. They are separate files. Do not enter private information.

Open a picture saved on this device to draw on it again. Opening replaces the drawing, but Undo can restore it. PNG only, up to 4 MB and 4096 × 4096 pixels. The picture stays in this browser; it is not uploaded. Paper lines in a saved picture become part of that picture.

Drawing is unavailable. Use the typed working area below.

Your pad is empty.

Open a UTF-8 TXT file from this device, up to 40 KB and 10,000 characters. It stays in this browser. Opening can be undone until you type again. Downloads keep a new copy; they do not change the file you opened.

Typed notes are not submitted answers.

Check a calculation · Year 5 onward

Use this only when your teacher or adult allows a calculator for the task. Show your thinking first. It does not replace mental or written arithmetic and does not mark your lesson answer.

Powers, roots and trigonometry · Year 7 onward

Use only when the task allows a calculator. Choose one operation at a time and record your working. Trigonometry here always uses degrees (DEG), not radians. Inverse sine, cosine and tangent return an angle, not a reciprocal. Keep exact fractions and π in answers when requested.

Approximate numerical results use up to 12 significant digits. Inverse sine returns −90° to 90°, inverse cosine 0° to 180°, and inverse tangent −90° to 90°; these are principal values, not every possible solution of a trigonometric equation.

Practice this lesson

Lesson resources

Browse the available practice activities and worksheets for this lesson.

Open course resources

Your progress

Ready to continue?