def is_unique(digit, cell, grid):
    """
    Checks if a given digit is unique across its row, column and subgrid.
    
    Arguments:
        digit {number} -- The digit to check for
        cell {tuple} -- The (x, y) coordinates of the digit on the grid
        grid {number matrix} -- The matrix to check the digit at

    Returns:
        bool -- True if the digit is unique on its respective row, column and subgrid, otherwise, False
    """
    x, y = cell
    x_axis = [row[x] for row in grid]
    y_axis = grid[y]
    
    col_level = (x // 3) * 3
    row_level = (y // 3) * 3
    subgrid = []

    for index, row in enumerate(grid):
        if row_level <= index < row_level + 3:
            subgrid += row[col_level : col_level + 3]

    return digit not in [*y_axis, *x_axis, *subgrid]