310 likes | 501 Views
Sound Global Caching for Abstract Modal Tableaux. Rajeev Goré The Australian National University Linh Anh Nguyen University of Warsaw CS&P’2008. Overview. Motivation Examples of tableaux Abstract modal tableaux A tableau algorithm with global caching Soundness of global caching.
E N D
Sound Global Cachingfor Abstract Modal Tableaux Rajeev Goré The Australian National University Linh Anh Nguyen University of Warsaw CS&P’2008
Overview • Motivation • Examples of tableaux • Abstract modal tableaux • A tableau algorithm with global caching • Soundness of global caching Sound Global Caching for Modal Tableaux
Motivation • Checking satisfiability in description logic ALC: • (whether a concept is satisfiable w.r.t. a TBox) • ExpTime-complete • Implemented provers like FaCT or DLP: • strongly optimized • 2ExpTime (in the worst case) • Goré & Nguyen - DL’07: • use sound global caching • optimal (ExpTime) • Extend sound global caching • for abstract modal tableaux Sound Global Caching for Modal Tableaux
X ; X ; X ; (’) () X ; ; X ; | X ; X ; ; () () Example: Tableaux for CPC(Classical Propositional Calculus) • Is a formula set X0 satisfiable? • NNF: negations occur only before atoms. • Tableau rules: Sound Global Caching for Modal Tableaux
p q ; p q () p ; q ; p q () p ; q ; p p ; q ; q () () Example: Tableaux for CPC • A tableau is a tree ... Sound Global Caching for Modal Tableaux
p q ; p q () p ; q ; p q () p ; q ; p p ; q ; q () () Example: Tableaux for CPC • A tableau is closed if every branch ends with Sound Global Caching for Modal Tableaux
Example: Tableaux for CPC • A formula set X is inconsistent if there exists a closed tableau for X. • A formula set X is consistent if all tableaux for X are open. • The calculus is sound and complete: X is satisfiable iff X is consistent Sound Global Caching for Modal Tableaux
Example: Tableaux for Modal Logic K • What is modal logic K? • Formulas: ? • Interpretations: ? • The satisfaction relation: ? Sound Global Caching for Modal Tableaux
Example: Tableaux for Modal Logic K • What is modal logic K? • Formulas: • as in the case of CPC, • plus additional constructors:, Sound Global Caching for Modal Tableaux
Example: Tableaux for Modal Logic K • What is modal logic K? • Interpretations Kripke model possible world p, q, r p, r p, q ... ... ... Sound Global Caching for Modal Tableaux
p, q, q, (p(qr)) p, r p, q ... ... ... Example: Tableaux for Modal Logic K • What is modal logic K? • The satisfaction relation Sound Global Caching for Modal Tableaux
Example: Tableaux for Modal Logic K • Is a formula set X0 satisfiable w.r.t. a set Г of global assumptions? • i.e. Is there a Kripke model M such that • X0is satisfied in some possible world of M, • Г is satisfied in every possible world of M? Sound Global Caching for Modal Tableaux
X ; , , ... () ; { : X}; Г transitional , , ... Example: Tableaux for Modal Logic K • Tableau rules:the rules for CPC plus • X0 is unsatisfiable w.r.t. Гiff there is a closed tableau with root (X0;Г) Sound Global Caching for Modal Tableaux
Abstract Modal Tableaux • L : logic ID (a finite bit sequence) representing a name and parameters of a logic • Formulas: finite sequences of symbols • A tableau calculus CL : • a finite set of CL-tableau rules: next page • a function initCL: initCL(X) is a formula set computable from X in PTime. • A CL-tableau for X is a tree with root initCL(X), using the rules of CL for expansions. Sound Global Caching for Modal Tableaux
X (ρ) Y1 | ... | Yk Abstract Modal Tableaux • CL-tableau rules • PTime Denominators: • Each Yi is computable from X and L in PTime • Monotonicity: • X’ X applying (ρ) to X’ results in Y’i Yi, 1ik • Terminal, Static or Transitional: • next page Sound Global Caching for Modal Tableaux
X (ρ) Y1 | ... | Yk Abstract Modal Tableaux • CL-tableau rules Cases: • ()-rule:only one denominator • static rule:X Yi for all 1ik • transitional rule:only one denominator, e.g. () Sound Global Caching for Modal Tableaux
X; X; X; | X; X;; | X;; Abstract Modal Tableaux • Static rules: • Example: • The original and modified rules have the same „effects” in constructing tableaux. • The requirement about static rules gives an easier proof of soundness of global caching. Sound Global Caching for Modal Tableaux
Abstract Modal Tableaux • A branch in a tableau is closed if it ends with . • A tableau is closed if all of its branches are closed. • A tableau is open if it is not closed. • X is CL-consistent if all CL-tableaux for X are open. • X is CL-inconsistent if any CL-tableau for X is closed. Sound Global Caching for Modal Tableaux
The Analytic Subformula Property • Calculus CL has the analytic subformula property if for every finite formula set X there is a finite formula set X*CL such that every formula set carried by a node in a CL-tableau for X is a subset of X*CL. Sound Global Caching for Modal Tableaux
A Tableau Algorithmwith Global Caching Problem: Check whether X is CL-consistent. Algorithm: Build an and-or graph for X using CL: • The root node τ contains initCL(X). • Each node is expanded using a CL-tableau rule. • Preferences of rules: • ()-rule • unary static rules • non-unary static rules • transitional rules • ... Sound Global Caching for Modal Tableaux
A Tableau Algorithmwith Global Caching • If a node w is expanded using: • a ()-rule: • w receives status incons (inconsistent) • a unary static rule: • w is an and-node, 1 successor, status = unkown • a k-ary static rule, k 2: • w is an or-node, k successors, status = unknown • transitional rules: • apply rules simultaneously in every possible way • n possible ways an and-node with n successors • status = unknown Sound Global Caching for Modal Tableaux
A Tableau Algorithmwith Global Caching • Global Caching: • Before creating a new node check whether there is an existing node of the same content. • If so, use that node as a proxy. • If no rule is applicable to a node w: • w receives status cons (consistent). • When a node receives status cons/incons: • propagate the status backward appropriately • treating cons = true, incons = false Sound Global Caching for Modal Tableaux
A Tableau Algorithmwith Global Caching • Stop when τreceives status cons or incons • Stop when all nodes have been expanded • For every node u with status unknown: • Assign u status cons. Claim: X is CL-consistent iff τhas status cons. Sound Global Caching for Modal Tableaux
Complexity • If CL has the analytic subformula property then the given algorithm for CL and X runs in exponential time in the size of X*CL. Sound Global Caching for Modal Tableaux
Soundness of Global Caching Lemma 1: If the root node τreceives status inconsthen X is CL-inconsistent. Sketch:It is an invariant of the given algorithm that for every node v with status incons: • either a ()-rule of CL is appl. to v.content, • or v is an and-node and there exists an edge (v,w) such that w v and w.status = incons, • or v is an or-node and for every edge (v,w), w.status = incons. Sound Global Caching for Modal Tableaux
Saturation Paths • In the constructed and-or graph, define a saturation path of node v to be a sequence v0=v, v1, ..., vk with k 0 such that, for each 1 i k, we have: • vi.status = cons, • the edge (vi-1,vi) was created by a static rule, • vk.content is closed w.r.t. the static rules. • Observe that v0.content ... vk.content. Sound Global Caching for Modal Tableaux
Soundness of Global Caching Lemma 2: If the root node τreceives status consthen every CL-tableau T for X is open. Sketch: • Maintain a current node cn of T to pin-point an open branch of T. Initially, set cn to the root of T. • Keep a current saturation path v0, v1, ..., vk for some v0. Initially, v0 = τ(the root of the graph). • Maintain the invariant cn.content vk.content by moving cn along edges of T appropriately and possibly changing the current saturation path. • The branch formed by the instances of cn is an open branch of T. Sound Global Caching for Modal Tableaux
Soundness of Global Caching • Theorem: The root of the graph constructed for X receives status consiff X is CL-consistent. • The global caching method is sound. • Corollary: If calculus CL has the analytic subformula property and X*CL has a polynomial size in the size of X and the length of L, then the given algorithm is an ExpTime decision procedure for checking CL-consistency. • If CL is sound and complete then CL-consistency means L-satisfiability. Sound Global Caching for Modal Tableaux
Applications • We have applied sound global caching for: • regular grammar logics • TABLEAUX’05 • regular modal logics of agent beliefs • CLIMA’07 • the description logics ALC and SHI • DL’07, TABLEAUX’07 Sound Global Caching for Modal Tableaux
How does global caching co-operate with other optimization techniques? • Attend the next talk of Nguyen: • An Efficient Tableau Prover using Global Caching for the Description Logic ALC • CS&P’2008, 1st October Sound Global Caching for Modal Tableaux