鉴于右上角的图表,我应该决定是否有任何有效的实例。现在,给定的图像是反示例的(“ wegen”表示“因为”)。反证明使用对象的基数(“Mächtigkeit”)。
我不明白,为什么例如2 * | A |等于| C |,就像在UML中一样,A将与C的2个对象有关(rel1)。因此,对于每个A,必须有2个C才能构成有效实例。 2 * | A | = | C |因此应| A | = 2 * | C |。
为什么反过来呢?
答案 0 :(得分:1)
2*|A| = |C|
,因为C
的对象数量是A
的两倍,因为每个A
有两个关联的C
。|A| = |B|
因为他们之间存在1-1关系3*|C| = 2*|B|
,因为每个C
有3个B
,每个B
有2个C
q.e.d
P.S。正如@ShiDoiSi指出的那样,多重性中没有{unique}
约束。这将使与同一实例具有多个关联成为可能。因此,您有1-1关系。因此,在这种情况下,您实际上 CAN 具有模型的有效实例。
现在去告诉你的老师xD