SlideShare a Scribd company logo
1 of 46
Download to read offline
Monitoring Business Metaconstraints
Based on LTL & LDL for Finite Traces
Marco Montali
KRDB Research Centre for Knowledge and Data
Free University of Bozen-Bolzano
Joint work with: G. De Giacomo, R. De Masellis, M. Grasso, F.M. Maggi
BPM 2014
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 1 / 26
Process Mining
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 2 / 26
Process Mining
Classicaly applied to post-mortem data.
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 3 / 26
Operational Decision Support
Extension of classical process mining to current, live data.
Refined process mining framework
PAGE
information system(s)
current
data
“world”people
machines
organizations
business
processes documents
historic
data
resources/
organization
data/rules
control-flow
de jure models
resources/
organization
data/rules
control-flow
de facto models
provenance
explore
predict
recommend
detect
check
compare
promote
discover
enhance
diagnose
cartographynavigation auditing
event logs
models
“pre
mortem”
“post
mortem”
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 4 / 26
Detecting Deviations
Auditing: find deviations between observed and expected behaviors.
e
o
e
ee
.
current
data
historic
data
resources/
organization
data/rules
control-flow
de jure models
resources/
organization
data/rules
control-flow
de facto models
detect
check
compare
promote
auditing
event logs
models
“pre
mortem”
“post
mortem”
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 5 / 26
Detecting Deviations
Auditing: find deviations between observed and expected behaviors.
e
o
e
ee
.
current
data
historic
data
resources/
organization
data/rules
control-flow
de jure models
resources/
organization
data/rules
control-flow
de facto models
detect
check
compare
promote
auditing
event logs
models
“pre
mortem”
“post
mortem”
Our setting:
Model
Declarative business constraints.
• E.g., Declare.
Monitoring
• Online, evolving observations.
• Prompt deviation detection.
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 5 / 26
On Promptness
Flight routes (thanks Claudio!)
• When the airplane takes off, it must eventually reach the destination airport.
• When the airplane is re-routed, it cannot reach the destination airport anymore.
• If a dangerous situation is detected at the destination, airplane must be re-routed.
take-off reach re-route danger
Question
Consider trace:
take-off danger
Is there any deviation?
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 6 / 26
Boring Answer: Apparently Not
Reactive Monitor
• Checks the partial trace
observed so far.
• Suspends the judgment if no
conclusive answer can be given.
take-off reach re-route danger
take-off danger
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 7 / 26
Boring Answer: Apparently Not
Reactive Monitor
• Checks the partial trace
observed so far.
• Suspends the judgment if no
conclusive answer can be given.
take-off reach re-route danger
take-off danger
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 7 / 26
Prophetic Answer: YES
Proactive Monitor
• Checks the partial trace observed so far.
• Looks into the future(s).
Ciao
Marco Montali (unibz) Monitoring
take-off reach re-route danger
take-off danger
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 8 / 26
Prophetic Answer: YES
Proactive Monitor
• Checks the partial trace observed so far.
• Looks into the future(s).
Ciao
Marco Montali (unibz) Monitoring
take-off reach re-route danger
take-off danger
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 8 / 26
Prophetic Answer: YES
Proactive Monitor
• Checks the partial trace observed so far.
• Looks into the future(s).
Ciao
Marco Montali (unibz) Monitoring
take-off reach re-route danger
take-off danger
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 8 / 26
Prophetic Answer: YES
Proactive Monitor
• Checks the partial trace observed so far.
• Looks into the future(s).
Ciao
Marco Montali (unibz) Monitoring
2(take-off → 3reach) ∧ ¬(3(reach) ∧ 3(re-route)) ∧ 2(danger → 3re-route)
take-off danger
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 8 / 26
Logics on Finite Traces
Goal
Reasoning on finite partial traces and their finite suffixes.
Typical Solution: ltlf
Adopt LTL on finite traces and corresponding techniques based on
Finite-State Automata.a
a
Not Büchi automata!
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 9 / 26
Logics on Finite Traces
Goal
Reasoning on finite partial traces and their finite suffixes.
Typical Solution: ltlf
Adopt LTL on finite traces and corresponding techniques based on
Finite-State Automata.a
a
Not Büchi automata!
Huge difference, often neglected, between LTL on finite and infinite traces!
See [AAAI2014]
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 9 / 26
Problem #1: Monitoring
Proactive monitoring requires to refine the standard ltlf semantics.
RV-LTL
Given an LTL formula ϕ:
• [ϕ]RV = true ; OK;
• [ϕ]RV = false ; BAD;
• [ϕ]RV = temp_true ; OK now, could become BAD in the future;
• [ϕ]RV = temp_false ; BAD now, could become OK in the future.
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 10 / 26
Problem #1: Monitoring
Proactive monitoring requires to refine the standard ltlf semantics.
RV-LTL
Given an LTL formula ϕ:
• [ϕ]RV = true ; OK;
• [ϕ]RV = false ; BAD;
• [ϕ]RV = temp_true ; OK now, could become BAD in the future;
• [ϕ]RV = temp_false ; BAD now, could become OK in the future.
However. . .
• Typically studied on infinite traces: detour to Büchi automata.
• Only ad-hoc techniques on finite traces [BPM2011].
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 10 / 26
Problem #2: Contextual Business Constraints
Need for monitoring constraints only when specific circumstances hold.
• Compensation constraints.
• Contrary-do-duty expectations.
• . . .
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 11 / 26
Problem #2: Contextual Business Constraints
Need for monitoring constraints only when specific circumstances hold.
• Compensation constraints.
• Contrary-do-duty expectations.
• . . .
However. . .
• Cannot be systematically captured at the level of constraint
specification.
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 11 / 26
Suitability of the Constraint Specification Language
ltlf
FOL over
finite traces
Star-free
regular
expressions
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 12 / 26
Suitability of the Constraint Specification Language
ltlf
MSOL over
finite traces
FOL over
finite traces
Regular
expressions
Star-free
regular
expressions
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 12 / 26
Suitability of the Constraint Specification Language
ltlf
MSOL over
finite traces
FOL over
finite traces
Regular
expressions
Star-free
regular
expressions
pspace
complexity
Nondet.
finite-state
automata
(nfa)
• ltlf : declarative, but lacking expressiveness.
• Regular expressions: rich formalism, but low-level.
(t)ake-off (r)each ((r|other)∗
(t(t|other)∗
r)(r|other)∗
)∗
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 12 / 26
Suitability of the Constraint Specification Language
ldlf
Linear Dynamic
Logic over
finite traces
ltlf
MSOL over
finite traces
FOL over
finite traces
Regular
expressions
Star-free
regular
expressions
pspace
complexity
Nondet.
finite-state
automata
(nfa)
• ltlf : declarative, but lacking expressiveness.
• Regular expressions: rich formalism, but low-level.
(t)ake-off (r)each ((r|other)∗
(t(t|other)∗
r)(r|other)∗
)∗
• ldlf : combines the best of the two!
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 12 / 26
The Logic ldlf [De Giacomo&Vardi,IJCAI13]
Merges ltlf with regular expressions, through the syntax of Propositional
Dynamic Logic (PDL):
ϕ ::= φ | tt | ff | ¬ϕ | ϕ1 ∧ ϕ2 | ρ ϕ | [ρ]ϕ
ρ ::= φ | ϕ? | ρ1 + ρ2 | ρ1; ρ2 | ρ∗
ϕ: ltlf part; ρ: regular expression part.
They mutually refer to each other:
• ρ ϕ states that, from the current step in the trace, there is an
execution satisfying ρ such that its last step satisfies ϕ.
• [ρ]ϕ states that, from the current step in the trace, all execution
satisfying ρ are such that their last step satisfies ϕ.
• ϕ? checks whether ϕ is true in the current step and, if so, continues
to evaluate the remaining execution.
Of special interest is end = [true?]ff , to check whether the trace has been
completed (the remaining trace is the empty one).
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 13 / 26
Runtime ldlf Monitors
Check partial trace π = e1, . . . , en against formula ϕ.
From ad-hoc techniques . . .
e1 . . . en |= ϕ RV =



