Nessun titolo diapositiva - PowerPoint PPT Presentation

About This Presentation
Title:

Nessun titolo diapositiva

Description:

Title: Nessun titolo diapositiva Author: Gian Luca Pozzato Last modified by: pozzato Created Date: 3/29/2003 3:14:10 PM Document presentation format – PowerPoint PPT presentation

Number of Views:50
Avg rating:3.0/5.0
Slides: 69
Provided by: GianLuca53
Category:

less

Transcript and Presenter's Notes

Title: Nessun titolo diapositiva


1
CondLean 2.0 a Theorem Prover for standard
Conditional Logics
Nicola Olivetti Gian Luca Pozzato
Dipartimento di Informatica - Università degli
studi di Torino
2
Outline
  • Brief introduction of Conditional Logics
  • Sequent calculi SeqS for some standard
    conditional logics
  • List of results, in order to obtain a decision
    procedure for conditional logics and the
    reformulation BSeqS
  • CondLean 2.0 a SICStus Prolog implementation of
    sequent calculi BSeqS
  • Future work and references

3
1
  • Conditional logics

4
Conditional logics
  • Conditional logics have a long history
  • Recently, they have been used in some branches
    of artificial intelligence, such as
  • non-monotonic reasoning (for example,
    prototypical reasoning and default reasoning)
  • belief revision
  • deductive databases
  • representation of counterfactuals.

5
Conditional logics
Syntax
  • Conditional logic is an extension of classical
    logic by the conditional operator ?.
  • We consider a language L over a set ATM of
    propositional variables. Formulas of L are
    obtained applying the classical connectives and
    the conditional operator ? to the propositional
    variables.

6
Conditional logics
Semantics
  • We consider the selection function semantics
    the model is a triple

7
Conditional logics
Semantics
  • We consider the selection function semantics
    the model is a triple

lt W, f, gt
8
Conditional logics
Semantics
  • We consider the selection function semantics
    the model is a triple

lt W, f, gt
- W is a non-empty set of items called worlds
9
Conditional logics
Semantics
  • We consider the selection function semantics
    the model is a triple

lt W, f, gt
- W is a non-empty set of items called worlds
- f is a function f W x 2W ? 2W , called the
selection function
10
Conditional logics
Semantics
  • We consider the selection function semantics
    the model is a triple

lt W, f, gt
- W is a non-empty set of items called worlds
- f is a function f W x 2W ? 2W , called the
selection function
- is an evaluation function ATM ? 2W.
11
Conditional logics
Semantics
  • The selection function f (w, A) selects the
    worlds closestto w given the information A.

12
Conditional logics
Semantics
  • assigns to an atomic formula P the set of
    worlds where P is true is also extended to
    complex formulas as follows
  • ? ?
  • A ? B (W - A ) ? B
  • A ? B w ? W f (w, A ) ? B
  • A conditional formula A ? B is true in a world
    w if B is true in all the worlds closest to w
    given the information A.

13
Conditional logics
Semantics
  • We say that a formula A is valid in a model M
    if A W. A formula A is valid if it is valid
    in every model M.

14
Conditional logics
System CK
  • The semantics above characterizes the minimal
    normal conditional logic CK, which is axiomatized
    as follows

15
Conditional logics - System CK
All the tautologies of the classical
propositional logic are CK axioms modus
ponens RCEA RCK
A
A ? B
B
A ? B
(A ? C) ? (B ? C)
(A1 ? A2 ? ? An) ? B
(C ? A1 ? C ? A2 ? ? C ? An) ? (C ? B)
16
Conditional logics
Systems CKMPID
With some properties of the selection function,
we have the following extensions
System
Axiom
Selection function property
17
Conditional logics
Systems CKMPID
With some properties of the selection function,
we have the following extensions
System
Axiom
Selection function property
CKID
f (x, A ) ? A
A ? A
18
Conditional logics
Systems CKMPID
With some properties of the selection function,
we have the following extensions
System
Axiom
Selection function property
CKID
f (x, A ) ? A
A ? A
CKMP
w ? A ? w ? f (w, A )
(A ? B) ? (A ? B)
19
Conditional logics
Systems CKMPID
With some properties of the selection function,
we have the following extensions
System
Axiom
Selection function property
CKID
f (x, A ) ? A
A ? A
CKMP
w ? A ? w ? f (w, A )
(A ? B) ? (A ? B)
w ? A ? w ? f (w, A )
(A ? B) ? (A ? B)
CKMPID
f (x, A ) ? A
A ? A
20
2
  • Sequent Calculi SeqS

