Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams
description
Transcript of Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams
![Page 1: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/1.jpg)
Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams
Mira Balaban and Azzam Maraee
![Page 2: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/2.jpg)
2
Motivation
[Enzyme] [Protein] [Protein] [Chemical] [Chemical] [Reaction]
[Reaction] < [Enzyme]
[Enzyme] < [Enzyme]What’s wrong with this ontology* ?
*Consistency Checking of Semantic Web OntologiesKenneth Baclawski, Mieczyslaw M. Kokar, Richard Waldinger, Paul A. Kogut
![Page 3: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/3.jpg)
3
Agenda
• Background
• Reasoning Problems
• Previous works
• Research Contribution
•Conclusions and Future Work
![Page 4: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/4.jpg)
4
UML
UML is now widely accepted as the standard modeling language for software construction.
UML 2.0 updates came from 54 companies.
Class diagrams are widely used
software and language.
specification, database.
ontology engineering
![Page 5: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/5.jpg)
5
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
![Page 6: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/6.jpg)
6
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
![Page 7: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/7.jpg)
7
Agenda
• Background
• Reasoning Problems
• Previous works
• Research Contribution– Finite Satisfiability Method:
• Class Hierarchy and Generalization Set Constraints
•Conclusions and Future Work
![Page 8: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/8.jpg)
8
Reasoning Problems (1): Inconsistency
disjoint
• Emptiness
![Page 9: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/9.jpg)
9
Reasoning Problems (2): Infinity Problem (1)• Consider the pervious example:
Advisor
PhDMaster
Advise
+ma
+advisor
2
1
![Page 10: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/10.jpg)
10
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
![Page 11: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/11.jpg)
11
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.
![Page 12: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/12.jpg)
12
Reasoning Needs (2)
• Current case tools do not support reasoning tasks.
• Need for powerful CASE tools
– with reasoning capabilities.
![Page 13: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/13.jpg)
13
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
![Page 14: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/14.jpg)
14
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.
![Page 15: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/15.jpg)
15
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
![Page 16: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/16.jpg)
16
Agenda
• Background
• Reasoning Problems
• Previous works
• Research Contribution– Finite Satisfiability Method.
• Class Hierarchy and Generalization Set Constraints
•Conclusions and Future Work
![Page 17: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/17.jpg)
17
Testing Finite Satisfiability
• Lenzerini and Nobili (92):– ER diagrams without class hierarchy.
• Calvanese and Lenzerini (94):– Extend with class hierarchy.
![Page 18: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/18.jpg)
18
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
![Page 19: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/19.jpg)
Example
19
Reaction
1
2
depend
rdrd 1,1
rdrd 2,2
![Page 20: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/20.jpg)
Example
20
Reaction
1
2
depend
rdrd 1,1
rdrd 2,2
0,0 rd
rd rd 2
rr 2
![Page 21: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/21.jpg)
21
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:
![Page 22: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/22.jpg)
22
Advisor,Master_Student Advisor,PhD_Student
Advisor
Advisor,Master_Student,PhD
Calvanese and Lenzerini (94) – Extension with class hierarchies (2)
![Page 23: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/23.jpg)
23
Calvanese and Lenzerini (94) – Extension with class hierarchies (3)
Advisor
Advisor, Master, Ph.D
Advisor, PhD
Advisor, Master
Advisor,Master , Ph.D
Advisor: Master
![Page 24: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/24.jpg)
24
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.
![Page 25: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/25.jpg)
25
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 )(
![Page 26: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/26.jpg)
26
Agenda
• Background
• Reasoning Problems
• Previous works
• Research Contribution– Finite Satisfiability Method
•Conclusions and Future Work
![Page 27: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/27.jpg)
27
Splitting the Problem
• Presents of Constraints:– Without – With
• Hierarchy Structure:• Tree Structure.• Acyclic Structure.• Graph Structure.
![Page 28: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/28.jpg)
28
Splitting the Problem : Hierarchy Structure
• Tree Structure.
Advisor
PhDMaster
![Page 29: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/29.jpg)
29
Splitting the Problem: Hierarchy Structure
• Tree Structure.• Acyclic Structure.
Municipal _Property
Street_Sign Police_Car
Car
Private_Car
![Page 30: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/30.jpg)
30
Splitting the Problem: Hierarchy Structure
• Tree Structure• Acyclic Structure• Graph Structure.
![Page 31: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/31.jpg)
31
Splitting the Problem
Tree
Acyclic
Graph
Hierarchy Structure GS Constraint
Without
With
![Page 32: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/32.jpg)
32
Splitting the Problem
Tree
Acyclic
Graph
Hierarchy Structure GS Constraint
Without
WithLimited
![Page 33: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/33.jpg)
33
Finite Satisfiabilty over Unconstrained Tree
Hierarchy
• Input:
– Tree class hierarchy.– Unconstrained generalization sets.– Binary associations.
• Method:– A reduction to the algorithm of Lenzerini Nobili:
![Page 34: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/34.jpg)
34
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.
![Page 35: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/35.jpg)
35
The Inequalities Systems
Advisor Ma_Student Ph.DStudent Advice ISA_1 ISA_2
d m p ad isa1 isa2
1
2-3 = ( and )
4
5-6 ( and )
7-8 ( 2 and )
9-10 ( and )
11-15 0, 0, 0,
1
1 1 1
2
2 2 2
isa m
isa d isa d isa d
isa p
isa d isa d isa d
ad 2d ad d d 2d
ad m ad m d m
d m p i
0, 01 2sa isa
m=2d
d≥m
d≥2d
Finite Satisfiabilty over Unconstrained Tree Hierarchy
![Page 36: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/36.jpg)
36
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
![Page 37: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/37.jpg)
37
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
![Page 38: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/38.jpg)
38
Reduction Proof
I I’
CD’: finitely satisfiable CD: finitely satisfiable
CD CD’Lenzerini & Nobili
inequalities
Finite Satisfiabilty over Unconstrained Tree Hierarchy
![Page 39: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/39.jpg)
39
Extensions of Finite Satisfiabilty Method
• Applies properly also to the rest of the unconstrained structured:
– Acyclic Structure.
– Graph Structure.
![Page 40: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/40.jpg)
40
Splitting the Problem
Tree
Acyclic
Graph
Hierarchy Structure GS Constraint
Without
WithLimited
![Page 41: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/41.jpg)
41
Finite Satisfiabilty Method:
Constrained Tree Hierarchy
J ane : Ph.D_Student
adviise
+ma
+advisor
sharon : Master
advice
+ma
+advisor
rafi : Master
Empty
Constrained Tree Hierarchy
advisor
ma
Master_Student
{disjoint, complete}
![Page 42: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/42.jpg)
42
……………..
Const
0..10..1
11Const
…...
Class Diagram
without hierarchy
constraint.
1) Create the Lenzerini
and Nobili inequalities
system.
2) Expand the inequalities
and Solve.
A class diagram
that includes binary
associations and
constrained tree
structureOCL constraint: Const
Finite Satisfiabilty Method:
Constrained Tree Hierarchy
![Page 43: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/43.jpg)
43
Class Diagram
without hierarchy
constraint
1) Create the Lenzerini
and Nobili inequalities
system.
2) Expand the inequalities
and Solve.
A class diagram that includes
binaryassociations and constrained tree structure OCL constraint: Const
Single Constraints
Finite Satisfiabilty Method :
Constrained Tree Hierarchy
![Page 44: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/44.jpg)
44
• Claim [Correctness]: A class diagram with constrained tree structure is finitely satisfiable iff there exists a solution for the expanded inequalities system
• Claim [Complexity]: 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 Method:
Constrained Tree Hierarchy
![Page 45: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/45.jpg)
45
Correctness Claim (Intuition)
A class diagram that includes binaryassociations and constrained tree structure
Class Diagram
without hierarchy
constraint.
Expanded inequality system
OCL constraint: Const
I I’
CD: finitely satisfiable CD’: finitely satisfiable
![Page 46: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/46.jpg)
46
Correctness Claim (Intuition)
A class diagram that includes binaryassociations and constrained tree structure
Class Diagram
without hierarchy
constraint.
Expanded inequality system
OCL constraint: Const
I’
CD’: finitely satisfiable
Solution
CD’: finitely satisfiable
![Page 47: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/47.jpg)
47
Class Diagram
without hierarchy
constraint
1) Create the Lenzerini
and Nobili inequalities
system.
2) Expand the inequalities
and Solve.
A class diagram
that includes binary
associations and
[T-C]-GSOCL constraint: Const
Finite Satisfiabilty Method: Constrained Tree Hierarchy
![Page 48: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/48.jpg)
48
No Exclusive Inequalities
Class Diagram
without hierarchy
constraint.
1) Create the Lenzerini
and Nobili inequalities
system.
2) Expand the inequalities
and Solve.
A class diagram that includes
binaryassociations and constrained tree structure OCL constraint: Const
![Page 49: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/49.jpg)
49
The Inequalities System
1
2-3 = ( and )
4
5-6 = ( and )
7-8 ( and )
9-10 ( and )
11-15 , 0, 0, 0,
1
1 1 1
2
2 2 2
1
isa ad
isa m isa m isa m
isa ad
isa p isa p isa p
d ad ad d d d
d m ad m d m
ad d m p isa
0, 0.
16 > +
2isa
ad m p
Advisor Ma_Student Ph.DStudent Advice ISA_1 ISA_2
ad m p d isa1 isa2
![Page 50: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/50.jpg)
50
Finite Satisfiabilty MethodStructure Extension
Tree
Acyclic
Graph
Hierarchy Structure GS Constraint
Without
WithLimited
![Page 51: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/51.jpg)
51
Finite Satisfiabilty Method Extension to Graph Structure.
• Succeeds in determining non-finite satisfiabilty.
• Succeeds in determining finite satisfiabilty:– overlapping and incomplete
• Fails in:– Complete, disjoint
![Page 52: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/52.jpg)
52
Exploring the Limits
• Infinity
A
B C D
disjoint
A
B C D
disjoint
E
R
1
1
![Page 53: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/53.jpg)
53
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
![Page 54: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/54.jpg)
54
![Page 55: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/55.jpg)
55
E
![Page 56: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/56.jpg)
56
![Page 57: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/57.jpg)
57
Implementation
LKJH
GFE
D
CB
A
Thesis_Example
{disjoint, incomplete}
rn1+ 1
rn2+
2..3
R
q1+
1
q2+
1..5
Q
{overlapping, complete}
{disjoint,complete}
{overlapping, incomplete}
h1+
1
h2+
1
H
t1+1
t2+2..4
T
![Page 58: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/58.jpg)
58
Conclusion
• Introduced graph structure based methods.
• Have a complexity advantage over existing methods that require an exponential time in the worst case.
• Simplicity: Our methods are simple and sufficient for reducing the satisfiabilty problem.
![Page 59: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/59.jpg)
59
Future Work • Extensions:
– Graph structure with disjoint, complete.– N-ary.– Qualifier.– Association class.– Aggregation.– Identification and Fixing (Sven Hartman, 2001)– integrate the implementation as add-in in existing case tool,
![Page 60: Efficient Methods for Solving Finite Satisfiability Problems in UML Class Diagrams](https://reader035.fdocuments.net/reader035/viewer/2022062517/56813cc5550346895da67087/html5/thumbnails/60.jpg)
60