Multi-dimensional Dynamic Knowledge Representation João Alexandre Leite José Júlio Alferes Luís Moniz Pereira CENTRIA – New University of Lisbon Wien, 18 Sep LPNMR’01
19/Sep/2001LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation2 Motivation zIn Dynamic Logic Programming (DLP) knowledge is given by a sequence of Programs zEach program represents a different state of our knowledge, where different states may be: ydifferent time points, different hierarchical instances, different viewpoints, etc. zDifferent states may have mutually contradictory or overlapping information. zDLP, using the relations between states, determines the semantics at each one.
19/Sep/2001LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation3 Motivation (2) zLUPS was presented as a language to build DLPs zIt can been used to: ymodel evolution of knowledge in time yreason about actions yreason about hierarchies, … zBut how to combine several of these aspects in a single system?
19/Sep/2001LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation4 Motivation Example zThe parliament issues law L1 at time t1. zThe local authority issues law L2 at t2 > t1 zParliament laws override local laws, but not vice-versa. zMore recent laws have precedence over older ones L2L1 L2 zHow to combine these two dimension of knowledge precedence? ë DLP with Multiple Dimensions (MDLP)
19/Sep/2001LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation5 Multi-dimensional DLP zIn MDLP knowledge is given by a set of programs zEach program represents a different state of our knowledge. zStates are connected by a DAG zMDLP, using the relations between states and their precedence in the DAG, determines the semantics at each state. zAllows for combining knowledge which evolve in various dimensions.
19/Sep/2001LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation6 2 Dimensional Lattice
19/Sep/2001LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation7 Acyclic Digraph (DAG)
19/Sep/2001LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation8 Generalized Logic Programs zTo represent negative information in LP and their updates, we need LPs with not in heads zObject formulae are generalized LP rules: A B 1,…, B k, not C 1,…,not C m not A B 1,…, B k, not C 1,…,not C m zThe semantics is a generalization of SMs
19/Sep/2001LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation9 MDLPs definition Definition: A Multi-dimensional Dynamic Logic Program, P, is a pair ( P D,D) where D=(V,E) is an acyclic digraph and P D ={P V : v V} is a set of generalized logic programs indexed by the vertices v V of D.
19/Sep/2001LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation10 MDLP - Semantics Definition: Let P =( P D,D) be a Multi-dimensional Dynamic Logic Program, where P D ={P V : v V} and D=(V,E). An interpretation M s is a stable model of P at state s V iff: M s =least([ P s – Reject(s, M s )] Defaults ( P s, M s )) P s = j s P i
19/Sep/2001LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation11 MDLP - Semantics M=least([ P s – Reject(s, M s )] Defaults ( P s, M s )) where: Reject(s, M s )= {r P i | r’ P j, i j s, head(r)=not head(r’) M s body(r’)} Defaults ( P s, M s )={not A | r P s : head(r)=A M s body(r)} P s = j s P i
19/Sep/2001LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation12 Example 1 P s1 P s2 P r1 P r2 P sr {a c} {b}{b} {not a c} {c}{c} {} zSemantics at r1: M = {b, not a, not c} Reject(r1,M) = {} Default( P,M) = {not a, not b} zSemantics at s1: M = {not a, not b, not c} Reject(s1,M) = {} Default( P,M) = M zSemantics at sr: M = {b, not a, c} Reject(sr,M) = {a c} Default( P,M) = {}
19/Sep/2001LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation13 Example 1 (cont) P s1 P s2 P r1 P r2 P sr {a c} {b}{b} {not a c} {c}{c} {} zSemantics at r1: M = {b, not a, not c} Reject(r1,M) = {} Default( P,M) = {not a, not b} zSemantics at s1: M = {a, b, c} Reject(s1,M) = {not a c} Default( P,M) = {} zSemantics at sr: M = {not a, not b, not c} Reject(sr,M) = {} Default( P,M) = M
19/Sep/2001LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation14 Example 2 P t1a1 {p q} {q}{q} {not p q} {} zSemantics at t2a1: M = {p, q} Reject(t2a1,M) = {} Default( P,M) = {} zSemantics at t1a2: M = {not p, not q} Reject(t1a2,M) = {} Default( P,M) = M zSemantics at t2a2: M = {q, not p} Reject(sr,M) = {not p q} Default( P,M) = {} P t1a2 P t2a2 P t2a1
19/Sep/2001LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation15 Towards an implementation of MDLP zHow to implement MDLP? zPre-process a MDLP at state s into a single generalized program, where the stable models at s are the stable models of the single program. zQuery-answering is reduced to that at single programs.
19/Sep/2001LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation16 MDLP – Syntactical Transformation Definition: Let P =( P D,D) be a Multi-dimensional Dynamic Logic Program, where P D ={P V : v V} and D=(V,E), including a special empty source s0. The dynamic program update over P at the state s S is a logic program s P with: (RP) Rewritten program rules (IR) Inheritance rules (RR) Rejection Rules (CRS) Current State Rules (UR) Update Rules (DR) Default Rules (GR) Graph Rules
19/Sep/2001LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation17 Syntactical Transformation (RP) Rewritten program rules A Pv B 1, …, B m, C’ 1, …, C’ n A´ Pv B 1, …, B m, C’ 1, …, C’ n for any rule A B 1, …, B m, not C 1, …, not C n not A B 1, …, B m, not C 1, …, not C n in P v
19/Sep/2001LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation18 (GR) Graph rules edge(u,v)(for every u < v E ) path(X,Y) edge(X,Y). path(X,Y) edge(X,Z), path(Z,Y). Syntactical Transformation
19/Sep/2001LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation19 (IR) Inheritance rules A v A u, not reject(A u ), edge(u,v) A´ v A´ u, not reject(A´ u ), edge(u,v) (RR) Rejection rules reject(A u ) A´ P u, path(u,v) reject(A´ u ) A P u, path(u,v) Syntactical Transformation
19/Sep/2001LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation20 (UP) Update rules A v A Pv A’ v A’ Pv (DR) Default rules A’ s0 (CSR) Current state rules A A s not A A’ s Syntactical Transformation
19/Sep/2001LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation21 MDLP - Results zTheorem: The stable models of the program s P coincide with the stable models of P at state s according to the semantical characterization. zTheorem: Multi-dimensional Dynamic Logic Programming generalizes Dynamic Logic Programming.
19/Sep/2001LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation22 MDLP applications zCombining agents’ knowledge yDistributed (and heterogeneous) KBs yProgram composition zEvolution of hierarchical knowledge yLegal reasoning ye-commerce policy integration and evolution yOrganizational decision making zMultiple inheritance zIndividual agents’ views
19/Sep/2001LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation23 Future Work zA (LUPS-like) language for building MDLPs yallowing updatable DAGs zSocieties of MDLPs yObservation points (public and private) yInter-MDLP updates and communication zHypothetical reasoning over MDLPs zRemove the acyclicity condition (??) zApplications and relationships
19/Sep/2001LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation24 Company Hierarchy Example buy(X)type(X,T), needed(T), not satByOther(T,X). not buy(X)type(X,T), needed(T), satByOther(T,X). satByOther(T,X)type(Y,T), buy(Y), X Y. Situation type(a,t). type(b,t). needed(t). cheap(a). reliable(b). Board of Directors (BD) not buy(X)type(X,T), type(Y,T), X Y, cheap(Y), not cheap(X). President (P) Quality Management Dept. (QMD) not buy(X) not reliable(X). buy(X) type(X,T),needed(T), cheap(X). Financial Dept. (FD)
19/Sep/2001LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation25 Social Representation