Modeling Snakes and Ladders: The Board
The article discusses the modeling of a Snakes and Ladders board using the Verus programming language. It explains how the board is represented as a sequence of integers, with positive values indicating ladders and negative values indicating snakes. Additionally, it outlines several invariants that must be maintained for the board to be valid and playable.
- ▪The Snakes and Ladders board is modeled as a sequence of integers where positive values represent ladders and negative values represent snakes.
- ▪A valid board must have at least two squares to prevent immediate wins.
- ▪Invariants ensure that snakes and ladders do not send players off the board or create unplayable scenarios.
Opening excerpt (first ~120 words) tap to expand
Modeling Snakes and Ladders: The BoardMay 23, 2026In the last post, we introduced Verus and used it to create an abstract formal model of Snakes and Ladders. The model knows that the board has some number of squares, that players take turns moving around the board, and if someone lands on the final square the game is over, but the board itself was abstracted away completely. Here, we model the board.Recall that a Snakes and Ladders board is a sequence of squares. On some squares there is the base of a ladder. Players on that square can climb the ladder to go further along the board.
…
Excerpt limited to ~120 words for fair-use compliance. The full article is at Senneker.