Domanda

Ho letto il libro eccellente Rappresentazione della Conoscenza e Ragionamento di Ronald Brachman e Hector Levesque.

All'inizio della sezione 3.2 "Vocabolario" del capitolo 3 "La conoscenza Esprimendo" Esse affermano:

Nella creazione di un KB (Knowledge Base) è una buona idea per iniziare con la serie di predicati dominio-dipendente e le funzioni che forniscono la base per i fatti circa il dominio del KB.

Nella stessa sezione questi fatti sono separati in tre categorie:

  • Elementi di base
  • fatti complessi
  • fatti terminologiche

Dopo aver letto tutto il capitolo ho potuto non del tutto capire le differenze tra questi tipi di fatti.

Può qualcuno aiutarlo a capire le differenze di questi concetti?

È stato utile?

Soluzione

In §3.2 they distinguish between the following four grammatical categories, with some examples:

Predicates: Woman, Rich, Beautiful, Bankrupt
Relations: LivesAt, HadAnAffairWith, Loves
Functions: fatherOf, bestFriendOf, ceoOf
Individual constants: maryJones, johnQSmith, tomsHouse

In the background they have first-order logic with identity, which means they allow for quantification only over individual variables. Within this machinery, in §§ 3.3–5 they introduce the three types of facts.

Basic facts are the atomic sentences and their negations.

The atomic sentences are those sentences which are made of:

  1. a [predicate] + an [individual]. E.g.: Woman(maryJones)
  2. an n-ary [relation] + n [individual]s. E.g.: Loves(maryJones, tomsHouse)
  3. an [individual] + "=" + an [individual]. E.g.: maryJones = marySmith

Note that functions applied to individual constants also denote individuals (e.g., fatherOf(maryJones) is some individual), that's why clauses (1–3) include the word 'individual' rather than 'individual constant' so as to allow also for functional expressions denoting individuals. The negations of atomic sentences are defined as follows: a sentence ¬S is a negation of an atomic sentence iff S is an atomic sentence.

Complex facts are the basic facts closed under boolean connectives and quantifiers.

That's just a fancy way of saying that: (i) basic facts are complex facts, and (ii) if φ and ψ are complex facts, then ¬φ, (φ ∧ ψ), (φ ∨ ψ), (φ → ψ), and ∀xφ are also complex facts. They give the following example of a complex fact on p. 34: ∀y[Rich(y) ∧ Man(y) → Loves(y, jane)] (every rich man loves Jane).

Beware that on p. 36 they list sentences like "jane ¬= john" among complex facts, suggesting that they're not basic facts. But they are. I suspect that's why you've been having hard time seeing the difference between the types. By the definition of basic facts (see above), sentences like "jane ¬= john" are considered basic, because they're the negations of atomic sentences such as "jane = john".

Terminological facts are complex facts taken to be axiomatically or definitionally true.

A better term for them would be "definitional facts" or "meaning postulates" (as Rudolf Carnap calls them). Consider the predicate Man. If someone is a man, we know, without having to see this person, that he is not a woman; it's definitionally true! We capture that logical relationship between predicates Man and Woman with the terminological fact: ∀x[Man(x) → ¬Woman(x)]. That is only one example of a terminological fact; more can be found on pages 36–7. They're pretty straightforward to understand.

Hope this helps clarify the distinction.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a cs.stackexchange
scroll top