temp_true
temp_false
true
false
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 14 / 26
Runtime ldlf Monitors
Check partial trace π = e1, . . . , en against formula ϕ.
From ad-hoc techniques . . .
e1 . . . en |= ϕ RV =



temp_true
temp_false
true
false
. . . To standard techniques
e1 . . . en |=



ϕtemp_true
ϕtemp_false
ϕtrue
ϕfalse
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 14 / 26
How is This Magic Possible?
Starting point: ldlf formula ϕ and its RV semantics.
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 15 / 26
How is This Magic Possible?
Starting point: ldlf formula ϕ and its RV semantics.
1. Good and bad prefixes
• Lposs_good(ϕ) = {π | ∃π .ππ ∈ L(ϕ)}
• Lnec_good(ϕ) = {π | ∀π .ππ ∈ L(ϕ)}
• Lnec_bad(ϕ) = Lnec_good(¬ϕ) = {π | ∀π .ππ ∈ L(ϕ)}
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 15 / 26
How is This Magic Possible?
Starting point: ldlf formula ϕ and its RV semantics.
1. Good and bad prefixes
• Lposs_good(ϕ) = {π | ∃π .ππ ∈ L(ϕ)}
• Lnec_good(ϕ) = {π | ∀π .ππ ∈ L(ϕ)}
• Lnec_bad(ϕ) = Lnec_good(¬ϕ) = {π | ∀π .ππ ∈ L(ϕ)}
2. RV-LTL values as prefixes
• π |= [ϕ]RV = true iff π ∈ Lnec_good(ϕ);
• π |= [ϕ]RV = false iff π ∈ Lnec_bad(ϕ);
• π |= [ϕ]RV = temp_true iff π ∈ L(ϕ)  Lnec_good(ϕ);
• π |= [ϕ]RV = temp_false iff π ∈ L(¬ϕ)  Lnec_bad(ϕ).
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 15 / 26
How is This Black Magic Possible?
3. Prefixes as regular expressions
Every nfa can be expressed as a regular expression.
; We can build regular expression prefϕ s.t. L(prefϕ) = Lposs_good(ϕ).
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 16 / 26
How is This Black Magic Possible?
3. Prefixes as regular expressions
Every nfa can be expressed as a regular expression.
; We can build regular expression prefϕ s.t. L(prefϕ) = Lposs_good(ϕ).
4. Regular expressions can be immersed into ldlf
Hence: π ∈ Lposs_good(ϕ) iff π |= prefϕ end
π ∈ Lnec_good(ϕ) iff π |= prefϕ end ∧ ¬ pref¬ϕ end
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 16 / 26
How is This Black Magic Possible?
3. Prefixes as regular expressions
Every nfa can be expressed as a regular expression.
; We can build regular expression prefϕ s.t. L(prefϕ) = Lposs_good(ϕ).
4. Regular expressions can be immersed into ldlf
Hence: π ∈ Lposs_good(ϕ) iff π |= prefϕ end
π ∈ Lnec_good(ϕ) iff π |= prefϕ end ∧ ¬ pref¬ϕ end
5. RV-LTL can be immersed into ldlf !
• π |= [ϕ]RV = true iff prefϕ end ∧ ¬ pref¬ϕ end;
• π |= [ϕ]RV = false iff pref¬ϕ end ∧ ¬ prefϕ end;
• π |= [ϕ]RV = temp_true iff π |= ϕ ∧ pref¬ϕ end;
• π |= [ϕ]RV = temp_false iff π |= ¬ϕ ∧ prefϕ end.
Ending point: 4 ldlf monitor formulae under standard semantics.
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 16 / 26
Monitoring declare with ldlf
Step 1. Good prefixes of declare patterns.
name notation pref possible RV states
existence
Existence
1..∗
a (a + o)∗ temp_false, true
Absence 2
0..1
a o∗ + (o∗; a; o∗) temp_true, false
choice
Choice a −−
♦
−− b (a + b + o)∗ temp_false, true
Exclusive Choice a −− −− b (a + o)∗ + (b + o)∗ temp_false, temp_true, false
relation
Resp. existence a •−−−− b (a + b + o)∗ temp_true, temp_false, true
Response a •−−− b (a + b + o)∗ temp_true, temp_false
Precedence a −−− • b o∗; (a; (a + b + o)∗)∗ temp_true, true, false
negation
Not Coexistence a •−−−• b (a + o)∗ + (b + o)∗ temp_true, false
Neg. Succession a •−− • b (b + o)∗; (a + o)∗ temp_true, false
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 17 / 26
Monitoring declare with ldlf
Step 1. Good prefixes of declare patterns.
name notation pref possible RV states
existence
Existence
1..∗
a (a + o)∗ temp_false, true
Absence 2
0..1
a o∗ + (o∗; a; o∗) temp_true, false
choice
Choice a −−
♦
−− b (a + b + o)∗ temp_false, true
Exclusive Choice a −− −− b (a + o)∗ + (b + o)∗ temp_false, temp_true, false
relation
Resp. existence a •−−−− b (a + b + o)∗ temp_true, temp_false, true
Response a •−−− b (a + b + o)∗ temp_true, temp_false
Precedence a −−− • b o∗; (a; (a + b + o)∗)∗ temp_true, true, false
negation
Not Coexistence a •−−−• b (a + o)∗ + (b + o)∗ temp_true, false
Neg. Succession a •−− • b (b + o)∗; (a + o)∗ temp_true, false
Step 2. Generate ldlf monitors.
• Local monitors: 1 formula for possible RV constraint state.
• Global monitors: 4 RV formulae for the conjunction of all constraints.
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 17 / 26
One Step Beyond: Metaconstraints
ldlf monitors are simply ldlf formulae.
They can be combined into more complex ldlf formulae!
• E.g., expressing conditional/contextual monitoring.
Business metaconstraint
An ldlf formula of the form Φpre → Ψexp
• Φpre combines membership assertions of business constraints to their
RV truth values.
• Ψexp combines business constraints to be checked when Φpre holds.
ldlf metaconstraint monitors
• Φpre → Ψexp is a standard ldlf formula.
• Hence, just reapply our technique and get the 4 ldlf monitors.
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 18 / 26
Compensation Constraints
• An order cannot be canceled anymore if it is closed.
ϕcanc = close order •−− • cancel order
• If this happens, then the customer has to pay a supplement:
ϕdopay =
1..∗
pay supplement
• Formally: {[ϕcanc]RV = false} → ϕdopay
• In ldlf : ( pref¬ϕcanc
end ∧ ¬ prefϕcanc
end) → ϕdopay
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 19 / 26
Compensation Constraints
• An order cannot be canceled anymore if it is closed.
ϕcanc = close order •−− • cancel order
• If this happens, then the customer has to pay a supplement:
ϕdopay =
1..∗
pay supplement
• Formally: {[ϕcanc]RV = false} → ϕdopay
• In ldlf : ( pref¬ϕcanc
end ∧ ¬ prefϕcanc
end) → ϕdopay
Observation
When the violation occurs, the compensation is monitored from the
beginning of the trace: OK to “compensate in advance”.
• Trace close order → pay supplement → cancel order is OK.
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 19 / 26
Metaconstraints Revisited
Business metaconstraint with temporal consequence
1. Take Φpre and Ψexp as before.
2. Compute ρ: regular expression denoting those paths that satisfy Φpre
3. Make ρ part of the compensation:
Φpre→ [ρ] Ψexp
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 20 / 26
Metaconstraints Revisited
Business metaconstraint with temporal consequence
1. Take Φpre and Ψexp as before.
2. Compute ρ: regular expression denoting those paths that satisfy Φpre
3. Make ρ part of the compensation:
Φpre→ [ρ] Ψexp
Ψexp has now to be enforced after Φpre becomes true.
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 20 / 26
Compensation Revisited
• An order cannot be canceled anymore if it is closed.
ϕcanc = close order •−− • cancel order
• After this happens, then the customer has to pay a supplement:
ϕdopay =
1..∗
pay supplement
• Formally:
{[ϕcanc]RV = false}→ [re{[ϕcanc]RV =false}] ϕdopay
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 21 / 26
Compensation Revisited
• An order cannot be canceled anymore if it is closed.
ϕcanc = close order •−− • cancel order
• After this happens, then the customer has to pay a supplement:
ϕdopay =
1..∗
pay supplement
• Formally:
{[ϕcanc]RV = false}→ [re{[ϕcanc]RV =false}] ϕdopay
All traces violating ϕcanc
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 21 / 26
From ldlf to nfa
Direct calculation of nfa corresponding to ldlf formula ϕ
Algorithm
1: algorithm ldlf 2nfa()
2: input ltlf formula ϕ
3: output nfa Aϕ = (2P
, S, {s0}, , {sf })
4: s0 ← {"ϕ"} single initial state
5: sf ← ∅ single final state
6: S ← {s0, sf }, ← ∅
7: while (S or change) do
8: if (q ∈ S and q |= ("ψ"∈q) δ("ψ", Θ))
9: S ← S ∪ {q } update set of states
10: ← ∪ {(q, Θ, q )} update transition relation
Note
• Standard nfa.
• No detour to Büchi automata.
• Easy to code.
• Implemented!
Auxiliary rules
δ("tt", Π) = true
δ("ff ", Π) = false
δ("φ", Π) =
true if Π |= φ
false if Π |= φ
(φ propositional)
δ("ϕ1 ∧ ϕ2", Π) = δ("ϕ1", Π) ∧ δ("ϕ2", Π)
δ("ϕ1 ∨ ϕ2", Π) = δ("ϕ1", Π) ∨ δ("ϕ2", Π)
δ(" φ ϕ", Π) =



