Вопросы по теме 'alloy'

Использование моего собственного API в Alloy
Просто интересно, как я могу использовать свой собственный API в сплаве? Я разработал API в сплаве, но не знаю, как его использовать? С Уважением Капризный
171 просмотров
schedule 02.12.2023

запустить область команд в сплаве
В сплаве считают sig Очередь { ссылка : Очередь, элемент: Int } Учтите, что у меня есть некоторый предикат predicate-1. Как мне определить область действия, когда я запускаю предикат-1 для Queue ‹=1 , int = {-3,-2,0,2}. Я не указал предикат...
1233 просмотров
schedule 05.04.2024

двусвязный список в сплаве
Я пытался перевернуть двусвязный список в сплаве, я создал для него подпись. это подпись sig node{} //define each field as disjoint subset of node sig first extends node{} sig last extends node{} sig element extends node{} sig...
848 просмотров
schedule 28.02.2024

Равенство в сплаве
У меня есть модель Alloy, которая содержит следующее: abstract sig person{} one sig john,Steve extends person {Gender: man} sig man{} fact { all name: person, Gender: man | name.Gender = name.Gender => person =person} Как я...
599 просмотров
schedule 16.03.2024

Сплав семантики целочисленного сравнения с использованием запрета переполнения: Да
У меня есть следующий модуль Alloy и команда запуска: sig A { x : set A } run {all a: A| #a.x<3 and #a.x>1} for exactly 2 A, 2 int С параметром «Запретить переполнение: нет» анализатор сплавов версии 4.2 (дата сборки: 25 сентября 2012...
312 просмотров
schedule 09.12.2022

Понимание . и & оператор
Мне трудно понять, как работают эти операторы. Проблема в следующем: я в основном написал это abstract sig Statement { predecessor: lone Statement --... } sig Assignment extends Statement{ --... } --Statements have unique prdecessors...
177 просмотров
schedule 07.12.2022

Как определить тип, состоящий из целочисленных значений в Alloy
Я пытаюсь определить тип, состоящий из целочисленных значений в Alloy, но Alloy не позволяет значениям быть целыми числами. Мне нужно использовать математические операции, и, следовательно, я не могу использовать строки вместо целых чисел. Мне нужен...
104 просмотров
schedule 19.04.2024

Оптимизация общего заказа в Alloy и Kodkod
Об этом говорится в разных местах (например, здесь in-the-usu"> введите здесь описание ссылки или здесь ), что отношение общего порядка запрограммировано для повышения эффективности анализа (и для того, чтобы имена атомов отображались в...
81 просмотров
schedule 25.10.2023

Как получить следующий элемент в последовательности (последовательности)?
Самолет летит последовательность ног. За каждым этапом должен следовать соответствующий следующий этап. NextLegTable содержит соответствующие ( Leg -> Leg ) пары. Таким образом, каждая пара ног в полете должна находиться в NextLegTable . Я...
139 просмотров
schedule 03.12.2022

Как проверить, что две длительности времени перекрываются в Alloy
У меня есть следующие подписи и предикат для проверки двух перекрытий продолжительности времени sig Time{} sig Duration{ startTime : one Time, endTime : one Time } pred isTimeOverlap[a, b : Duration] { // } Я хочу реализовать следующую...
96 просмотров
schedule 21.11.2022

Как сопоставить модели Alloy, ориентированные на ограничения, с кодом языка программирования?
Мне очень нравится создавать модели Alloy, просто перечисляя ограничения, а затем запуская анализатор Alloy: Найдите экземпляры, удовлетворяющие ограничениям . Но мне пришло в голову, что отображение таких ориентированных на ограничения моделей...
81 просмотров
schedule 26.01.2024

Как заставить сплав работать с набором данных, чтобы проверить все правила
Я создал программу сплава для проверки некоторых правил системы. Теперь я хочу проверить правила в реальной системе. Для этого у меня есть все данные из реальной системы. Например, Мой инструмент сплава проверяет правила поиска общего друга...
121 просмотров

Как устанавливаются начальные состояния в динамических моделях в Electrum 2?
Я взял пример с дверного замка отеля и придумал этот MWE для автомобильных дверей. enum LockState {Locked, Unlocked} sig Door { var state: LockState } sig Vehicle { doors : disj set Door } //actions pred unlock[d: Door]{ d.state' =...
44 просмотров
schedule 03.05.2024

Сплав - Иррефлексивность
Я только начал использовать Alloy. У меня есть вопрос о следующем минимальном примере: module test abstract sig MySig { my_rel : set MySig } //fact my_rel_irrefl {no iden & my_rel } // this works fact my_rel_irrelfl {my_rel not in...
37 просмотров
schedule 31.10.2023