swh:1:snp:0e3a7a90b5b85feca1ee6285ebc0301d2b85deae
Raw File
Tip revision: 9e2f905f6ff3f028c5eaeccb8a5370ec4ab3abe2 authored by Pierre-Yves Strub on 23 January 2022, 15:46:16 UTC
Theory for R[X]/<X^n+1>
Tip revision: 9e2f905
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
back to top