Описание тега tla+
TLA+ is a language and toolchain for specifications based on TLA, the Temporal Logic of Actions. The TLA Toolbox includes a translator from PlusCal to TLA+, the TLC model checker, and an IDE.
1
ответ
\in работает, в то время как \subseteq выдает ошибку "идентификатор не определен"
У меня есть следующие спецификации: ------------------------------ MODULE Group ------------------------------ CONSTANTS People VARIABLES members Init == members \subseteq People Next == members' = members Group == Init /\ [][Next]_members =========…
22 ноя '18 в 07:42
1
ответ
Сравнение элементов последовательности и набора в TLA+
Дана последовательность S = <<1,2,3,4>> и множество S' = {1,2,3,4,5,6}. Как мы можем проверить, содержат ли они оба одинаковые значения в TLA+?
23 мар '18 в 22:46
1
ответ
Выражая временную логику действий в эрланге. любой естественный способ?
Я хотел бы перевести некоторые действия, указанные в TLA на Erlang. Можете ли вы придумать какой-нибудь естественный способ сделать это непосредственно в Erlang или какую-либо инфраструктуру, доступную для этого? В двух словах (очень маленький), дей…
16 фев '11 в 18:42
1
ответ
Последовательность TLA+ не обновляется вызовами Append или Tail
Эта проблема Я играю с TLA+ и думал, что напишу следующую явно ложную спецификацию в PlusCal: ---- MODULE transfer ---- EXTENDS Naturals, TLC, Sequences (* --algorithm transfer \* Simple algorithm: \* 1. Start with a shared-memory list with one elem…
07 янв '19 в 00:26
1
ответ
Вопросы о постоянном операторе в TLA+
Я недавно читаю книгу "Уточняющие системы". В главе 5 Лесли определяет постоянный оператор Send (,,,). Я не понимаю, как присвоить значение (True/False) этому константному выражению? Нужно ли присваивать True / False каждому (p, v, m, m') в программ…
11 фев '19 в 05:48
1
ответ
Задание нескольких шагов с использованием TLA+ (временная логика действий)
Просмотр здесь в основном показывает простые примеры спецификаций действий, где вы ссылаетесь на следующее состояние, используя ', как в: UponV1(self) == /\ pc[self] = "V1" /\ pc' = [pc EXCEPT ![self] = "AC"] /\ sent' = sent \cup { <<self, "EC…
01 мар '19 в 13:48
1
ответ
Выбор одного элемента из симметричного набора
У меня есть спецификация TLA+ сродни следующему: CONSTANT Items VARIABLE item И я бы хотел Items быть симметричным, и выбрать один элемент из Items и сохранить его в item, Я использую item = CHOOSE x \in Items: TRUE, но я узнал, что это нарушает сим…
15 фев '19 в 22:55
1
ответ
Как я могу утверждать, что число идет или список растет в TLA+?
У меня есть спецификация TLA+, в которой я хотел бы заявить, что список только увеличивается в длину (хорошо, если он остается неизменным при заикании). Прямо сейчас у меня что-то вроде этого, но я уверен, что это не правильно NoWorkIsLost == Len(sa…
03 янв '19 в 20:54
1
ответ
Идеи для проекта TLA+
Пожалуйста, дайте мне несколько советов по теме проекта на языке TLA+. Я прохожу курс по языку, это первый год, когда я изучаю спецификацию и проверку, и я понятия не имею, что выбрать для внедрения через две недели. Есть идеи?
20 май '10 в 06:30
1
ответ
Есть ли в TLA+ инфиксный оператор xor (исключительный или)?
Есть ли в TLA+ оператор xor, определенный как часть самого языка, или я должен определить свой собственный?
11 окт '17 в 22:23
1
ответ
Как утверждать, что данное состояние приводит к другому состоянию с переменными в TLA+?
Извините, заголовок немного загадочный. У меня есть спецификация TLA+, которая определяет два набора: variables Requests = {}, Outcomes = {}; У меня есть один набор работников, добавляющих запросы, и другой набор или работников, выполняющих их и пиш…
11 окт '17 в 15:23
2
ответа
Как я могу назначить последовательности константам в разделе CONSTANTS файла конфигурации TLA+?
Я пробовал CONSTANTS seq = <<5,6,7>> но TLC дает мне синтаксическую ошибку: Ошибка: TLC обнаружил ошибку в файле конфигурации в строке 1. Он ожидал = или <- и не нашел ее. Я также попытался включить Sequences Модуль в файле конфигурации,…
21 май '10 в 06:59
2
ответа
Что такое индуктивный инвариант простой параллельной программы?
Вот простая параллельная программа из статьи Лесли Лампорта " Обучение параллелизму ". Рассмотрим $N$ процессы, пронумерованные от 0 до $N-1$, в которых каждый процесс $ i $ выполняется x[i] := 1 y[i] := x[(i - 1) % N] и останавливается, где каждый …
28 июл '14 в 06:44
1
ответ
Как проверить модель модуля, который зависит от несвязанной переменной?
Я сейчас прохожу через Specifying Systems и немного озадачен тем, как я проверю модель следующего модуля: ---------------------------- MODULE BoundedFIFO ---------------------------- EXTENDS Naturals, Sequences VARIABLES in, out CONSTANT Message, N …
01 фев '18 в 21:07
1
ответ
Как перевести формулу в код TLA+
Я написал спецификацию TLA+ Ханойской башни: TEX ASCII ------------------------------- MODULE Hanoi ------------------------------- EXTENDS Sequences, Integers VARIABLE A, B, C CanMove(x,y) == /\ Len(x) > 0 /\ IF Len(y) > 0 THEN Head(y) > H…
03 апр '16 в 23:08
1
ответ
TLA+ Spec с предположениями о внешних системах
Я пробую TLA+ для проекта на работе. Я хочу доказать, что выборка данных с одним и тем же ключом вернет те же данные, несмотря на некоторые изменения внутренних данных. Для этого я хотел бы смоделировать внешнюю систему как черный ящик, ответы котор…
24 окт '17 в 02:12
0
ответов
TLA+ Как визуализировать граф состояний
Я новый TLA+ пользователь. Я читал, что TLA Панель инструментов позволяет нам визуализировать график состояния после завершения проверки модели. Для этого нужно установить точку, что я и сделал. Но я не понял, как запустить визуализацию. Могу ли я к…
28 авг '18 в 10:29
3
ответа
Разница между => и <=>
Я изучаю TLA+ с этой замечательной страницы "Learn TLA+". Я не могу получить практическую разницу между => а также <=>, Я понимаю это с точки зрения "таблицы правды", но я не могу этого понять. Можно ли привести практический пример TLA+, по…
11 ноя '17 в 22:10
1
ответ
Проверьте, что ветви выполнены
Программа может переходить из START в левую или правую ветку. Как я могу проверить, что есть путь выполнения для ЛЕВОЙ ветви и другой путь выполнения для ПРАВОЙ ветви? ------------------------------ MODULE WFBranch ------------------------------ VAR…
10 дек '17 в 21:56
2
ответа
LTL, CTL или TLA для моделирования для моей модели (подробное описание внутри)?
В настоящее время я пишу магистерскую диссертацию и сталкиваюсь с определением и проверкой моего подхода во временной логике. Какую временную логику лучше всего использовать в моих обстоятельствах? Мне бы очень хотелось получить отзыв о моем подходе…
03 мар '14 в 12:40