DEDUCTIVE DATABASES:

  • In a deductive database system we typically specify rules through a declarative language-A language in which we specify what to achieve rather than how to achieve
  • A model used for deductive databases is closely related to the relational data model.
  • A deductive database uses two main types of specifications namely facts and rules
    • Facts are specified in a manner similar to the way relations are specified except that it is not necessary to include attribute names
    • Rules are similar to relational views.They specify virtual relations that are not actually stored but that can be formed from the facts.
  • A Deductive database is a database system that can make deductions (i.e., conclude additional facts) based on rules and facts stored in the (deductive) database.
  • An inference engine within the system can deducenew facts from the database by interpreting theses rules
  • The deductive database works on the principle of logic and has  used prolog as a starting point
  • Deductive databases reuse a large number of concepts from logic programming; rules and facts specified in the deductive database language. However important differences between deductive databases and logic programming:
    • Order sensitivity and procedurality: In Prolog, program execution depends on the order of rules in the program and on the order of parts of rules; these properties are used by programmers to build efficient programs. In database languages (like SQL or Datalog), however, program execution is independent of the order of rules and facts.
    • Special predicates: In Prolog, programmers can directly influence the procedural evaluation of the program with special predicates such as the cut, this has no correspondence in deductive databases.
    • Function symbols: Logic Programming languages allow function symbols to build up complex symbols. This is not allowed in deductive databases.
    • Tuple-oriented processing: Deductive databases use set-oriented processing while logic programming languages concentrate on one tuple at a time.

Comments

Popular posts from this blog

Pentium microprocessors

Design and Management of Computer Networks Running Notes

ONE DIMENSIONAL RANDOM VARIABLES: Handwritten notes