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

Promela: как использовать цикл for для массива типа typedef
Я хотел бы иметь возможность использовать цикл for для перебора массива значений typedef, как показано ниже: typedef chanArray { chan ch[5] = [1] of {bit}; } chanArray comms[5]; active proctype Reliable() { chanArray channel; for (...
2318 просмотров
schedule 28.11.2022

Используйте определение синтаксиса vim с возвышенным текстом2
Кто-нибудь знает, можете ли вы использовать (или конвертировать) файлы определения выделения синтаксиса vim с Sublime Text? Я ищу маркер для промелы и нашел только один для vim, но использую возвышенный текст в качестве редактора по умолчанию....
2417 просмотров

что никогда не утверждает в этой модели promela
bool p = true; active proctype q() { do :: p=false; p=true; p=false od } never { do :: !p -> goto acceptRun :: else -> skip; skip od; acceptRun : skip } В этой модели промелы утверждение «никогда» проверяет, что сначала, а...
114 просмотров
schedule 11.09.2022

Как я могу смоделировать этот код в promela/SP?
Следующий алгоритм пытается обеспечить взаимное исключение между двумя процессами P1 и P2, каждый из которых выполняет приведенный ниже код. Можно считать, что изначально sema = 0. while true do{ atomic{if sema = 0 then sema:= 1 else go to line...
222 просмотров
schedule 04.12.2022

Как распечатать все состояния в Promela/SPIN
Я хотел бы распечатать все состояния при проверке моей модели. Мы получаем файл следа, когда происходит нарушение утверждения, но я хочу видеть состояния, даже если нарушения утверждения отсутствуют. Как я могу это сделать?
455 просмотров
schedule 01.04.2024

Создание образа автомата моей модели Promela
Я использую графический интерфейс для проверки моделей SPIN — iSPIN. Графический интерфейс поставляется с хорошим генератором представления автоматов, однако, чтобы увидеть полный автомат, мне нужно увеличивать/уменьшать масштаб. Также я хотел бы...
497 просмотров
schedule 10.04.2024

Нельзя ли в Promela выбрать недетерминированное значение элемента массива?
Ниже приведен код Promela, который я пишу. 491 byte api1[5]; 492 byte api2[5]; 493 byte api3[5]; 494 byte reftask1[5] 495 byte reftask2[5]; 496 byte reftask3[5]; 497 byte rid1[5]; 498 byte rid2[5]; 499 byte...
207 просмотров
schedule 15.03.2024

Promela SPIN недоступен из-за ошибки proctype
Я новичок в SPIN и Promela, и я столкнулся с этой ошибкой, когда пытался проверить свойство живости в своих моделях. Код ошибки: unreached in proctype P (0 of 29 states) unreached in proctype monitor mutex_assert.pml:39, state...
825 просмотров

атомарные последовательности в Promela. Противоречие в документации
Здесь http://spinroot.com/spin/Man/Manual.html , написано что: В Promela есть еще один способ избежать проблемы проверки и установки: атомарные последовательности. Добавляя префикс ключевого слова atomic к последовательности операторов,...
1023 просмотров
schedule 29.03.2023

Является ли эта модель алгоритма Петерсона неверной?
Я написал следующую модель алгоритма Петерсона: bool want[2], turn ltl { []<>P[0]@cs } active [2] proctype P() { pid me = _pid pid you = 1 - me do :: want[me] = true turn = you !want[you] || turn == me cs:...
357 просмотров
schedule 27.01.2024

В чем именно разница между пропуском и перерывом в PROMELA?
Допустим, у меня есть этот фрагмент кода PROMELA. active proctype A(){ do :: !x -> break :: else -> skip od … //more code } Что именно делают break и skip в данном случае? Разрывает ли break весь процесс...
574 просмотров
schedule 08.03.2024

PROMELA: Что такое чередование?
Допустим, у нас есть этот фрагмент кода: int x = 3; int y = 5; int z = 0; active proctype P(){ if :: x > y -> z = x :: else -> z = y fi } active proctype Q(){ x++ } active proctype R(){ y = y - x } Я не...
93 просмотров
schedule 01.11.2023

Файл Python, включенный в C в Promela/Spin: «слишком длинный встроенный текст»
Я получаю это сообщение об ошибке при попытке использовать библиотеку Python в Promela и вращаться ( скриншот сообщения об ошибке ): spin: /usr/include/unistd.h:778, Error: inline text too long near '/usr/include/unistd.h' Мой код Промела...
98 просмотров
schedule 23.12.2023