```python
def match_at(grid: list, row: int, column: int, value: int) -> bool:
    """Check if the cell at a given row and column holds the specified value."""
    return grid[row][column] == value


def grid_find(grid: list, value: int) -> list:
    """Find the first occurrence of the specified value in the grid."""
    for i, row in enumerate(grid):
        for j, cell in enumerate(row):
            if cell == value:
                return [i, j]
    raise ValueError("Value not found in the grid.")
```