Использование A a в качестве имени свойства немного необычно, поэтому вместо этого я буду использовать p. Диаграмма UML также не выражает направление свойства, что делает остальную часть обсуждения немного запутанной. Однако некоторую информацию можно почерпнуть из предоставленных вами аксиом.
Если UML предназначен для выражения:
- Экземпляры C1 связаны p как минимум с nl и большинством nu экземпляров C< под>2под>.
- По крайней мере ml и большинство mu экземпляров C1 связаны посредством p с каждым экземпляром C 2.
тогда вы можете использовать аксиомы DL:
C1 nl p.C2
C1 nu p.C< sub>2
C2 ml p-1.C1
C2 mu p-1.C1
Они говорят, что если x равно C1 (C2), то x связано с соответствующим числом C2. sub> (C1) экземпляров на p (p-1). Теперь, поскольку отношение, выраженное в UML, будет связывать только экземпляры двух классов, т. е. никакие другие типы экземпляров не будут связаны свойством p, более вероятно, что вы объявите домен и диапазон p как C1 и C2 соответственно, с:
p C1
p-1 C2
а затем используйте более простую версию приведенных выше аксиом:
C1 nl p
C1 nu p
C2< /sub> ml p-1
C2 mu p-1< / суп>
Чтобы ответить на очень конкретный вопрос:
никак не могу понять, как обязательное участие С2 в утверждении выражается утверждением о С1, как читается последнее утверждение?
Обозначение в последней аксиоме в вопросе необычное, и я не уверен, точно что должно быть. Я не уверен, что это за маленькие циркумфлексы. Это выглядит так:
C1 р
хотя. Если это так, то это читается как
C1 является подклассом p
а это значит что
Если x является экземпляром C1, то x является экземпляром p
что обозначает
Если x является экземпляром C1, то x является экземпляром класса вещей, которые имеют по крайней мере значение для p< /em> (т. е. существует хотя бы один y такой, что p(x,y)).
В логике первого порядка это можно выразить так:
х.(C1(x) y.p(x,y))
person
Joshua Taylor
schedule
11.11.2014