package pgsolver
Module Paritygame
val nd_undef : nodeval nd_show : node -> stringval ns_isEmpty : nodeset -> boolval ns_empty : nodesetval ns_size : nodeset -> intval plr_Even : playerval plr_Odd : playerval plr_undef : playerval plr_random : unit -> playerval plr_show : player -> stringval plr_iterate : (player -> unit) -> unitval odd : priority -> boolval even : priority -> boolval pg_create : int -> paritygameval pg_init :
int ->
(node -> priority * player * node list * string option) ->
paritygameval pg_size : paritygame -> intval pg_node_count : paritygame -> intval pg_edge_count : paritygame -> intval pg_copy : paritygame -> paritygameval pg_get_priority : paritygame -> node -> priorityval pg_get_owner : paritygame -> node -> playerval pg_get_successors : paritygame -> node -> nodesetval pg_get_predecessors : paritygame -> node -> nodesetval pg_set_priority : paritygame -> node -> priority -> unitval pg_set_owner : paritygame -> node -> player -> unitval pg_add_edge : paritygame -> node -> node -> unitval pg_del_edge : paritygame -> node -> node -> unitval pg_get_desc : paritygame -> node -> string optionval pg_set_desc : paritygame -> node -> string option -> unitval pg_get_desc' : paritygame -> node -> stringval pg_set_desc' : paritygame -> node -> string -> unitval pg_isDefined : paritygame -> node -> boolval pg_edge_iterate : (node -> node -> unit) -> paritygame -> unitval pg_find_desc : paritygame -> string option -> nodeval pg_get_index : paritygame -> intval pg_prio_nodes : paritygame -> priority -> nodesetval pg_get_selected_priorities :
paritygame ->
(priority -> bool) ->
priority listval pg_get_priorities : paritygame -> priority listval pg_remove_nodes : paritygame -> nodeset -> unitval pg_remove_edges : paritygame -> (node * node) list -> unittype solution = player arraytype strategy = node arrayval sol_create : paritygame -> solutionval sol_make : int -> solutionval sol_init : paritygame -> (node -> player) -> solutionval sol_number_solved : solution -> intval str_create : paritygame -> strategyval str_make : int -> strategyval str_init : paritygame -> (node -> node) -> strategytype global_solver = paritygame -> solution * strategyval game_to_string : paritygame -> stringval print_game : paritygame -> unitval to_dotty : paritygame -> solution -> strategy -> out_channel -> unitval to_dotty_file : paritygame -> solution -> strategy -> string -> unitval format_strategy : strategy -> stringval format_solution : solution -> stringval format_game : paritygame -> stringval ord_rew_for : player -> pg_orderingval ord_prio : pg_orderingval ord_total_by : pg_ordering -> pg_orderingval pg_max : paritygame -> pg_ordering -> nodeval pg_min : paritygame -> pg_ordering -> nodeval pg_max_prio_node : paritygame -> nodeval pg_max_rew_node_for : paritygame -> player -> nodeval pg_max_prio : paritygame -> priorityval pg_min_prio : paritygame -> priorityval pg_max_prio_for : paritygame -> player -> priorityval collect_nodes_by_prio : paritygame -> (priority -> bool) -> nodesetval collect_nodes_by_owner :
paritygame ->
(player -> bool) ->
nodeset * nodesetval collect_max_prio_nodes : paritygame -> nodesetval collect_max_parity_nodes : paritygame -> nodesetval subgame_by_edge_pred : paritygame -> (node -> node -> bool) -> paritygameval subgame_by_strat : paritygame -> strategy -> paritygameval subgame_by_strat_pl : paritygame -> strategy -> player -> paritygameval subgame_by_list : paritygame -> nodeset -> paritygameval subgame_by_node_filter :
paritygame ->
(node -> bool) ->
paritygame * (node -> node) * (node -> node)val strongly_connected_components :
paritygame ->
nodeset array * scc array * scc list array * scc listval attr_closure_inplace :
paritygame ->
strategy ->
player ->
nodeset ->
nodesetval pg_set_closed : paritygame -> nodeset -> player -> boolval pg_set_dominion :
(paritygame -> solution * strategy) ->
paritygame ->
nodeset ->
player ->
strategy optiontype partial_solver = partial_paritygame -> partial_solutionval induce_partialparitygame : paritygame -> node -> partial_paritygameval induce_counting_partialparitygame :
paritygame ->
node ->
int ref * partial_paritygameval partially_solve_dominion :
paritygame ->
node ->
partial_solver ->
solution * strategyval partially_solve_game : paritygame -> partial_solver -> solution * strategyval get_player_decision_info : paritygame -> bool * boolval is_single_parity_game : paritygame -> priority optionval number_of_strategies : paritygame -> player -> int -> intval compute_priority_reach_array : paritygame -> player -> priority array arraytype dynamic_paritygame =
(priority * player * string option) Tcsgraph.DynamicGraph.dynamic_graphval paritygame_to_dynamic_paritygame : paritygame -> dynamic_paritygameval dynamic_subgame_by_strategy :
dynamic_paritygame ->
strategy ->
dynamic_paritygameval paritygame_to_dynamic_paritygame_by_strategy :
paritygame ->
strategy ->
dynamic_paritygamemodule NodeSet : sig ... endval diamond : paritygame -> NodeSet.t -> NodeSet.tval box : paritygame -> NodeSet.t -> NodeSet.tmodule type PGDescription = sig ... endmodule type PGBuilder = sig ... endmodule Build (T : PGDescription) : PGBuilder with type gamenode = T.gamenode