https://github.com/EasyCrypt/easycrypt
Revision f5d072e9a2cdd466d7587b09ced3d53bffde114d authored by Christian Doczkal on 19 October 2021, 17:49:56 UTC, committed by Pierre-Yves Strub on 04 November 2021, 10:00:49 UTC
1 parent 3adc9c8
Raw File
Tip revision: f5d072e9a2cdd466d7587b09ced3d53bffde114d authored by Christian Doczkal on 19 October 2021, 17:49:56 UTC
reduction from N to 1 oracle call for sdist distinguisher
Tip revision: f5d072e
ecTypeClass.mli
(* --------------------------------------------------------------------
 * Copyright (c) - 2012--2016 - IMDEA Software Institute
 * Copyright (c) - 2012--2018 - Inria
 * Copyright (c) - 2012--2018 - Ecole Polytechnique
 *
 * Distributed under the terms of the CeCILL-C-V1 license
 * -------------------------------------------------------------------- *)

(* -------------------------------------------------------------------- *)
open EcPath

type node = path

type graph
type nodes

exception CycleDetected

module Graph : sig
  val empty : graph
  val add : src:node -> dst:node -> graph -> graph
  val has_path : src:node -> dst:node -> graph -> bool
  val dump : graph -> string
end

module Nodes : sig
  val empty : graph -> nodes
  val add : node -> nodes -> nodes
  val toset : nodes -> Sp.t
  val reduce : Sp.t -> graph -> Sp.t
end
back to top