Modern software systems are intricately complex and even more so are their interactions with each other. We've created several tools based on the Imandra Core reasoning engine for helping you connect them faster and safer, and optimize their interactions.
Formal Interface Description Language and tools
Successfully integrating complex software components require rigorous testing and analysis - today, this means considering all of their possible interactions. Luckily, the recent advances in AI allow us to do exactly this.
Imandra Protocol Language (IPL) - IPL is a formal Interface Description Language for specifying complex system interfaces. IPL is used with a set of Imandra-powered tools to design, verify and document interface components, automatically generate test cases, on-demand simulators and much more. The services automatically translate IPL models into Imandra and create a domain-specific into Imandra for system integration.
Typically, integrating two software components requires more than just ensuring they abide by the same set of communication rules. In finance markets, for example, exchange operators and brokers provide programmatic access to their services and expose many parameters client systems can leverage when engaging with them. These parameters (e.g. order types and their attributes) ultimately entail trade-offs between different objectives.
Imandra Markets: Autopilot is scalable model-based Reinforcement Learning solution for calibrating financial system integration, powered by the Imandra reasoning system. Imandra's unique ability to analyze system state-spaces allows us to extract actionable intelligence from existing production data, without requiring the typical simulation required to train RL algorithms.