Module Bigraph.Iso
Standard map operations
Additional functions
val add : int -> int -> t -> tadd i j isoadds a new pair(i, j)to isomorphismiso. Ifiorjare already bound iniso,isois returned unmodified.
val to_list : t -> (int * int) listReturn the list of pairs defined by an isomorphism.
val of_list : (int * int) list -> tof_list lreturns an isomorphism with the elements in listl. In case of conflicting pairs, the left-most is added to the isomorphism.
val to_string : t -> stringReturn the string representation of an isomorphism. Example:
{(1, 1), (2, 3), (5, 2)}
val pp : Stdlib.Format.formatter -> t -> unitPretty printer.
val equal_up_to : t -> t -> t list -> boolequal_up_to i i' autoschecks whetheriandi'are equal up to isomorphism.autosis a list of ismorphisms overi.
val apply : t -> int -> int optionapply iso ireturns the value associated toiby isomorphismiso.
val transform : iso_dom:t -> iso_codom:t -> t -> ttransform ~iso_dom ~iso_codom ireturns the isomorphism obtained by applyingiso_domandiso_codomto the domain and co-domain ofi, respectively. Entries inithat cannot be mapped by eitheriso_domoriso_codomare ignored.
val gen_isos : t -> t list -> t listgen_isos iso autosgenerates the symmetric isomorphisms ofisoby usingautos, a list of automorphisms over the domain ofiso. Entries inisonot mapped by an automorphism are ignored.
val is_id : t -> boolReturns
trueif an isomorphism is an identity,falseotherwise.