Functor Strat.Algo

module Algo: 
functor (G : G) ->
functor (P : PLAYER with type vertex = G.vertex) ->
functor (S : STRAT with type vertex = G.vertex) -> sig .. end
Implements strategy algorithms on graphs
Parameters:
G : G
P : PLAYER with type vertex = G.vertex
S : STRAT with type vertex = G.vertex

val coherent_player : Strat.G.t -> P.t -> bool
coherent_player g p returns true iff the completion p is coherent w.r.t. the graph g
val coherent_strat : Strat.G.t -> S.t -> bool
coherent_strat g s returns true iff the strategy s is coherent w.r.t. the graph g
val game : Strat.G.t -> P.t -> S.t -> S.t -> bool
game g p a b returns true iff a wins in g given the completion p (i.e. the game goes through a final state).
val strategy : Strat.G.t -> P.t -> S.t -> bool
strategy g p s returns true iff s wins in g given the completion p, whatever strategy plays the other player.
val strategyA : Strat.G.t -> P.t -> bool * S.t
strategyA g p returns true iff there exists a winning stragegy for the true player. In this case, the winning strategy is provided.