Cadabra
Computer algebra system for field theory problems
Namespaces | Functions
Adjform.cc File Reference
#include <algorithm>
#include <iostream>
#include <limits>
#include <numeric>
#include "Adjform.hh"
#include "Cleanup.hh"
#include "properties/Symbol.hh"
#include "properties/Coordinate.hh"

Namespaces

 cadabra
 Functions to handle the exchange properties of two or more symbols in a product.
 

Functions

int next_perm (std::vector< size_t > &term)
 
template<typename It , typename T >
size_t index_of (It begin, It end, const T &val, size_t offset=0)
 
size_t slots_to_pairs (size_t slots)
 
size_t ifactorial (size_t n, size_t den=1)
 
bool cadabra::is_index (const Kernel &kernel, Ex::iterator it)
 
bool cadabra::has_indices (const cadabra::Kernel &kernel, cadabra::Ex::iterator it)
 
bool cadabra::is_free_index (Adjform::value_type idx)
 
bool cadabra::is_dummy_index (Adjform::value_type idx)
 
std::ostream & operator<< (std::ostream &os, const cadabra::Adjform &adjform)
 
std::ostream & operator<< (std::ostream &os, const cadabra::AdjformEx &adjex)
 

Function Documentation

◆ ifactorial()

size_t ifactorial ( size_t  n,
size_t  den = 1 
)

◆ index_of()

template<typename It , typename T >
size_t index_of ( It  begin,
It  end,
const T &  val,
size_t  offset = 0 
)

◆ next_perm()

int next_perm ( std::vector< size_t > &  term)

◆ operator<<() [1/2]

std::ostream& operator<< ( std::ostream &  os,
const cadabra::Adjform adjform 
)

◆ operator<<() [2/2]

std::ostream& operator<< ( std::ostream &  os,
const cadabra::AdjformEx adjex 
)

◆ slots_to_pairs()

size_t slots_to_pairs ( size_t  slots)