"ϕ" if last ∈ Π and Π |= φ (φ propositional)
δ("ϕ", ) if last ∈ Π and Π |= φ
false if Π |= φ
δ(" ψ? ϕ", Π) = δ("ψ", Π) ∧ δ("ϕ", Π)
δ(" ρ1 + ρ2 ϕ", Π) = δ(" ρ1 ϕ", Π) ∨ δ(" ρ2 ϕ", Π)
δ(" ρ1; ρ2 ϕ", Π) = δ(" ρ1 ρ2 ϕ", Π)
δ(" ρ∗
ϕ", Π) =
δ("ϕ", Π) if ρ is test-only
δ("ϕ", Π) ∨ δ(" ρ ρ∗ ϕ", Π) o/w
δ("[φ]ϕ", Π) =



"ϕ" if last ∈ Π and Π |= φ (φ propositional)
δ("ϕ", ) if last ∈ Π and Π |= φ (φ propositional)
true if Π |= φ
δ("[ψ?]ϕ", Π) = δ("nnf (¬ψ)", Π) ∨ δ("ϕ", Π)
δ("[ρ1 + ρ2]ϕ", Π) = δ("[ρ1]ϕ", Π) ∧ δ("[ρ2]ϕ", Π)
δ("[ρ1; ρ2]ϕ", Π) = δ("[ρ1][ρ2]ϕ", Π)
δ("[ρ∗
]ϕ", Π) =
δ("ϕ", Π) if ρ is test-only
δ("ϕ", Π) ∧ δ("[ρ][ρ∗]ϕ", Π) o/w
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 22 / 26
Implemented in ProM!
Approach
1. Input ltlf /ldlf constraints and metaconstraints.
2. Produce the corresponding RV ldlf monitoring formulae.
3. Apply the direct algorithm and get the corresponding nfas.
4. (Incrementally) run nfas the monitored trace.
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 23 / 26
Connection with Colored Automata
Colored Automata [BPM2011]
Ad-hoc technique for monitoring ltlf formulae according to RV-LTL.
1. Color states of each local automaton according
to the 4 RV-LTL truth values.
2. Combine colored automata into a global
colored automaton.
000
(N)(P)(R)
001
(N)(P)r
M
010
(N)(R)
C
202
(N)(P)R
E
320
(N)P(R)
S
011
(N)r
C
E
321
(N)Pr
S
M
212
(N)R
E
310
(N)(R)
S
E
311
(N)r
S
112
R
122
PR
S
C
S
E
M
E
E
M E
Why is step 1 correct?
1. Take the ltlf formula ϕ of a constraint.
2. Produce the 4 corresponding ldlf monitoring formulae.
3. Generate the 4 corresponding nfas.
4. Determinize them ; they are identical but with = acceptance states!
5. Hence they can be combined into a unique colored local dfa.
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 24 / 26
Conclusion
• Focus on finite traces.
• Avoid unneeded detour to infinite traces.
• ldlf : essentially, the maximal expressive logic for finite traces with
good computational properties (≡ MSO).
• Monitoring is a key problem.
• ldlf goes far beyond declare.
• ldlf captures monitors directly as formulae.
Clean.
Meta-constraints.
• Implemented in ProM!
Future work: declarative, data-aware processes.
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 25 / 26
Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 26 / 26

More Related Content

More from Faculty of Computer Science - Free University of Bozen-Bolzano

More from Faculty of Computer Science - Free University of Bozen-Bolzano (20)

From Case-Isolated to Object-Centric Processes - A Tale of two Models
From Case-Isolated to Object-Centric Processes - A Tale of two ModelsFrom Case-Isolated to Object-Centric Processes - A Tale of two Models
From Case-Isolated to Object-Centric Processes - A Tale of two Models
 
Reasoning on Labelled Petri Nets and Their Dynamics in a Stochastic Setting
Reasoning on Labelled Petri Nets and Their Dynamics in a Stochastic SettingReasoning on Labelled Petri Nets and Their Dynamics in a Stochastic Setting
Reasoning on Labelled Petri Nets and Their Dynamics in a Stochastic Setting
 
Constraints for Process Framing in Augmented BPM
Constraints for Process Framing in Augmented BPMConstraints for Process Framing in Augmented BPM
Constraints for Process Framing in Augmented BPM
 
Intelligent Systems for Process Mining
Intelligent Systems for Process MiningIntelligent Systems for Process Mining
Intelligent Systems for Process Mining
 
Declarative process mining
Declarative process miningDeclarative process mining
Declarative process mining
 
Process Reasoning and Mining with Uncertainty
Process Reasoning and Mining with UncertaintyProcess Reasoning and Mining with Uncertainty
Process Reasoning and Mining with Uncertainty
 
From Case-Isolated to Object-Centric Processes
From Case-Isolated to Object-Centric ProcessesFrom Case-Isolated to Object-Centric Processes
From Case-Isolated to Object-Centric Processes
 
Modeling and Reasoning over Declarative Data-Aware Processes
Modeling and Reasoning over Declarative Data-Aware ProcessesModeling and Reasoning over Declarative Data-Aware Processes
Modeling and Reasoning over Declarative Data-Aware Processes
 
Soundness of Data-Aware Processes with Arithmetic Conditions
Soundness of Data-Aware Processes with Arithmetic ConditionsSoundness of Data-Aware Processes with Arithmetic Conditions
Soundness of Data-Aware Processes with Arithmetic Conditions
 
Probabilistic Trace Alignment
Probabilistic Trace AlignmentProbabilistic Trace Alignment
Probabilistic Trace Alignment
 
Strategy Synthesis for Data-Aware Dynamic Systems with Multiple Actors
Strategy Synthesis for Data-Aware Dynamic Systems with Multiple ActorsStrategy Synthesis for Data-Aware Dynamic Systems with Multiple Actors
Strategy Synthesis for Data-Aware Dynamic Systems with Multiple Actors
 
Extending Temporal Business Constraints with Uncertainty
Extending Temporal Business Constraints with UncertaintyExtending Temporal Business Constraints with Uncertainty
Extending Temporal Business Constraints with Uncertainty
 
Extending Temporal Business Constraints with Uncertainty
Extending Temporal Business Constraints with UncertaintyExtending Temporal Business Constraints with Uncertainty
Extending Temporal Business Constraints with Uncertainty
 
Modeling and Reasoning over Declarative Data-Aware Processes with Object-Cent...
Modeling and Reasoning over Declarative Data-Aware Processes with Object-Cent...Modeling and Reasoning over Declarative Data-Aware Processes with Object-Cent...
Modeling and Reasoning over Declarative Data-Aware Processes with Object-Cent...
 
From legacy data to event data
From legacy data to event dataFrom legacy data to event data
From legacy data to event data
 
Putting Decisions in Perspective(s)
Putting Decisions in Perspective(s)Putting Decisions in Perspective(s)
Putting Decisions in Perspective(s)
 
Enriching Data Models with Behavioral Constraints
Enriching Data Models with Behavioral ConstraintsEnriching Data Models with Behavioral Constraints
Enriching Data Models with Behavioral Constraints
 
Representing and querying norm states using temporal ontology-based data access
Representing and querying norm states using temporal ontology-based data accessRepresenting and querying norm states using temporal ontology-based data access
Representing and querying norm states using temporal ontology-based data access
 
Compliance monitoring of multi-perspective declarative process models
Compliance monitoring of multi-perspective declarative process modelsCompliance monitoring of multi-perspective declarative process models
Compliance monitoring of multi-perspective declarative process models
 
Processes and organizations - a look behind the paper wall
Processes and organizations - a look behind the paper wallProcesses and organizations - a look behind the paper wall
Processes and organizations - a look behind the paper wall
 

Recently uploaded

Mohammad_Alnahdi_Oral_Presentation_Assignment.pptx
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptxMohammad_Alnahdi_Oral_Presentation_Assignment.pptx
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptxmohammadalnahdi22
 
Presentation on Engagement in Book Clubs
Presentation on Engagement in Book ClubsPresentation on Engagement in Book Clubs
Presentation on Engagement in Book Clubssamaasim06
 
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024eCommerce Institute
 
Call Girl Number in Khar Mumbai📲 9892124323 💞 Full Night Enjoy
Call Girl Number in Khar Mumbai📲 9892124323 💞 Full Night EnjoyCall Girl Number in Khar Mumbai📲 9892124323 💞 Full Night Enjoy
Call Girl Number in Khar Mumbai📲 9892124323 💞 Full Night EnjoyPooja Nehwal
 
Thirunelveli call girls Tamil escorts 7877702510
Thirunelveli call girls Tamil escorts 7877702510Thirunelveli call girls Tamil escorts 7877702510
Thirunelveli call girls Tamil escorts 7877702510Vipesco
 
If this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New NigeriaIf this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New NigeriaKayode Fayemi
 
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara ServicesVVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara ServicesPooja Nehwal
 
Introduction to Prompt Engineering (Focusing on ChatGPT)
Introduction to Prompt Engineering (Focusing on ChatGPT)Introduction to Prompt Engineering (Focusing on ChatGPT)
Introduction to Prompt Engineering (Focusing on ChatGPT)Chameera Dedduwage
 
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...Pooja Nehwal
 
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdf
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdfCTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdf
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdfhenrik385807
 
No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...
No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...
No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...Sheetaleventcompany
 
BDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort ServiceDelhi Call girls
 
Microsoft Copilot AI for Everyone - created by AI
Microsoft Copilot AI for Everyone - created by AIMicrosoft Copilot AI for Everyone - created by AI
Microsoft Copilot AI for Everyone - created by AITatiana Gurgel
 
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...Hasting Chen
 
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...henrik385807
 
Mathematics of Finance Presentation.pptx
Mathematics of Finance Presentation.pptxMathematics of Finance Presentation.pptx
Mathematics of Finance Presentation.pptxMoumonDas2
 
George Lever - eCommerce Day Chile 2024
George Lever -  eCommerce Day Chile 2024George Lever -  eCommerce Day Chile 2024
George Lever - eCommerce Day Chile 2024eCommerce Institute
 
Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...
Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...
Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...Kayode Fayemi
 
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptx
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptxChiulli_Aurora_Oman_Raffaele_Beowulf.pptx
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptxraffaeleoman
 
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )Pooja Nehwal
 

