Добавление элементов набора в Alloy

За установленное время: {1,2,3,4}, как мы можем вычислить сумму элементов в наборе в Alloy? Есть ли способ использовать функцию добавления Alloy для наборов?

pred addTime[time: set Time]{
    add[time] = 10
}

1 ответ

Решение

Вы можете суммировать набор Int с sum оператор

 let s = 1 + 2 + 3 | 6 = sum s

Однако, если вы используете Time, как в книге Джексона, вы не сможете добавить их, поскольку они не Int. Так что я немного запутался, что вы хотите моделировать?

Другие вопросы по тегам