250 likes | 407 Views
Multi-dimensional Dynamic Knowledge Representation. João Alexandre Leite José Júlio Alferes Luís Moniz Pereira. CENTRIA – New University of Lisbon. LPNMR’01. Wien, 18 Sep. 2001. Motivation. In Dynamic Logic Programming (DLP) knowledge is given by a sequence of Programs
E N D
Multi-dimensional Dynamic Knowledge Representation João Alexandre Leite José Júlio Alferes Luís Moniz Pereira CENTRIA – New University of Lisbon LPNMR’01 Wien, 18 Sep. 2001
Motivation • In Dynamic Logic Programming (DLP) knowledge is given by a sequence of Programs • Each program represents a different state of our knowledge, where different states may be: • different time points, different hierarchical instances, different viewpoints, etc. • Different states may have mutually contradictory or overlapping information. • DLP, using the relations between states, determines the semantics at each one. LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation
Motivation (2) • LUPS was presented as a language to build DLPs • It can been used to: • model evolution of knowledge in time • reason about actions • reason about hierarchies, … • But how to combine several of these aspects in a single system? LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation
L2 L1 L1 L2 Motivation Example • The parliament issues law L1 at time t1. • The local authority issues law L2 at t2 > t1 • Parliament laws override local laws, but not vice-versa. • More recent laws have precedence over older ones • How to combine these two dimension of knowledge precedence? • DLP with Multiple Dimensions (MDLP) LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation
Multi-dimensional DLP • In MDLP knowledge is given by a set of programs • Each program represents a different state of our knowledge. • States are connected by a DAG • MDLP, using the relations between states and their precedence in the DAG, determines the semantics at each state. • Allows for combining knowledge which evolve in various dimensions. LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation
2 Dimensional Lattice LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation
Acyclic Digraph (DAG) LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation
Generalized Logic Programs • To represent negative information in LP and their updates, we need LPs with not in heads • Object formulae are generalized LP rules: A ¬ B1,…, Bk, not C1,…,not Cm not A ¬ B1,…, Bk, not C1,…,not Cm • The semantics is a generalization of SMs LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation
MDLPs definition • Definition: A Multi-dimensional Dynamic Logic Program, P, is a pair (PD,D) where D=(V,E) is an acyclic digraph and PD={PV : v V} is a set of generalized logic programs indexed by the vertices v V of D. LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation
MDLP - Semantics • Definition: Let P=(PD,D) be a Multi-dimensional Dynamic Logic Program, where PD={PV : v V} and D=(V,E). An interpretation Ms is a stable model of P at state sV iff: Ms=least([Ps – Reject(s, Ms)] Defaults (Ps, Ms)) Ps= js Pi LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation
Defaults (Ps, Ms)={not A | $r Ps: head(r)=A Ms |=body(r)} MDLP - Semantics M=least([Ps – Reject(s, Ms)] Defaults (Ps, Ms)) where: Ps= js Pi Reject(s, Ms)= {r Pi | r’ Pj , ijs, head(r)=not head(r’) Ms |=body(r’)} LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation
Example 1 • Semantics at r1: Ps1 Ps2 {} {a ¬ c} M = {b, not a, not c} Reject(r1,M) = {} Default(P,M) = {not a, not c} {b} Pr1 Pr2 {c} {not a ¬ c} Psr • Semantics at s1: • Semantics at sr: M = {not a, not b, not c} Reject(s1,M) = {} Default(P,M) = M M = {b, not a, c} Reject(sr,M) = {a ¬ c} Default(P,M) = {} LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation
Example 1 (cont) • Semantics at r1: Ps1 Ps2 {} {a ¬ c} M = {b, not a, not c} Reject(r1,M) = {} Default(P,M) = {not a, not c} {b} Pr1 Pr2 {c} {not a ¬ c} Psr • Semantics at s1: M = {a, b, c} Reject(s1,M) = {not a ¬ c} Default(P,M) = {} • Semantics at sr: M = {not a, not b, not c} Reject(sr,M) = {} Default(P,M) = M LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation
Example 2 • Semantics at t2a1: {p ¬ q} Pt1a1 M = {p, q} Reject(t2a1,M) = {} Default(P,M) = {} {not p ¬ q} Pt1a2 Pt2a1 {q} Pt2a2 {} • Semantics at t1a2: • Semantics at t2a2: M = {not p, not q} Reject(t1a2,M) = {} Default(P,M) = M M = {q, not p} Reject(sr,M) = {not p ¬ q} Default(P,M) = {} LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation
Towards an implementation of MDLP • How to implement MDLP? • Pre-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. • Query-answering is reduced to that at single programs. LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation
Definition: Let P=(PD,D) be a Multi-dimensional Dynamic Logic Program, where PD={PV : 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: MDLP – Syntactical Transformation • (RP) Rewritten program rules • (IR) Inheritance rules • (RR) Rejection Rules • (CRS) Current State Rules • (UR) Update Rules • (DR) Default Rules • (GR) Graph Rules LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation
(RP) Rewritten program rules APv B1 , … , Bm , C’1, … , C’n A´Pv B1 , … , Bm , C’1, … , C’n for any rule A B1 , … , Bm , not C1, … , not Cn not A B1 , … , Bm , not C1, … , not Cn in Pv Syntactical Transformation LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation
Syntactical Transformation • (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). LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation
Syntactical Transformation • (IR) Inheritance rules Av Au , not reject(Au), edge(u,v) A´v A´u , not reject(A´u ), edge(u,v) • (RR) Rejection rules reject(Au) A´Pu, path(u,v) reject(A´u) APu, path(u,v) LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation
Syntactical Transformation • (UP) Update rules Av APv A’v A’Pv • (DR) Default rules A’s0 • (CSR) Current state rules A As not A A’s LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation
MDLP - Results • Theorem: The stable models of the program s Pcoincide with the stable models of P at state s according to the semantical characterization. • Theorem: Multi-dimensional Dynamic Logic Programming generalizes Dynamic Logic Programming. LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation
MDLP applications • Combining agents’ knowledge • Distributed (and heterogeneous) KBs • Program composition • Evolution of hierarchical knowledge • Legal reasoning • e-commerce policy integration and evolution • Organizational decision making • Multiple inheritance • Individual agents’ views LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation
Future Work • A (LUPS-like) language for building MDLPs • allowing updatable DAGs • Societies of MDLPs • Observation points (public and private) • Inter-MDLP updates and communication • Hypothetical reasoning over MDLPs • Remove the acyclicity condition (??) • Applications and relationships LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation
Company Hierarchy Example Situation type(a,t). cheap(a). type(b,t). reliable(b). needed(t). Financial Dept. (FD) Quality Management Dept. (QMD) buy(X) t ype(X,T),needed(T), not buy(X) not reliable(X). cheap(X). Board of Directors (BD) 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. President (P) not buy(X) type(X,T), type(Y,T), X ¹ Y, cheap(Y), not cheap(X). LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation
Social Representation LPNMR'01 - Multi-dimensional Dynamic Knowledge Representation