Repolode
aidenybai

aidenybai/tla-ts

Интерпретатор и проверщик моделей TLA+ на TypeScript — замена TLC на Java, работающая в браузерах, Node и Bun.

Open source альтернатива:TLC

Звёзды
232
Форки
9
Открытые issues
9
Последний коммит
позавчера

Что это?

tla-ts — интерпретатор и проверщик моделей TLA+, написанный на TypeScript. Он задуман как полноценная замена TLC — эталонного проверщика моделей для спецификаций TLA+, написанного на Java и требующего JVM. Поскольку tla-ts работает везде, где работает JavaScript, включая браузеры, Node и Bun, проверять формальные модели можно без установки Java.

Проект также проверяет доказательства TLAPS, поэтому обязательства по доказательству можно верифицировать без установки tlapm. Он предоставляет JavaScript API с функциями `check`, `prove`, `parseModule` и `parseConfig`, а также командную строку, принимающую параметры TLC, и интерфейс в стиле tlapm. Ошибки обрабатываются типизированными классами для синтаксических ошибок, ошибок конфигурации и вычислений, а также неподдерживаемых конструкций.

В репозитории приведены результаты сравнительного тестирования с TLC: ускорение примерно в 1,1–2,4 раза в зависимости от спецификации и числа worker-потоков. В проект входят браузерная интерактивная среда и набор тестов на соответствие, результаты которого сравниваются с записанными результатами TLC.

Ключевые возможности

  • 01Запускает проверку моделей TLA+ в браузерах, Node и Bun без JVM.
  • 02Проверяет обязательства по доказательству TLAPS без установки tlapm.
  • 03Предоставляет функции `check`, `prove` и функции разбора в JavaScript API.
  • 04Включает командную строку, принимающую параметры TLC и команды в стиле tlapm.
  • 05Поддерживает несколько worker-потоков для параллельного перебора состояний.

Сценарии использования

  • Проверка моделей спецификаций распределённых протоколов в среде Node или браузере.
  • Запуск проверок TLA+ в CI-пайплайне на JavaScript без установки Java.
  • Публикация интерактивной среды TLA+ в браузере для обучения или демонстраций.
  • Проверка доказательств TLAPS в проектах, где уже используется инструментарий Node.

Быстрый старт

  1. 1

    Установите пакет из npm

    npm install tla-ts
  2. 2

    Проверьте спецификацию TLA+ из командной строки

    npx tla-ts Spec.tla

Что важно знать

  • Проект находится на ранней стадии, а его сообщество относительно небольшое (191 звезда).

Темы

Частые вопросы

Что такое tla-ts?
Интерпретатор и проверщик моделей TLA+ на TypeScript — замена TLC на Java, работающая в браузерах, Node и Bun. tla-ts — интерпретатор и проверщик моделей TLA+, написанный на TypeScript. Он задуман как полноценная замена TLC — эталонного проверщика моделей для спецификаций TLA+, написанного на Java и требующего JVM. Поскольку tla-ts работает везде, где работает JavaScript, включая браузеры, Node и Bun, проверять формальные модели можно без установки Java.
tla-ts можно использовать бесплатно? Какая у него лицензия?
tla-ts распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
tla-ts всё ещё поддерживается?
Активно поддерживается. Последний коммит в tla-ts — 5 нояб. 2026 г..
Для чего можно использовать tla-ts?
Проверка моделей спецификаций распределённых протоколов в среде Node или браузере. Запуск проверок TLA+ в CI-пайплайне на JavaScript без установки Java. Публикация интерактивной среды TLA+ в браузере для обучения или демонстраций. Проверка доказательств TLAPS в проектах, где уже используется инструментарий Node.
Как установить tla-ts?
Установите пакет из npm: npm install tla-ts Проверьте спецификацию TLA+ из командной строки: npx tla-ts Spec.tla
Где скачать tla-ts?
Исходный код и инструкции по установке — на GitHub: https://github.com/aidenybai/tla-ts

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Язык программирования, который использует законы и доказательства, чтобы проверять корректность кода, написанного ИИ, и компилирует его в быстрый параллельный код для CPU и GPU.

24,8 тыс.+261 за неделю796TypeScriptApache-2.0Активно поддерживаетсяОбновлён 19 часов назад

Фреймворк для Lean 4, позволяющий описывать, запускать и формально верифицировать нейросети с проверкой форм тензоров и обучением в стиле PyTorch.

206+15 за неделю25LeanMITАктивно поддерживаетсяОбновлён 9 дней назад