https://github.com/EasyCrypt/easycrypt
Tip revision: 8e47fe3d10d154d0653552a905fee3a3113265d4 authored by Pierre-Yves Strub on 03 December 2021, 16:11:39 UTC
Fix bug that prevents `rewrite //= in h` to simplify in `h`
Fix bug that prevents `rewrite //= in h` to simplify in `h`
Tip revision: 8e47fe3
ecTypeClass.mli
(* --------------------------------------------------------------------
* Copyright (c) - 2012--2016 - IMDEA Software Institute
* Copyright (c) - 2012--2021 - Inria
* Copyright (c) - 2012--2021 - 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