Programming tableaux systems with the LoTREC prover - PowerPoint PPT Presentation

1 / 129
About This Presentation
Title:

Programming tableaux systems with the LoTREC prover

Description:

tableaux for modal logics with transitive closure and other modal and description logics ... deontic. Rwu iff u is an ideal version of w. dynamic ... – PowerPoint PPT presentation

Number of Views:150
Avg rating:3.0/5.0
Slides: 130
Provided by: equipe9
Category:

less

Transcript and Presenter's Notes

Title: Programming tableaux systems with the LoTREC prover


1
Programming tableaux systems with the LoTREC
prover
  • Andreas Herzig
  • IRIT-CNRS
  • Toulouse
  • http//www.irit.fr/Andreas.Herzig/

2
What this is about
  • in focus
  • the tableaux method
  • for logics with possible worlds semantics
  • and combinations thereof
  • as a computerized proof system LoTREC
  • not in focus
  • sequent calculi
  • efficiency issues

3
Overview
  • possible worlds semantics quickstart
  • tableaux systems basic ideas
  • tableaux systems basic definitions
  • tableaux for simple modal logics
  • tableaux for transitive modal logics
  • tableaux for intuitionistic logic
  • tableaux for other nonclassical logics
  • tableaux for modal logics with transitive closure
    and other modal and description logics
  • tableaux for 1st order logic
  • some implemented tableaux theorem provers

4
Possible worlds models
  • possible worlds model
  • alias labeled graph, alias transition system
  • possible worlds
  • alias nodes, alias states
  • valuations
  • alias interpretations
  • links
  • alias accessibility relations

p,q
p,q
p,q
p,q
5
Possible worlds models readings of R
  • alethic
  • Rwu iff u is possible, given the actual world w
  • temporal
  • Rwu iff u is in the future of w
  • epistemic
  • Riwu iff u is possible for agent i, given the
    actual world w
  • deontic
  • Rwu iff u is an ideal version of w
  • dynamic
  • Rawu iff u is a possible result of the
    execution of program/action a in w
  • comparative (preferential, )
  • Rwu iff w is smaller than u
  • Rvwu iff w is smaller than u, given v
  • reading of R ? properties of R

6
Possible worlds models properties of R
  • only one relation
  • serial forall w exists u Rwu
  • reflexive
  • transitive
  • Euclidian
  • confluent (Church-Rosser)
  • dense
  • well-founded (not FO-definable!)
  • more than one
  • R1 included in R2
  • R1 R2?R3
  • R2 (R1)-1 (transitive closure)
  • R2 (R1) (transitive closure)
  • R1 R2 R2 R1
  • Church-Rosser

7
Language modal operators
  • non-truth functional concepts
  • belief, time, action, obligation, conditional,
  • schema op(a1,,an)
  • Beli A agent i believes that A
  • F A A will be true at some future time
    point
  • Aftera A A is true after action a
  • Oblg A A is obligatory
  • Oblgi A A is obligatory for agent i
  • condC A A is true under hypothesis C (noted
    CgtA)
  • generic form
  • A A is necessary (true in all possible
    worlds)
  • ltgtA A is possible
  • in general A same as ltgtA
  • except in substructural logics (intuitionistic, )

8
Interpreting the language truth conditions
  • classical connectives
  • M,w - P iff Vw(P) 1, for P in Atoms
  • M,w - A?B iff (M,w - A and M,w - B)
  • non-classical connectives
  • interpretation via accessibility relation R
  • the basic modal operators
  • M,w - A iff forall u Rwu implies M,u -
    A
  • M,w - ltgtA iff exists u Rwu and M,u - A

9
Examples of truth conditions
  • multimodal operators
  • M,w - iA iff forall u Riwu implies M,u -
    A
  • M,w - ltgtiA iff
  • relation algebra operators
  • M,w - -1A iff forall u R-1wu implies M,u
    - A
  • M,w - i ? jA iff forall u (Ri?Rj)wu implies
    M,u - A
  • M,w - A iff forall u Rwu implies M,u -
    A

10
Examples of truth conditionstemporal operators
R
R
  • branching time operators
  • M,w - ?XA iff exists R in Paths(w) M,R(w)
    - A
  • (Paths(w) the set of paths going through
    w)

11
Examples of truth conditionstemporal operators
R
R
  • branching time operators
  • M,w - ?XA iff exists R in Paths(w) M,R(w)
    - A
  • (Paths(w) the set of paths going through
    w)
  • M,w - ?ltgtA iff ?R in Paths(w) ?n M,Rn(w) -
    A

12
Examples of truth conditionstemporal operators
A
A
A
B
  • binary temporal operators
  • M,w - A Until B iff exists u Rwu and M,u
    - B and
  • forall u (Rwu and Rvu implies M,u - A )
  • M,w - A Since B iff
  • M,w - ?(A Until B) iff forall R in Paths(w)

