M𝗼𝗻𝗼𝘁𝗼𝗻𝗶𝗰 𝗿𝗲𝗮𝘀𝗼𝗻𝗶𝗻𝗴
M𝗼𝗻𝗼𝘁𝗼𝗻𝗶𝗰 𝗿𝗲𝗮𝘀𝗼𝗻𝗶𝗻𝗴 does allow revision — but not by automatically withdrawing previous conclusions.
Monotonicity means that once a conclusion is logically inferred, adding new knowledge does not remove that conclusion.
Instead, if revision is needed, the knowledge model itself must be explicitly reformulated.
Example:
• every bird flies
∀x (Bird(x) → Flies(x))
• penguin is a bird
Bird(Penguin)
From these statements, the inference is:
• penguin flies
Flies(Penguin)
If we later add:
• penguin does not fly
¬Flies(Penguin)
The previous conclusion remains logically available:
• Flies(Penguin)
• ¬Flies(Penguin)
This is not a loss of monotonicity.
It is logical inconsistency.
So how is revision achieved in monotonic systems?
By refining the ontology itself.
Instead of:
• every bird flies
∀x (Bird(x) → Flies(x))
it is usually better to define:
• flying bird is a subclass of bird
∀x (FlyingBird(x) → Bird(x))
• penguin is a bird
Bird(Penguin)
• penguin does not fly
¬Flies(Penguin)
This allows exceptions to be represented explicitly without contradiction.
Monotonic reasoning preserves previous conclusions and requires explicit model revision
(Examples in this post were developed with AI support.)
#SemanticWeb #Ontology #Monotonicity #FirstOrderLogic #KnowledgeRepresentation
Comentários
Postar um comentário