def closed_blank.cell

minebender-game@1.0.0.0 · proof_inv.bend:270

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/proof_lists.bend as PL
import minebender-game@1.0.0.0/proof_cells.bend as PS

270def closed_blank.cell(+w: Nat, +h: Nat, +layout: T.Grid(Bool), +q: T.Pos) ->
271  {cl_f(CL{w, h, layout, B.blank(Bool, w, h, False{})}, q) == True{} : Bool}:
272  match q:
273    case T.Pos{x, y}:
274      +bl = B.blank(Bool, w, h, False{})
275      %Equal.sym(Bool, B.at(Bool, False{}, bl, T.Pos{x, y}), False{}, PL.blank_at(w, h, x, y)) :
276        {Bool.or(Bool.not(Bool.and(_, B.zero(w, h, layout, T.Pos{x, y}))),
277          PS.allp(~T.Grid(Bool), ~shown_in, bl, B.neighbours(w, h, T.Pos{x, y}))) == True{} : Bool}
278      {==}

Uses (17)

Used by (1)