Flora-2

Last updated

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, [1] HiLog, [2] and Transaction logic. [3] Being based on F-logic and HiLog implies that object-oriented syntax and higher-order representation are the major features of the system. Flora-2 also supports a form of defeasible reasoning called Logic Programming with Defaults and Argumentation Theories (LPDA). [4] Applications include intelligent agents, Semantic Web, knowledge-bases networking, ontology management, integration of information, security policy analysis, automated database normalization, and more. [5] [6] [7] [8] [9] [10]

Contents

Flora-2 relies on the XSB system for its inference engine. The design and architecture of Flora-2 are described in a number of works. [11] [12] [13] [14]

Details of the system and its use are described in the Flora-2 User's Manual. [15] Flora-2 is available for all major computing platforms, including Linux and other flavors of Unix, Microsoft Windows (both 32- and 64-bit), and Mac OS X.

History

Flora-2 is a successor to the Flora system (1998–1999) and incorporates the experience gained developing and using the original Flora system. The Flora-2 project started around year 2000 by Guizhen Yang and Michael Kifer. In later years it was led by Michael Kifer and had many other contributors.

Projects using Flora-2

Related Research Articles

Cyc is a long-living artificial intelligence project that aims to assemble a comprehensive ontology and knowledge base that spans the basic concepts and rules about how the world works. Hoping to capture common sense knowledge, Cyc focuses on implicit knowledge that other AI platforms may take for granted. This is contrasted with facts one might find somewhere on the internet or retrieve via a search engine or Wikipedia. Cyc enables AI applications to perform human-like reasoning and be less "brittle" when confronted with novel situations.

Knowledge representation and reasoning is the field of artificial intelligence (AI) dedicated to representing information about the world in a form that a computer system can utilize to solve complex tasks such as diagnosing a medical condition or having a dialog in a natural language. Knowledge representation incorporates findings from psychology about how humans solve problems and represent knowledge in order to design formalisms that will make complex systems easier to design and build. Knowledge representation and reasoning also incorporates findings from logic to automate various kinds of reasoning, such as the application of rules or the relations of sets and subsets.

The Semantic Web has the ultimate goal of making a machine understand Internet data. To enable the encoding of semantics with the data, well-known technologies are used such as RDF and OWL. These technologies formally represent the meaning involved in information. For example, ontology can describe concepts, relationships between things, and categories of things. These embedded semantics offer significant advantages such as reasoning over data and dealing with heterogeneous data sources.

Description logics (DL) are a family of formal knowledge representation languages. Many DLs are more expressive than propositional logic but less expressive than first-order logic. In contrast to the latter, the core reasoning problems for DLs are (usually) decidable, and efficient decision procedures have been designed and implemented for these problems. There are general, spatial, temporal, spatiotemporal, and fuzzy descriptions logics, and each description logic features a different balance between DL expressivity and reasoning complexity by supporting different sets of mathematical constructors.

Inferences are steps in reasoning, moving from premises to logical consequences; etymologically, the word infer means to "carry forward". Inference is theoretically traditionally divided into deduction and induction, a distinction that in Europe dates at least to Aristotle. Deduction is inference deriving logical conclusions from premises known or assumed to be true, with the laws of valid inference being studied in logic. Induction is inference from particular premises to a universal conclusion. A third type of inference is sometimes distinguished, notably by Charles Sanders Peirce, distinguishing abduction from induction, where abduction is inference to the best explanation.

A non-monotonic logic is a formal logic whose consequence relation is not monotonic. In other words, non-monotonic logics are devised to capture and represent defeasible inferences, i.e., a kind of inference in which reasoners draw tentative conclusions, enabling reasoners to retract their conclusion(s) based on further evidence. Most studied formal logics have a monotonic consequence relation, meaning that adding a formula to a theory never produces a reduction of its set of consequences. Intuitively, monotonicity indicates that learning a new piece of knowledge cannot reduce the set of what is known. A monotonic logic cannot handle various reasoning tasks such as reasoning by default, abductive reasoning, some important approaches to reasoning about knowledge, and similarly, belief revision.