Recently uploaded (20)

Mohammad_Alnahdi_Oral_Presentation_Assignment.pptx
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptxMohammad_Alnahdi_Oral_Presentation_Assignment.pptx
Mohammad_Alnahdi_Oral_Presentation_Assignment.pptx
 
Presentation on Engagement in Book Clubs
Presentation on Engagement in Book ClubsPresentation on Engagement in Book Clubs
Presentation on Engagement in Book Clubs
 
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
Andrés Ramírez Gossler, Facundo Schinnea - eCommerce Day Chile 2024
 
Call Girl Number in Khar Mumbai📲 9892124323 💞 Full Night Enjoy
Call Girl Number in Khar Mumbai📲 9892124323 💞 Full Night EnjoyCall Girl Number in Khar Mumbai📲 9892124323 💞 Full Night Enjoy
Call Girl Number in Khar Mumbai📲 9892124323 💞 Full Night Enjoy
 
Thirunelveli call girls Tamil escorts 7877702510
Thirunelveli call girls Tamil escorts 7877702510Thirunelveli call girls Tamil escorts 7877702510
Thirunelveli call girls Tamil escorts 7877702510
 
If this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New NigeriaIf this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New Nigeria
 
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara ServicesVVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
VVIP Call Girls Nalasopara : 9892124323, Call Girls in Nalasopara Services
 
