Skip to main content

Frame with example

Short answer

A frame is a structured knowledge representation with slots, facets (defaults, ranges, procedures like if-needed), arranged in is-a hierarchy for inheritance. Example: Book frame has slots author, pages; default language English; price if-needed computes pages×2. TextBook is-a Book; AI_Rich_Knight instance of TextBook inherits English and price 1280.

What is a frame? Explain it with suitable example.

A frame is a structured knowledge representation for a stereotyped object, concept or situation, proposed by Marvin Minsky (1975). It is a collection of slots (attributes), each holding a value, a default, a restriction or an attached procedure. Frames are arranged in a hierarchy (is-a, instance-of) so that slots are inherited.

Parts of a frame

  • Frame name: the object or class.
  • Slots: attributes of the object.
  • Facets: extra information about a slot: value, default, range/type, and procedures if-needed (compute when asked), if-added / if-removed (run when changed), also called demons.
  • Links: is-a and instance-of to parent frames.

Example: a Book frame hierarchy

Frame: Book
  is-a: Publication
  author:     [type: Person]
  pages:      [range: 1..2000]
  language:   default English
  price:      [if-needed: pages * 2]

Frame: TextBook
  is-a: Book
  subject:    [type: String]
  edition:    default 1

Frame: AI_Rich_Knight       (instance)
  instance-of: TextBook
  author:     Elaine Rich
  subject:    Artificial Intelligence
  pages:      640
  edition:    3
  • language of AI_Rich_Knight is not stored, so the default English is inherited from Book.
  • price is computed by the if-needed procedure: 640 × 2 = 1280.

Equivalent FOPL

instance(AI_Rich_Knight, TextBook), isa(TextBook, Book), author(AI_Rich_Knight, Elaine_Rich), ∀x instance(x,TextBook) → language(x, English).

Advantages

  • Natural organisation of knowledge around objects.
  • Inheritance and default values reduce storage and allow reasoning with missing data.
  • Procedural attachment combines declarative and procedural knowledge.

Limitations

  • No formal semantics; reasoning with exceptions and negation is difficult.
  • Hard to build and maintain for large domains.

✓ Answer checked by Claude Opus 5.5 (high effort)

All Artificial Intelligence chapter 5 questions →