21
Sequent Calculi SeqS
  • In OlivettiSchwind01 sequent calculi for
    conditional logics CKMPID called SeqS,
    where SCK, ID, MP, IDMP, are introduced.
  • These calculi use transition formulas and
    labels, in a similar way to Viganò00 and
    Gabbay96.

22
Sequent Calculi SeqS
  • A sequent is a pair lt ?, ? gt, written as usual
    as ? ?
  • ? and ? are multisets of formulas we have two
    kinds of formulas

23
Sequent Calculi SeqS
  • A sequent is a pair lt ?, ? gt, written as usual
    as ? ?
  • ? and ? are multisets of formulas we have two
    kinds of formulas

Labelled formulas, like x A
24
Sequent Calculi SeqS
  • A sequent is a pair lt ?, ? gt, written as usual
    as ? ?
  • ? and ? are multisets of formulas we have two
    kinds of formulas

transition formulas, like .
Labelled formulas, like x A
A
x
y
25
Sequent Calculi SeqS
  • A sequent is a pair lt ?, ? gt, written as usual
    as ? ?
  • ? and ? are multisets of formulas we have two
    kinds of formulas

transition formulas, like .
Labelled formulas, like x A
A
x
y
  • A labelled formula x A represents that the
    formula A is true in the world x.

26
Sequent Calculi SeqS
  • A sequent is a pair lt ?, ? gt, written as usual
    as ? ?
  • ? and ? are multisets of formulas we have two
    kinds of formulas

transition formulas, like .
Labelled formulas, like x A
A
x
y
  • A labelled formula x A represents that the
    formula A is true in the world x.

A
  • A transition formula represents
    that y ? f ( x, A ).

x
y
27
Sequent Calculi SeqS
Theorem (soundness and completeness of SeqS) ?
? is valid iff it is derivable in SeqS.
28
3
  • How to obtain a decision procedure

29
How to obtain a decision procedure
  • SeqS calculi have the following contraction
    rules

? ?, F, F
?, F, F ?
(ContrR)
(ContrL)
? ?, F
?, F ?
30
How to obtain a decision procedure
  • SeqS calculi have the following contraction
    rules

? ?, F, F
?, F, F ?
(ContrR)
(ContrL)
? ?, F
?, F ?
  • In backward proof search, the contraction rules
    add a formula in the premise all the other rules
    are analytic.
  • In order to obtain a decision procedure, it is
    essential to control the application of the
    contraction rules.

31
How to obtain a decision procedure
In OlivettiSchwind01 it is shown that the
contraction rules can be eliminated in
SeqCK SeqCK is complete without (ContrL) e
(ContrR) so we have a decision procedure for CK
(all the SeqCKs rules are analytic).
32
How to obtain a decision procedure
  • In Pozzato03 it is shown that

33
How to obtain a decision procedure
  • In Pozzato03 it is shown that

1. SeqID is complete without the contraction
rules.
34
How to obtain a decision procedure
  • In Pozzato03 it is shown that

1. SeqID is complete without the contraction
rules.
2. SeqMP and SeqIDMP are NOT complete without
the contraction rules.
  • This analysis is inspired by the work made by
    Luca Viganò for modal logic T Viganò00

