Imandra Protocol Language

Machine-reasonable APIs for connectivity

A protocol-independent language for expressing system connectivity specifications — machine-readable and machine-reasonable — for financial markets and beyond.

Statically typed connectivity models with clear semantics for messages and state.

Reason about behaviour through verification goals, tests, and regulatory statements.

IDE support through the IPL VS Code extension and the Imandra toolchain.

Mission

Protocol-independent connectivity specs

IPL expresses how systems connect and behave — starting with FIX, extensible to other protocols.

IPL was designed as a protocol-independent language for system connectivity specifications. Today's libraries focus on FIX; the framework generalizes to other protocols.

Markets depend on interconnected systems understanding each other safely. IPL provides a rigorous way to specify and verify trading behaviour — making machine-reasonable regulations actionable.

Capabilities

What IPL gives you

Strong typing, protocol libraries, and reasoning-ready models for connectivity.

Type inference

Strongly statically typed language where the type checker deduces types and ensures validity in context.

Machine-reasonable

Not only machine readable — enables automated verification, test generation, and regulatory reasoning.

Protocol libraries

Built-in FIX protocol libraries with support for multiple versions and extension points for other protocols.

State management

Model state and transitions as state machines — the basis for automated reasoning over connectivity.

Validity checking

Internal validity construction ensuring specifications return messages with all required fields.

IDE integration

Language server with context-aware completion and hover documentation via the IPL VS Code extension.