Template Function sequant::can_contract

Function Documentation

template<Statistics S>
bool sequant::can_contract(const Op<S> &left, const Op<S> &right, Vacuum vacuum = get_default_context(S).vacuum(), const std::shared_ptr<const IndexBasisRegistry> &isr = get_default_context(S).index_basis_registry())
Returns:

true if left is a quasiparticle annihilator and right is a quasiparticle creator with respect to the given vacuum, and their quasiparticle spaces overlap, i.e. if the pair has a nonzero contraction