Efficient Reasoning on Finite Satisfiability in UML Class Diagrams
description
Transcript of Efficient Reasoning on Finite Satisfiability in UML Class Diagrams
Efficient Reasoning on Finite Satisfiability in UML Class Diagrams
Azzam Maraee Victor Makarenkov Mira Balaban
2
Agenda
• Example
• Reasoning Problems
• Previous works
• Research Contribution
•Conclusions and Future Work
Reaction Chemical
CatalyzedReaction
Enzyme
ProteinDNA
substrate
1..* 1
catalyzed 2
1
DNASegment
Gene Genome
1
1
{disjoint, incomplete}
has
11..*
Motivation
=1/2*[Enzyme] [Chemical] [Reaction] [catalyzedReaction]
[Enzyme] [Protein]
[Protein] [Chemical]
½*[Protein] ½* [Chemical]
[Enzyme]=2* [catalyzedReaction]
2*[Chemical] [Chemical]
4
Agenda
• Background
• Reasoning Problems
• Previous works
• Research Contribution– Finite Satisfiability Method:
• Class Hierarchy and Generalization Set Constraints
•Conclusions and Future Work
5
Reasoning Problems (1): Inconsistency
disjoint
• Emptiness
6
Reasoning Problems (2): Infinity Problem (1)• Consider the pervious example:
Advisor
PhDMaster
Advise
+ma
+advisor
2
1
7
Infinity Problem (2)john : Advisor
advise
+ma
+advise
advise
+ma
+advise
frank : Master jack : Master
advise
+advise
+ma
advise
+advice
+ma
rami : PhD sami : Master
advise
+ma
+advise
michael : Mastershreen : Master
advise
+advise
+ma
: Master : Master
advise
+ma
+advsie
advise
+ma
+aadvise
: Master : Master
advise
+ma
+advsie
advise
+ma
+aadvise
: Master : Master
advise
+ma
+advsie
advise
+ma
+aadvise
: Master : Master
advise
+ma
+advsie
advise
+ma
+aadvise
: Master : Master
advise
+ma
+advsie
advise
+ma
+aadvise
: Master : Master
advise
+ma
+advsie
advise
+ma
+aadvise
: Master : Master
advise
+ma
+advsie
advise
+ma
+aadvise
: Master : Master
advise
+ma
+advsie
advise
+ma
+aadvise
: Master : Master
advise
+ma
+advsie
advise
+ma
+aadvise
: Master : Master
advise
+ma
+advsie
advise
+ma
+aadvise
+ma
+advise
sharon : Mastermari : Master
+ma
+advise
: Master : Master
advise
+ma
+advsie
advise
+ma
+aadvise
Definitions
• A legal instance of a class diagram is an instance that satisfies all constraints.
• A class is consistent if it has a non empty extension in some legal instance.
• A class is finitely satisfiable if it has a non empty extension in some legal instance.
8
9
Relevance of Reasoning
• It is important to guarantee that models provide a reliable support for the designed systems.
– Implementability : A class diagram is implemented
into a running system.
– Project cost: Early detection of problems.
– Used with MDA: Precise and consistent enough to be used within MDA.
10
Reasoning Needs (2)
• Current case tools do not support reasoning tasks.
• Need for powerful CASE tools
– with reasoning capabilities.
11
Agenda
• Background
• Reasoning Problems
• Previous works
• Research Contribution– Finite Satisfiability Method.
• Class Hierarchy and Generalization Set Constraints
•Conclusions and Future Work
12
Testing Finite Satisfiability
• Lenzerini and Nobili (92):– ER diagrams without class hierarchy.
• Calvanese and Lenzerini (94):– Extend with class hierarchy.
13
Lenzerini and Nobily (92).
Method:• Transform cardinality constraints into an
inequalities system.• Solve the system.
Result: The diagram is finitely satisfiable iff the inequalities system has a solution.
A BR
min1, max1min2, max2
r≥min1∙a , r≤max1∙a , r≥min2∙b , r≤max2∙b,a, b, r>0
Example
14
Reaction
1
2
depend
rdrd 1,1
rdrd 2,2
Example
15
Reaction
1
2
depend
rdrd 1,1
rdrd 2,2
0,0 rd
rd rd 2
rr 2
16
Calvanese and Lenzerini (94) – Extension
with class hierarchies (1) • Calvanese and Lenzerini extend the method of Lenzerini
and Nobily (92) to apply to schemata with class hierarchy.
• The expansion is based on the assumption that class extensions may overlap. – Compound Class. – Compound relationship:
17
Advisor,Master_Student Advisor,PhD_Student
Advisor
Advisor,Master_Student,PhD
Calvanese and Lenzerini (94) – Extension with class hierarchies (2)
18
Calvanese and Lenzerini (94) – Extension with class hierarchies (3)
Advisor
Advisor, Master, Ph.D
Advisor, PhD
Advisor, Master
Advisor,Master , Ph.D
Advisor: Master
19
Calvanese and Lenzerini (94) – Extension with class hierarchies (2)• For a class diagram with three classes and one
association: 12 variables and 26 inequalities
• An exponential number of variables.
20
Hardness of Finite Satisfiability
• Berardi et al (2005) showed :
• Lutz et al (2005) showed:
( ) ( ) ( )Sat ALC Sat UML Sat DLR EXPTIME complete
( ) ( )Sat UML Sat ALCQI EXPTIME complete
( ) ( )FSat UML FSat ALCQI EXPTIME complete
( )FSat UML EXPTIME complete
completeEXPTIMEALCSat )(
21
Agenda
• Background
• Reasoning Problems
• Previous works
• Research Contribution– Finite Satisfiability Method
•Conclusions and Future Work
FiniteSat Algorithm
22
• The FiniteSat Algorithm
• Input: A class diagram CD with binary multiplicity constraints, class hierarchy constraints, and GS constraints.
• Output: A linear inequality system ψCD
• Method:
1. For every class, association, or multiplicity constraint: create variables and inequalities according to the Lenzerini and Nobili
method.
2. For every class hierarchy constraint, B being the subclass with variable b and A being the super class with variable a,
extend the inequality system with the inequalities a ≥ b.
3. For every GS constraint GS(C, C1,...Cn; Const), C being the super-class, Cis being the subclasses, and Const being the GS
constraint, extend the inequality system, as follows:
1. Const = disjoint:
2. Const = complete:
3. Const = incomplete:
4. Cons t= overlapping: Without inequality
5. Const = disjoint, incomplete:
6. Const = disjoint, complete:
7. Const = overlapping, complete:
8. Const = overlapping, incomplete:
The FiniteSat Algorithm
• Class hierarchy constrain
23
GS Constraints -1
• For every GS constraint GS(C, C1,...Cn; Const):
24
GS Constraints -2
• For every GS constraint GS(C, C1,...Cn; Const):
25
Example 1
26
Reaction Chemical
CatalyzedReaction
Enzyme
ProteinDNA
substrate
1..* 1
catalyzed 2
1
DNASegment
Gene Genome
1
1
{disjoint, incomplete}
has
11..*
Reaction Chemical
CatalyzedReaction
Enzyme
ProteinDNA
substrate
1..* 1
catalyzed 2
1
DNASegment
Gene Genome
1
1
{disjoint, incomplete}
has11..*
Reaction Chemical
CatalyzedReaction
Enzyme
ProteinDNA
substrate
1..* 1
catalyzed 2
1
DNASegment
Gene Genome
1
1
{disjoint, incomplete}
has
11..*
Example 1
27
Variable:Chemical: ch ,Reaction: r, CatalyzedReaction:c, DNA: d, Potien:p, DNASegment, dn. Genome, ge, Gene:g, Enzyme:eCatalyzed: ca , substrate: s, include: inInequalities:Class hierarchy constraints inequalities:ch>=d, c>=p, dn>=g, dn>=ge, p>=e, c>=rGs constraints inequalities:dn>g+geMultiplicity constraint inequalities:s>=ch, s=r, c<=r, ca=e, ca=2c, in>ge, in=dn
ch,r,c,d,p,dn,ge,e,ca,s,i>0
Reaction Chemical
CatalyzedReaction
Enzyme
ProteinDNA
substrate
1..* 1
catalyzed 2
1
DNASegment
Gene Genome
1
1
{disjoint, incomplete}
has11..*
Performance
28
Claim: A Class diagram CD is finitely satisfiabile iff the inequality system ψCD is solvable. Table 1 summarizes our results.
29
Splitting the Problem : Hierarchy Structure
• Tree Structure.
Advisor
PhDMaster
30
Splitting the Problem: Hierarchy Structure
• Tree Structure.• Acyclic Structure.
Municipal _Property
Street_Sign Police_Car
Car
Private_Car
31
Splitting the Problem: Hierarchy Structure
• Tree Structure• Acyclic Structure• Graph Structure.
32
Splitting the Problem
Tree
Acyclic
Graph
Hierarchy Structure GS Constraint
Without
With
FiniteSat Extension to Qualifier
• Qualifier
– Imposes a partitioning on the set of related instances.– Tightens the multiplicity constraint of its association.– Can cause finite satisfiability problems.
A Bq1 :Tq1[tq1]
…qn:Tqn[tqn]
Rmin1..max1 min2..max2
FiniteSat Extension to Qualifier - Example
• In every legal instance– Number of broadcast schedules, b, is 7*t, where t
is the number of TV-Networks. At the same time t=b. The only solution for:
• b=7t• b=t
Is empty or infinite!
TV-NetworkBroadcast Schedule
Day : Weekday
1 1
Enum WeekDay = {Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday}
WeekdaySchedule
NetworkSchedule1 1
FiniteSat Extension to Qualifier – General case
• If a combined domain value is non-finite, ignore the qualifier constraint, and handle like regular association.
• Else, extend the inequality system with the following inequalities:– min1 x b <= r <= max1 x b
– min2 x a x tq1 x … x tqn <= r <= max2 x a x tq1 x … x tqn
36
Exploring the Limits
• Infinity
A
B C D
disjoint
A
B C D
disjoint
E
R
1
1
37
The Inequalities System
1, 2, 3
1, 2, 3
a b c d
a isa a isa a isa
b isa c isa d isa
4, 5
4, 5
e isa e isa
c isa d isa
There is a solution
e c d
38
39
Future Work • Extensions:
– Graph structure with disjoint, complete.– N-ary.– Aggregation.– Identification and Fixing (Sven Hartman, 2001)– integrate the implementation as add-in in
existing case tool,
40
Backup Slides
41
42
Finite Satisfiabilty over Unconstrained Tree Hierarchy
sub0..1
sub0..1
supersuper 11
ISA1 ISA2
Class Diagram
without hierarchy
constraint
A class diagram
that includes binary
associations and
unconstrained tree
hierarchy
Create the Lenzerini
& Nobili inequalities
system and Solve.
43
Claims• Claim [correctness]: A class diagram with
unconstrained tree hierarchy is finitely satisfiable iff there exists a solution to the inequalities system.
• Claim [Complexity]: Unconstrained Tree Hierarchy finite satisfiabilty method adds to the Lenzerini and Nobili method an O(n) time complexity, where n is the size of the class diagram (including associations, classes and class hierarchy constraints).
Finite Satisfiabilty over Unconstrained Tree Hierarchy
44
Proof [Correctness Claim]
Class Diagram
without hierarchy
constraint
Create the Lenzerini
& Nobili inequalities
system and Solve.
A class diagram that includes binary associations and unconstrained treehierarchy
CD CD’
It is sufficient to show a reduction of the finite satisfiability problem for CD to finite satisfiability problemfor CD’ without generalization sets.
CD: finitely satisfiable CD’: finitely satisfiable
Finite Satisfiabilty over Unconstrained Tree Hierarchy
45
Reduction Proof
I I’
CD’: finitely satisfiable CD: finitely satisfiable
CD CD’Lenzerini & Nobili
inequalities
Finite Satisfiabilty over Unconstrained Tree Hierarchy
46
Consistency notions (1)
• Berardi et al (2005), distinguish two cases: – Consistency of class diagram – has an instantiation
with at-least one non-empty class extension.
– Class consistency – there is an instantiation in which the class extension is non-empty.
rest of the diagram
ConsistentThe whole class diagram is consistent
47
Consistency notions (2)
• All class consistency of a class diagram – every class is consistent.
• Full consistency of a class diagram – has an instance in which all class extensions are non-empty.
48
Finite satisfiability notions• All class finite satisfiability of a class diagram – every
class there is a finite instance in which the class extension is non-empty (strong satisfiability, Lenzerini and Nobili, 1990).
• Finite satisfiability of a class diagram – it has a finite instance in which all class extensions are non-empty.
Lenzerini & Nobili 92Research Contribution
UML Class Diagram
49
Class Diagram: Cardinality Constraint and Class Hierarchy
• Class: Advisor and University
• Association: Employment– Cardinality Constraint
• Class Hierarchy
UniversityAdvisorEmployment
+employer+employee
1..* 1
Master PhD
rami : Advisorrami : Master BGU : Universityemployment
+employee +employer
Legal Instance:mari : Advisor
employment
+employee
+employer
50
Class Diagram: Generalization Set Concept
UniversityAdvisorEmployment
+employer+employee
1..* 1
Master PhD
{disjoint, incomplete}{disjoint, complete}{overlapping,incomplete}{overlapping, complete}
rami : Master
jame : Advisor
BGU : Universityemployment
+employee +employer
mari : Master, PhD
jame : Master
Female
Male