Upload
imogene-turner
View
214
Download
0
Embed Size (px)
Citation preview
Consistency Checking of RM-ODP Specifications
Kenneth Baclawski
Mieczyslaw Kokar
Jeffrey Smith
Jerzy Letkowski
Themes
Consistency Checking Fundamental requirement Techniques for checking consistency Demonstration of ConsVISor
Category Theory Component framework for logical theories Component composition Refinement for code generation
Logical Consistency
A fundamental requirement of any rigorous formalization
Definition: there exists a non-trivial model of the theory.
If a theory is inconsistent then every logical statement is true.
Inconsistency is dangerous for autonomous agents!
Logical Reasoning
Person Fish
Wanda
type
Wendy
type
owns
Type constraint violation: The range of owns is Fish.
OR There is no inconsistency: Wanda is a fish!
type
Mermaid?
owns
DepartmentStudent
Cardinality constraint violation: George can’t have two majors
OR There is no inconsistency: Computer Science = Chemistry
type
ChemistryGeorge
type
equivalentTo
Computer Science
typemajor
major
major(0,1)
Checking Consistency
Consistency checking is very hard. Church showed that first-order logic is only
semi-decidable.
ConsVISor uses two concurrent strategies: Warn about possible inconsistencies. This part
is in Prolog and Java. If none, then consistent. Use the SNARK theorem prover to find true
inconsistencies. This need not terminate.
InconsistenciesManual consistency checking is difficult.
It is very hard to determine the consequences of a set of axioms just by looking at them.
Multiple viewpoints increase the difficulty. Translation may introduce inconsistency.
Inconsistent languages: Resource Description Framework (RDF) DARPA Agent Markup Language (DAML) Knowledge Interchange Format (KIF)
Category Theory: Specware
Category theory furnishes a formal component framework for logical theories.
Specification morphisms are more powerful than the include mechanism.
Specifications are intensional.Specifications can be refined to be
progressively more detailed.
Category of Specifications
A category consists of objects and morphisms.An object is a formal specification (spec)
consisting of sorts, operations, axioms and theorems. Each spec is a logical theory.
A morphism is a mapping of specs: Sorts are mapped to sorts Operations are mapped to operations. Axioms and theorems map to theorems.
Component Composition
Components can be composed by using the colimit mechanism.
Vehicle Spec Amphibian Spec
One-Sort Spec
Water Craft
Water VehicleOne-Sort Spec
Land VehicleLand Vehicle
Composed Spec
Importing and Templates
Linked List Spec
Vehicle Spec
Linked List and Vehicle
Import specification
One-Sort Spec
Linked List Spec
Vehicle Spec
Linked List of Vehicles
Template instantiation
Web Links
This presentation is available online at <Baclawski.com/woodpecker.ppt>
Versatile Information Systems (VIS) Web site <vis.home.mindspring.com>
Inconsistent languages (on VIS Web site): RDF <www.w3.org/rdf> DAML <www.daml.org> KIF <logic.stanford.edu/kif>
More Web links
Ontology-based computing talk <Baclawski.com/gbctalk.ppt>
Specware and Slang <www.kestrel.edu>SNARK automated theorem prover <www.ai.sri.com/~stickel/snark.html>