[−][src]Trait flag_algebra::Flag
Interface for object that can be used as flags.
Required methods
fn induce(&self, set: &[usize]) -> Self
Returns the subflag induced by the vertices in the slice set
.
fn all_flags(n: usize) -> Vec<Self>
Returns the set of all flags of size n
.
This list can have redundancy and a priori not reduced modulo isomorphism. It is used for initialisation and does not need to be efficient.
fn superflags(&self) -> Vec<Self>
Return the list of flags of size self.size() + 1
that contain self
as an induced subflag.
This list can have redundancy and a priori not reduced modulo isomorphism.
Provided methods
fn name() -> String
A name for this type of flags. For instance "Graphe". This name is used for naming the associated data subdirectory.
fn generate_next(previous: &[Self]) -> Vec<Self>
Return the list of flags of size self.size() + 1
that contain self
as an induced subflag reduced modulo isomorphism.
fn generate(n: usize) -> Vec<Self>
Return the list of flags of size n
reduced modulo isomorphism.
fn generate_typed_up(type_flag: &Self, g_vec: &[Self]) -> Vec<Self>
Return the list of flags of g_vec
that can be rooted on the
flag type_flag
.
Each different way to root this flag give a different flag in the result.
fn generate_typed(type_flag: &Self, size: usize) -> Vec<Self>
Return the list of flag of size size
rooted on type_flag
reduced modulo (typed) isomorphism.
fn select_type(&self, eta: &[usize]) -> Self
Reorder self so that the eta.len()
first vertices are the values
of eta
in the corresonding order.
Implementors
impl Flag for Digraph
[src]
fn induce(&self, p: &[usize]) -> Self
[src]
fn name() -> String
[src]
fn all_flags(n: usize) -> Vec<Self>
[src]
fn superflags(&self) -> Vec<Self>
[src]
impl Flag for Graph
[src]
fn induce(&self, p: &[usize]) -> Self
[src]
fn name() -> String
[src]
fn all_flags(n: usize) -> Vec<Self>
[src]
fn superflags(&self) -> Vec<Self>
[src]
impl<F, A> Flag for SubClass<F, A> where
A: SubFlag<F>,
F: Flag,
[src]
A: SubFlag<F>,
F: Flag,
fn name() -> String
[src]
fn superflags(&self) -> Vec<Self>
[src]
fn induce(&self, p: &[usize]) -> Self
[src]
fn all_flags(n: usize) -> Vec<Self>
[src]
impl<R> Flag for Model<R> where
R: BinRelation + Serialize + DeserializeOwned,
[src]
R: BinRelation + Serialize + DeserializeOwned,