Shape Playground
Shape programs compile, verify and run inside your browser as WebAssembly.
Shape source
fn count(n: Int) -> Int: requires n >= 0 requires n <= 1000000 ensures result == n let i: Int = 0 let result_count: Int = 0 while i < n: invariant i >= 0 invariant i <= n invariant result_count == i decreases n - i set result_count = result_count + 1 set i = i + 1 result_count fn main() -> Int effects io: print(count(42)) count(42)
Run
Result
Verified
—
Obligations
—
Program output
Return value
—