A cost bound is only proven when every think() count is known
Pitfall 20 of writing Soma, the programming language: a habit from another language, or a rule that surprises, with what the Soma compiler answers and the form to write.
think() reached through a loop over a list, a lambda (map(xs, x => think(..))) or a recursive helper makes the bound unprovable — and an unprovable declared bound is a soma check error (the message reads cost: 'tokens' bound is advisory — …, exit 1), not a note: a bound nobody can prove is a lie in the program's own words. Give the loop a literal range(0, N) or [loop_bound(N)] to get bound proven back, or remove the cost block. Calls to sibling handlers are composed: for i in range(0, 3) { helper() } costs 3 × helper.