A knowledge-based system (KBS) is a computer program that reasons and uses a knowledge base to solve complex problems. The term is broad and refers to many different kinds of systems. The one common theme that unites all knowledge based systems is an attempt to represent knowledge explicitly and a reasoning system that allows it to derive new knowledge. Thus, a knowledge-based system has two distinguishing features: a knowledge base and an inference engine.

Loom is a knowledge representation language developed by researchers in the artificial intelligence research group at the University of Southern California's Information Sciences Institute. The leader of the Loom project and primary architect for Loom was Robert MacGregor. The research was primarily sponsored by the Defense Advanced Research Projects Agency (DARPA).

F-logic is a knowledge representation and ontology language. 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.

Logtalk is an object-oriented logic programming language that extends and leverages the Prolog language with a feature set suitable for programming in the large. It provides support for encapsulation and data hiding, separation of concerns and enhanced code reuse. Logtalk uses standard Prolog syntax with the addition of a few operators and directives.

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 reality the design of RIF is based on the observation that there are many "rules languages" in existence, and what is needed is to exchange rules between them.

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 actions into complex transactions and for providing control over their execution. The logic has a natural model theory and a sound and complete proof theory. Transaction Logic has a Horn clause subset, which has a procedural as well as a declarative semantics. The important features of the logic include hypothetical and committed updates, dynamic constraints on transaction execution, non-determinism, and bulk updates. In this way, Transaction Logic is able to declaratively capture a number of non-logical phenomena, including procedural knowledge in artificial intelligence, active databases, and methods with side effects in object databases.

A semantic reasoner, reasoning engine, rules engine, or simply a reasoner, is a piece of software able to infer logical consequences from a set of asserted facts or axioms. The notion of a semantic reasoner generalizes that of an inference engine, by providing a richer set of mechanisms to work with. The inference rules are commonly specified by means of an ontology language, and often a description logic language. Many reasoners use first-order predicate logic to perform reasoning; inference commonly proceeds by forward chaining and backward chaining. There are also examples of probabilistic reasoners, including Pei Wang's non-axiomatic reasoning system, and probabilistic logic networks.

Knowledge retrieval seeks to return information in a structured form, consistent with human cognitive processes as opposed to simple lists of data items. It draws on a range of fields including epistemology, cognitive psychology, cognitive neuroscience, logic and inference, machine learning and knowledge discovery, linguistics, and information technology.

Ontology engineering research field and engineering activity

Ontology engineering in computer science, information science and systems engineering is a field which studies the methods and methodologies for building ontologies: formal representations of a set of concepts within a domain and the relationships between those concepts. A large-scale representation of abstract concepts such as actions, time, physical objects and beliefs would be an example of ontological engineering. Ontology engineering is one of the areas of applied ontology, and can be seen as an application of philosophical ontology. Core ideas and objectives of ontology engineering are also central in conceptual modeling.

In information technology a reasoning system is a software system that generates conclusions from available knowledge using logical techniques such as deduction and induction. Reasoning systems play an important role in the implementation of artificial intelligence and knowledge-based systems.

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, HiLog can be embedded into this logic.

Ulrike Sattler Computer Scientist

Ulrike M. Sattler is a Professor of Computer science in the information management group of the School of Computer Science at the University of Manchester and a visiting Professor at the University of Oslo.

Rulelog is an expressive semantic rule-based knowledge representation and reasoning (KRR) language. It underlies knowledge representation languages used in systems such as Flora-2, SILK and others. It extends well-founded declarative logic programs with features for higher-order syntax, frame syntax, defeasibility, general quantified expressions both in the bodies of the rules and their heads, user-defined functions, and restraint bounded rationality.

Semantic Web Services Language

The Semantic Web Services Language (SWSL) is a general-purpose logical language for specifying Semantic Web Services Ontologies (SWSOs), as well as individual Web services.The Semantic Web Services Language (SWSL) describes the syntax elements of SWSL and its semantic and semantic foundations. It can be used with the underlying language and network structure of Semantic Web Services. Syntactically, first-order logic is a subset of the Semantic Web Services Language (SWSL).