13
Examples of truth conditionsimplications
  • intuitionistic implication
  • M,w - A gt B iff forall u Rwu implies M,u
    - A B
  • conditional operator
  • M,w - A gt B iff forall u RAwu implies M,u
    - B
  • relevant implication
  • M,w - A gt B iff forall u,u
  • Rwuu implies (M,u - A implies M,u - B)

14
Models
  • model M (W,R,V)
  • W nonempty set (possible worlds)
  • R Ops (WxW) (accessibility relation)
  • V W (Atoms 0,1) (valuation)
  • pointed model ((W,R,V),w)
  • w in W (actual world)
  • extension of A in M
  • AM w in W M,w - A

15
Validity and satisfiability
  • K the set of all models (Kripke)
  • A is valid in K iff AM W for all M in K
    (K A)
  • examples (P v P)
  • (P?Q) P?Q
  • P?Q (P?Q)
  • A is satisfiable in K iff AM nonempy for some
    M in K
  • examples P
  • PÙP
  • PÙP
  • PÙP

16
Validity and satisfiability in a class of
models Cls
  • Cls some subset of K
  • A is valid in Cls iff AM W for all M in Cls
    (Cls A)
  • examples P P invalid in K
  • P P valid in the class of reflexive
    models
  • ltgtP ltgtltgtP valid in transitive models
  • A is satisfiable in Cls iff AM nonempy for
    some M in Cls
  • examples PÙP satisfiable in K
  • PÙP unsatisfiable in reflexive models
  • A is valid in Cls iff A is unsatisfiable in Cls

17
Classes of models examples
  • M card(W) 1
  • Cls ltgtA A
  • M card(W) 2
  • Cls ltgt(AÙB) Ù ltgt(AÙB) B
  • M card(W) finite
  • M R() reflexive KT
  • KT A A
  • M R() transitive K4
  • K4 ltgtltgtA ltgtA
  • M R() equivalence relation S5
  • S5 A ltgtA

18
Reasoning problems
  • model checking
  • given A, M and w, do we have M,w - A?
  • validity
  • given A and Cls, is A valid in Cls?
  • satisfiability
  • given A and Cls, does there exist M in Cls and w
    in M such that M,w - A?

19
Reasoning problems
  • model checking
  • given A, M and w, do we have M,w - A?
  • validity
  • given A and Cls, is A valid in Cls?
  • satisfiability
  • given A and Cls, does there exist M in Cls and w
    in M such that M,w - A?
  • How can we solve them automatically?

20
Overview
  • possible worlds semantics quickstart
  • tableaux systems basic ideas
  • tableaux systems basic definitions
  • tableaux for simple modal logics
  • tableaux for transitive modal logics
  • tableaux for intuitionistic logic
  • tableaux for other nonclassical logics
  • tableaux for modal logics with transitive closure
    and other modal and description logics
  • tableaux for 1st order logic
  • some implemented tableaux theorem provers

