Overview of the IBC Core TLA+ Specification
masterThe TLA+ specification provides a formal model of the IBC Core protocols, covering ICS02 (Client Semantics), ICS03 (Connection Semantics), ICS04 (Channel and Packet Semantics), and ICS18 (Relayer Algorithms).
The main module, IBCCore.tla, models a system consisting of two chains and two relayers. This model is designed to express concurrency aspects of a system with multiple correct relayers and is structured modularly to facilitate formal verification of properties and invariants in adversarial settings.