What is Prolog mainly used for?
Symbolic reasoning and knowledge representation; describing what is true rather than how to compute it.
What are the three main building blocks of Prolog programs?
Facts, Rules, Queries
What does the underscore ‘_’ represent in Prolog?
An anonymous variable that matches any single value but is ignored.
What does a Prolog query ask?
Whether a certain statement (goal) can be proven true from the known facts and rules.
What is backtracking in Prolog?
A mechanism where Prolog systematically searches alternative rule branches when one path fails.
What does the ‘!’ operator (cut) do?
It commits to all choices made so far and prevents further backtracking past that point.
What is ‘fail’ in Prolog used for?
It forces a goal to fail intentionally
What does ‘not(Goal)’ mean in Prolog?
Negation as failure: it succeeds if ‘Goal’ cannot be proven true.
What logical assumption does ‘not/1’ rely on?
The Closed World Assumption: anything not known to be true is assumed false.
What is the difference between ‘=’ and ‘is’ in Prolog?
’=’ unifies terms (pattern matching)
“is”: Arithmetic evaluation: computes numeric expressions on the right-hand side
What is the core idea of Explanation-Based Learning (EBL)?
Learning by explaining why an example is true using background knowledge.
(But you don’t learn anything new!)
What does a Prolog meta-interpreter do?
It is a Prolog program that interprets other Prolog programs.
It can record how a goal was proven (the explanation trace) and generalize that proof into a reusable rule.
What does the ‘generalization’ step in EBL do?
It replaces specific constants (like ‘tweety’) with variables to form a general rule.
What is the result of an EBL process?
A generalized and operational rule (hypothesis) that can explain not only the training example but also future instances of the same concept
How does EBL differ from statistical learning?
EBL is deductive and symbolic; it explains and generalizes single examples using logic instead of patterns in data.
What is a limitation of EBL?
It relies heavily on correct background knowledge; if the logic base is incomplete or wrong, it can’t learn effectively.
What does ‘prove_with_trace’ in a meta-interpreter typically do?
It executes reasoning steps while recording which clauses were used
Why are hybrid neuro-symbolic systems important today?
They combine data-driven learning with logical reasoning and explainability.
Inductive Learning vs. Deductive Learning
IL:
- Examples cannot be derived from the background knowledge
(prior necessity)
- Many examples needed
- The validity of the generalizations needs to be checked empirically
- focus on the learning on relevant
features
DL (EBL):
- Examples can be proved with the available background knowledge
- a single example can suffice
- Generalizations are provably correct
- the focus is provided by the background knowledge
What is Symbolic AI?
An approach to AI that represents knowledge explicitly using symbols and logic, enabling reasoning instead of statistical pattern recognition.
What is Inductive Logic Programming (ILP)?
A form of symbolic machine learning that learns logical rules (Horn clauses) from examples and background knowledge.
What is the main goal of Concept Learning?
To find the logical definition (theory T) of a target concept that explains positive examples and excludes negative examples, using background knowledge B.
What are Positive Examples (E⁺) in ILP?
What are Negative Examples (E⁻) in ILP?
Instances of the target relation that are known to be true and should be covered by the learned theory.
Instances of the target relation that are known to be false and should not be covered by the learned theory.
What is Background Knowledge (B)?
Known facts or relations (e.g., parent/2, male/1) that can be used in constructing the target relation but are not themselves examples.