21
The basic ideafor classical logic Beth
  • try to find M and w by applying the truth
    conditions (tableau rules)
  • M,w - AÙB ? add M,w - A, and add M,w - B
  • M,w - A v B ? add either M,w - A, or add
    M,w - B
  • (nondet.)
  • M,w - A ? dont add M,w - A ???
  • M,w - A ? add M,w - A
  • M,w - (A v B) ? add M,w - A, and add M,w
    - B
  • M,w - (AÙB) ? add either M,w - A, or add
    M,w - B
  • apply while possible (downwards saturation")
  • is this a model?
  • NO if both M,w - P and M,w - P (tableau is
    closed)
  • ELSE for every w, if M,w - P put Vw(P) 1,
    else put Vw(P) 0

22
The basic idea for modal logics
  • apply truth conditions build a graph
  • create nodes
  • add links between nodes
  • add formulas to nodes
  • the basic cases
  • M,w - A ? forall u such that Rwu, add u
    - A
  • M,w - ltgtA ? add some new u, add Rwu, add u
    - A
  • M,w - A ? add some new u, add Rwu, add u
    - A
  • M,w - ltgtA ?
  • downwards saturated graph is this a model?

23
The basic ideaexample for modal logic
  • A P Ù P
  • applying tableau rules
  • M,w - PÙP

24
The basic ideaexample for modal logic
  • A P Ù P
  • applying tableau rules
  • M,w - PÙP
  • M,w - PÙP, M,w - P, M,w - P

25
The basic ideaexample for modal logic
  • A P Ù P
  • applying tableau rules
  • M,w - PÙP
  • M,w - PÙP, M,w - P, M,w - P

26
The basic ideaexample for modal logic
  • A P Ù P
  • applying tableau rules
  • M,w - PÙP
  • M,w - PÙP, M,w - P, M,w - P
  • M,w - PÙP, M,w - P, M,w - P, Rwu, M,u
    - P

27
The basic ideaexample for modal logic
  • A P Ù P
  • applying tableau rules
  • M,w - PÙP
  • M,w - PÙP, M,w - P, M,w - P
  • M,w - PÙP, M,w - P, M,w - P, Rwu, M,u
    - P
  • no more tableau rule applies

28
The basic ideaexample for modal logic
  • A P Ù P
  • applying tableau rules
  • M,w - PÙP
  • M,w - PÙP, M,w - P, M,w - P
  • M,w - PÙP, M,w - P, M,w - P, Rwu, M,u
    - P
  • no more tableau rule applies
  • never both w - A and w - A (open tableau)
  • ? model can be built M (W,R,V)
  • set of worlds W W w,u
  • accessibility relation R Rwu
  • valuation V Vw(P) 1, Vu(P) 0

29
The basic idea example for modal logic (ctd.)
  • premodel for
  • A P Ù P
  • ? not closed
  • ? is a model of A

30
Historical remarks
  • the early days (1950-80) handwritten proofs
  • Beth, Gentzen
  • relation to sequent calculus
  • tableau proof sequent proof backwards
  • Kripke explicit accessibility relation
  • Smullyan, Fitting uniform notation
  • today mechanized systems
  • fast provers exist
  • FaCT Horrocks
  • K-SAT GiunchigliaSebastiani
  • importance of strategies
  • applications exist BDI logics, description logics

31
Overview
  • possible worlds semantics quickstart
  • tableaux systems basic ideas
  • tableaux systems basic definitions
  • tableaux for simple modal logics
  • tableaux for transitive modal logics
  • tableaux for intuitionistic logic
  • tableaux for other nonclassical logics
  • tableaux for modal logics with transitive closure
    and other modal and description logics
  • tableaux for 1st order logic
  • some implemented tableaux theorem provers

32
Informal definition of tableau rules
  • Tableau rules expand directed graphs by
  • adding formulas
  • adding nodes
  • adding links
  • duplicating the graph
  • rule(G) G1,,Gn
  • rule(G1,,Gn) rule(G1)??rule(Gn)

33
Informal definition of tableau rules
  • Tableau rules expand directed graphs by
  • adding formulas
  • adding nodes
  • adding links
  • duplicating the graph
  • rule(G) G1,,Gn
  • rule(G1,,Gn) rule(G1)??rule(Gn)
  • LoTREC apply rule to G
  • apply rule to every formula in every node of G
  • ? strategies get more declarative ? proofs get
    easier

34
Tableau rules syntax
  • general form
  • rule ruleName
  • if cond1
  • if condn
  • do action1
  • do actionk
  • .

35
Tableau rules syntax
  • general form
  • rule ruleName
  • if cond1
  • if condn
  • do action1
  • do actionk
  • example conditions
  • if hasElement node formula
  • if isLinked node1 node2 R
  • ... (more to come)
  • example actions
  • do stop
  • do addElement node formula
  • do newNode node
  • do link node1 node2 R
  • do duplicate node1
  • ... (more to come)

36
Example tableau rules for classical logic
  • the
  • LoTREC
  • tableau
  • prover

37
Example tableau rules for classical logic
  • declaration of connectors
  • negation and conjunction only

38
Example tableau rules for classical logic
  • rule Stop
  • if there is an explicit contradiction
  • then stop exploring the tableau

39
Example tableau rules for classical logic
  • rule NotNot
  • replaces A by A

40
Example tableau rules for classical logic
  • rule And
  • if A B is in a node
  • then add A and B to node

41
Example tableau rules for classical logic
  • rule NotAnd
  • if (AB) is in a node
  • then duplicate tableau,
  • add A to the first tableau

42
Definition of strategies
  • A strategy defines some order of application of
    the tableau rules
  • firstrule rule1 rulen end
  • apply first applicable rule (and stop)
  • allrules rule1 rulen end
  • apply all applicable rules in order
  • repeat strategy end
  • repeat until no rule applicable
  • Strategy stops if no rule is applicable.

43
Strategy for classical logic
  • strategy CPLStrategy
  • repeat allRules
  • Stop
  • NotNot
  • And
  • NotAnd
  • end end
  • end
  • ? fair strategy

44
Strategy for classical logic example
  • CPLStrategy(P(PQ))

45
Strategy for classical logic example (ctd.)
  • CPLStrategy(P(PQ))
  • T1 , T2

46
Definition of tableaux
  • The set of tableaux for A with strategy S is
  • the set of graphs
  • obtained by applying the strategy S
  • to an initial single-node graph
  • whose root contains only A.
  • notation S(A)
  • Remark
  • our tableau tableau branch in the literature
  • (sounds odd to call a graph a branch)

47
Tableaux open or closed?
  • A node is closed iff it contains FALSE.
  • A tableau is closed iff it has a closed node.
  • A set of tableaux is closed
  • iff all its elements are.
  • An open tableau is a premodel
  • ? build a model

48
Formal properties
  • to be proved for each strategy
  • Termination
  • For every A, S(A) terminates.
  • Soundness
  • If S(A) is closed then A is unsatisfiable.
  • Completeness
  • If S(A) is open then A is satisfiable.

49
In general
  • soundness proofs easy (we apply truth
    conditions)
  • termination proofs not so easy (case-by-case)
  • completeness proofs
  • for fair strategies
  • standard techniques, work in most cases
  • but fair strategies do not terminate in general
  • for terminating strategies
  • difficult (rigorous proofs rare even for the
    basic modal logics!)
  • reason strategy imperative programming
  • but soundness termination is practically
    sufficient (e.g. when experimenting with a
    logic)
  • apply strategy to A
  • take an open tableau and build pointed model
    (M,w)
  • check if M in model class
  • check if M,w - A

50
A general termination theorem
  • IF for every rule r
  • (the do-part of r only contains strict
  • subformulas of the if-part of r
  • AND
  • some restriction on node creation)
  • THEN
  • for every formula A
  • the tableaux construction terminates

51
Another general termination theorem
  • IF for every rule r
  • (the do-part of r only contains
  • subformulas of the if-part of r
  • AND
  • some restriction on node creation)
  • AND
  • some looptesting in the strategy
  • THEN
  • for every formula A
  • the tableaux construction terminates

52
Overview
  • possible worlds semantics quickstart
  • tableaux systems basic ideas
  • tableaux systems basic definitions
  • tableaux for simple modal logics
  • tableaux for transitive modal logics
  • tableaux for intuitionistic logic
  • tableaux for other nonclassical logics
  • tableaux for modal logics with transitive closure
    and other modal and description logics
  • tableaux for 1st order logic
  • some implemented tableaux theorem provers

53
The basic modal logic K
  • the basic modal operators
  • M,w - A iff forall u Rwu implies M,u -
    A
  • M,w - ltgtA iff exists u Rwu and M,u - A

54
Tableau rules for K
  • connectors not, and, nec
  • some rules for classical logic

55
Tableau rules for K
  • connectors not, and, nec
  • some rules for classical logic
  • createSuccessor
  • if not nec A is in node0
  • then create new node node1
  • link it to node0
  • add not A to node1
  • end

56
Tableau rules for K
  • connectors not, and, nec
  • some rules for classical logic
  • propagateNec
  • if nec A is in node0
  • node0 is linkednode1 R
  • then add node1 A
  • end

57
Tableaux for K
  • plus rules for the definable connectives
  • KStrategy(ltgtP ltgtQ (R v ltgtS))

58
Termination of KStrategy
  • For every A, KStrategy(A) terminates.
  • Proof
  • Every tableau rule only adds strict subformulas.
  • The createSuccessor rule is only applied once per
    occurrence of A.
  • This can only be done a finite number of times,
    then the strategy stops.
  • ? follows from general termination theorem

59
Soundness
  • If KStrategy(A) is closed then A is
    unsatisfiable.
  • Proof
  • Every tableau rule is guaranteed by the truth
    conditions
  • If G is K-satisfiable
  • then there is Gi in rule(G) that is K-satisfiable
  • Hence if every graph is closed
  • then the original A cannot be satisfiable.

60
Completeness
  • If KStrategy(A) is open then A is satisfiable.
  • Proof
  • Take some open tableau G in KStrategy(A).

61
Completeness
  • If KStrategy(A) is open then A is satisfiable.
  • Proof
  • Take some open tableau G in KStrategy(A).
  • G is a downwards closed set (Hintikka set)
  • if A in node then A in node
  • if AB in node then A in node and B in node
  • if (AB) in node then A in node or B in node
  • if A in node then there is an accessible node
    containing A
  • if A in node then every successor node
    contains A
  • (because allRules strategy is fair every rule
    eventually applies)

62
Completeness
  • If KStrategy(A) is open then A is satisfiable.
  • Proof
  • Take some open tableau G in KStrategy(A).
  • G is a downwards closed set (Hintikka set)
  • if A in node then A in node
  • if AB in node then A in node and B in node
  • if (AB) in node then A in node or B in node
  • if A in node then there is an accessible node
    containing A
  • if A in node then every successor node
    contains A
  • (because allRules strategy is fair every rule
    eventually applies)
  • Build a K-model from G
  • Vnode(P) 1 iff P appears in node

63
Completeness
  • If KStrategy(A) is open then A is satisfiable.
  • Proof
  • Take some open tableau G in KStrategy(A).
  • G is a downwards closed set (Hintikka set)
  • if A in node then A in node
  • if AB in node then A in node and B in node
  • if (AB) in node then A in node or B in node
  • if A in node then there is an accessible node
    containing A
  • if A in node then every successor node
    contains A
  • (because allRules strategy is fair every rule
    eventually applies)
  • Build a K-model from G
  • Vnode(P) 1 iff P appears in node and P atomic
  • Prove by induction on the form of A
  • for every A in node, M,node - A
  • (fundamental lemma)

64
Modal logic KT
  • accessibility relation is reflexive
  • idea integrate this into truth condition
  • M,w - A iff forall u Rwu implies M,u - A

65
Modal logic KT
  • accessibility relation is reflexive
  • idea integrate this into truth condition
  • M,w - A iff forall u Rwu implies M,u - A
  • and M,w - A

66
Tableauxfor modal logic KT
  • connectors as for K
  • rules as for K

67
Tableauxfor modal logic KT
  • connectors as for K
  • rules as for K
  • plus when A is in a node then add A to it
  • KTStrategy(P P)

68
Tableauxfor modal logic S5
  • accessibility relation is equivalence relation
  • can be supposed to be a single equivalence class
  • optimized tableau rules

69
Overview
  • possible worlds semantics quickstart
  • tableaux systems basic ideas
  • tableaux systems basic definitions
  • tableaux for simple modal logics
  • tableaux for transitive modal logics
  • tableaux for intuitionistic logic
  • tableaux for other nonclassical logics
  • tableaux for modal logics with transitive closure
    and other modal and description logics
  • tableaux for 1st order logic
  • some implemented tableaux theorem provers

70
Tableau rules for S4
  • accessibility relation is reflexive and
    transitive
  • tableau rules for S4
  • connectors as for KT
  • rules as for KT
  • and take into account transitivity
  • when A is in a node
  • then add A to all children

71
Tableau rules for S4
  • accessibility relation is reflexive and
    transitive
  • tableau rules for S4
  • connectors as for KT
  • rules as for KT
  • and take into account transitivity
  • if A is in a node
  • then add A to all children
  • problem find a terminating strategy

72
Tableau rules for S4
  • Example M,w - P
  • add M,w - P (by rule for reflexivity)

73
Tableau rules for S4
  • Example M,w - P
  • add M,w - P (by rule for reflexivity)
  • create u, add Rwu, add M,u - P
  • (by createSuccessor)

74
Tableau rules for S4
  • Example M,w - P
  • add M,w - P (by rule for reflexivity)
  • create u, add Rwu, add M,u - P
  • (by createSuccessor)
  • add M,u - P (by rule for transitivity)

75
Tableau rules for S4
  • Example w - P
  • add M,w - P (by rule for reflexivity)
  • create u, add Rwu, add M,u - P
  • (by createSuccessor)
  • add M,u - P (by rule for transitivity)
  • add M,u - P (by rule for reflexivity)

76
Tableau rules for S4
  • Example w - P
  • add w - P (by rule for reflexivity)
  • create u, add Rwu, add u - P
  • (by createSuccessor)
  • add M,u - P (by rule for transitivity)
  • add M,u - P (by rule for reflexivity)
  • create u

77
Tableau rules for S4
  • Example w - P
  • add M,w - P (by rule for reflexivity)
  • create M,u, add Rwu, add M,u - P
  • (by createSuccessor)
  • add M,u - P (by rule for transitivity)
  • add M,u - P (by rule for reflexivity)
  • create u
  • put a looptest into the rules!

78
Tableau rules for S4 (ctd.)
  • principle
  • if a node is included in an ancestor
  • then mark it.

79
Tableau rules for S4 (ctd.)
  • principle
  • if a node is included in an ancestor
  • then mark it.
  • if a node is marked
  • then block the createSuccessor rule
  • S4Strategy(P)

80
S4Strategy(ltgt (P v Q) ltgtP ltgtQ)
81
Overview
  • possible worlds semantics quickstart
  • tableaux systems basic ideas
  • tableaux systems basic definitions
  • tableaux for simple modal logics
  • tableaux for transitive modal logics
  • tableaux for intuitionistic logic
  • tableaux for other nonclassical logics
  • tableaux for modal logics with transitive closure
    and other modal and description logics
  • tableaux for 1st order logic
  • some implemented tableaux theorem provers

82
Intuitionistic logic
  • no modal operators, but different semantics for
    implication and negation
  • aim invalidate
  • (PgtFALSE) gt P ex falso quodlibet
  • P v P tertio non datur
  • (Q gt P) gt (P gt Q) contraposition
  • R is reflexive, transitive and hereditary
  • if Rwu and Vw(P) 1 then Vu(P) 1
  • similar to S4
  • truth condition
  • M,w - AgtB iff forall u Rwu implies M,u -
    A?B

83
Tableaux rules for intuitionistic logic
  • follow translation from LJ to S4
  • P P (inheritance)
  • (AgtB) (A B)
  • (A) (A)
  • tableaux similar to S4
  • signed formulas
  • T(P) P is true
  • F(P) P is false
  • F(P) ? P

84
Tableaux rules for intuitionistic logic
  • create successor
  • make AgtB false in w
  • create u, add link Rwu,
  • make A false in u,
  • make B true in u

85
Tableaux rules for intuitionistic logic
  • create successor
  • make AgtB false in w
  • create u, add link Rwu,
  • make A false in u,
  • make B true in u
  • inheritance
  • if M,w - P and Rwu
  • then add M,u - P

86
Tableaux rules for intuitionistic logic PgtP
LJStrategy(((PgtFalse)gtFalse)gtP) ? 4
tableaux, 1 open
87
Overview
  • possible worlds semantics quickstart
  • tableaux systems basic ideas
  • tableaux systems basic definitions
  • tableaux for simple modal logics
  • tableaux for transitive modal logics
  • tableaux for intuitionistic logic
  • tableaux for other nonclassical logics
  • tableaux for modal logics with transitive closure
    and other modal and description logics
  • tableaux for 1st order logic
  • some implemented tableaux theorem provers

88
Relevant logics

89
Paraconsistent logics

90
Overview
  • possible worlds semantics quickstart
  • tableaux systems basic ideas
  • tableaux systems basic definitions
  • tableaux for simple modal logics
  • tableaux for transitive modal logics
  • tableaux for intuitionistic logic
  • tableaux for other nonclassical logics
  • tableaux for modal logics with transitive closure
    and other modal and description logics
  • tableaux for 1st order logic
  • some implemented tableaux theorem provers

91
Linear Temporal Logic
  • two modal operators
  • always
  • X next
  • R(X) is serial and deterministic
  • R() R(X))
  • R() linear order
  • mix axioms
  • A ? AÙXA
  • ltgtA ? A v XltgtA
  • induction axiom
  • AÙ(AXA) A
  • decidable, EXPTIME complete

