Cadabra
Computer algebra system for field theory problems
Loading...
Searching...
No Matches
TableauBase.hh
Go to the documentation of this file.
1
2#pragma once
3
4#include "Props.hh"
5#include "YoungTab.hh"
6
7namespace cadabra {
8
9 class TableauBase : virtual public property {
10 public:
11 virtual ~TableauBase();
13
14 virtual std::string name() const;
15
16 virtual unsigned int size(const Properties&, Ex&, Ex::iterator) const=0;
17 virtual tab_t get_tab(const Properties&, Ex&, Ex::iterator, unsigned int) const=0;
18
19 virtual bool only_column_exchange() const
20 {
21 return false;
22 };
23
24 // Indexgroups are groups of indices which can be sorted by application
25 // of single-index monoterm symmetries. E.g. R_{m n p q} -> {m,n}:0, {p,q}:1.
26 int get_indexgroup(const Properties&, Ex&, Ex::iterator, int) const;
27
28 // Is the tableau either a single column or a single row, and without
29 // duality projections?
30 bool is_simple_symmetry(const Properties&, Ex&, Ex::iterator) const;
31 };
32
33 }
Basic storage class for symbolic mathemematical expressions.
Definition Storage.hh:142
Class holding a collection of properties attached to expressions.
Definition Props.hh:237
Definition TableauBase.hh:9
virtual std::string name() const
Definition TableauBase.cc:10
virtual tab_t get_tab(const Properties &, Ex &, Ex::iterator, unsigned int) const =0
bool is_simple_symmetry(const Properties &, Ex &, Ex::iterator) const
Definition TableauBase.cc:38
virtual bool only_column_exchange() const
Definition TableauBase.hh:19
virtual ~TableauBase()
Definition TableauBase.cc:6
int get_indexgroup(const Properties &, Ex &, Ex::iterator, int) const
Definition TableauBase.cc:15
virtual unsigned int size(const Properties &, Ex &, Ex::iterator) const =0
yngtab::filled_tableau< unsigned int > tab_t
Definition TableauBase.hh:12
Base class for all properties, handling argument parsing and defining the interface.
Definition Props.hh:127
Definition YoungTab.hh:87
Functions to handle the exchange properties of two or more symbols in a product.
Definition Adjform.cc:83