def covers_skip.cell

minebender-game@1.0.0.0 · proof_solver.bend:722

import minebender-game@1.0.0.0/proof_solver.bend as ProofSolver
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/solver.bend as S
import minebender-game@1.0.0.0/proof_grid.bend as PG

722def covers_skip.cell(+c: T.Pos, +rel: List<&2, S.Item>, +rest: List<&2, S.Todo>, +part: T.Grid(Maybe<&2, Bool>),
723  +q: T.Pos, fr: {S.is_none(S.look(part, c)) == False{} : Bool},
724  h: {cv_f(CV{S.Todo{c, rel} <> rest, part}, q) == True{} : Bool}, +b: Bool, be: {B.same(c, q) == b : Bool}) ->
725  {cv_f(CV{rest, part}, q) == True{} : Bool}:
726  match b:
727    case True{}:
728      %PG.same_sound(c, q, be) :
729        {Bool.or(Bool.not(S.is_none(S.look(part, _))), tcontains(rest, _)) == True{} : Bool}
730      %Equal.sym(Bool, S.is_none(S.look(part, c)), False{}, fr) :
731        {Bool.or(Bool.not(_), tcontains(rest, c)) == True{} : Bool}
732      {==}
733    case False{}:
734      %be : {Bool.or(Bool.not(S.is_none(S.look(part, q))), Bool.or(_, tcontains(rest, q))) == True{} : Bool}; h

Uses (17)

Used by (1)