92
Tableau rules for Linear Temporal Logic
  • how take induction into account?
  • solution dont care, and only apply the mix
    axioms
  • rewrite A to A Ù XA
  • rewrite ltgtA to A v XltgtA
  • only create successors for X, never for ltgt
  • termination use the looptest from transitive
    modal logics
  • nodes only contain subformulas of orig. formula
  • looptest succeeds at most at polynomial depth

93
Tableau rules for Linear Temporal Logic example
  • Example M,w - P
  • add M,w - PÙXP (by mix axioms)
  • add M,w - P, M,w - XP
  • create u, add RXwu, add M,u - P
  • (by propagation rule for X)
  • add M,u - PÙXP (by mix axioms)
  • add M,u - P, M,u - XP
  • w contains u mark u contained

94
Tableau rules for Linear Temporal Logic (ctd.)
P
P
P
P
  • may result in nonstandard models of ltgtP
  • ? P never fulfilled
  • ? check if all ltgt are fulfilled!

95
Tableau rules for Linear Temporal Logic example
  • Example LTLStrategy(ltgtP)
  • M,w - ltgtP
  • .
  • .

96
Tableau rules for Linear Temporal Logic
  • Example LTLStrategy(ltgtP)
  • M,w - ltgtP
  • M,w - P v XltgtP (by mix)
  • .