References

  1. M. Kifer, G. Lausen, J. Wu (1995). Foundations of Object-Oriented and Frame-Based Languages , Journal of ACM, May 1995.
  2. W. Chen, M. Kifer and D.S. Warren (1993), HiLog: A Foundation for Higher-Order Logic Programming. Journal of Logic Programming, 1993.
  3. A.J. Bonner and M. Kifer (1993), Transaction Logic Programming, International Conference on Logic Programming (ICLP), 1993.
  4. H. Wan , B. Grosof , M. Kifer , P. Fodor , S. Liang (2009), Logic Programming with Defaults and Argumentation Theories. 25th International Conference on Logic Programming (ICLP 2009), July 2009.
  5. H. Chen, T. Finin, and A. Joshi (2003). An ontology for context-aware pervasive computing environments, The Knowledge Engineering Review 18:3, Cambridge University Press.
  6. Y. Zou, T. Finin, H. Chen (2005). F-OWL: An Inference Engine for Semantic Web, Formal Approaches to Agent-Based Systems, Lecture Notes in Computer Science v. 3228, Springer Verlag.
  7. A. D. Lattner , J. D. Gehrke , I. J. Timm , O. Herzog (2005) A knowledge-based approach to behavior decision in intelligent vehicles, Intelligent Vehicles Symposium, IEEE, pp. 466-471.
  8. M. Malekovic and M. Schatten (2008) Leadership in Team Based Knowledge Management - An Autopoietic Information System's Perspective, Central European Conference on Information and Intelligent Systems (CECIIS-2008), University of Zagreb.
  9. T. Orehovacki, M. Schatten, A. Lovrencic (2011) Implementing a Logic System for Testing Functional Independent Normal Form in Relational Databases, Proceedings of the 33rd International Conference on Information Technology Interfaces / Lužar-Stiffler, Vesna ; Jarec, Iva ; Bekić, Zoran (ed). - Zagreb : University Computing Centre, University of Zagreb , 2011. 167-172 ( ISBN   978-953-7138-20-2).
  10. M. Schatten (2013) Knowledge Management in Semantic Social Networks, Computational & Mathematical Organization Theory (1381-298X) 19, 4; 538-568
  11. G. Yang and M. Kifer (2000), Flora: Implementing an Efficient DOOD System Using a Tabling Logic Engine. Intl. Conference on Computational Logic, July 2000.
  12. G. Yang, Michael Kifer, and C. Zhao (2003), FLORA-2: A Rule-Based Knowledge Representation and Inference Infrastructure for the Semantic Web. Second International Conference on Ontologies, Databases and Applications of Semantics (ODBASE), Catania, Sicily, Italy, November 2003.
  13. M. Kifer (2005), Nonmonotonic reasoning in Flora-2. Int'l Conf. on Logic Programming and Nonmonotonic Reasoning. Lecture Notes in Computer Science Volume 3662, 2005, pp 1-12.
  14. G. Yang and M. Kifer (2003), Reasoning about Anonymous Resources and Meta Statements on the Semantic Web. Journal on Data Semantics. Lecture Notes in Computer Science vol. 2800, Springer, 2003.
  15. M. Kifer, G. Yang, H. Wan, C. Zhao (2013),Flora-2 User's Manual
  16. M. Schatten, M. Cubrilo, J.Seva (2008) A Semantic Wiki System Based on F-Logic, Central European Conference on Information and Intelligent Systems (CECIIS-2008), University of Zagreb.
  17. M. Schatten, M. Cubrilo, J.Seva (2009) Dynamic Queries in Semantic Wiki Systems, Central European Conference on Information and Intelligent Systems (CECIIS-2009), University of Zagreb.
  18. M. Schatten, V. Kakulapati, M. Cubrilo (2010) Reasoning about Social Semantic Web Applications using String Similarity and Frame Logic, Central European Conference on Information and Intelligent Systems (CECIIS-2010), University of Zagreb.
  19. M. Schatten (2007) Reasonable Python or how to Integrate F-Logic into an Object-Oriented Scripting Language, Intelligent Engineering Systems (INES-2007), IEEE, pp. 297-300.