Introduction to Prompt Engineering (Focusing on ChatGPT)
Introduction to Prompt Engineering (Focusing on ChatGPT)Introduction to Prompt Engineering (Focusing on ChatGPT)
Introduction to Prompt Engineering (Focusing on ChatGPT)
 
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
Navi Mumbai Call Girls Service Pooja 9892124323 Real Russian Girls Looking Mo...
 
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdf
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdfCTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdf
CTAC 2024 Valencia - Henrik Hanke - Reduce to the max - slideshare.pdf
 
No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...
No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...
No Advance 8868886958 Chandigarh Call Girls , Indian Call Girls For Full Nigh...
 
BDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort ServiceBDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort Service
BDSM⚡Call Girls in Sector 93 Noida Escorts >༒8448380779 Escort Service
 
Microsoft Copilot AI for Everyone - created by AI
Microsoft Copilot AI for Everyone - created by AIMicrosoft Copilot AI for Everyone - created by AI
Microsoft Copilot AI for Everyone - created by AI
 
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
Re-membering the Bard: Revisiting The Compleat Wrks of Wllm Shkspr (Abridged)...
 
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
CTAC 2024 Valencia - Sven Zoelle - Most Crucial Invest to Digitalisation_slid...
 
Mathematics of Finance Presentation.pptx
Mathematics of Finance Presentation.pptxMathematics of Finance Presentation.pptx
Mathematics of Finance Presentation.pptx
 
George Lever - eCommerce Day Chile 2024
George Lever -  eCommerce Day Chile 2024George Lever -  eCommerce Day Chile 2024
George Lever - eCommerce Day Chile 2024
 
Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...
Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...
Governance and Nation-Building in Nigeria: Some Reflections on Options for Po...
 
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptx
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptxChiulli_Aurora_Oman_Raffaele_Beowulf.pptx
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptx
 
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
WhatsApp 📞 9892124323 ✅Call Girls In Juhu ( Mumbai )
 

