F-logic (Frame logic) is a
knowledge representation
Knowledge representation (KR) aims to model information in a structured manner to formally represent it as knowledge in knowledge-based systems whereas knowledge representation and reasoning (KRR, KR&R, or KR²) also aims to understand, reason, and ...
and
ontology language. It combines the advantages of conceptual modeling with
object-oriented,
frame-based languages, and offers a
declarative, compact and simple
syntax
In linguistics, syntax ( ) is the study of how words and morphemes combine to form larger units such as phrases and sentences. Central concerns of syntax include word order, grammatical relations, hierarchical sentence structure (constituenc ...
, and the well-defined semantics of a
logic programming
Logic programming is a programming, database and knowledge representation paradigm based on formal logic. A logic program is a set of sentences in logical form, representing knowledge about some problem domain. Computation is performed by applyin ...
language.
Features include, among others, object identity, complex objects,
inheritance
Inheritance is the practice of receiving private property, titles, debts, entitlements, privileges, rights, and obligations upon the death of an individual. The rules of inheritance differ among societies and have changed over time. Offi ...
,
polymorphism, query methods,
encapsulation. F-logic stands in the same relationship to
object-oriented programming
Object-oriented programming (OOP) is a programming paradigm based on the concept of '' objects''. Objects can contain data (called fields, attributes or properties) and have actions they can perform (called procedures or methods and impl ...
as classical
relational calculus
The relational calculus consists of two calculi, the tuple relational calculus and the domain relational calculus, that is part of the relational model for databases and provide a declarative way to specify database queries. The raison d'être ...
stands to
relational database
A relational database (RDB) is a database based on the relational model of data, as proposed by E. F. Codd in 1970.
A Relational Database Management System (RDBMS) is a type of database management system that stores data in a structured for ...
programming.
Overview
F-logic was developed by Michael Kifer at
Stony Brook University
Stony Brook University (SBU), officially the State University of New York at Stony Brook, is a public university, public research university in Stony Brook, New York, United States, on Long Island. Along with the University at Buffalo, it is on ...
and Georg Lausen at the
University of Mannheim. F-logic was originally developed for deductive databases, but is now used most often for semantic technologies, especially the
semantic web
The Semantic Web, sometimes known as Web 3.0, is an extension of the World Wide Web through standards set by the World Wide Web Consortium (W3C). The goal of the Semantic Web is to make Internet data machine-readable.
To enable the encoding o ...
. F-logic is considered as one of the formalisms for
ontologies
In information science, an ontology encompasses a representation, formal naming, and definitions of the categories, properties, and relations between the concepts, data, or entities that pertain to one, many, or all domains of discourse. More ...
, but
description logic (DL) is more popular and accepted, as is the DL-based
Web Ontology Language
The Web Ontology Language (OWL) is a family of Knowledge representation and reasoning, knowledge representation languages for authoring Ontology (information science), ontologies. Ontologies are a formal way to describe Taxonomy, taxonomies and ...
(OWL).
A development environment for F-logic was developed in the NeOn project and is also used in a range of applications for information integration,
question answering and
semantic search. Before version 4 of Protégé ontology editor, F-Logic is supported as one of the two kinds of ontology.
The frame syntax of the
Rule Interchange Format Basic Logic Dialect (RIF BLD) standardized by the
World Wide Web Consortium
The World Wide Web Consortium (W3C) is the main international standards organization for the World Wide Web. Founded in 1994 by Tim Berners-Lee, the consortium is made up of member organizations that maintain full-time staff working together in ...
is based on F-logic; RIF BLD however omits
non-monotonic reasoning features of F-logic.
In contrast to
description logic based ontology formalism, the semantics of F-logic are normally that of a
closed world assumption in contrast to DL's
open world assumption. Also, F-logic is generally
undecidable, whereas the SHOIN description logic that
Web Ontology Language
The Web Ontology Language (OWL) is a family of Knowledge representation and reasoning, knowledge representation languages for authoring Ontology (information science), ontologies. Ontologies are a formal way to describe Taxonomy, taxonomies and ...
(OWL) DL is based on is decidable. However, it is possible to represent more expressive statements in F-logic than are possible with description logics.
The most comprehensive description of F-logic was published in 1995. The preliminary paper from 1989 won the 1999 Test of Time Award from ACM
SIGMOD.
A follow-up paper from 1992 won the 2002 Test of Time Award from ACM SIGMOD.
F-logic syntax
Classes and individuals may be defined in F-logic as follows:
man::person.
woman::person.
brad:man.
angelina:woman.
This states, that "men and women are persons" and that "Brad is a man", and "Angelina is a woman".
Statements about classes and individuals may be made as follows:
person
asSon=>man
brad
asSon->
married(brad,angelina).
This defines that "the son of a person is a man", "Maddox and Pax are the sons of Brad" and "Brad and Angelina are married".
In addition it is possible to represent axioms in F-logic in the following manner:
These mean "X is a man if X is a person but not a woman" and "if X is the son of Y then X is a person and Y is the father of X".
(Note: the latter inference is not factual, because in addition to fathers, sons also have mothers.
The gender of X is determined by the premise, but the gender of Y is not.)
The
Flora-2 system introduced a number of changes to the syntax of F-logic, making it more suitable for a knowledge representation and reasoning system as opposed to just a theoretical logic. In particular, variables became prefixed with a ?-mark, the distinction between functional and multi-valued properties was dropped and replaced by cardinality constraints, plus other important changes. For instance, the above pair of sentences look like this in Flora-2:
Here is default negation ("naf" stands for
Negation as failure, based on the
well-founded semantics); Flora-2 also supports so-called explicit negation,
which is closer to negation in classical logic.
F-logic based languages
*
Flora-2 is an extension of F-logic with
HiLog,
transaction logic, and
defeasible reasoning.
Ergois a commercial system based on F-logic, which extends Flora-2.
PathLPis a full logic programming language based on F-logic.
is a C++ — based implementation
Web Services Modeling Language (WSML)Semantic Web Services Language (SWSL)* ObjectLogic language is based on F-logic; OntoStudio is an ObjectLogic implementation by semafora systems GmbH (formerly
Ontoprise GmbH).
* OO-logic is a successor of F-logic; SemReasoner and Ontology Management System (OSM) are implementations of OO-logic by adesso SE.
References
{{Automated reasoning
Knowledge representation
Semantic Web
Logic programming languages
Declarative programming languages