35
How to obtain a decision procedure
  • One can control the application of the
    contraction rules as follows

36
How to obtain a decision procedure
  • One can control the application of the
    contraction rules as follows

2.1. SeqMP and SeqIDMP are complete without the
(ContrR) rule.
37
How to obtain a decision procedure
  • One can control the application of the
    contraction rules as follows

2.1. SeqMP and SeqIDMP are complete without the
(ContrR) rule.
2.2. In SeqMP and SeqIDMP one needs to apply the
(ContrL) rule at most one time on every
conditional formula x A ? B in every branch of
the proof tree.
  • Here are the BSeqS calculi presented in
    OlivettiPozzatoSchwind04

38
How to obtain a decision procedure
  • The (?L) rule is split in three rules, to keep
    into account of the necessary application of
    (ContrL).

39
How to obtain a decision procedure
  • The (?L) rule is split in three rules, to keep
    into account of the necessary application of
    (ContrL).

1. The first rule decomposes the principal
formula x A ? B adding a copy of the formula in
the multiset CondContr
If x A ? B ? K
K ? x A ? B CondContr ? x A ? B
?, y B ?
A
x
y
K ? x A ? B CondContr ? x A ? B ?
?,
(?L)1
K CondContr ?, x A ? B ?
40
How to obtain a decision procedure
  • The (?L) rule is split in three rules, to keep
    into account of the necessary application of
    (ContrL).

1. The second rule is applied if x A ? B has
already been contracted in that branch (i.e.
belongs to K) it decomposes the principal
formula x A ? B without adding any copy of it
If x A ? B ? K
K CondContr ?, y B ?
A
x
y
K CondContr ? ?,
(?L)2
K CondContr ?, x A ? B ?
41
How to obtain a decision procedure
  • The (?L) rule is split in three rules, to keep
    into account of the necessary application of
    (ContrL).

2. The third rule decomposes a contracted
formula x A ? B in CondContr, without adding a
copy of it
A
x
y
K ? x A ? B CondContr ? ?
K ? x A ? B CondContr ?, y B ?
(?L)3
K ? x A ? B CondContr ? x A ? B ?
?
42
How to obtain a decision procedure
  • We have improved SeqS calculi presented in
    OlivettiPozzato03, where the rule (?L) was
    split in two rules
  • Reduced number of application of (implicit)
    contraction in each branch better performances
  • Improved version of the graphical user interface
  • Many features inherited from CondLean

43
4
  • Design of
  • CondLean 2.0

44
Design of CondLean 2.0
  • CondLean 2.0 is a Prolog implementation of BSeqS
    calculi it is written in SICStus Prolog and it
    is inspired by leanTAP, introduced by Beckert and
    Posegga in BeckertPosegga96.
  • The program comprises a set of clauses, each one
    of them represents a sequent rule or axiom the
    proof search is provided for free by the mere
    depth-first search mechanism of Prolog.

45
Design of CondLean 2.0
  • CondLean 2.0 is a Prolog implementation of BSeqS
    calculi it is written in SICStus Prolog and it
    is inspired by leanTAP, introduced by Beckert and
    Posegga in BeckertPosegga96.
  • The program comprises a set of clauses, each one
    of them represents a sequent rule or axiom the
    proof search is provided for free by the mere
    depth-first search mechanism of Prolog.
  • The sequent calculi are implemented by the
    predicate
  • prove(Sigma, Delta, Labels)
  • This predicate succeeds if and only if the
    sequent ? ? is derivable in SeqS, where
    Sigma e Delta are the lists representing
    multisets ? and ?, and Labels is the list of
    labels introduced in that branch .

46
Design of CondLean 2.0
  • Each clause of predicate prove implements one
    axiom or rule of BSeqS.
  • The clauses of prove are ordered to postpone the
    application of the branching rules.

47
Design of CondLean 2.0
  • Each clause of predicate prove implements one
    axiom or rule of BSeqS.
  • The clauses of prove are ordered to postpone the
    application of the branching rules.

