#include <sources/headers/Cob.h>
template<typename Coeff>
Deco class
auxillary class for the definition of CobMor
represents an elementary cobordism of the form , where is a scalar, is a non-negative integer and is a single cobordism each of whose components carries at most one dot. Here, we treat all components equally, we do not pick a distinguished component in the sense of [4].
Constructors, destructors, conversion operators
Public functions
- void add_H()
- increase hpower by 1
- auto gr_q() const -> Grading
- grading of a decoration ( )
- auto operator!=(const Deco<Coeff>& deco2) const -> bool
- true if decos differ, ignoring coefficients
- auto operator*(const Deco<Coeff>& deco2) const -> Deco<Coeff>
- concatenate two (partial) decorations
- auto operator<(const Deco<Coeff>& deco2) const -> bool
- true if decos are ordered lexicographically (first dots, then hpower), ignoring coefficients. We assume, but do not check that the components are in the same order.
- auto operator==(const Deco<Coeff>& deco2) const -> bool
- true if decos agree, ignoring coefficients
- void reorder_new2old(const IndexL& new_order)
- reorder dots according to the new order of components
- void reorder_old2new(const IndexL& new_order)
- reorder dots according to the new order of components
- void sub_H()
- decrease hpower by 1
- void switch_dot(const size_t& index)
- remove/add a single dot on a single component;
Public variables
- friend CobMor< Coeff >
- friend (CobMor)
Friends
- auto deco_is_zero(const Deco<Coeff>& deco) -> bool
- check if zero; used in CobMor::
simplify().
Function documentation
template<typename Coeff>
void Deco<Coeff>:: reorder_new2old(const IndexL& new_order)
reorder dots according to the new order of components
new_order[new_index]=old_index;
We assume new_order.size()==dots.size()
template<typename Coeff>
void Deco<Coeff>:: reorder_old2new(const IndexL& new_order)
reorder dots according to the new order of components
new_order[old_index]=new_index;
We assume new_order.size()==dots.size().