Translation to Elixir of the article from this link: https://www.cs.princeton.edu/~dpw/courses/cos326-12/notes/reasoning.php
In the last note, we discussed the operational semantics of simple ML programs. This operational semantics provides us with a means to prove some simple things about our the programs we write. For example.
Theorem: The expression x = 1 ; y = x + 2 ; x + y evaluates to the value 4.
Proof: By the definition of the operational semantics of ML (Elixir):