97
Tableau rules for Linear Temporal Logic
  • Example LTLStrategy(ltgtP)
  • M,w - ltgtP
  • M,w - P v XltgtP (by mix)
  • M1,w - ltgtP, M1,w - P M2,w - ltgtP, M2,w -
    XltgtP
  • (nothing applies)
  • .

98
Tableau rules for Linear Temporal Logic
  • Example LTLStrategy(ltgtP)
  • M,w - ltgtP
  • M,w - P v XltgtP (by mix)
  • M1,w - ltgtP, M1,w - P M2,w - ltgtP, M2,w -
    XltgtP
  • (nothing applies) RXwu, M2,u - ltgtP
  • .

99
Tableau rules for Linear Temporal Logic
  • Example LTLStrategy(ltgtP)
  • M,w - ltgtP
  • M,w - P v XltgtP (by mix)
  • M1,w - ltgtP, M1,w - P M2,w - ltgtP, M2,w -
    XltgtP
  • (nothing applies) RXwu, M2,u - ltgtP
  • M2,u - P v XltgtP (by mix)

100
Tableau rules for Linear Temporal Logic
  • Example LTLStrategy(ltgtP)
  • M,w - ltgtP
  • M,w - P v XltgtP (by mix)
  • M1,w - ltgtP, M1,w - P M2,w - ltgtP, M2,w -
    XltgtP
  • (nothing applies) RXwu, M2,u - ltgtP
  • M2,u - P v XltgtP (by mix)
  • M21,u - P M22,u - XltgtP

