def nsm_flood.walk
minebender-game@1.0.0.0 · proof_inv.bend:340
import minebender-game@1.0.0.0/proof_inv.bend as ProofInv
import Base
import minebender-game@1.0.0.0/types.bend as T
import minebender-game@1.0.0.0/board.bend as B
import minebender-game@1.0.0.0/LAWS.bend as L
import minebender-game@1.0.0.0/proof_copy.bend as PC
import minebender-game@1.0.0.0/proof_walk.bend as PW
import minebender-game@1.0.0.0/proof_flood.bend as PF
340def nsm_flood.walk(+w: Nat, +h: Nat, +layout: T.Grid(Bool), +p0: T.Pos, +q: T.Pos,
341 safe: {L.mine(layout, p0) == False{} : Bool}, mq: {B.mine(layout, q) == True{} : Bool},
342 wk: PF.Walk(w, h, layout, p0, q), -A: Type) -> A:
343 match wk:
344 case (path, pw):
345 PF.both_absurd(A, L.mine(layout, q), PW.walk_safe(path, w, h, layout, p0, q, pw, safe),
346 %PC.mine_eq(layout, q) : {_ == True{} : Bool}; mq)