Monitoring Business Constraints Online

  • 1. Monitoring Business Metaconstraints Based on LTL & LDL for Finite Traces Marco Montali KRDB Research Centre for Knowledge and Data Free University of Bozen-Bolzano Joint work with: G. De Giacomo, R. De Masellis, M. Grasso, F.M. Maggi BPM 2014 Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 1 / 26
  • 2. Process Mining Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 2 / 26
  • 3. Process Mining Classicaly applied to post-mortem data. Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 3 / 26
  • 4. Operational Decision Support Extension of classical process mining to current, live data. Refined process mining framework PAGE information system(s) current data “world”people machines organizations business processes documents historic data resources/ organization data/rules control-flow de jure models resources/ organization data/rules control-flow de facto models provenance explore predict recommend detect check compare promote discover enhance diagnose cartographynavigation auditing event logs models “pre mortem” “post mortem” Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 4 / 26
  • 5. Detecting Deviations Auditing: find deviations between observed and expected behaviors. e o e ee . current data historic data resources/ organization data/rules control-flow de jure models resources/ organization data/rules control-flow de facto models detect check compare promote auditing event logs models “pre mortem” “post mortem” Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 5 / 26
  • 6. Detecting Deviations Auditing: find deviations between observed and expected behaviors. e o e ee . current data historic data resources/ organization data/rules control-flow de jure models resources/ organization data/rules control-flow de facto models detect check compare promote auditing event logs models “pre mortem” “post mortem” Our setting: Model Declarative business constraints. • E.g., Declare. Monitoring • Online, evolving observations. • Prompt deviation detection. Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 5 / 26
  • 7. On Promptness Flight routes (thanks Claudio!) • When the airplane takes off, it must eventually reach the destination airport. • When the airplane is re-routed, it cannot reach the destination airport anymore. • If a dangerous situation is detected at the destination, airplane must be re-routed. take-off reach re-route danger Question Consider trace: take-off danger Is there any deviation? Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 6 / 26
  • 8. Boring Answer: Apparently Not Reactive Monitor • Checks the partial trace observed so far. • Suspends the judgment if no conclusive answer can be given. take-off reach re-route danger take-off danger Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 7 / 26
  • 9. Boring Answer: Apparently Not Reactive Monitor • Checks the partial trace observed so far. • Suspends the judgment if no conclusive answer can be given. take-off reach re-route danger take-off danger Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 7 / 26
  • 10. Prophetic Answer: YES Proactive Monitor • Checks the partial trace observed so far. • Looks into the future(s). Ciao Marco Montali (unibz) Monitoring take-off reach re-route danger take-off danger Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 8 / 26
  • 11. Prophetic Answer: YES Proactive Monitor • Checks the partial trace observed so far. • Looks into the future(s). Ciao Marco Montali (unibz) Monitoring take-off reach re-route danger take-off danger Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 8 / 26
  • 12. Prophetic Answer: YES Proactive Monitor • Checks the partial trace observed so far. • Looks into the future(s). Ciao Marco Montali (unibz) Monitoring take-off reach re-route danger take-off danger Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 8 / 26
  • 13. Prophetic Answer: YES Proactive Monitor • Checks the partial trace observed so far. • Looks into the future(s). Ciao Marco Montali (unibz) Monitoring 2(take-off → 3reach) ∧ ¬(3(reach) ∧ 3(re-route)) ∧ 2(danger → 3re-route) take-off danger Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 8 / 26
  • 14. Logics on Finite Traces Goal Reasoning on finite partial traces and their finite suffixes. Typical Solution: ltlf Adopt LTL on finite traces and corresponding techniques based on Finite-State Automata.a a Not Büchi automata! Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 9 / 26
  • 15. Logics on Finite Traces Goal Reasoning on finite partial traces and their finite suffixes. Typical Solution: ltlf Adopt LTL on finite traces and corresponding techniques based on Finite-State Automata.a a Not Büchi automata! Huge difference, often neglected, between LTL on finite and infinite traces! See [AAAI2014] Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 9 / 26
  • 16. Problem #1: Monitoring Proactive monitoring requires to refine the standard ltlf semantics. RV-LTL Given an LTL formula ϕ: • [ϕ]RV = true ; OK; • [ϕ]RV = false ; BAD; • [ϕ]RV = temp_true ; OK now, could become BAD in the future; • [ϕ]RV = temp_false ; BAD now, could become OK in the future. Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 10 / 26
  • 17. Problem #1: Monitoring Proactive monitoring requires to refine the standard ltlf semantics. RV-LTL Given an LTL formula ϕ: • [ϕ]RV = true ; OK; • [ϕ]RV = false ; BAD; • [ϕ]RV = temp_true ; OK now, could become BAD in the future; • [ϕ]RV = temp_false ; BAD now, could become OK in the future. However. . . • Typically studied on infinite traces: detour to Büchi automata. • Only ad-hoc techniques on finite traces [BPM2011]. Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 10 / 26
  • 18. Problem #2: Contextual Business Constraints Need for monitoring constraints only when specific circumstances hold. • Compensation constraints. • Contrary-do-duty expectations. • . . . Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 11 / 26
  • 19. Problem #2: Contextual Business Constraints Need for monitoring constraints only when specific circumstances hold. • Compensation constraints. • Contrary-do-duty expectations. • . . . However. . . • Cannot be systematically captured at the level of constraint specification. Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 11 / 26
  • 20. Suitability of the Constraint Specification Language ltlf FOL over finite traces Star-free regular expressions Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 12 / 26
  • 21. Suitability of the Constraint Specification Language ltlf MSOL over finite traces FOL over finite traces Regular expressions Star-free regular expressions Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 12 / 26
  • 22. Suitability of the Constraint Specification Language ltlf MSOL over finite traces FOL over finite traces Regular expressions Star-free regular expressions pspace complexity Nondet. finite-state automata (nfa) • ltlf : declarative, but lacking expressiveness. • Regular expressions: rich formalism, but low-level. (t)ake-off (r)each ((r|other)∗ (t(t|other)∗ r)(r|other)∗ )∗ Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 12 / 26
  • 23. Suitability of the Constraint Specification Language ldlf Linear Dynamic Logic over finite traces ltlf MSOL over finite traces FOL over finite traces Regular expressions Star-free regular expressions pspace complexity Nondet. finite-state automata (nfa) • ltlf : declarative, but lacking expressiveness. • Regular expressions: rich formalism, but low-level. (t)ake-off (r)each ((r|other)∗ (t(t|other)∗ r)(r|other)∗ )∗ • ldlf : combines the best of the two! Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 12 / 26
  • 24. The Logic ldlf [De Giacomo&Vardi,IJCAI13] Merges ltlf with regular expressions, through the syntax of Propositional Dynamic Logic (PDL): ϕ ::= φ | tt | ff | ¬ϕ | ϕ1 ∧ ϕ2 | ρ ϕ | [ρ]ϕ ρ ::= φ | ϕ? | ρ1 + ρ2 | ρ1; ρ2 | ρ∗ ϕ: ltlf part; ρ: regular expression part. They mutually refer to each other: • ρ ϕ states that, from the current step in the trace, there is an execution satisfying ρ such that its last step satisfies ϕ. • [ρ]ϕ states that, from the current step in the trace, all execution satisfying ρ are such that their last step satisfies ϕ. • ϕ? checks whether ϕ is true in the current step and, if so, continues to evaluate the remaining execution. Of special interest is end = [true?]ff , to check whether the trace has been completed (the remaining trace is the empty one). Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 13 / 26
  • 25. Runtime ldlf Monitors Check partial trace π = e1, . . . , en against formula ϕ. From ad-hoc techniques . . . e1 . . . en |= ϕ RV =    temp_true temp_false true false Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 14 / 26
  • 26. Runtime ldlf Monitors Check partial trace π = e1, . . . , en against formula ϕ. From ad-hoc techniques . . . e1 . . . en |= ϕ RV =    temp_true temp_false true false . . . To standard techniques e1 . . . en |=    ϕtemp_true ϕtemp_false ϕtrue ϕfalse Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 14 / 26
  • 27. How is This Magic Possible? Starting point: ldlf formula ϕ and its RV semantics. Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 15 / 26
  • 28. How is This Magic Possible? Starting point: ldlf formula ϕ and its RV semantics. 1. Good and bad prefixes • Lposs_good(ϕ) = {π | ∃π .ππ ∈ L(ϕ)} • Lnec_good(ϕ) = {π | ∀π .ππ ∈ L(ϕ)} • Lnec_bad(ϕ) = Lnec_good(¬ϕ) = {π | ∀π .ππ ∈ L(ϕ)} Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 15 / 26
  • 29. How is This Magic Possible? Starting point: ldlf formula ϕ and its RV semantics. 1. Good and bad prefixes • Lposs_good(ϕ) = {π | ∃π .ππ ∈ L(ϕ)} • Lnec_good(ϕ) = {π | ∀π .ππ ∈ L(ϕ)} • Lnec_bad(ϕ) = Lnec_good(¬ϕ) = {π | ∀π .ππ ∈ L(ϕ)} 2. RV-LTL values as prefixes • π |= [ϕ]RV = true iff π ∈ Lnec_good(ϕ); • π |= [ϕ]RV = false iff π ∈ Lnec_bad(ϕ); • π |= [ϕ]RV = temp_true iff π ∈ L(ϕ) Lnec_good(ϕ); • π |= [ϕ]RV = temp_false iff π ∈ L(¬ϕ) Lnec_bad(ϕ). Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 15 / 26
  • 30. How is This Black Magic Possible? 3. Prefixes as regular expressions Every nfa can be expressed as a regular expression. ; We can build regular expression prefϕ s.t. L(prefϕ) = Lposs_good(ϕ). Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 16 / 26
  • 31. How is This Black Magic Possible? 3. Prefixes as regular expressions Every nfa can be expressed as a regular expression. ; We can build regular expression prefϕ s.t. L(prefϕ) = Lposs_good(ϕ). 4. Regular expressions can be immersed into ldlf Hence: π ∈ Lposs_good(ϕ) iff π |= prefϕ end π ∈ Lnec_good(ϕ) iff π |= prefϕ end ∧ ¬ pref¬ϕ end Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 16 / 26
  • 32. How is This Black Magic Possible? 3. Prefixes as regular expressions Every nfa can be expressed as a regular expression. ; We can build regular expression prefϕ s.t. L(prefϕ) = Lposs_good(ϕ). 4. Regular expressions can be immersed into ldlf Hence: π ∈ Lposs_good(ϕ) iff π |= prefϕ end π ∈ Lnec_good(ϕ) iff π |= prefϕ end ∧ ¬ pref¬ϕ end 5. RV-LTL can be immersed into ldlf ! • π |= [ϕ]RV = true iff prefϕ end ∧ ¬ pref¬ϕ end; • π |= [ϕ]RV = false iff pref¬ϕ end ∧ ¬ prefϕ end; • π |= [ϕ]RV = temp_true iff π |= ϕ ∧ pref¬ϕ end; • π |= [ϕ]RV = temp_false iff π |= ¬ϕ ∧ prefϕ end. Ending point: 4 ldlf monitor formulae under standard semantics. Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 16 / 26
  • 33. Monitoring declare with ldlf Step 1. Good prefixes of declare patterns. name notation pref possible RV states existence Existence 1..∗ a (a + o)∗ temp_false, true Absence 2 0..1 a o∗ + (o∗; a; o∗) temp_true, false choice Choice a −− ♦ −− b (a + b + o)∗ temp_false, true Exclusive Choice a −− −− b (a + o)∗ + (b + o)∗ temp_false, temp_true, false relation Resp. existence a •−−−− b (a + b + o)∗ temp_true, temp_false, true Response a •−−− b (a + b + o)∗ temp_true, temp_false Precedence a −−− • b o∗; (a; (a + b + o)∗)∗ temp_true, true, false negation Not Coexistence a •−−−• b (a + o)∗ + (b + o)∗ temp_true, false Neg. Succession a •−− • b (b + o)∗; (a + o)∗ temp_true, false Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 17 / 26
  • 34. Monitoring declare with ldlf Step 1. Good prefixes of declare patterns. name notation pref possible RV states existence Existence 1..∗ a (a + o)∗ temp_false, true Absence 2 0..1 a o∗ + (o∗; a; o∗) temp_true, false choice Choice a −− ♦ −− b (a + b + o)∗ temp_false, true Exclusive Choice a −− −− b (a + o)∗ + (b + o)∗ temp_false, temp_true, false relation Resp. existence a •−−−− b (a + b + o)∗ temp_true, temp_false, true Response a •−−− b (a + b + o)∗ temp_true, temp_false Precedence a −−− • b o∗; (a; (a + b + o)∗)∗ temp_true, true, false negation Not Coexistence a •−−−• b (a + o)∗ + (b + o)∗ temp_true, false Neg. Succession a •−− • b (b + o)∗; (a + o)∗ temp_true, false Step 2. Generate ldlf monitors. • Local monitors: 1 formula for possible RV constraint state. • Global monitors: 4 RV formulae for the conjunction of all constraints. Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 17 / 26
  • 35. One Step Beyond: Metaconstraints ldlf monitors are simply ldlf formulae. They can be combined into more complex ldlf formulae! • E.g., expressing conditional/contextual monitoring. Business metaconstraint An ldlf formula of the form Φpre → Ψexp • Φpre combines membership assertions of business constraints to their RV truth values. • Ψexp combines business constraints to be checked when Φpre holds. ldlf metaconstraint monitors • Φpre → Ψexp is a standard ldlf formula. • Hence, just reapply our technique and get the 4 ldlf monitors. Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 18 / 26
  • 36. Compensation Constraints • An order cannot be canceled anymore if it is closed. ϕcanc = close order •−− • cancel order • If this happens, then the customer has to pay a supplement: ϕdopay = 1..∗ pay supplement • Formally: {[ϕcanc]RV = false} → ϕdopay • In ldlf : ( pref¬ϕcanc end ∧ ¬ prefϕcanc end) → ϕdopay Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 19 / 26
  • 37. Compensation Constraints • An order cannot be canceled anymore if it is closed. ϕcanc = close order •−− • cancel order • If this happens, then the customer has to pay a supplement: ϕdopay = 1..∗ pay supplement • Formally: {[ϕcanc]RV = false} → ϕdopay • In ldlf : ( pref¬ϕcanc end ∧ ¬ prefϕcanc end) → ϕdopay Observation When the violation occurs, the compensation is monitored from the beginning of the trace: OK to “compensate in advance”. • Trace close order → pay supplement → cancel order is OK. Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 19 / 26
  • 38. Metaconstraints Revisited Business metaconstraint with temporal consequence 1. Take Φpre and Ψexp as before. 2. Compute ρ: regular expression denoting those paths that satisfy Φpre 3. Make ρ part of the compensation: Φpre→ [ρ] Ψexp Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 20 / 26
  • 39. Metaconstraints Revisited Business metaconstraint with temporal consequence 1. Take Φpre and Ψexp as before. 2. Compute ρ: regular expression denoting those paths that satisfy Φpre 3. Make ρ part of the compensation: Φpre→ [ρ] Ψexp Ψexp has now to be enforced after Φpre becomes true. Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 20 / 26
  • 40. Compensation Revisited • An order cannot be canceled anymore if it is closed. ϕcanc = close order •−− • cancel order • After this happens, then the customer has to pay a supplement: ϕdopay = 1..∗ pay supplement • Formally: {[ϕcanc]RV = false}→ [re{[ϕcanc]RV =false}] ϕdopay Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 21 / 26
  • 41. Compensation Revisited • An order cannot be canceled anymore if it is closed. ϕcanc = close order •−− • cancel order • After this happens, then the customer has to pay a supplement: ϕdopay = 1..∗ pay supplement • Formally: {[ϕcanc]RV = false}→ [re{[ϕcanc]RV =false}] ϕdopay All traces violating ϕcanc Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 21 / 26
  • 42. From ldlf to nfa Direct calculation of nfa corresponding to ldlf formula ϕ Algorithm 1: algorithm ldlf 2nfa() 2: input ltlf formula ϕ 3: output nfa Aϕ = (2P , S, {s0}, , {sf }) 4: s0 ← {"ϕ"} single initial state 5: sf ← ∅ single final state 6: S ← {s0, sf }, ← ∅ 7: while (S or change) do 8: if (q ∈ S and q |= ("ψ"∈q) δ("ψ", Θ)) 9: S ← S ∪ {q } update set of states 10: ← ∪ {(q, Θ, q )} update transition relation Note • Standard nfa. • No detour to Büchi automata. • Easy to code. • Implemented! Auxiliary rules δ("tt", Π) = true δ("ff ", Π) = false δ("φ", Π) = true if Π |= φ false if Π |= φ (φ propositional) δ("ϕ1 ∧ ϕ2", Π) = δ("ϕ1", Π) ∧ δ("ϕ2", Π) δ("ϕ1 ∨ ϕ2", Π) = δ("ϕ1", Π) ∨ δ("ϕ2", Π) δ(" φ ϕ", Π) =    "ϕ" if last ∈ Π and Π |= φ (φ propositional) δ("ϕ", ) if last ∈ Π and Π |= φ false if Π |= φ δ(" ψ? ϕ", Π) = δ("ψ", Π) ∧ δ("ϕ", Π) δ(" ρ1 + ρ2 ϕ", Π) = δ(" ρ1 ϕ", Π) ∨ δ(" ρ2 ϕ", Π) δ(" ρ1; ρ2 ϕ", Π) = δ(" ρ1 ρ2 ϕ", Π) δ(" ρ∗ ϕ", Π) = δ("ϕ", Π) if ρ is test-only δ("ϕ", Π) ∨ δ(" ρ ρ∗ ϕ", Π) o/w δ("[φ]ϕ", Π) =    "ϕ" if last ∈ Π and Π |= φ (φ propositional) δ("ϕ", ) if last ∈ Π and Π |= φ (φ propositional) true if Π |= φ δ("[ψ?]ϕ", Π) = δ("nnf (¬ψ)", Π) ∨ δ("ϕ", Π) δ("[ρ1 + ρ2]ϕ", Π) = δ("[ρ1]ϕ", Π) ∧ δ("[ρ2]ϕ", Π) δ("[ρ1; ρ2]ϕ", Π) = δ("[ρ1][ρ2]ϕ", Π) δ("[ρ∗ ]ϕ", Π) = δ("ϕ", Π) if ρ is test-only δ("ϕ", Π) ∧ δ("[ρ][ρ∗]ϕ", Π) o/w Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 22 / 26
  • 43. Implemented in ProM! Approach 1. Input ltlf /ldlf constraints and metaconstraints. 2. Produce the corresponding RV ldlf monitoring formulae. 3. Apply the direct algorithm and get the corresponding nfas. 4. (Incrementally) run nfas the monitored trace. Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 23 / 26
  • 44. Connection with Colored Automata Colored Automata [BPM2011] Ad-hoc technique for monitoring ltlf formulae according to RV-LTL. 1. Color states of each local automaton according to the 4 RV-LTL truth values. 2. Combine colored automata into a global colored automaton. 000 (N)(P)(R) 001 (N)(P)r M 010 (N)(R) C 202 (N)(P)R E 320 (N)P(R) S 011 (N)r C E 321 (N)Pr S M 212 (N)R E 310 (N)(R) S E 311 (N)r S 112 R 122 PR S C S E M E E M E Why is step 1 correct? 1. Take the ltlf formula ϕ of a constraint. 2. Produce the 4 corresponding ldlf monitoring formulae. 3. Generate the 4 corresponding nfas. 4. Determinize them ; they are identical but with = acceptance states! 5. Hence they can be combined into a unique colored local dfa. Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 24 / 26
  • 45. Conclusion • Focus on finite traces. • Avoid unneeded detour to infinite traces. • ldlf : essentially, the maximal expressive logic for finite traces with good computational properties (≡ MSO). • Monitoring is a key problem. • ldlf goes far beyond declare. • ldlf captures monitors directly as formulae. Clean. Meta-constraints. • Implemented in ProM! Future work: declarative, data-aware processes. Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 25 / 26
  • 46. Marco Montali (unibz) Monitoring Business Metaconstraints BPM 2014 26 / 26