Game.V1type refutation = | Start of {player_commitment_hash : Mavkit_smart_rollup.Commitment.Hash.t;opponent_commitment_hash : Mavkit_smart_rollup.Commitment.Hash.t;}| Move of {choice : Z.t;step : step;}val dissection_chunk_encoding :
dissection_chunk Mavryk_base.TzPervasives.Data_encoding.tval dissection_encoding :
dissection_chunk list Mavryk_base.TzPervasives.Data_encoding.tval step_encoding : step Mavryk_base.TzPervasives.Data_encoding.tval refutation_encoding : refutation Mavryk_base.TzPervasives.Data_encoding.tval index_encoding : index Mavryk_base.TzPervasives.Data_encoding.tval make_index :
Mavryk_crypto.Signature.Public_key_hash.t ->
Mavryk_crypto.Signature.Public_key_hash.t ->
indextype game_state = | Dissecting of {dissection : dissection_chunk list;default_number_of_sections : int;}| Final_move of {agreed_start_chunk : dissection_chunk;refuted_stop_chunk : dissection_chunk;}type t = {turn : player;inbox_snapshot : Inbox.V1.history_proof;dal_snapshot : Dal.Slot_history.t;start_level : int32;inbox_level : int32;game_state : game_state;}type conflict = {other : Mavryk_crypto.Signature.Public_key_hash.t;their_commitment : Commitment.t;our_commitment : Commitment.t;parent_commitment : Mavkit_smart_rollup.Commitment.Hash.t;}val game_state_equal : game_state -> game_state -> boolval player_encoding : player Mavryk_base.TzPervasives.Data_encoding.tval game_state_encoding : game_state Mavryk_base.TzPervasives.Data_encoding.tval encoding : t Mavryk_base.TzPervasives.Data_encoding.tval conflict_encoding : conflict Mavryk_base.TzPervasives.Data_encoding.t