Example 1 clause implementing (AX) axiom both
the antecedent and the consequent contain the
same complex formula F prove(_,_,ComplexSigma
,_,_,ComplexDelta,_)- member(F,ComplexSigma
), member(F,ComplexDelta),!.
(AX)
?, F ?, F
48
Design of CondLean 2.0
Example 2 clause implementing (?R) prove(LitS
igma,TransSigma,ComplexSigma,
A
?, ?, y B
x
y
(?R)
? ?, x A ? B
LitDelta,TransDelta,ComplexDelta,Labels)
select(X,A gt B, ComplexDelta,ResComplexDelta)
,!,
createLabels(Y,Labels),
put(Y,B, LitDelta, ResComplexDelta,
NewLitDelta, NewComplexDelta),
prove(LitSigma, X,A,YTransSigma,
ComplexSigma,NewLitDelta,TransDelta,
NewComplexDelta,YLabels).
49
Design of CondLean 2.0
  • For systems BSeqMP and BSeqIDMP the predicate
    prove has two additional arguments
  • prove(K, CondContr, Sigma, Delta, Labels)
  • K and CondContr are the auxiliary sets of BSeqS
    calculi, used to control the application of (?L)

50
Design of CondLean 2.0
Example 3 clause implementing (?L)1
K ? x A ? B CondContr ? x A ? B
?, y B ?
A
x
y
K ? x A ? B CondContr ? x A ? B ?
?,
(?L)1
K CondContr ?, x A ? B ?
prove(K,CondContr,LS,TS,CS,LD,TD,CD,Labels)-
select(X,A gt B,CS,ResCS), \member(X,A gt
B,K), select(Y,Labels), put(Y,B,LS,ResCS,NewLS,
NewCS), prove(X,A gt BK,X,A gt
BCondContr, NewLS,TS,NewCS,LD,TD,CD,Label
s), prove(X,A gt BK,X,A gt BCondContr,
LS,TS,ResCS,LD,X,A,YTD,CD,Labels).
51
Design of CondLean 2.0
  • We present three different implmentations for
    our theorem provers
  • 1. Constant labels version
  • 2. Free-variables version
  • 3. Heuristic version.

52
Design of CondLean 2.0
  • 1. Constant labels version
  • This version makes use of Prolog constants to
    represent SeqSs labels, introdouced by the (?R)
    rule.

53
Design of CondLean 2.0
  • 1. Constant labels version
  • This version makes use of Prolog constants to
    represent SeqSs labels, introdouced by the (?R)
    rule.
  • When the (?L) clause is used to prove ? ?, a
    backtracking point is introduced by the choice of
    a label y occurring in the two premises

A
? ?,
?, y B ?
x
y
(?L)
?, x A ? B ?
  • If there are n labels to choose, the computation
    might succeed only after n-1 backtracking steps,
    with a significant loss of efficiency.

54
Design of CondLean 2.0
  • 2. Free-variables version
  • In this implementation, CondLean 2.0 makes use
    of Prolog variables to represent all the labels
    that can be used in an application of the (?L)
    clause.
  • This solution is inspired to the free-variable
    tableaux introduced in BeckertGorè97.

55
Design of CondLean 2.0
Free variable
A
? ?,
?, V B ?
x
V
(?L)
?, x A ? B ?
Each free variable will be then istantiated by
Prologs pattern matching to apply either the
(EQ) rule, or to close a branch with an axiom.
56
Design of CondLean 2.0
  • To manage free variable domains we use the
    constraints (CLP) when a free variable V is
    introduced by the application of (?L), a
    constraint on its domain is added to the
    constraint store.
  • The constraint solver (given for free by the
    clpfd library of SICStus Prolog) will control the
    consistency of the constraint store during the
    computation in a very efficient way.

57
Design of CondLean 2.0
  • 3. Heuristic version
  • This implementation performs a two-phase
    computation

