verifying social expectations by model checking truncated
play

Verifying social expectations by model checking truncated paths - PowerPoint PPT Presentation

Verifying social expectations by model checking truncated paths Stephen Cranefield Department of Information Science University of Otago, Dunedin, New Zealand and Michael Winikoff School of CS & IT, RMIT University, Melbourne, Australia


  1. Verifying social expectations by model checking truncated paths Stephen Cranefield Department of Information Science University of Otago, Dunedin, New Zealand and Michael Winikoff School of CS & IT, RMIT University, Melbourne, Australia

  2. Relationship to other papers in the session • Spoletini and Verdicchio – Monitoring commitments (vs. “social expectations”) – Language is a propositional temporal logic – Application of model checking (automata vs. labelling approaches) – Different viewpoint when representing commitments – Applicable to online monitoring only? (may not avoid premature fulfilment in offline mode) – Basic architecture proposed (word composer and word analyser) – Separation of past and present operators

  3. • Lacroix et al. – Generating behaviour for simulations vs. analysing observed behaviour – Spatial rather than temporal focus – Parameter-based rather than logical model of institutions and norms

  4. Motivation • ANIREM@AAMAS’05

  5. Motivation • ANIREM@AAMAS’05 • Language for expressing If you pay me the fe If you pay me the fee for e for conditional expectations this service, this service, starting starting with a rich temporal structure the week after payment is the week after payment is made, each week made, each week for a year I will send a for a year I will send a current market current market analysis report to you, analysis report to you, unless you cancel the unless you cancel the subscription subscription first. first.

  6. Motivation • ANIREM@AAMAS’05 • Language for expressing conditional expectations with a rich temporal structure hyMITL ± combined Metric • Interval Temporal Logic with 1 st order CTL ± (with bounded quantification) and hybrid logic

  7. Motivation • ANIREM@AAMAS’05 • Language for expressing conditional expectations with a rich temporal structure hyMITL ± combined Metric • Interval Temporal Logic with 1 st order CTL ± (with bounded quantification) and hybrid logic • Evolution of expectations using formula progression

  8. Motivation • ANIREM@AAMAS’05 • Language for expressing conditional expectations with a rich temporal structure hyMITL ± combined Metric • Interval Temporal Logic with 1 st order CTL ± (with bounded quantification) and hybrid logic • Evolution of expectations using formula progression • Process defined algorithmically, not logically

  9. Goals of this work • Provide a logical account of the fulfilment and violation of temporally rich social expectations over observed histories • Introduce expectations by rules. Informally: l → Exp r • Express expectations in terms of the current time point (i.e. use formula progression to carry then forward) • Show that the theory can be implemented in a model checker – Currently need restriction to propositional temporal logic “Model checking a path” r … p p q For each state in model: φ Yes/No

  10. Points of difference • The concept of social expectations as a generalisation of learned regularities, promises, formal commitments, etc. – Abstracts away from social context (e.g. debtor and creditor for a commitment) and the implications of violation and fulfilment – Focuses on conditional activation (dependent on history and current state), and monitoring to determine fulfilment and violation • Online vs. offline monitoring – Online: events arrive sequentially and the new last state in the history is checked for fulfilments and violations – Offline: traces may be kept for later analysis. All states in the provided history need to be checked

  11. Our logic • A hybrid propositional temporal logic, with past and future operators (an extension of the Hybrid Logics Model Checker’s language): • Plus derived temporal operators Exp, Fulf, Viol and Progress (more detail later)

  12. Premature fulfilment in offline monitoring (informal notation) ?

  13. Premature fulfilment in offline monitoring (informal notation) Unknown at s 1

  14. Semantics on complete paths Model ( ℳ ) … … V: Props →℘ (States) ⊨ Op( φ 1 , … , φ n ) Variable bindings iff … g: StateVars → States Some constraint Point in model on the model structure

  15. Semantics on truncated paths • Based on work of Eisner et al. (2003). • Introduce Trunc S operator (truncate and use “strong” semantics) Model ( ℳ ) … … V: Props →℘ (States) ⊨ Trunc S φ iff … Variable bindings g: StateVars → States Point in model

  16. Semantics on truncated paths • Based on work of Eisner et al. (2003). • Introduce Trunc S operator (truncate and use “strong” semantics) Model ( ℳ ) Model ( ℳ ) � … … … … V: Props →℘ (States) V: Props →℘ (States) ⊨ + φ Variable bindings Variable bindings g: StateVars → States g: StateVars → States Point in model Point in model

  17. Strong ( ⊨ + ) vs. weak ( ⊨ - ) semantics ℳ, g, i ⊨ + φ : φ strongly holds at index i of model ℳ . ℳ “supplies all the evidence needed” to conclude that φ holds ℳ, g, i ⊨ - φ : φ weakly holds at index i of model ℳ . ℳ “carries no evidence” against φ

  18. Strong semantics If i > | ℳ | ℳ, g, i ⊭ + φ (Skeptical) else ℳ, g, i ⊨ + p (for proposition p) iff s i ∈ V(p) ℳ, g, i ⊨ + ¬φ iff ℳ, g, i ⊭ - φ iff ℳ, g, i ⊨ + φ and ℳ, g, i ⊨ + ϕ ℳ, g, i ⊨ + φ ∧ ϕ iff ℳ, g, i+1 ⊨ + φ ℳ, g, i ⊨ + 〇 φ ℳ, g, i ⊨ + φ U ϕ ∃ k ≥ i: iff ℳ, g, k ⊨ + ϕ and ∀ j s.t. i ≤ j < k, ℳ, g, j ⊨ + φ …

  19. Weak semantics If i > | ℳ | ℳ, g, i ⊨ - φ (Generous) else ℳ, g, i ⊨ - p (for proposition p) iff s i ∈ V(p) ℳ, g, i ⊨ - ¬φ iff ℳ, g, i ⊭ + φ ℳ, g, i ⊨ - φ ∧ ϕ iff ℳ, g, i ⊨ - φ and ℳ, g, i ⊨ - ϕ iff ℳ, g, i+1 ⊨ - φ ℳ, g, i ⊨ - 〇 φ ℳ, g, i ⊨ - φ U ϕ ∃ k ≥ i: iff ℳ, g, k ⊨ - ϕ and ∀ j s.t. i ≤ j < k, ℳ, g, j ⊨ - φ …

  20. Defining Fulf and Viol • Fulf φ ≡ Exp φ ∧ Trunc S φ • Viol φ ≡ Exp φ ∧ Trunc S ¬φ

  21. Carrying forward unresolved expectations • Expections should always be expressed in terms of the current state: � – Exp 〇 φ � Exp φ • Expectations should be simplified if partially satisfied in previous state � – Exp (p ∧ 〇 φ ) � Exp φ if p held in the earlier state • This is the notion of formula progression (Bacchus and Kabanza, 2000), so we have (informally, again): – Exp φ ∧ ¬ Fulf φ ∧ ¬ Viol φ ∧ Progress( φ , ϕ ) → 〇 Exp ϕ

  22. Comparison with the Verdicchio and Colombetti semantics V&C: Done(e, mc(a, b, ûû p)) p … Comm(e,a,b, ûû p) Comm(e,a,b, ûû p) Comm(e,a,b, ûû p) Fulf(e,a,b ûû p) Our approach: p … Exp(l,r,n, ûû p) Exp(l,r,n, û p) Exp(l,r,n,p) Progress( ûû p, û p) Progress( û p,p) Fulf p

  23. Formula progression

  24. Semantics of progression

  25. Monitoring expectations using HLMC • The Hybrid Logics Model Checker (HLMC) [Dragone, 2005] – Inputs: an XML representation of a model and a textual encoding of the formula to be checked. The model can have multiple modalities with no restrictions on their structure. – Output: List of states in which the formula is true – Two algorithms: MCLITE (binders excluded from language; runs in polynomial time) and MCFULL (runs in polynomial space and time exponential on the nesting degree of binders in the formula) [Franceschet and de Rijke, 2006] MCFULL: a r ecursive algorithm that labels each subformula with true or false , for each – state, then uses those labels to label the formula itself – “ MCFULL can be viewed as a general model checker for the hybridization of any temporal logic” (by adding appropriate labelling subprocedures for each modal operator) • Extensions made: – Based on a restriction to a single “next state” modality – Generalised notion of a label: for each subformula and each state index i, store values under the weak and strong semantics for each possible future truncation point – Implement ExistsExp, ExistsFulf, ExistsViol and Progress modalities

  26. The need for generalised labels

  27. The MCFULL labelling procedure … … L i ( ¬ p ∩ û q) = ¤ i ≤ k ≤ n (L k ( û q) , ⁄ i ≤ j ≤ k L j ( ¬ p)) … … … … … … ¬ … … … … … … Labelling ↓ x φ (x) is a little more complicated (not discussed today) •

  28. HLMC extensions Formula for ∩ is modified to act on generalised labels. Also, weak semantics allows U to act like W (weak until) up to truncation point Swap and negate copy If trunc’d after Labels under weak & strong State semantics “Generalised label”

  29. Hypothetical Exp, Fulf and Viol modalities • We use these versions of Exp, Fulf and Viol: – Exp( λ , ρ , n, φ ) Fulf( λ , ρ , n, φ ) Viol( λ , ρ , n, φ ) If we had a rule with condition λ and expectation ρ , the rule would have fired at the state named by nominal n, giving rise to the [fulfilled or violated] expectation φ in the current state (Note: ρ may have become φ by multiple progression steps) • We actually implement ExistsExp( λ , ρ ), etc. – “There exists some pair (n, φ ) making Exp( λ , ρ , n, φ ) true” • For each state, the extended model checker reports all such pairs making the input formula Exists…( λ , ρ )

Recommend


More recommend