Title: Enhancing the Expressiveness of Spider Diagram Systems
1Enhancing the Expressiveness of Spider Diagram
Systems
- Gem Stapleton and John Howse
- Visual Modelling Group
- University of Brighton, UK
- Supported by the Leverhulme Trust
2Constraint Diagrams Example
Introduced by Kent (OOPSLA 1997)
3Reasoning
- To reason about specifications.
- Sound and complete fragments.
- Automated TP to provide practical support.
- Spider diagrams fragment.
4Spider Diagrams
A
B
There is an element in A and everything that is
in B is also in A.
5Spider Diagrams
B
A
There are exactly two elements in B and
everything that is in A is also in B.
6Spider Diagrams with Constants
There exists x in B that is not in A.
A
B
c
d1
The individual c is not in A or B.
7Compound Diagrams
Connectives. and or
U
C
B
A
8Building Blocks of Spider Diagrams
- Euler Diagrams with shading
- Feet (represent objects)
- round
- square
- Lines (represent disjunction)
- connect feet BUT only feet of the same type
- Spider labels
- label square feet BUT only one label per
spider... - Logical Connectives
s,t,
9Expressiveness
Theorem All unitary spider diagrams are
satisfiable.
- Theorem
- The spider diagram language is equivalent to
MFOLe.
10The Expressiveness of Unitary Diagrams
Can express there are at least n elements in
A, there are at most m elements in A, the
individual c is in A, the individuals c and d
are distinct etc. Exact expressiveness later
11The Expressiveness of Unitary Diagrams
No semantically equivalent unitary diagram
12The Expressiveness of Unitary Diagrams
No semantically equivalent unitary diagram
13The Expressiveness of Unitary Diagrams
No semantically equivalent unitary diagram
A
A
s
t
14The Expressiveness of Unitary Diagrams
How do we express there are two distinct
individuals, one is s in A or t outside A and the
other is t in A or u outside A.
15Observations
- More concise than compound diagrams.
- Many simple statements cannot be made.
- Unnatural ways of making statements.
- Automated unitary reasoning is easier to control
(D2K4, VLC 04). - Easier to automatically draw unitary than
compound (D2K2, VL/HCC 04). - Increase expressiveness Generalizations.
16Generalizing Spiders
Constant spider labelling
17Generalizing Spiders
Constant spider labelling
18Generalizing Spiders
Multiple typed spiders
There is an element in U-A or s is in A and A is
a subset of s
A
s
19Generalizing Spiders
Placing of feet
A
s is in A or t is in A and A1
s
t
20Generalizing Spiders
How do we express there are two distinct
individuals, one is s in A or t outside A and the
other is t in A or u outside A.
A
A
u
A
s
s
t
u
t
21Efficiency
22Flexibility
23Previously...
- Euler Diagrams with shading
- Feet (represent objects)
- round
- square
- Lines (represent disjunction)
- connect feet BUT only feet of the same type
- Spider labels
- label square feet BUT only one label per
spider... - Logical Connectives
s,t,
24 Now
- Euler Diagrams with shading
- Feet (represent objects)
- round
- square
- Lines (represent disjunction)
- connect ANY feet (not just same type/different
zones) - Spider labels
- label square feet (not just used once/one per
c. spider) - Logical Connectives
s,t,
25Generalizing Spiders
Theorem The generalizations increase the
expressiveness of the unitary system. How much?
26Non-generalized Expressiveness
27Non-generalized Expressiveness
28Non-generalized Expressiveness
- one for each spider
- describes the set xi
- belongs to and, if
- necessary, identifies xi with a constant.
29Non-generalized Expressiveness
- one for each spider
- describes the set xi
- belongs to and, if
- necessary, identifies xi with a constant.
each spider denotes a distinct element
30Non-generalized Expressiveness
- one for each spider
- describes the set xi
- belongs to and, if
- necessary, identifies xi with a constant.
each spider denotes a distinct element
places an upper bound on set cardinality
31Example
A
s
32Example
A
s
P1
33Example
A
s
P2
34Example
35Generalized Expressiveness
each spider denotes a distinct element
places an upper bound on set cardinality
36Generalized Expressiveness
- one for each spider
- a disjunction of
- Pis that assert which
- set xi belongs to and,
- if necessary, identifies xi with a constant.
each spider denotes a distinct element
places an upper bound on set cardinality
37Example
A
s
t
38Example
A
s
t
R1
39Example
A
s
t
R2
40Further Limitations
41Further Limitations
42Further Limitations
43Conclusion and further work
- By generalizing spiders we have increased the
expressiveness of the unitary system - -- efficiency
- -- flexibility.
- There are still simple statements that cannot be
made. - Can we make the unitary system as expressive as
the whole system? - When do the generalizations help ATP?
- What is a good choice of strand and tie
semantics? - When do the generalizations help people?
- Constraint diagram expressiveness.
44Thank you
- www.cmis.brighton.ac.uk/research/vmg