F-logic (
frame
A frame is often a structural system that supports other components of a physical construction and/or steel frame that limits the construction's extent.
Frame and FRAME may also refer to:
Physical objects
In building construction
*Framing (con ...
logic
Logic is the study of correct reasoning. It includes both formal and informal logic. Formal logic is the science of deductively valid inferences or of logical truths. It is a formal science investigating how conclusions follow from premises ...
) is a
knowledge representation
Knowledge representation and reasoning (KRR, KR&R, KR²) is the field of artificial intelligence (AI) dedicated to representing information about the world in a form that a computer system can use to solve complex tasks such as diagnosing a medic ...
and
ontology language
In computer science and artificial intelligence, ontology languages are formal languages used to construct ontologies. They allow the encoding of knowledge about specific domains and often include reasoning rules that support the processing of th ...
. F-logic combines the advantages of conceptual modeling with object-oriented, frame-based languages and offers a declarative, compact and simple syntax, as well as the well-defined semantics of a logic-based language.
Features include, among others, object identity, complex objects,
inheritance
Inheritance is the practice of receiving private property, Title (property), titles, debts, entitlements, Privilege (law), privileges, rights, and Law of obligations, obligations upon the death of an individual. The rules of inheritance differ ...
,
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", which can contain data and code. The data is in the form of fields (often known as attributes or ''properties''), and the code is in the form of pr ...
as classical
relational calculus
The relational calculus consists of two calculi, the tuple relational calculus and the domain relational calculus, that are 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 is a (most commonly digital) database based on the relational model of data, as proposed by E. F. Codd in 1970. A system used to maintain relational databases is a relational database management system (RDBMS). Many relatio ...
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 research university in Stony Brook, New York. Along with the University at Buffalo, it is one of the State University of New York system's ...
and Georg Lausen at the
University of Mannheim
The University of Mannheim (German: ''Universität Mannheim''), abbreviated UMA, is a public research university in Mannheim, Baden-Württemberg, Germany. Founded in 1967, the university has its origins in the ''Palatine Academy of Sciences'', ...
. F-logic was originally developed for deductive databases, but is now most frequently used for semantic technologies, especially the
semantic web. F-logic is considered as one of the formalisms for
ontologies
In computer science and information science, an ontology encompasses a representation, formal naming, and definition of the categories, properties, and relations between the concepts, data, and entities that substantiate one, many, or all domains ...
, but
description logic (DL) is more popular and accepted, as is the DL-based
OWL
Owls are birds from the order Strigiformes (), which includes over 200 species of mostly solitary and nocturnal birds of prey typified by an upright stance, a large, broad head, binocular vision, binaural hearing, sharp talons, and feathers a ...
.
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
Question answering (QA) is a computer science discipline within the fields of information retrieval and natural language processing (NLP), which is concerned with building systems that automatically answer questions posed by humans in a natural l ...
and
semantic search
Semantic search denotes search with meaning, as distinguished from lexical search where the search engine looks for literal matches of the query words or variants of them, without understanding the overall meaning of the query. Semantic search seek ...
. Prior to the 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
The Rule Interchange Format (RIF) is a W3C Recommendation. RIF is part of the infrastructure for the semantic web, along with (principally) SPARQL, RDF and OWL. Although originally envisioned by many as a "rules layer" for the semantic web, in ...
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 and led by Tim Berners-Lee, the consortium is made up of member organizations that maintain full-time staff working to ...
is based on F-logic; RIF BLD however does not include
non-monotonic reasoning
A non-monotonic logic is a formal logic whose conclusion relation is not monotonic. In other words, non-monotonic logics are devised to capture and represent defeasible inferences (cf. defeasible reasoning), i.e., a kind of inference in which re ...
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 The closed-world assumption (CWA), in a formal system of logic used for knowledge representation, is the presumption that a statement that is true is also known to be true. Therefore, conversely, what is not currently known to be true, is false. Th ...
as opposed to DL's
open world assumption
In a formal system of logic used for knowledge representation, the open-world assumption is the assumption that the truth value of a statement may be true irrespective of whether or not it is ''known'' to be true. It is the opposite of the clos ...
. Also, F-logic is generally
undecidable, whereas
the
SHOIN description logic that
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 Flora-2 is an open source semantic rule-based system for knowledge representation and reasoning.
The language of the system is derived from F-logic, HiLog,
W. Chen, M. Kifer and D.S. Warren (1993)''HiLog: A Foundation for Higher-Order Logic Programm ...
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 Negation as failure (NAF, for short) is a non-monotonic inference rule in logic programming, used to derive \mathrm~p (i.e. that ~p is assumed not to hold) from failure to derive ~p. Note that \mathrm ~p can be different from the statement \neg p ...
, based on the
well-founded semantics In logic programming, the well-founded semantics is one definition of how we can make conclusions from a set of logical rules. In logic programming, we give a computer a set of facts, and a set of "inference rules" about how these facts relate. Th ...
); Flora-2 also supports so-called explicit negation,
which is closer to negation in classical logic.
F-logic based languages
*
Flora-2 Flora-2 is an open source semantic rule-based system for knowledge representation and reasoning.
The language of the system is derived from F-logic, HiLog,
W. Chen, M. Kifer and D.S. Warren (1993)''HiLog: A Foundation for Higher-Order Logic Programm ...
is an extension of F-logic with
HiLog HiLog is a programming logic with higher-order syntax, which allows arbitrary terms to appear in predicate and function positions. However, the model theory of HiLog is first-order. Although syntactically HiLog strictly extends first order logic, Hi ...
,
Transaction logic Transaction Logic is an extension of predicate logic that accounts in a clean and declarative way for the phenomenon of state changes in logic programs and databases. This extension adds connectives specifically designed for combining simple action ...
, and
defeasible reasoning
In philosophical logic, defeasible reasoning is a kind of reasoning that is rationally compelling, though not deductively valid. It usually occurs when a rule is given, but there may be specific exceptions to the rule, or subclasses that are su ...
.
Ergois a commercial system based on F-logic, which extends Flora-2.
PathLPis a full logic programming language based on F-logic.
FLORIDis 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
Ontoprise GmbH was a provider of Semantic Web infrastructure technologies and products used to support dynamic semantic information integration and information management processes at the enterprise level. Its primary place of business was locate ...
).
* OO-logic is a successor of F-logic; SemReasoner and Ontology Management System (OSM) are implementations of OO-logic by adesso SE.
References
{{reflist
Knowledge representation
Semantic Web
Logic programming languages
Declarative programming languages