Home
MOTEL User Manual Version 0.8.2 (February 1994)
Contents
1. Arguments EnvName environment name M modal context RL1 list of role names RL2 list of role names RL2 is the list of all role names subsuming all roles in RL1 getCommonSonRoles EnvName M RL1 RL2 Arguments EnvName environment name M modal context RL1 list of role names RL2 list of role names RLZ2 is the list of all role names which are subsumed by all roles in RL1 Chapter 5 Realization and Retrieval of objects The realization problem is to find for an object a all concepts C such that a is an instance of C The retrieval problem is to find for a concept C all objects a such that a is an instance of C In MOTEL both problems are solved using the deduce command deduce EnuName M elementOf X CT Exp Arguments EnvName environment name M modal context X object name CT concept term Exp explanation For a given object name X all concept names CT such that X is an instance of CT will be enumerated Exp provides some explanation why this is true For a given concept termCT all object names X such that X is an instance of CT will be enumerated The concept term CT can be eiter a variable or a concept term containing role names but not general role terms only Again Erp provides some explanation why this is true If M is not instantiated it will enumerate all modal contexts such that X is an instance of C Finally if EnvName is a variable it will be instantiated with an environment such that X is a
2. ask EnvName M elementOf X C Exp Arguments EnuName M X C Exp environment name modal context object name concept name explanation A synonym for the deduce predicate described in chapter 5 ask EnuName M roleFiller X R L N Exp Arguments EnvName CEE environment name modal context object name role name list of object names number explanation A synonym for the deduce predicate described in chapter 5 saveMOTEL FileName Arguments FileName file name Saves the whole program state containing all user defined predicates becomes an executable file 99 The file FileName Appendix C SB LITTERS Interface sb_defenv EnuName Comment SB_DEFENV ENVNAME COMMENT Arguments EnvName environment name Comment string creates a new environment with identifier EnvName and associated comment Comment sb_initenv EnvName SB__INITENV ENVNAME Arguments EnvName environment name initializes environment EnvName or the current environment if no argument is given sb_primconcept EnvName M CNamel CSpecList SB_PRIMCONCEPT ENVNAME LIST BO A DO A BC O A DC O A CNAMEI CSPECLisT Arguments EnvName environment name M modal context CNamel concept name CSpecList SB ONE concept specification impose necessary conditions on the interpretation of C Namel in environment EnuName and modal context M The conditions are specified by CSpecL
3. Arguments EnvName environment name M modal context CL list of concept names CL is the list of all concept names in the subsumption hierarchy testDirectSuperConcept EnvName M Concept1 Concept2 Concept Arguments EnvName environment name M modal context Concepti concept name Concept2 concept name Concept concept name Concept is Concepti iff Concept1 is a direct super concept of Concept or Concept is Concept2 iff Concept is a direct super concept of Concept otherwise the predicate fails testDirectSubConcept EnuName M Concept1 Concept2 Concept Arguments EnvName environment name M modal context Concepti concept name Concept2 concept name Concept concept name Concept is Concept iff Concept is a direct sub concept of Concept2 or Concept is Concept iff Concept2 is a direct sub concept of Concept otherwise the predicate fails testSuperConcept EnvName M Concept1 Concept2 Concept Arguments EnvName environment name M modal context Concepti concept name Concept2 concept name Concept concept name Concept is Concepti iff Concept1 is a direct super concept of Concept or Concept is Concept2 iff Concept2 is a direct super concept of Concept otherwise the predicate fails testSubConcept EnuName M Concept1 Concept2 Concept EnvName M Conceptl Arguments Concept Concept environment name modal context concept name concept name concept name Concept is Concept
4. r every x with RE e x x E assert_ind M X A for every a with S a A QS edo for every x with N x Sly E assert_ind M X A for some x with Rg x S x E assert_ind M X A for every a with S a A for some x with Rg x S X S Y S P Six assert_ind M X Y P for every x with N e x Six assert_ind M X Y P for every a with S a A for every x with Rg e x Six assert_ind M X Y P for some x with Rg e x Sly E assert_ind M X Y P for every a with S a A for some x with RG e x Then we call satisfiable and we call S a model for If all interpretations are models for then we call a theorem Any axiom for which no model exists is called unsatisfiable Thus is a theorem iff its negation is unsatisfiable A 3 6 Modal Axioms For any modal operator O and any agent a one has to specify the properties of the accessibility relation R On the other hand these properties correspond to subsetrelationships on modal concepts Some of these correspondences are listed below For further details see Nonnengart 1992 Name Axiom Schema Property d b 0 a C C d 0 a C Valy RG x y t b O a C CC Va RG x 2 b C Cb O a d O a C Va y RG x y gt Rg y x 4 b 0 a C Cb O a b 0 a C Va y z Ro x y A Rg y z gt Rg z 2 5 a O a C Cb 0 a d 0 a C Yx y z Rg x y A R z 2 gt Rg y
5. EnvName environment name removes the knowledge base and the environment EnvName If EnvName was the current environment then initial environment becomes the current environment renameEnvironment EnvNamel EnvName2 Arguments EnvName environment name renames environment EnvNamel to EnvName saveEnvironment EnuName FileName Arguments EnvName environment name FileName file name saves the internal representation of environment EnvName into a file named FileName showEnvironment EnvName Arguments EnvName environment name displays the knowledge base in environment EnuName i e the terminological axioms the assertional axioms and the modal axioms switchToEnvironment EnvName Arguments EnvName environment name makes EnvName the current environment if an environment with this identifier exists Chapter 3 Knowledge Representation 3 1 Concept and Role Formation Assume that we have four disjoint alphabets of symbols called concept names C role names R modal operators M and object names O A distinguished subset A of O is the set of all agent names There is a special agent name all and a special concept name top called top concept The tuple C R M O is a knowledge signature The sets of modal concept terms and role terms are inductively defined as follows Every concept name is a modal concept term and every role name is a role term Now let C Ci Ck be modal concept terms R R
6. showFD Env Arguments Env environment name internal representation displays the user defined functional dependencies in the knowledge base Similar to showFDW but the default reprsentation is chosen 7 2 Deduction deduce EnvName MS Info FED Arguments EnvName environment name MS modal context Info a literal of the appropriate kind see description below E explanations not as yet implemented Succeeds if Info can be inferred by deduction Here is a short description of Info that can be inferred infl X Y W X attribute role name Y attribute role name W list of weights weight a value computes the cumulative weight W of all the influence links between the attributes X and Y simultInfl Xs Y W Xs list of attributes role names Y attribute role name W list of weights weight a value checks if the list Xs is well defined that is is Xs a SET of independent attributes and computes the total weight W of the attributes in the list Xs simultaneously influencing attribute Y leastInfl X Y X attribute role name Y attribute role name succeeds if X is a least attribute influencing Y leastInfls Xs Y Xs list of attributes role names Y attribute role name collects the least attributes influencing Y in Xs greatestInfl X Y X attribute role name Y attribute role name succeeds if Y is a greatest attribute influenced by X greatestInfls Xs Y X attribute role name Ys list
7. EnvNamel to En vName2 environment EnuName Envld Comment Arguments EnvName environment name EnvId internal environment name Comment string retrieves the internal environment identifier Envld and the associated comment Comment for a given environment name EnvName getCurrentEnvironment EnvName Arguments EnvName environment name instantiates EnvName with the identifier for the current environment initEnvironment EnuName Arguments EnvName environment name provides the environment EnvName with the initial data structures The current environment is initialized if no EnuName is given initialise removes all environments initialises the empty environment initial and makes initial the current environment initialize Identical to initialize For those of us who prefer the alternative spelling loadEnvironment FileName EnvName Arguments FileName file name EnvName environment name loads the internal representation of an environment EnvName from a file named FileName If no EnuName is given the enviroment name stored in the file FileName will be taken If there already exists an environment EnvName it will be removed makeEnvironment EnvName Comment Arguments EnvName environment name Comment string creates a new environment with identifier EnvName and associated comment Comment This new environment becomes the current environment removeEnvironment EnuName Arguments
8. Knowledge signature 8 Kripke class 13 leastInfl 23 leastInfls 23 loadEnvironment 7 loadKB 13 makeEnvironment 7 maxNegInfl 24 maxPosInfl 24 Modal concept terms 8 Modal context 8 Modal operators 8 modalAxioms 13 Negation 8 Negation as failure 8 negInfl 22 24 noChange 24 26 noInf1 22 24 Number restriction 8 Object names 8 posInfl 22 24 realize 19 removeEnvironment 7 renameEnvironment 7 Role names 8 Role restriction 8 Role terms 8 saveEnvironment 7 saveKB 13 saveMOTEL 31 32 sb_ask 35 38 sb_attributes 35 sb_defconcept 33 sb_defelem 34 sb_defelemrole 34 sb _defenv 33 sb_disjoint 34 sb_primconcept 33 sb_primelemrole 34 Semantic network 14 setOption 20 showChange 23 showEnvironment 7 showFD 23 showFDW 22 showHierarchy 14 showInf1 23 simultInfl 23 simultNegInfl 24 simultNolnfl 24 simultPosInfl 24 subsumes 14 switchToEnvironment 7 Terminological axioms 8 modal 8 testDirectFatherRole 17 testDirectSonRole 17 testDirectSubConcept 15 testDirectSuperConcept 15 testFatherRole 17 testSonRole 17 testSubConcept 16 testSuperConcept 16 Top concept 8 undef 22 undefconcept 10 undefprimconcept 10 Value restriction 8
9. Prolog you have to modify the file motel lisp At the beginning it contains three setq commands AN setq consult motel string usr local motel motel pl setq prolog executablex usr local sicstus2 1 sicstus setq int_dot_pl HG hiwis timm lucid int pl You should replace usr local motel motel pl with the filename of your installation of the motel pl file Furthermore you should replace usr local sicstus2 1 sicstus with the filename of you PRO LOG system The variable int_dot_p1 contains the location of the file int pl included in the distri bution Now you can load this file after you have started Lucid Common Lisp prompt 3 lucid Lucid Common Lisp SPARC Application Environment Version 4 0 0 6 July 1990 Copyright C 1985 1986 1987 1988 1989 1990 1991 by Lucid Inc All Rights Reserved This software product contains confidential and trade secret information belonging to Lucid Inc It may not be copied for any reason other than 33 for archival and backup purposes Lucid and Lucid Common Lisp are trademarks of Lucid Inc Other brand or product names are trademarks or registered trademarks of their respective holders gt load motel lisp Loading source file motel lisp Warning File motel lisp does not begin with IN PACKAGE Loading into package USER P usr local motel src motel motel lisp gt Then you
10. Roleiclostine Zah a ao dle nee ae Ba ela Dee 8 97 VAbductioni af an ar an Bra er ar rn De es ea 84 Details siero e REN AA AA De de a N N 8 9 Enumeration LyDes od eee oe N in lee Quintus Prolog Release 3 1 1 Specific Predicates SICStus 2 1 Specific Predicates SB LITTERS Interface The Common Lisp to PROLOG interface D 1 The syntax of a PROLOG goal in lisp e a D 2 The functions start prolog start motel reset prolog and kill prolog D 3 The function prolog go l arnie Ka ee a a a eh ed T DA The function prolog nert aa a D 5 The macro do prolog i ii un dala e ee a e dro D 6 The macro do prolog with streams i r sa byarna aiia AI Ea A a ie a e Installing MOTEL EA Requirements 2 Des Se oN E E A ene 10 10 11 13 13 15 15 15 17 20 22 23 23 24 26 28 28 28 29 30 30 32 33 34 40 40 40 41 41 41 41 42 E 2 Installation Chapter 1 Reading the User Manual 1 1 Predicate Desciptions Prediates are described according to the following grammar lt CallPattern gt Arguments lt ArgumentTypes gt lt Informal Description gt lt Predicate Description gt lt CallPattern gt lt Predicate Name gt lt CallArguments gt lt CallArguments gt lt CallArgument gt J lt CallArgument gt lt CallArgument gt lt Mode Annotation gt lt Meta Variable gt lt Mode Annotation gt lt Meta Variab
11. are able to work with the interface between Lucid Lisp and SICStus Prolog as described in chapter D References FRANZ BAADER AND BERNARD HOLLUNDER 1990 KRIS Knowledge Representation and Inference System System Description Technical Memo DFKI TM 90 03 Deutsches Forschunszentrum f r K nstliche Intelligenz ANDREAS NONNENGART 1992 First Order Modal Logic Theorem Proving and Standard PROLOG Internal report MPI I 92 228 Max Planck Institute for Computer Science Index abduce 20 25 26 Agent names 8 ask 31 32 assert_ind 10 change 22 24 25 classify 14 clearEnvironment 6 compileEnvironment 6 Concept top 8 Concept names 8 Conjunction 8 role 8 consistent 21 copyEnvironment 6 decrease 22 24 26 deduce 19 20 23 def 22 defconcept 9 defdisjoint 9 defprimconcept 9 defprimrole 9 defrole 9 delete_ind 11 Disjunction 8 environment 6 Exists restriction 8 getAllFatherRoles 16 getAllObjects 19 getAllSonRoles 17 getAllSubConcepts 15 getAllSuperConcepts 15 getCommonFatherRoles 18 getCommonSonRoles 18 getCommonSubConcepts 16 getCommonSuperConcepts 16 getConcepts 15 getCurrentEnvironment 6 getDirectFatherRoles 16 getDirectSonRoles 17 getDirectSubConcepts 15 getDirectSuperConcepts 15 getHierarchy 14 getKB 13 AA getRoles 17 greatestInfl 23 greatestInfls 23 inconsistent 21 increase 22 24 26 infl 22 23 initEnvironment 7 Inversion role 8
12. comment Although it is possible to have two different environments with the same environment name the one generated later will be not accessible by the user So the user should carefully choose the names for the environments The internal environment name is unique and does not depend on the environment name The comment can be used for any purpose e g to remind the user what the knowledge base is about There is always a current environment Whenever a predicate has an environment name as optional argument and the argument is not provided in a call to the predicate the system will refer to the current environment At the beginning there exists an empty environment named initial We provide the following predicates for handling environments clearEnvironment EnvName Arguments EnvName environment name removes the knowledge base in environment EnvName Without EnvName the current envi ronment is removed compileEnvironment FileName EnvName Arguments FileName file name EnvName environment name loads the internal representation of an environment EnvName in compiled form from a file named FileName If no EnvName is given the enviroment name stored in the file FileName will be taken If there already exists an environment EnvName it will be removed copyEnvironment EnuName1 EnvName2 Arguments EnvNamel environment name EnvName2 environment name creates a new environment EnvName2 and copies the knowledge base in
13. male 2 assert_ind tom peter child 3 assert_ind tom chris child 4 assert_ind tom tim child 5 assert_ind peter male 6 assert_ind chris male 7 assert_ind tim male 8 defclosed tom Y child So we can actually prove that tom is an element of onlyMaleChildren YQ deduce elementOf tom onlyMaleChildren yes If we get to know a new child of tom say betty which is not male we just add the assertional axioms 9 and 10 10 assert_ind tom betty child 11 assert_ind betty not male Now we are no longer able to deduce that tom is an element of onlyMaleChildren but we are still consistent deduce elementOf tom onlyMaleChildren no consistent yes 8 3 Abduction Here we consider the famous nixon diamond Suppose we specify that somebody who is a quaker and a normalQuaker is a dove And somebody who is a republican and a normalRepublican is a hawk The agent nixon is a quaker and a republican This can be done using the following axioms 1 defprimconcept and quaker normalQuaker dove 2 defprimconcept and republican normalRepublican hawk 3 assert_ind nixon quaker 4 assert_ind nixon republican Now we are neither able to deduce that nixon is a dove nor that he is a hawk deduce elementOf nixon dove no deduce elementOf nixon hawk no But we can use the abductive inference mechani
14. more it is possible to represent defaults and stereotypes Beside the basic resoning facilities for consistency checking classification and realization MOTEL provides an abductive inference mechanism Furthermore it is able to give explanations for its inferences Keywords abduction belief revision default logic modal logic terminological logic multi agent knowledge repre sentation functional dependencies J a W gt Reading the User Manual 1 1 Predicate Desciptions insa 2 404 aia A AEREE en en LLE Call Arguments a a e A oe i ale lt di 1 2 Argument Types Dt aaa E A Pala Environments Knowledge Representation 3 1 Concept and Role Formation 0 0 02 eee ee ee 3 2 Modal Terminological Axioms 2 2 2 2 CC mn nn 3 3 M dal Assertional Axioms ra eae ey m er pi de hee da a 3 4 Knowledge Revision a tac Lal ER E a e e A 3 9 DOMAIN CS E a re ee eee ie SE 3 6 Modal Axioms Mes id e hd rn ea e een 3 0 Knowledge Basgeg anna glee ee hae ee ete a Er ee a ee i Classification 4 1 Building the Semantic Network nn 4 2 Retrieval commands for concepts 0 ee 4 3 Retrieval commands for roles ee Realization and Retrieval of objects In consistency Functional Dependencies 7 1 Definition and Revision of Funcional Dependencies LL T2 Deduction ass polare eh aaa peli Bad Bed dd ee Ba a ne Ged CADAUCHON ii Li ae A Lesbian Examples Sl Mod l Operat rsi 4 3 2 4 4 vere Bd grid a A a 8 2
15. names are introduced in environment EnvName and modal context M without restricting their interpretation If no EnuName is given the current environment will be taken If no M is provided the empty modal context will be used The modal terminological axioms defprimconcept EnvName M A C Arguments EnvName environment name M modal context A concept name C concept term defprimrole EnuName M P R Arguments EnvName environment name M modal context P role name R role term impose necessary conditions on the interpretation of the introduced concept and role names in environment EnvName and modal context M Finally one can impose necessary and sufficient conditions by the modal terminological axioms defconcept EnvName M A C Arguments EnvName environment name M modal context A concept name C concept term defrole EnuName M P R Arguments EnvName environment name M modal context P role name R role term One can impose an additional restriction on the interpretation of already introduced concept names by the terminological axiom defdisjoint EnuName M CL Arguments EnvName environment name M modal context CL list of concept names which declares the mutal disjointness of all concepts in the given list of concept names 3 3 Modal Assertional Axioms Assertional axioms have the form assert_ind EnuName M X A Arguments EnvName environment name M modal con
16. 2 The user specifies the properties of the accessibility relation using the predicate modalAxioms At the moment the conjunctions d45 d4 d5 and t are allowed The identifiers kd45 kd4 kd5 and kt together form the argument type of Kripke classes modalAxioms EnvName Class O a Arguments EnvName environment name Class Kripke class O modal operator a agent name asserts the internal representation of the properties defined by the given Kripke class Class for the accessibility relation of the modal operator O and agent a modalAxioms EnvName Class O concept A Arguments EnvName environment name Class Kripke class O modal operator A concept name asserts the internal representation of the properties defined by the given Kripke class Class for the accessibility relation of the modal operator O for every agent in concept A 3 7 Knowledge Bases A triple consisting of a terminology a world description and modal axioms is a knowledge base It is possible to load and to save knowledge bases using the following predicates saveKB EnvName FileName Arguments EnvName environment name FileName file name saves the terminological assertional and modal axioms of the knowledge base in environment EnvName into the file FileName loadKB FileName EnvName Arguments FileName file name EnvName environment name loads the terminological assertional and modal axioms from file FileName turn
17. List which is a list of info nodes of the form At tribute Value Lisp syntax for INFOLIST LIST LIST ATTRI VALUED LIST ATTRn VALUEn sb_fact EnuName M isa X CT SB__FACT ENVNAME M ISA X CD Arguments EnvName environment name M modal context X object name CT concept term For a given object name X all concept names CT such that X is an instance of CT in the world description will be enumerated Exp provides some explanation why this is true For a given concept termCT all object names X such that X is an instance of CT in the world description will be enumerated The concept term CT can be eiter a variable or a concept name Again Exp provides some explanation why this is true sb_fact EnvName M irole R Name ICName1 ICName SB_FACT ENVNAME M IROLE RNAME ICNAME1 ICNAME2 Arguments EnvName environment name M modal context RName role name ICNamel object name ICName2 object name succeeds if the pair 1ICName1 ICName2 is an element of the role RName in the world de scription in environment EnvName and modal context M sb_fact EnuName M role RName CNameDom CNameRan SB__FACT ENVNAME M ROLE RNAME CNAMEDOM CNAMERAN Arguments EnvName environment name M modal context RName role name CNameDom concept name CNameRan concept name succeeds if RName is a role with domain CNameDom and range CNameRan in the terminology sb_fact EnuName M attributes C
18. MOTEL User Manual Version 0 8 2 February 1994 Ullrich Hustadt Andreas Nonnengart Renate Schmidt Jan Timm MPI I 93 236 December 1993 Addresses Ullrich Hustadt Max Planck Institut f r Informatik Im Stadtwald W 6600 Saarbr cken Germany E mail Ullrich Hustadt mpi sb mpg de Andreas Nonnengart Max Planck Institut f r Informatik Im Stadtwald W 6600 Saarbr cken Germany E mail Andreas Nonnengart mpi sb mpg de Renate Schmidt Max Planck Institut f r Informatik Im Stadtwald W 6600 Saarbr cken Germany E mail Renate Schmidt mpi sb mpg de Acknowledgements This research was funded by the German Ministry for Research and Technology BMFT under grant ITS 9102 and the Deutsche Forschungsgemeinschaft SFB 314 TICS The responsibility for the contents of this publication lies with the authors Abstract MOTEL is a logic based knowledge representation languages of the KL ONE family It contains as a kernel the KRIS language which is a decidable sublanguage of first order predicate logic see Baader and Hollunder 1990 Whereas KRIS is a single agent knowledge representation system i e CRIS is only able to represent general world knowledge or the knowledge of one agent about the world MOTEL is a multi agent knowl edge representation system The MOTEL language allows modal contexts and modal concept forming operators which allow to represent and reason about the believes and wishes of multiple agents Further
19. N Attribute Value SB_FACT ENVNAME M ATTRIBUTES CN ATTRIBUTE VALUE Arguments EnvName environment name M modal context CN concept name Attribute term Value term succeeds if the Value is the value of Attribute for concept CN in environment EnvName and modal context M sb_fact EnvName M attributes CN RN Attribute Value SB_FACT ENVNAME M ATTRIBUTES CN RN ATTRIBUTE VALUE Arguments EnvName environment name M modal context CN concept name RN role name Attribute term Value term succeeds if the Value is the value of Attribute for role RN at concept CN in environment EnvName and modal context M sb_fact EnuName M allRoles CName Info SB_FACT ENVNAME M ALL_ROLES CNAME INFO Arguments EnvName environment name M modal context CName concept name Info list containing informations Info is a list consisting of lists each containing the role name the domain the codomain the minimal number of role fillers the maximal number of role fillers and the default number of role fillers of a role with domain CName Example sb_fact initial allRoles golf X X has_part golf windshield 1 1 1 consumes golf gasoline sb_ask EnvName M supers C Namel CName2 SB__ASK ENVNAME M SUPERS CNAME1 CNAME2 Arguments EnvName environment name M modal context CNamel concept name CName2 concept name succeeds if CName 2 is a direct superconcept of C
20. Namel in the current subsumption hierarchy sb_ask EnvName M supers CName1 CName2 SB__ASK ENVNAME M SUPERS CNAME1 CNAME2 Arguments EnvName environment name M modal context CNamel concept name CName2 concept name succeeds if CName 2 is a superconcept of CName2 in the current subsumption hierarchy sb_ask EnvName M role RName CNameDom CNameRan SB_ASK ENVNAME M ROLE RNAME CNAMEDOM CNAMERAN Arguments EnvName environment name M modal context CNamel concept name CName2 concept name succeeds if RName is a role with domain CNameDom and range CNameRan sb_ask EnvName M roleDef RName CNameDef SB_ASK ENVNAME M ROLEDEF RNAME CNAMEDEF Arguments EnvName environment name M modal context RName role name CNameDef concept name succeeds if RName is a role with default range CNameDef sb_ask EnvName M roleNr RName MinNr MaxNr SB__ASK ENVNAME M ROLENR RNAME MINNR MAXNR Arguments EnvName environment name M modal context RName role name MinNr number MaxNr number succeeds if RName is a role with at least MinNr and at most MaxNr role fillers sb_ask EnvName M roleDefNr RName DefNr SB_ASK ENVNAME M ROLEDEFNR RNAME DEFNR Arguments EnvName environment name M modal context RName role name DefNr number succeeds if RName is a role with default number DefNr of role fillers sb_ask EnvName HM
21. R be role terms already defined O be a modal operator a some agent name and let n be a nonnegative integer Then and C4 C0x conjunction or C1 Ck disjunction not C negation naf C negation as failure all R C value restriction some R C exists restriction atleast n R number restriction atmost n R b 0 a C box agent introduction d 0 a C diamond agent introduction b 0 C1 C2 box concept introduction d O C C2 diamond concept introduction are modal concept terms and and R R l role conjunction inverse R role inversion restr R C role restriction are role terms 3 2 Modal Terminological Axioms A modal context is a possibly empty list of terms of the form b O a d 0 a bc O A or dc O A where O is a modal operator a is an agent name and A is a concept name The set of all modal contexts is denoted MC So called modal terminological axioms are used to introduce names for modal concept terms and role terms A finite set of such axioms satisfying certain restrictions is called a terminology TBox There are three different ways of introducing new concepts respectively roles into a terminology By the modal terminological axioms defprimconcept EnuName M A Arguments EnvName environment name M modal context A concept name defprimrole EnvName M P Arguments EnvName environment name M modal context P role name new concept and role
22. _M modal normalRepublican nixon hyp _J ab _L call _K proved in normalRepublican nixon hyp _J basedOn _I yes 8 4 Defaults In this example we want to specify that children of doctors are rich person by default So we have some role hasChild and to talk about the children of doctors we need the role hasDoctorParent which is the restriction of the inverse of hasChild i e the parent role to doctor 1 defprimrole hasChild 2 defrole hasDoctorParent restr inverse hasChild doctor So if somebody is in the domain of hasDoctorParent i e is a child of doctor and we cannot prove that he is an element of not richPerson then we expect him to be an element of richPerson This is what axiom 3 says 3 defprimconcept and some hasDoctorParent top naf not richPerson richPerson Let s add some assertional axioms 4 assert_ind chris doctor 5 assert_ind chris tom hasChild Because tom is a child of a doctor he must be rich deduce elementOf tom richPerson yes On the other hand we can add to our knowledge that tom is not rich using the assertional axiom 6 6 assert_ind tom not richPerson Now we no longer able to deduce that tom is a richPerson and we are still consistent deduce elementOf tom richPerson no consistent yes 8 5 Enumeration Types Suppose we are talking about some bmw We expect this car to be eithe
23. a defrole M Ri Ra assert_ind X A assert_ind b O a M X A assert_ind bc 0O A IM X A assert_ind d O a IM X A assert_ind dc O A IM X A assert_ind X Y P assert_ind b O a M X Y P assert_ind bc O A M X Y P assert_ind d 0 a M X Y P assert ind dc 0 A M X Y P Definition 5 Let be an interpretation and let be a modal terminological or modal assertional axiom with S iff iff iff iff iff iff iff iff iff iff iff iff iff iff iff iff iff iff iff iff iff iff S C1 S C2 Sly defprimconcept M Ci C2 r every x with Rg e x x FE defprimconcept M Ci C2 Soa S r every a with S a A for every x with N x Sly defprimconcept M C1 C2 for some x with Rg x Sly E defprimconcept M C1 C2 for every a with S a A for some x with Rg e x defprimconcept M C1 Ca and defprimconcept M Ca C1 Ri S R2 x F defprimrole M R R2 r every x with Rg e x x F defprimrole M R Ro for every a with S a A QS OG RO for every x with Rg e x Sly defprimrole M Ri R2 for some x with Rg e x Sly defprimrole M Ri R2 for every a with S a A for some x with Rg x defprimrole M Ri R2 and defprimrole M Ra R X S A x assert_ind M X A
24. ame MS Changes change Y Wy Arguments EnvName environment name MS modal context Changes a list of literals of the form change X W Y attribute role name Wy weight of change of Y Succeeds if change Y W follows under the hypotheses of Changes abduce EnvName MS Hypotheses Consequent Arguments EnvName environment name MS modal context Hypotheses a list of literals of the appropriate kind Consequent a literal of the appropriate kind Succeeds if Consequent follows under the hypotheses Hypotheses Hypotheses is a list of increase X decrease X noChange X literals and Consequent is one of these literals abduce EnvName MS Change Changes Arguments EnvName environment name MS modal context Change a literal of the form change X W Changes a list of literals of the form change X W Succeeds if Changes hold under the hypothesis that Change holds abduce EnvName MS Hypothesis Consequents Arguments EnuName environment name MS modal context Hypothesis a literal of the form increase X decrease X noChange X Consequents a list of literals of this form Succeeds if Consequents follow under the hypothesis Hypothesis Chapter 8 Examples 8 1 Modal Operators Let s suppose that we have some agent al in our world We can form the concept containing everything that ai believes to be a car using the term
25. ame Info list containing informations Info is a list consisting of lists each containing the role name the domain the codomain the minimal number of role fillers the maximal number of role fillers and the default number of role fillers of a role with domain CName Example sb_ask initial allRoles golf X X has_part golf windshield 1 1 1 consumes golf gasoline Appendix D The Common Lisp to PROLOG interface This interface provides functions to call a PROLOG goal from within lisp in a lisp like syntax The results produced by PROLOG are bound to the corresponding variables in lisp D 1 The syntax of a PROLOG goal in lisp Functions are notated in infix notation atomic 1 gets atomic 1 Function arguments are separated by spaces defprimconcept female not male gets defprimconcept female not male PROLOG variables have a as first character e g a or x PROLOG lists get lisp lists with the keyword list as the first element male female gets list male female An open PROLOG list is written as follows a b c d e V gets openlist a b cde v To conserve PROLOG symbols with capital letter the are escaped with in lisp makeEnvironment gets make _environment assert_ind gets assert__ind make_Env gets make___env The existential quantifier is used as follows E expression gets e expression D E expression gets d e expr
26. e X Y attribute role name succeeds if attribute Y increases decrease X Y attribute role name succeeds if attribute Y decreases noChange X Y attribute role name succeeds if attribute Y does not change i e there is neither an increase nor a decrease 7 3 Abduction The standard query for abduction is abduce EnvName MS H C E where EnvName denotes an environment name MS a modal context and Fa list of explanations Hand C repectively denote a hypothesis and its consequent In this component of MOTEL Hand C can also be lists of hypotheses respectively consequents The different possibilities are listed below Explanations are not as yet generated for inference with functional dependencies Provision was made for future implementation abduce EnvName MS change X Wr change Y Wy Arguments EnvName environment name MS modal context X attribute role name Wa weight of change of X Y attribute role name Wy weight of change of Y Succeeds if under the hypothesis of change X Wr change Y Wy follows abduce EnuName MS Hypothesis Consequent Arguments EnvName environment name MS modal context Hypothesis a literal of appropriate kind Consequent a literal of appropriate kind Succeeds if Consequent follows under the hypothesis Hypothesis Hypothesis and Consequent are of the form increase X decrease X noChange X abduce EnvN
27. e call Following is a complete description of the mode annotations you will find in this user manual Input argument This argument will be inspected by the predicate and affects the behaviour of the predicate but will not be further instantiated by the predicate Deterministic output argument This argument is unified with the output value of the predicate Given the input arguments the value of a deterministic output argument is uniquely defined Nondeterministic output argument This argument is unified with the output value of the predicate The predicate might be resatisfiable and might through backtracking generate more than one output value for this argument An input argument that deterministically might be further instantiated by the predicate An input argument that might be further instantiated by the predicate The predicate might be resatisfiable and might through backtracking generate more than one instantiation pattern for this argument All predicates of arity zero are determinate 1 2 Argument Types After the call pattern we declare the types of the arguments occurring in the call pattern For each meta variable in the call pattern the corresponding type is given Types are not formally defined Chapter 2 Environments An environment is a container for a knowledge base Each environment has some user provided environ ment name some system generated internal environment name and a user provided
28. ed by commas The first return value is a possibly empty string with the output from the PROLOG process the second return value is on of last nil or t When PROLOG returns yes prolog goal returns last When PROLOG returns no prolog goal returns nil When PROLOG returns variable bindings these bindings are converted to lisp syntax and bound to the appropriate lisp variable In this case t is returned D 4 The function prolog next prolog next amp optional ie p gets the next answer if there are more than one from PROLOG and treats the result as prolog goal does It returns nil if this was the last answer and PROLOG returned no last if it was the last answer and PROLOG returned yes and t otherwise D 5 The macro do prolog do prolog prolog goal expression var init stepl end test result declaration tag statement This macro works in the same way as the lisp DO macro The goals are given in a list asin prolog goal The variables are lisp symbols prefixed with The rest works like the do macro The macro calls prolog goal and prolog next in each loop and binds the variables accordingly D 6 The macro do prolog with streams In order to use the do prolog macro see above with a PROLOG process different from the last recently created you have to call do prolog with stream ie p do prolog Appendix E Installing MOTEL E 1 Requirements You need one of the following PROLOG sy
29. ession and so on D 2 The functions start prolog start motel reset prolog and kill prolog start prolog starts SICStus Prolog as a subprocess This function must be called before using prolog goal or do prolog It returns three values The input output stream the error output stream and the process id of the PROLOG process These values may be stored and used later as optional parameters of the other functions if more than one PROLOG process is used AN e start motel has the same effect as start prolog except that it immediately consults MOTEL It returns the same three values as start prolog e reset motel amp optional ie p resets and or stops the PROLOG process Of course this can be done only if prolog goal was called using the multitasking features of LUCID LISP of if the lisp process was interrupted before e kill prolog amp optional ie p kills the last by start prolog or start motel invoked PRO LOG process If the optional parameters i e p that are given from start prolog or start motel are specified the corresponding process is killed D 3 The function prolog goal prolog goal prolog goal expression amp optional i ep prolog goal takes the given list of PROLOG goals in lisp like syntax as given above and converts them into PROLOG syntax These goals are send then to the PROLOG process if the optional parameters are specified then the corresponding process is used seperat
30. i iff Concept1 is a direct super concept of Concept or Concept is Concept iff Concept is a direct super concept of Concept otherwise the predicate fails getCommonSuperConcepts EnvName M CL1 CL2 Arguments EnvName environment name M modal context CL1 list of concept names CL2 list of concept names CL2 is the list of all concept names subsuming all concepts in CLI getCommonSubConcepts EnuName M CL1 CL2 Arguments EnvName environment name M modal context CL1 list of concept names CL2 list of concept names CL2 is the list of all concept names which are subsumed by all concepts in CL1 4 3 Retrieval commands for roles getDirectFatherRoles EnuName M Role RL Arguments EnvName environment name M modal context Role role name RL list of role names RL is the list of all role names which are direct father roles of Role getAllFatherRoles EnvName M Role RL Arguments EnvName environment name M modal context Role role name RL list of role names RL is the list of all role names which are father roles of Role getDirectSonRoles EnvName M Role RL Arguments EnvName environment name M modal context Role role name RL list of role names RL is the list of all role names which are direct son roles of Role getAllSonRoles EnvName M Role RL Arguments EnvName environment name M modal context Role role name RL list of role names RL is the list of all role names which a
31. ing form isa CName IRSpec IRSpecn LIST ISA CNAME IRSPEC IRSPEC where I RSpec is irole RName iname IRName IRList IROLE RNAMEi INAME IRNAME IRLIST and the argument IRList is a list which is either empty or contains either nr MinNr MaaxNr DefNr NR MINNRi MAXNRi DEFNRi vr ICName VR ICNAME3 or both The result of sb_defelem is the introduction of an object CName1 which is a member of CName and pairs ICName1 ICName which are elements of IRName The role IRName is a subset of RName and has atleast MinNr role fillers and atmost MaxNr role fillers The default number of role fillers is DefNr sb_attributes EnuName M CN InfoList SB__ATTRIBUTES ENVNAME M CN INFOLIST Arguments EnvName environment name M modal context CN concept name InfoList list of info nodes attaches some attributive information to concept CN in environment EnvName and M The information is taken from InfoList which is a list of info nodes of the form Attribute Value Lisp syntax for INFOLIST LIST LIST ATTRI VALUED LIST ATTRn VALUEn sb_attributes EnvName M CN RN InfoList SB__ATTRIBUTES ENVNAME M CN RN INFOLIST Arguments EnvName environment name M modal context CN concept name RN role name InfoList list of info nodes attaches some attributive information to role RN at concept CN in environment EnvName and M The information is taken from Info
32. inological axiom 2 in the following knowledge base We call this concept c1 Furthermore we specify that al believes that c1 is the concept containing everything he believes to be a car using axiom 4 And we assert that provability for the believe of al is like the modal logic kd45 That implies that a1 is able to perform positive introspection i e he believes what he believes Suppose audi is an element of c1 axiom 6 If c3 is the concept containing everything that a1 believes to be an element of c1 axiom 3 and ai believes that this equivalence is true then audi must be an element of c3 1 modalAxioms kd45 believe al 2 defconcept c1 b believe al auto 3 defconcept c3 b believe al c1 4 defconcept b believe a1 c1 b believe ai auto 5 defconcept b believe a1 c3 b believe al c1 6 assert_ind audi ci We can check this using the query deduce elementOf audi c3 yes So the believes of a1 act like we expect them to do 8 2 Role closure Suppose we define a concept onlyMaleChildren using the terminological axiom 1 in the following knowledge base Then given the assertional axioms 2 7 we cannot prove that tom is an element of onlyMaleChildren because there might exists children of tom which are not male But using the axiom 8 we state that at any point of time we know all objects which are role fillers of the child role for tom 1 defconcept onlyMaleChildren all child
33. is concepts and the role hierarchy in the modal context M if Type is roles getHierarchy EnvName M Type H Arguments EnvName environment name M modal context Type either concepts or roles H internal representation of the subsumption hierarchy instantiates H with the internal representation of the concept hierarchy i e the semantic network in the modal context M if Type is concepts and with the internal representation of the role hierarchy in the modal context M if Type is roles TE getDirectSuperConcepts EnvName M Concept CL Arguments EnvName environment name M modal context Concept concept name CL list of concept names CL is the list of all concept names which are direct super concepts of Concept getAllSuperConcepts EnvName M Concept CL Arguments EnvName environment name M modal context Concept concept name CL list of concept names CL is the list of all concept names which are super concepts of Concept getDirectSubConcepts EnuName M Concept CL Arguments EnvName environment name CL is the list of all concept names which are M modal context Concept concept name CL list of concept names direct sub concepts of C oncept getAllSubConcepts EnvName M Concept CL Arguments EnvName environment name M modal context Concept concept name CL list of concept names CL is the list of all concept names which are sub concepts of Concept getConcepts EnuName M CL
34. isa IC Name C Name SB_ASK ENVNAME M CISA ICNAME CNAME Arguments EnvName environment name M modal context ICName object name CName concept name succeeds if ICName is an element of CName in environment EnvName and modal context M sb_ask YEnvName M irole RName ICNamel ICName2 SB_ASK ENVNAME M IROLE RNAME ICNAME1 ICNAME2 Arguments EnvName environment name M modal context RName role name ICNamel object name ICName2 object name succeeds if the pair ICNamel ICName2 is an element of the role RName in environment EnvName and modal context M sb_ask EnvName M Jattributes C N Attribute Value SB_ASK ENVNAME M ATTRIBUTES CN ATTRIBUTE VALUE Arguments EnvName environment name M modal context CN concept name Attribute term Value term succeeds if the Value is the value of Attribute for concept CN in environment EnvName and modal context M sb_ask EnvName X M Jattributes CN RN Attribute Value SB_ASK ENVNAME M ATTRIBUTES CN RN ATTRIBUTE VALUE Arguments EnvName environment name M modal context CN concept name RN role name Attribute term Value term succeeds if the Value is the value of Attribute for role RN at concept CN in environment EnvName and modal context M sb_ask EnvName M JallRoles CName Info SB_ASK ENVNAME M ALL ROLES CNAME INFO Arguments EnvName environment name M modal context CName concept n
35. ist sb_defconcept EnuName M CNamel CSpecList SB__PRIMCONCEPT ENVNAME C LIST B O A DO A BC O A DC O 4 CNAMEI CSPECLIST Arguments EnvName environment name M modal context CNamel concept name CSpecList SB ONE concept specification impose necessary and sufficient conditions on the interpretation of CNamel in environment EnvName and modal context M The conditions are specified by CSpecList CSpecList is a list of SB ONE concept specification elements having the following form e supers C C SUPERS LIST Ci Ca Ch specifies a concept which is the conjunction of C Ch e restrict_inh RNamel restricts RName2 range CName2 CNameDef RESTRICT__INH RNAMEI RESTRICTS RNAME2 RANGE CNAME2 CNAMEDEF specifies a concept which is the domain of RNamel RNamel is the restriction of RName2 to the range CName2 and to the default range CNameDef YA e nr RNamel MinNr MaxNr DefNr NR RNAME1 MINNR MAXNR DEFNR specifies a concept which contains all object having at least MinNr at most MaxNr and by default DefNr role fillers for role RNamel sb_primelemrole EnvName MS RNamel PrimRSpec SB__PRIMELEMROLE ENVNAME MS RNAME1 DOMAIN RANGE CNAME1 CNAME2 CNAMEDEF Arguments EnvName environment name M modal context RNamel role name PrimRSpec SB ONE primitive role specification impose necessary conditions on the interpretation of RNamel in environment EnvNamel a
36. le gt lt Mode Annotation gt lt Meta Variable gt lt Argument Types gt lt Meta Variable gt lt Type gt lt ArgumentTypes gt lt Predicate Name gt lt Identifier gt lt Meta Variable gt lt Identifier gt lt Type gt lt Informal Description gt In the following subsections we give further explanations for the parts of a predicate description 1 1 1 Call Arguments A predicate can have a varying number of arguments If we use lt CallArgument gt j we want to describe the situation that the predicate has either no arguments or atleast one arguments which must be enclosed in round brackets The notation lt CallArgument gt is used if the predicate has atleast one argument which has to be enclosed in round brackets If the predicate has no arguments we simply give no call arguments If a call arguments takes the form lt Mode Annotation gt lt Meta Variable gt then it is an optional argument i e it may be omitted and it is followed be a comma unless it is the last argument i e the last one before the closing round bracket If we use lt Mode Annotation gt lt Meta Variable gt then it is an optional argument which is never followed by a comma The last form is lt Mode Annotation gt lt Meta Variable gt denoting a non optional argument The mode annotations are useful to tell wether an argument is input or output or both They also describe formally the instantiation pattern to th
37. ment EnvName and modal context M To revise the world description one can either delete the membership of some object a in a concept A or the membership of a pair a b in the role P delete_ind EnvName M X A Arguments EnvName environment name M modal context X object name A concept name deletes the assertional axiom defining the membership of X in A delete_ind EnuName M X Y P Arguments EnvName environment name M modal context X object name Y object name P role name deletes the assertional axiom defining the membership of the pair X Y in role P 3 5 Semantics Suppose C R M is a knowledge signature Definition 1 Structures As usual we define a X structure as a pair D I which consists of a domain D and an interpretation function Z which maps the individual objects to elements of D primitive concepts to subsets of D and the primitive roles to subsets of D x D A Definition 2 Frames and Interpretations By a frame F we understand any pair W R where e W is a non empty set of worlds eR Homaea Ro where the RY S are binary relation on W the so called accessibility relations between worlds By a X interpretation S based on F we understand any tuple D F Soc where e D denotes the common domain of all Y structures in the range of Soc e e denotes the actual world the current situation e Fisa frame e Sioc maps worlds to structures with common domain D which inte
38. n instance of C in modal context M realize EnuName M X CL Arguments EnvName environment name M modal context X object name CL list of concept names Exp explanation try it getAll bjects EnvName M OL Arguments EnvName environment name M modal context OL list of object names OL is the list of names of all objects known to exist in environment EnvName and modal context M To get information about roles we have the predicate 90 deduce EnuName M roleFiller X R L N Eaxp Arguments EnvName environment name M modal context X object name R role name L list of object names N number Exp explanation gets all objects in the range of role R for argument X in environment EnvName and modal context M L is instantiated with the list of all these objects and N is the number of elements in this list It is possible to use abduction to find a set of hypothesises i e terminological axioms such that some object X is an element of a concept C if these hypothesises are true abduce EnvName M H elementOf X 0 Exp Arguments EnvName environment name M modal context X object name C concept name H set of hypothesises Exp explanation For a given object name X all concepts C such that X is an instance of C using the additional set of hypothesises will be enumerated Exp provides some explanation why this is true For a given concept name C all object names X such
39. nd modal context M The conditions are specified by PrimRSpec PrimRSpec takes the following form domain range CNamel CName2 CNameDef This defines RNamel to be a role with domain CNamel range CName2 and default range CNameDef in environment EnvName and modal context M sb_defelemrole EnvName FM RNamel RSpec SB_DEFELEMROLE ENVNAME M RNAME1 RESTRICTS RNAME2 RANGE CNAMEI CNAMEDEF Arguments EnvName environment name M modal context RNamel role name RSpec SB ONE role specification impose necessary and sufficient conditions on the interpretation of RNamel in environment EnvNamel and modal context M The conditions are specified by RSpec which takes the form restricts RName2 range CNamel CNameDef RNamel is a maximal subset of the role RName2 such that each role filler of RNamel is in CNamel sb_disjoint EnvName M CName1 CName2 SB_DISJOINT ENVNAME M CNAME1 CNAME2 Arguments EnvName environment name M modal context CNamel concept name CName2 concept name declares the concepts CNamel and CName 2 to be disjoint sb_defelem EnvName M ICNamel ISpecList SB_DEFELEM ENVNAME M ICNAME1 ISPECLIST Arguments EnvName environment name M modal context ICNamel object name ISpecList SB ONE individual specification introduces an object in environment EnvName and modal context M which obeys the restric tions given in SpecList A SB ONE individual specification takes the follow
40. of attributes role names collects the greatest attributes influenced by X in Ys maxPosInfl X Y Wmax X attribute role name Y attribute role name Wmax weight a value succeeds if Wmaz is the greatest weight with which X influences Y positively maxNegInfl X Y WMin X attribute role name Y attribute role name WMin a value succeeds if WMin is the greatest weight with which X influences Y negatively change Y W Y attribute role name Wy weight of change of Y determines the change in Y posInf1 X Y X attribute role name Y attribute role name succeeds if attribute X influences attribute Y positively negInfl X Y X attribute role name Y attribute role name succeeds if attribute X influences attribute Y negatively nolnf1 X Y X attribute role name Y attribute role name succeeds if the cumulative influence between the attributes X and Y is 0 0 simultPosInf1 Xs Y Xs list of attributes role names Y attribute role name succeeds if the simultaneous influence of the attributes in the list Xs on the attribute Y is positive simultNegInfl Xs Y Xs list of attributes role names Y attribute role name succeeds if the simultaneous influence of the attributes in the list Xs on the attribute Y is positive simultNoInf1 Xs Y Xs list of attributes role names Y attribute role name succeeds if the simultaneous influence of the attributes in the list Xs on the attribute Y is positive increas
41. oles attributes and W denotes the weight of X influencing Y or W denotes the weight of change of an attribute posInfl is assigned the weight 1 0 negInf1 the weight 1 0 and noInf1 the weight 0 0 The weights for increase decrease and noChange are 1 0 1 0 and 0 0 respectively The command def can be used to define a functional dependency the command undef can be used to remove it def EnvName MS Fact Arguments EnvName environment name MS modal context Fact functional dependency literal This predicate is used to update the knowledge base of information about the functional dependencies The definition of multiple influences between attributes and multiple changes on an attribute are prevented undef EnvName MS Fact Arguments EnvName environment name MS modal context Fact functional dependency literal retracts all facts matching Fact With the following predicates it is possible to display information about the functional dependencies which are currently defined showFDW Env Arguments Env environment name internal representation displays the user defined functional dependencies in the knowledge base 99 showInfl Env Arguments Env environment name internal representation displays the user defined influence relationships in the knowledge base showChange Env Arguments Env environment name internal representation displays the user defined changes in the knowledge base
42. r yellow red or red We can put this in our knowledge base using the axioms 1 and 2 1 defconcept c1 and car some hasCol set yellow blue red all hasCol set yellow blue red 2 assert_ind bmw c1 Now somebody tells us that the bmw is not yellow Then we can add this knowledge by axioms 3 and 4 3 defconcept c2 some hasCol not set yellow 4 assert_ind bmw c2 Of course we expect the bmw to be either blue or red Therefore we build the following concept c3 5 defconcept c3 some hasCol set blue red and ask wether bmw is an element of c3 deduce elementOf bmw c3 yes We get the expected answer Appendix A Quintus Prolog Release 3 1 1 Specific Predicates ask EnuName M elementOf X C Exp EnvName M X C Exp Arguments environment name modal context object name concept name explanation A synonym for the deduce predicate described in chapter 5 ask EnvName M roleFiller 4 Arguments EnvName CEDERE X H R L N Exp environment name modal context object name role name list of object names number explanation A synonym for the deduce predicate described in chapter 5 saveMOTEL FileName Arguments FileName Saves the whole program state containing all user defined predicates file name becomes an executable file 29 The file FileName Appendix B SICStus 2 1 Specific Predicates
43. re son roles of Role getRoles EnvName M RL Arguments EnvName environment name M modal context RL list of role names RL is the list of all role names in the subsumption hierarchy testDirectFatherRole EnvName M Rolel Role2 Role Arguments EnvName environment name M modal context Rolel role name Role2 role name Role role name Role is Role1 iff Role1 is a direct father role of Role or Role is Role2 iff Role2 is a direct father role of Role1 otherwise the predicate fails testDirectSonRole EnvName M Role1 Role2 Role Arguments EnvName environment name M modal context Rolel role name Role2 role name Role role name Role is Role1 iff Role1 is a direct son role of Role2 or Role is Role2 iff Role is a direct son role of Role otherwise the predicate fails testFatherRole EnvName M Rolel Role2 Role Arguments EnvName environment name M modal context Rolel role name Role2 role name Role role name Role is Role1 iff Role1 is a direct father role of Role or Role is Role iff Role2 is a direct father role of Role1 otherwise the predicate fails testSonRole EnuName M Rolel Role2 Role Arguments EnvName environment name M modal context Rolel role name Role2 role name Role role name Role is Role1 iff Rolel is a direct son role of Role2 or Role is Role2 iff Role is a direct son role of Role1 otherwise the predicate fails getCommonFatherRoles EnuName M RL1 RL2
44. rpret agents names equally A Definition 3 Interpretation of Terms Let S D F Soc be a D interpretation and let Sioc e D Z We define the interpretation of terms inductively over their structure S A T A if A is a concept name S P I P if Pisa role name S and 0 C D HA N NSC S or C4 Cn1 S C1 U US C S not C D S C S all R C deD eeS C for all e with d e S R S some R C deD ee S C for some e with d e S R S b 0 a C deD de S x C for all x with Rg e x d O a C deD deE als C for some x with Rg e x S and R R S R N S Rn S inverse R z y eDx Da y x e S R S restr R C x y SB y S C where S x D F Sioc X A Definition 4 Satisfiability Let S D F Sloc be a X interpretation We define the satisfiability relation inductively over the structure of modal terminological and modal assertional axioms 3 3 oe Co Ce e e Ce Ce Co oe oe a H defprimconcept Ci C2 defprimconcept b O a M Ci Ca defprimconcept bc O A M Ci Ca H defprimconcept d O a M Ci Ca defprimconcept dc 0 A M1 Ci Ca defconcept M Ci C2 defprimrole R1 Ra defprimrole b O a M Ri Ra defprimrole bc O A M Ri Ra defprimrole d O a IM Ri Ra defprimrole dc O A IM Ri R
45. s them into their internal representation in environment EnvName getKB EnvName Axioms Arguments EnvName environment name Axioms list of axioms Axioms is instantiated with a list of all terminological assertional and modal axioms in envi ronment EnvName Chapter 4 Classification 4 1 Building the Semantic Network Suppose C and D are concepts in a modal context M Then C subsumes D if we can prove from the assumption that a skolem constant a is an element of D that is also an element of C The predicate for doing this in MOTEL is subsumes EnuName M C D Arguments EnvName environment name M modal context C concept name D cocept name succeeds if C and D are known concepts in environment EnvName and modal context M and C subsumes D Let C E M be the set of all concepts in environment E and modal context M We can compute the subsumption relation on C M called semantic network of M using the predicate classify EnvName M Arguments EnvName environment name M modal context computes the semantic network in modal context M 4 2 Retrieval commands for concepts After the classification is done one can use the following commands to retrieve informations about the semantik network showHierarchy EnvName M Type Arguments EnvName environment name M modal context Type either concepts or roles displays the concept hierarchy i e the semantic network in the modal context M if Type
46. sm to get information about the additional knowledge we need to infere that nixon is a dove abdeduce elementOf nixon dove H E E proved in dove nixon hyp basedOn and proved in quaker nixon hyp basedOn abox proved in normalQuaker nixon hyp basedOn usingAbHyp in env e4 rn _H _G _F E modal normalQuaker nixon hyp _B ab D call _C proved in normalQuaker nixon hyp _B basedOn _A H in env e4 rn _P _0 _N _M modal normalQuaker nixon hyp _J ab _L call K proved in normalQuaker nixon hyp _J basedOn _I yes The PROLOG variable H is instantiated with the set hypothesises that we need to infer that nixon is a dove Here we needed only one hypothesis namly that nixon is a normalQuaker The PROLOG variable E is instantiated with the explanation why we were able to prove that nixon is a dove The proof was based on the fact that nixon is a quaker and on the hypothesis that he is a normalQuaker Of course we able to abduce that nixon is a hawk abduce H elementOf nixon hawk H E u proved in hawk nixon hyp basedOn and proved in republican nixon hyp basedOn abox proved in normalRepublican nixon hyp basedOn usingAbHyp in env e4 rn _H G F E modal normalRepublican nixon hyp _B ab _D call _C proved in normalRepublican nixon hyp _B basedOn _A H in env e4 rn _P _0 _N
47. stems to use MOTEL e Quintus Prolog 3 1 1 e SICStus Prolog 2 1 Patch level 5 Patch level 7 e SWI Prolog Version 1 6 10 e ECRC Common Logic Programming System Version 3 2 2 The interface between Lisp and Prolog is only available for Lucid Common Lisp and SICStus Prolog E 2 Installation The MOTEL distribution contains one compressed tar file which includes the MOTEL system To install the system on a SUN 4 SunOS 4 1 x execute the following steps Uncompress the compressed tar file prompt 1 uncompress motel tar Z Extract the source file and documentation file from the tar file prompt 2 tar xvf motel tar This results in the files README int c int o int pl motel lisp motel pl motel dvi and hn dvi The file README gives a brief description how the system can be used the file motel dvi is the the user manual for the MOTEL hn dvi gives an introduction to modal terminological logics The file motel pl is the MOTEL source file the files motel lisp int pl and int o contain the code for the interface between Lucid Common Lisp and SICStus Prolog After starting your PROLOG system you have to consult the source file prompt 3 sicstus SICStus 2 1 5 Tue Jul 21 16 16 49 MET DST 1992 consult motel consulting motel pl motel pl consulted 5600 msec 329168 bytes yes Now you can work with the MOTEL system as described in the previous chapters To use the interface between Lucid Common Lisp and SICStus
48. text X object name A concept name assert_ind EnuName M X Y P Arguments EnvName environment name modal context object name object name gt mE role name The first one defines X to be an element of concept A in environment EnvName and modal context M The second one defines the pair X Y to be an element of the role P A finite set set of such axioms is called world description 3 4 Knowledge Revision MOTEL has predicates for revising the terminology and the world description of a knowledge base The following predicates allows to delete a concept i e after deleting the concept A it is no longer possible to prove that some object a is an element of A unless it is explicitly stated in the world description undef concept EnuName M A Arguments EnvName environment name M modal context A concept name deletes concept A in environment EnvName and modal context M The following predicates delete the relationship between a concept name and a concept term previously defined by some terminological axiom undefconcept EnvName M A CT Arguments EnvName environment name M modal context A concept name CT concept term deletes the axiom defining the equivalence of A and CT in environment EnvName and modal context M undefprimconcept EnuName M A CT Arguments EnvName environment name M modal context A concept name CT concept term deletes the axiom defining the inclusion of A in CT in environ
49. that X is an instance of C will be enumerated Again Exp provides some explanation why this is true If M is not instantiated it will enumerate all modal contexts such that X is an instance of C Finally if EnvName is a variable it will be instantiated with an environment such that X is an instance of C in modal context M Usually MOTEL does not compute all possible explanations However this can be changed using setOption allProofs yes Chapter 6 In consistency We call a knowledge base inconsistent if we can prove form some object name X and some concept name A that X is an element of A and of not A Otherwise the knowledge base is consistent consistent EnuName M Arguments EnvName environment name M modal context succeeds if the environment EnvName and modal context M is consistent inconsistent EnuName M Arguments EnvName environment name M modal context succeeds if the environment EnvName and modal context M is inconsistent 99 Chapter 7 Functional Dependencies In this chapter we describe the component of MOTEL for specifying and reasoning about functional dependencies among roles 7 1 Definition and Revision of Funcional Dependencies Functional dependencies are described using functional dependency literals of the following form infl X Y W posInfl X Y negInf1 X Y noInf1 X Y change X W increase X decrease 4 X and Y denote r
Download Pdf Manuals
Related Search
Related Contents
MIXEUR BLENDER Lexicon Phenotypic Analysis User Manual UNFORGETTABLE - Début de Tournage Copyright © All rights reserved.
Failed to retrieve file