package pgsolver
A collection of tools for generating, manipulating and - most of all - solving parity games
Install
Dune Dependency
Authors
Maintainers
Sources
v4.1.tar.gz
sha256=14855e5b52f3e5cef746e261e39aed54ef3915be46c685d0f835809ae4a812ea
md5=db269947469d6236a81bed558cbcc5b6
doc/pgsolver/Univsolve/index.html
Module Univsolve
type universal_solve_options = {
generate_statistics : bool;
verb_level : Basics.verbosity_level;
decompose_sccs : bool;
global_optimization : bool;
solve_special_games : bool;
local_optimization : bool;
globalopt_remove_useless_self_cycles : bool;
globalopt_solve_useful_self_cycles : bool;
solvespec_single_parity : bool;
solvespec_single_player : bool;
localopt_priority_propagation : bool;
localopt_compact_priorities : bool;
}
val universal_solve_def_options : bool -> int -> universal_solve_options
val universal_solve_global_options :
(bool -> int -> universal_solve_options) ref
val universal_solve_init_options_verbose :
(bool -> int -> universal_solve_options) ->
universal_solve_options
val universal_options_alter_verb :
universal_solve_options ->
Basics.verbosity_level ->
universal_solve_options
type universal_solve_statistics = {
overall_timing : Tcstiming.SimpleTiming.timing_object;
universal_timing : Tcstiming.SimpleTiming.timing_object;
backend_timing : Tcstiming.SimpleTiming.timing_object;
logistics_timing : Tcstiming.SimpleTiming.timing_object;
stats_timing : Tcstiming.SimpleTiming.timing_object;
overall_solved_nodes : int ref;
universal_solved_nodes : int ref;
backend_solved_nodes : int ref;
backend_investigated_nodes : int ref;
index_sum : int ref;
index_reduced_sum : int ref;
index_count : int ref;
global_timing : Tcstiming.SimpleTiming.timing_object;
global_timing_without_attractor : Tcstiming.SimpleTiming.timing_object;
global_nodes : int ref;
global_nodes_without_attractor : int ref;
special_timing : Tcstiming.SimpleTiming.timing_object;
special_nodes : int ref;
local_timing : Tcstiming.SimpleTiming.timing_object;
decomposition_timing : Tcstiming.SimpleTiming.timing_object;
max_recursion_depth : int ref;
recursive_calls : int ref;
toplevel_sccs : int ref;
largest_toplevel_scc : int ref;
total_sccs : int ref;
attractor_timing : Tcstiming.SimpleTiming.timing_object;
attractor_investigated_nodes : int ref;
attractor_solved_nodes : int ref;
globalopt_remove_useless_self_cycles_nodes : int ref;
globalopt_remove_useless_self_cycles_timing : Tcstiming.SimpleTiming.timing_object;
globalopt_solve_useful_self_cycles_nodes : int ref;
globalopt_solve_useful_self_cycles_timing : Tcstiming.SimpleTiming.timing_object;
solvespec_single_parity_nodes : int ref;
solvespec_single_parity_timing : Tcstiming.SimpleTiming.timing_object;
solvespec_single_player_nodes : int ref;
solvespec_single_player_timing : Tcstiming.SimpleTiming.timing_object;
localopt_priority_propagation_timing : Tcstiming.SimpleTiming.timing_object;
localopt_compact_priorities_timing : Tcstiming.SimpleTiming.timing_object;
}
val universal_solve_format_stats : universal_solve_statistics -> string
val universal_solve_init_statistics : unit -> universal_solve_statistics
val universal_solve_run :
universal_solve_options ->
universal_solve_statistics ->
(Paritygame.paritygame -> Paritygame.solution * Paritygame.strategy) ->
Paritygame.paritygame ->
Paritygame.solution * Paritygame.strategy
val universal_solve :
universal_solve_options ->
(Paritygame.paritygame -> Paritygame.solution * Paritygame.strategy) ->
Paritygame.paritygame ->
Paritygame.solution * Paritygame.strategy
val universal_solve_fallback :
universal_solve_options ->
(Paritygame.paritygame -> Paritygame.solution * Paritygame.strategy) ->
(Paritygame.paritygame -> Paritygame.solution * Paritygame.strategy) ->
Paritygame.paritygame ->
Paritygame.solution * Paritygame.strategy
val universal_solve_by_player_solver :
universal_solve_options ->
(Paritygame.paritygame ->
Paritygame.player ->
Paritygame.solution * Paritygame.strategy) ->
Paritygame.paritygame ->
Paritygame.solution * Paritygame.strategy
val universal_solve_trivial :
Basics.verbosity_level ->
Paritygame.paritygame ->
Paritygame.solution * Paritygame.strategy
val compute_winning_nodes :
Basics.verbosity_level ->
Paritygame.paritygame ->
Paritygame.strategy ->
Paritygame.player ->
Paritygame.node list
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>