from typing import Any, Literal

def dpll_satisfiable(expr) -> dict[Any, Any] | Literal[False]:
    ...

def dpll(clauses, symbols, model) -> Literal[False]:
    ...

def dpll_int_repr(clauses, symbols, model) -> Literal[False]:
    ...

def pl_true_int_repr(clause, model=...) -> bool | None:
    ...

def unit_propagate(clauses, symbol) -> list[Any]:
    ...

def unit_propagate_int_repr(clauses, s) -> list[Any]:
    ...

def find_pure_symbol(symbols, unknown_clauses) -> tuple[Any, bool] | tuple[None, None]:
    ...

def find_pure_symbol_int_repr(symbols, unknown_clauses) -> tuple[Any, Literal[True]] | tuple[Any, Literal[False]] | tuple[None, None]:
    ...

def find_unit_clause(clauses, model) -> tuple[Any | bool, Any | bool] | tuple[None, None]:
    ...

def find_unit_clause_int_repr(clauses, model) -> tuple[Any, Literal[False]] | tuple[Any, Literal[True]] | tuple[None, None]:
    ...