101
Tableau rules for Linear Temporal Logic
  • Example LTLStrategy(ltgtP)
  • M,w - ltgtP
  • M,w - P v XltgtP (by mix)
  • M1,w - ltgtP, M1,w - P M2,w - ltgtP, M2,w -
    XltgtP
  • (nothing applies) RXwu, M2,u - ltgtP
  • M2,u - P v XltgtP (by mix)
  • M21,u - P M22,u - XltgtP
  • (nothing applies) contained in w

102
Tableau rules for Linear Temporal Logic
  • Example LTLStrategy(ltgtP)
  • M,w - ltgtP
  • M,w - P v XltgtP (by mix)
  • M1,w - ltgtP, M1,w - P M2,w - ltgtP, M2,w -
    XltgtP
  • (nothing applies) RXwu, M2,u - ltgtP
  • M2,u - P v XltgtP (by mix)
  • M21,u - P M22,u - XltgtP
  • (nothing applies) u contained in w
  • ltgtP not fulfilled

103
Propositional dynamic logic (PDL)
  • two kinds of expressions
  • formulas
  • A P A A?B pA
  • programs
  • p a p1p2 p1?p2 p A?
  • in the models R interprets programs
  • R(p1p2) R(p1)R(p2)
  • R(p1?p2) R(p1)?R(p2)
  • R(p) (R(p))
  • R(A?) ltw,wgt M,w - A