58
Design of CondLean 2.0
  • 3. Heuristic version
  • This implementation performs a two-phase
    computation

1. An incomplete theorem prover searches a
derivation exploring a reduced search space, to
check the validity of a sequent in a very small
time
59
Design of CondLean 2.0
  • 3. Heuristic version
  • This implementation performs a two-phase
    computation

1. An incomplete theorem prover searches a
derivation exploring a reduced search space, to
check the validity of a sequent in a very small
time
2. In case of failure of phase 1, the free
variable version is called to complete the
computation.
60
Design of CondLean 2.0
  • 3. Heuristic version
  • This implementation performs a two-phase
    computation

1. An incomplete theorem prover searches a
derivation exploring a reduced search space, to
check the validity of a sequent in a very small
time
2. In case of failure of phase 1, the free
variable version is called to complete the
computation.
  • On a valid sequent with over 120 connectives,
    the heuristic version succeeds in 460 msec versus
    4326 msec of the free variable version.

61
Design of CondLean 2.0
  • The performances of the three versions are
    promising.
  • We have tested CondLean 2.0 - free variable
    version obtaining the following results we
    define the sequent degree as the maximum level of
    nesting of the conditional operator.

2
6
9
11
15
Sequent degree
5
500
650
1000
2000
Time to succeed (ms)
62
  • One can download the source code and the
    application CondLean 2.0 at the following
    address
  • www.di.unito.it/olivetti/CondLean 2.0

63
5
  • Future work

64
Future work
  • We are working on some extensions of CondLean
    2.0 to stronger conditional systems
  • We have found cut-free and terminating calculi
    for conditional logics CS and CEM (Stalnaker
    logic)

System
Axiom
Selection function property
w ? A ? f (w, A ) ? w
CKCS
(A ? B) ? (A ? B)
CKCEM
(A ? B) ? (A ? ?B)
f (x, A ) ? 1
65
6
  • References

66
References

BeckertGorè97 Bernard Beckert and Rajeev Gorè.
Free Variable Tableaux for Propositional Modal
Logics. Tableaux-97, LNCS 1227, Springer, pp.
91-106.
BeckertPosegga96 Bernard Beckert and Joachim
Posegga. leanTAP Lean Tableau-based Deduction.
Journal of Automated Reasoning, 15(3), pp.
339-358.
Gabbay96 Dov. M. Gabbay. Labelled deductive
systems (vol. i). Oxford logic guides, Oxford
University Press.
67
References
OlivettiPozzato03 Nicola Olivetti and Gian Luca
Pozzato. CondLean A Theorem Prover for
Conditional Logics. In Proc. of TABLEAUX 2003
(Automated Reasoning with Analytic Tableaux and
Related Methods), volume 2796 of LNAI, Springer,
pp. 264-270.
OlivettiPozzatoSchwind04 Nicola Olivetti, Gian
Luca Pozzato and Camilla B. Schwind. A Sequent
Calculus and a Theorem Prover for Standard
Conditional Logics. Technical Report 81/04,
Dipartimento di Informatica, Università degli
Studi di Torino, Italy, November 2004.
68
References
Pozzato03 Gian Luca Pozzato. Deduzione
Automatica per Logiche Condizionali Analisi e
Sviluppo di un Theorem Prover. Tesi di laurea,
Informatica, Università di Torino. In Italian,
download at http//www.di.unito.it/pozzato/tesiPo
zzato.html
OlivettiSchwind01 Nicola Olivetti and Camilla
B. Schwind. A Calculus and Complexity Bound for
Minimal Conditional Logic. Proc. ICTCS01 -
Italian Conference on Theoretical Computer
Science, vol. LNCS 2202, pp. 384-404.
Viganò00 Luca Viganò. Labelled Non-classical
Logics. Kluwer Academic Publishers, Dordrecht.
Write a Comment
User Comments (0)
About PowerShow.com