def is_valid(draco_query: List[str], debug=False) -> bool:
    """ Check a task.
        Args:
            draco_query: a list of facts
        Returns:
            whether the task is valid
    """
    _, stdout = run_clingo(
        draco_query,
        files=["define.lp", "hard.lp", "hard-integrity.lp"],
        silence_warnings=True,
        debug=debug,
    )

    return json.loads(stdout)["Result"] != "UNSATISFIABLE"
Check a task.
        Args:
            draco_query: a list of facts
        Returns:
            whether the task is valid