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

Spin — формальная проверка
Есть ли у кого-нибудь контакт с проверкой моделей с помощью этого инструмента SPIN , а тем более любой информации проверка модели (параллельные программы)
971 просмотров
schedule 23.04.2023

Как интерпретировать вывод ошибки SPIN?
Я пытаюсь смоделировать проверку простой модели Promela для следующего свойства LTL: ltl { M[0] U M[1] } И я получаю сообщение об ошибке, управляемое моделирование по следу ошибки дает следующий результат: ltl ltl_0: (M[0]) U (M[1]) spin:...
3722 просмотров

Рекурсивные типы данных в Promela
Я пытаюсь создать B-дерево в Promela, чтобы я мог доказать что-то об этом, однако кажется, что Promela не поддерживает рекурсивные типы данных. Это не работает: #define n 2 typedef BTreeNode { int keys[2*n-1]; BTreeNode children[2*n];...
259 просмотров

Запрос нескольких (или всех) трассировок нарушений в Spin
Можно ли получить несколько (или все) трассировок нарушений для свойства с помощью Spin? В качестве примера я создал модель Promela ниже: byte mutex = 0; active proctype A() { A1: mutex==0; /* Is free? */ A2: mutex++; /* Get mutex */ A3: /*...
186 просмотров
schedule 07.05.2023

Какие состояния и переходы рассматривает глубина Спина?
Для проверок (с ispin), в которых никогда не используются утверждения, я получаю выходные данные с depth reached большим, чем количество состояний и количество переходов, например: Full statespace search for: never claim +...
106 просмотров
schedule 28.11.2022

Проверка модели LTL с помощью SPIN
Я смотрю на программное обеспечение SPIN. Я хотел бы использовать его для поиска моделей теорий LTL. Во всех руководствах и туториалах говорится о проверке свойств алгоритмов, но меня это совершенно не интересует. Я просто хочу найти модели формул...
554 просмотров

Promela: передача массива в новый proctype
Мне нужно передать массив из родительского процесса в дочерний процесс в Promela , но он не позволяет мне это сделать. Кроме того, у меня есть некоторые ограничения в том, чтобы сделать этот массив глобальным, поэтому я не могу этого сделать. Как...
606 просмотров
schedule 26.07.2023

Блокировка между N процессами в Promela
Я пытаюсь смоделировать один из моих проектов в promela для проверки модели. При этом у меня есть N узлов в сети. Итак, для каждого узла я делаю процесс. Что-то вроде этого: init { byte proc; atomic { proc = 0; do :: proc < N...
906 просмотров
schedule 27.08.2022

Ошибка: индексация массива «каналы»
Я получаю эту ошибку с Spin 6.4.8 : spin: indexing channels[-1] - size is 3 spin: 2.pml:13, Error: indexing array 'channels' при запуске имитации следующей модели Promela : chan channels[3] = [1] of { pid }; active [3] proctype node ()...
306 просмотров
schedule 04.05.2023

Как проверить произвольное условие в очереди сообщений в Spin?
Я пытаюсь смоделировать поведение других средств проверки моделей с помощью Spin. Для этого мне нужно иметь возможность проверить какое-то произвольное условие в очереди сообщений. Например, я хочу проверить, есть ли где-то в канале какое-то...
72 просмотров
schedule 23.05.2023

Почему бесконечный цикл не приводит к ошибке при проверке модели с помощью Promela и Spin?
Если я напишу следующий код в Promela и запущу его в Spin в режиме верификатора, он завершится с 0 ошибками. Он сообщает, что toogle и init не достигли состояния, но это, похоже, только предупреждения. byte x = 0; byte y = 0; active proctype...
458 просмотров
schedule 17.10.2022

отказано в разрешении на выполнение '/ usr / bin / spin' в WSL (ubuntu 18.04)
Я уже довольно давно использую подсистему Windows для Linux для SPIN (Promela). Однако без каких-либо изменений в настройке, внезапно с 28 октября 2019 года я получаю сообщение об ошибке «В разрешении отказано» для «/ usr / bin / spin». Другие...
938 просмотров