104
Tableaux for PDL
  • similar to LTL
  • expand pA to A ? ppA
  • dont apply createSuccessor to formulas pA
  • mark nodes that are included in some ancestor
  • dont apply createSuccessor to formulas pA if
    node is marked
  • expand the other program expressions
  • p1p2A ? p1p2A
  • p1?p2A ? p1A ? p2A
  • A?B ? AB

105
Description logics
  • roles and concepts
  • more expressive than classical propositional
    logic
  • less expressive than 1st order logic
  • focus on decidable logics
  • applications
  • databases
  • software engineering
  • web-based information systems
  • description of medical terminology
  • ontology of the semantic web
  • standards DAMLOIL, OWL
  • description of web services
  • WSDL, OWL-S

106
Description logicsconcepts and roles
  • roles binary relations
  • hasChild
  • hasHusband
  • concepts unary relations properties
  • Person
  • Female
  • Parent n Female
  • Father U Mother
  • Parent
  • ?hasChild.Female individuals having a female
    child
  • ?hasChild.Female
  • gt1 hasChild.T individuals having more than 1
    child
  • set of concepts ? assertion box (ABox)

107
Description logics TBoxes
  • set of relations between concepts and roles
  • ? terminological box (TBox)
  • restricted to concept abbreviations (sometimes
    fixpoint definitions)
  • Mother Person n Female
  • are expanded away ? TBox ?

108
Description logicsreasoning tasks
  • satisfiability of a concept C
  • subsumption of C1 by C2
  • same as C1n C2 unsatisfiable
  • equivalence of C1 by C2
  • same as C1 subsumes C2 and C1 subsumes C2
  • disjointness of C1 and C2
  • ? subsumes C1nC2
  • all reasoning tasks reduce
  • to concept satisfiability

109
Description logics
  • translation of concepts into modal logics
  • ?hasChild.Female lthasChildgtFemale
  • ?hasChild.Female hasChild.Female
  • Parent n Female Parent ? Female
  • Father U Mother Father v Mother
  • lt2 hasChild.T hasChild2 T
  • 2 hasChild.T lthasChildgt2 T
  • modal logics with number restrictions
    FattorosiBarnaba, van der Hoek

110
Description logics
  • description logic ALC
  • C
  • C1 n C2
  • C1 U C2
  • ?R.C
  • ?R.C
  • multimodal K
  • description logic ALCreg
  • ALC regular expressions on roles
  • PDL
  • all description logic reasoning tasks reduce
  • to satisfiability checking in modal logics
  • tableaux used as optimal decision procedures

111
Logics of action and knowledge
  • 2 modal operators
  • Knwi A agent i knows that A
  • a A after execution of action a, A holds
  • product logics
  • RKnwiRa RaRKnwi (permutation)
  • if wRKnwiu and wRav then exists t such that
    uRat and vRKnwit
  • (confluence)
  • axiomatically
  • KnwiaA ? aKnwiA
  • ltagtKnwiA KnwiltagtA
  • tableaux
  • ? problem combination with transitivity

112
Belief-Desire-Intention logics
  • Bratman, RaoGeorgeff
  • 3 modal operators
  • Beli A agent i believes that A
  • Desirei A agent i desires that A
  • Intendi A agent i intends that A
  • plus branching time logic

113
Modal logics with density
  • accessibility relation is dense
  • if Rwu then exists v Rwv and Rvu

114
Non-normal modal logics
  • no accessibility relation, but neighborhood
    functions N W 22W
  • M,w - A iff exists U in N(w) forall u in U
    M,u - A
  • non-normal modal logic EM
  • can be represented by a set of relations
  • M,w - A iff exist Ri forall u (Riwu implies
    M,u - A)
  • logic EM non-normal
  • not valid P?Q (P?Q)
  • but valid (P?Q) P?Q

115
Tableau rules for EM

116
Overview
  • possible worlds semantics quickstart
  • tableaux systems basic ideas
  • tableaux systems basic definitions
  • tableaux for simple modal logics
  • tableaux for transitive modal logics
  • tableaux for intuitionistic logic
  • tableaux for other nonclassical logics
  • tableaux for modal logics with transitive closure
    and other modal and description logics
  • tableaux for 1st order logic
  • some implemented tableaux theorem provers

117
1st order logic
  • How should we handle the quantifiers?
  • ?x p(x) ? p(a) is unsatisfiable
  • ?x p(x) ? ?x p(x) is unsatisfiable
  • naïve implementation Beth, Smullyan
  • if hasElement node0 forall x A(x)
  • do createTerm t (doesnt exist in LoTREC yet)
  • do add node0 A(t)
  • if hasElement node exists x A(x)
  • do createNewConstant c
  • do add node A(c)
  • problem loops for satisfiable formulas

