← IGCSE Computer Science Paper 1

How an expert system reaches a conclusion

The user answers questions at the interface; the inference engine applies the rules to the answers and knowledge base; the interface then shows the result.

Understanding How an expert system reaches a conclusion in IGCSE Computer Science Paper 1

What it does: The interface is the first component in the sequence because it collects the user's answers to its questions. After the inference engine reaches a conclusion, it is the interface that displays the result. The knowledge base stores facts. The interface is the only part the user sees, so it shows the result.

Common mistakes: The engine needs the user's answers to work out a conclusion. 'result' does not exist yet, so the line should be result = engine.run(answers). The expert system interface asks the user the questions and takes their answers. The inference engine does not talk to the user. It should be answers = interface.ask().

Class: _____________________  ·  Name: _____________________  ·  Date: _________

Free printable worksheet with full answer key — or add this module to a class and your students practise it interactively.

This module's key terms are also in a printable crossword (Modules 662–678) and word search (Modules 652–678).

Take this worksheet further — free with Cloodit

Each concept is reinforced from every angle — learned, then applied, then tested.

Learning
Duo
Which component of an expert system first takes the user's answers to its questions?
The inference engineThe expert system interface
Matches
interface -> knowledge base -> inference engine
↓
The interface does not send the answers straight to the knowledge base. The inference engine must apply the rules to the answers and use the knowledge base.
Applying
Meanings
Term
interface -> inference engine -> interface
Meaning
The user answers questions at the interface; the inference engine applies the rules to the answers and knowledge base; the interface then shows the result.
Practice
answers ← interface.ask_user()
Testing
Gaps
1. The user types answers at the
Check Answer
Spots
2rules = knowledge_base.get()
3result = engine.run(result)

Cloodit turns curriculum-aligned coding content into journeys students work through one biome at a time.

The 'Deer' badge — Forest Streak, one of Cloodit's 106 collectible badges
Students earn collectable badges

Over 100 of them, across seven natural biomes.

Study Buddy
Students build a real study resource

Turns their work into revision material ready for Flash Cards and Exam study.

Diamond Dash — one of Cloodit's live, competitive Sprint games
Students lock in with Sprints

Live, competitive practice for the start of the lesson or a teacher-led lesson finisher.

A Cloodit certificate of achievement, ready to personalise and print
Custom printable certificates

Honour your top performers, or encourage a student who's trying hard — ready to print in seconds.

Quick Questions

1. Which component of an expert system first takes the user's answers to its questions?
A. The inference engine
B. The expert system interface ✓
The interface is where the user types in answers. The inference engine only works on those answers after they have been entered.
2. Which component applies the rules to the user's answers and the knowledge base?
A. The inference engine ✓
B. The rule base
The rule base only stores the rules. The inference engine is the part that actually uses them to reason towards a conclusion.
3. Which is the correct order of operation?
A. Interface, inference engine, interface ✓
B. Inference engine, interface, knowledge base
The user answers at the interface, the inference engine reasons using the rules, and the interface shows the result back to the user.
4. Which component displays the final conclusion to the user?
A. The knowledge base
B. The expert system interface ✓
The knowledge base stores facts. The interface is the only part the user sees, so it shows the result.
5. True or false: the inference engine uses both the user's answers and the knowledge base to reach a conclusion.
A. True ✓
B. False
The engine compares the user's answers with the facts in the knowledge base by using the rules in the rule base.

Match the Pairs

interface -> inference engine -> interface → The order an expert system works: the user answers at the interface, the inference engine reasons, then the interface shows the result.
inference engine -> knowledge base → The inference engine looks up facts and rules in the knowledge base to work out a conclusion from the user's answers.
The first step: the user's answers are taken in by the interface → user answers -> interface
The last step: the interface shows the conclusion to the user → interface -> result shown to user
interface -> knowledge base -> inference engine → The interface does not send the answers straight to the knowledge base. The inference engine must apply the rules to the answers and use the knowledge base.
inference engine -> interface -> interface → The sequence starts at the wrong place. The user's answers must be taken in at the interface before the inference engine can reason.

Key Term

interface -> inference engine -> interface
The user answers questions at the interface; the inference engine applies the rules to the answers and knowledge base; the interface then shows the result.

Fill in the Blanks

1. 1. The user types answers at the interface
Hint: Type the component the user talks to when answering the questions.
2. 2. The inference engine applies the rules
Hint: Type the component that applies the rules to the user's answers.
3. 3. The interface shows the result
Hint: Type what the interface displays to the user at the final step.
4. interface -> inference engine -> interface
Hint: Type the component that sits in the middle of the flow.
5. The inference engine uses the rules and the knowledge base to reach a conclusion
Hint: Type the part that stores the facts the engine checks the answers against.

Spot the Error

Question 1
A answers = interface.ask()
B rules = knowledge_base.get()
C result = engine.run(result)
D interface.show(result)
Line C — The engine needs the user's answers to work out a conclusion. 'result' does not exist yet, so the line should be result = engine.run(answers).
Question 2
A answers = engine.ask()
B result = engine.run(answers)
C interface.show(result)
Line A — The expert system interface asks the user the questions and takes their answers. The inference engine does not talk to the user. It should be answers = interface.ask().
Question 3
A Step 1: User answers questions
B Step 2: Interface applies rules
C Step 3: Interface shows result
Line B — Applying the rules is the job of the inference engine, not the interface. The interface only takes the answers and shows the result. Step 2 should say the engine applies the rules.
Question 4
A INPUT answers
B result = INFER(rules)
C OUTPUT result
Line B — The inference engine must apply the rules to the user's answers, so the answers must be passed in too. It should be result = INFER(answers, rules).
Question 5
A INPUT answers FROM engine
B result ← INFER(answers, rules)
C OUTPUT result TO interface
Line A — The user's answers come in through the interface, not from the inference engine. It should be INPUT answers FROM interface.

Student with a class code? Join your class →