118
Herbrand Tableaux for 1st order logic
  • 1st solution restrict instantiation to Herbrand
    universe
  • if hasElement node0 forall x A(x)
  • do createHerbrandTerm t (doesnt exist in
    LoTREC yet)
  • do add node0 A(t)
  • ex. ?x p(x,x) ? ?x?y p(x,y)) satisfiable
  • 1. ?x p(x,x)
  • 2. ?x?y p(x,y)
  • 3. ?y p(a,y) (2), new constant
  • 4. p(a,a) (3), only Herbrand term
  • 5. p(b,b) (1), new constant
  • 6. p(a,b) (3), Herbrand term
  • no further instantiation of (3) is possible
  • decision procedure for formulas without positive
    ??

119
Herbrand Tableaux for 1st order logic
  • counterexample ?x?y p(x,y) satisfiable
  • 1. ?x?y p(x,y)
  • 2. ?y p(a,y) (1), Herbrand term
  • 3. p(a,b) (2), new constant
  • 4. ?y p(b,y) (1), Herbrand term
  • 5. p(b,c) (4), new constant
  • 6.
  • ? loops

120
Free-variable tableaux with unification
  • 2nd solution dont instantiate at all
  • work with free variables
  • runtime skolemization of existential quantifiers
  • term unification
  • ex. ?x?y p(x,y) ? ?x?y p(x,y)) satisfiable
  • 1. ?x?y p(x,y)
  • 2. ?x?y p(x,y)
  • 3. ?y p(x1,y) from (1), replace x by free x1
  • 4. ?y p(x2,y) from (2), replace x by free x2
  • 5. p(x1,f(x1)) from (3), Skolem function f(x1)
  • 6. p(x2,g(x2)) from (4), Skolem function g(x2)
  • stops (5) and (6) dont unify
  • but doesnt terminate in all cases (sure)
  • else 1st order logic would be decidable

121
Overview
  • possible worlds semantics quickstart
  • tableaux systems basic ideas
  • tableaux systems basic definitions
  • tableaux for simple modal logics
  • tableaux for transitive modal logics
  • tableaux for intuitionistic logic
  • tableaux for other nonclassical logics
  • tableaux for modal logics with transitive closure
    and other modal and description logics
  • tableaux for 1st order logic
  • some implemented tableaux theorem provers

122
LoTREC
  • IRIT-CNRS Toulouse (Sahade, Gasquet, Herzig)
    accessible through www
  • general theorem prover
  • explicit accessibility relations
  • easy to implement logics with symmetric
    accessibility relations etc.
  • back-and-forth rules
  • inefficient

123
TableauxWorkBench (TWB)
  • Australian National U. (Abate, Goré)
  • general theorem prover
  • close to Gentzen sequents
  • accessibility relations remain implicit
  • hard to implement logics with symmetric
    accessibility relations
  • temporal logic with future and past
  • converse of programs

124
LogicWorkBench (LWB)
  • U. Bern (Jäger, Heuerding) accessible through
    www
  • efficient algorithms for all the basic modal and
    temporal logics
  • hard to implement a new logic

125
FaCT
  • U. Manchester (Horrocks) open source
  • fast decision procedure for description logics
    with inverse roles and qualified number
    restrictions
  • multimodal K converse number restrictions
  • optimized backtracking backjumping

126
KSAT
  • U. Trento (Giunchiglia, Sebastiani)
  • combines tableaux method with fast SAT solvers
    for classical propositional logic
  • call a SAT solver, where subformulas A, ltgtB are
    viewed as atomic
  • SAT solver returns a tentative valuation
  • use modal tableau rules to generate children
  • if inconsistent then there is no model
  • else iterate
  • very efficient
  • exists for all basic modal logics

127
KSAT (ctd.)
  • KSAT((PQ) ltgtP)
  • call SAT with set of clauses (PQ), ltgtP
  • SAT returns
  • V((PQ)) 1
  • V(ltgtP) 1
  • apply createOneSuccessor and propagateNec
  • w - (PQ), w - ltgtP, Rwu, u - P, u -
    PQ
  • call SAT with set of clauses P,Q,P
  • SAT returns
  • set of clauses unsatisfiable
  • (PQ) ltgtP is unsatisfiable in K

128
Conclusion
  • search for models exploit the truth conditions
  • tableaux work both ways
  • finding a model
  • refuting
  • termination decidability
  • tableaux as optimal decision procedures
  • ? description logics

129
Thanks to
  • Mohamad Sahade
  • Olivier Gasquet
  • Luis Fariñas del Cerro
  • Dominique Longin
  • Tiago Santos de Lima
  • Fabrice Evrard
  • Carole Adam
  • Nicolas Troquard
  • Benoit Gaudou
  • Ivan Varzinczak
  • Bilal Saïd
  • Dominique Ziegelmayer
  • and the other members of the LILaC group
Write a Comment
User Comments (0)
About PowerShow.com