  cadabra | Functions to handle the exchange properties of two or more symbols in a product  | 
   symbols |  | 
   Algorithm | Base class for all algorithms, containing generic routines and in particular the logic for index classification  | 
   tree_less_obj | Compare two trees by pattern logic, i.e. modulo index names  | 
   tree_less_modprel_obj |  | 
   tree_equal_obj |  | 
   tree_exact_less_obj | Compare two trees exactly, i.e. including exact index names  | 
   tree_exact_less_mod_prel_obj |  | 
   tree_exact_equal_obj |  | 
   tree_exact_equal_mod_prel_obj |  | 
   tree_exact_less_for_indexmap_obj | Compare for indexmap_t  | 
   tree_exact_less_no_wildcards_obj | Compare two trees exactly, treat wildcard names as ordinary names  | 
   tree_exact_less_no_wildcards_mod_prel_obj |  | 
   Ex_comparator | A generic tree comparison class which will take into account index contractions and will also keep track of a replacement list for all types of cadabra wildcards  | 
   Ex_is_equivalent | Basic comparison operator for tree iterators, so we can use them as keys in maps  | 
   Ex_is_less |  | 
   DisplayBase | Base class for all display classes  | 
   DisplayMMA | Class to display expressions in a format that Mathematica can parse  | 
   DisplaySympy | Class to display expressions in a format that Sympy can parse  | 
   DisplayTerminal | Class to display expressions to the terminal  | 
   DisplayTeX | Class to handle display of expressions using LaTeX notation  | 
   exchange |  | 
    identical_tensors_t |  | 
    tensor_type_t |  | 
   index_iterator | An iterator which iterates over indices even if they are at lower levels, i.e  | 
   Kernel |  | 
   Parser |  | 
   pattern |  | 
   keyval_t | Arguments to properties get parsed into a keyval_t structure  | 
   property | Base class for all properties, handling argument parsing and defining the interface  | 
   labelled_property |  | 
   list_property | Something cannot be both a list property and a normal property at the same time, so we can safely inherit without virtual  | 
   Inherit | If a property X derives from Inherit<Y>, and get<Y> is called on an object which has an X property (but no Y property), then the get<Y> will look at the non-index child of the object to see if that has a Y property  | 
   PropertyInherit | PropertyInherit is like Inherit<T> for all properties  | 
   Properties | Class holding a collection of properties attached to expressions  | 
    registered_property_map_t |  | 
   str_node | Elementary building block for a mathematical expression  | 
    flag_t |  | 
   Ex | Basic storage class for symbolic mathemematical expressions  | 
   nset_it_less | Compare two nset iterators by comparing the strings to which they point  | 
   TerminalStream |  | 
   canonicalise | Canonicalise the index structure of a tensorial expression  | 
   collect_components | Collect  terms inside a sum, merging their substitution rules  | 
   collect_factors | Collect symbolically equal factors in a product  | 
   collect_terms | Collect symbolically equal terms in a sum  | 
   combine |  | 
   complete | Complete a set of coordinate rules so that they also cover related tensors  | 
   decompose_product | Decompose a product of tensors by applying Young projectors  | 
   distribute | Distribute factors over a sum, that is, \( (A+B) C \rightarrow A C + B C \)  | 
   drop_keep_weight |  | 
   drop_weight |  | 
   keep_weight |  | 
   einsteinify |  | 
   eliminate_kronecker |  | 
   eliminate_converter |  | 
   eliminate_metric |  | 
   epsilon_to_delta |  | 
   evaluate |  | 
   expand |  | 
   expand_delta |  | 
   expand_diracbar |  | 
   expand_power |  | 
   factor_in |  | 
   factor_out |  | 
   fierz |  | 
   flatten_product |  | 
   flatten_sum |  | 
   indexsort |  | 
    less_indexed_treenode |  | 
   integrate_by_parts | Integrate by parts away from the indicated derivative object  | 
   join_gamma |  | 
   keep_terms |  | 
   lr_tensor |  | 
   map_mma | Functionality to act with Mathematica on all scalar parts of an expression, and keep the result in-place  | 
   map_sympy | Functionality to act with Sympy on all scalar parts of an expression, and keep the result in-place  | 
   order |  | 
   product_rule |  | 
   reduce_delta |  | 
   rename_dummies |  | 
   replace_match |  | 
   rewrite_indices |  | 
   sort_product |  | 
   sort_spinors |  | 
   sort_sum |  | 
   split_gamma |  | 
   split_index |  | 
   substitute | Generic substitution algorithm  | 
   sym |  | 
   tab_basics |  | 
   take_match |  | 
   unwrap |  | 
   vary | Generic variational derivative algorithm  | 
   young_project |  | 
   young_project_product |  | 
   young_project_tensor |  | 
   Accent | Turns a symbol into an accent  | 
   AntiCommuting |  | 
   AntiSymmetric |  | 
   Commuting |  | 
   CommutingAsProduct |  | 
   CommutingAsSum |  | 
   CommutingBehaviour |  | 
   Coordinate |  | 
   DAntiSymmetric |  | 
   Depends |  | 
   DependsBase |  | 
   DependsInherit |  | 
   Derivative |  | 
   Diagonal |  | 
   DifferentialForm |  | 
   DifferentialFormBase |  | 
   DiracBar |  | 
   Distributable |  | 
   EpsilonTensor |  | 
   ExteriorDerivative |  | 
   FilledTableau |  | 
   GammaMatrix |  | 
   GammaTraceless |  | 
   ImaginaryI |  | 
   ImplicitIndex |  | 
   IndexInherit |  | 
   Indices |  | 
   Integer | Property indicating that a symbolic object always takes integer values  | 
   InverseMetric |  | 
   KroneckerDelta |  | 
   LaTeXForm |  | 
   Matrix |  | 
   Metric |  | 
   NonCommuting |  | 
   NumericalFlat | Property indicating that an operator is numerically flat, so that numerical factors in the argument can be taken outside  | 
   PartialDerivative |  | 
   RiemannTensor |  | 
   SatisfiesBianchi |  | 
   SelfAntiCommuting |  | 
   SelfCommuting |  | 
   SelfCommutingBehaviour |  | 
   SelfNonCommuting |  | 
   SortOrder |  | 
   Spinor |  | 
   Symbol |  | 
   Symmetric |  | 
   Tableau |  | 
   TableauBase |  | 
   TableauSymmetry |  | 
   Traceless |  | 
   Weight |  | 
   WeightBase |  | 
   WeightInherit |  | 
    WeightException |  | 
   WeylTensor |  | 
   ActionBase | All actions derive from the ActionBase object, which defines the interface they need to implement  | 
   ActionAddCell | Add a cell to the notebook  | 
   ActionPositionCursor | Position the cursor relative to the indicated cell  | 
   ActionSetRunStatus | Update the running status of the indicated cell  | 
   ActionRemoveCell | Remove a cell and all its child cells from the document  | 
   ActionSplitCell | Split a cell into two separate cells, at the point of the cursor  | 
   ActionInsertText | Add a text string (can be just a single character) at the point of the cursor  | 
   ActionEraseText | Remove a text string starting at the indicated position, and with the indicated length, from the indicated cell  | 
   ComputeThread | Base class which talks to the server and sends Action objects back to the DocumentThread  | 
   DataCell | DataCells are the basic building blocks for a document  | 
    id_t | Each cell is identified by a serial number 'id' which is used to keep track of it across network calls, and a bool indicating whether the client or the server has created this cell  | 
   DocumentThread | A base class with all the logic to manipulate a Cadabra notebook document  | 
   GUIBase | Abstract base class with methods that need to be implemented by any GUI  | 
   TeXEngine | TeXEngine is used to convert LaTeX strings into PNG images  | 
    TeXException |  | 
    TeXRequest |  | 
   CodeInput | A text cell editor widget with support for editing Python and LaTeX  | 
    exp_input_tv | The actual text widget used by CodeInput  | 
   ImageView | An image viewing widget  | 
   NotebookCanvas |  | 
   NotebookWindow | Each notebook has one main window which controls it  | 
    Prefs |  | 
   TeXView | TeXView is a widget which knows how to turn a string into a LaTeX-rendered image and display that  | 
   VisualCell | Structure holding a pointer to one of the possible GUI widgets that can appear in a document  | 
  cadabra2_defaults |  | 
   Sympy | Stub object for when Sympy itself is not available  | 
   Server | Object to handle advanced display in a UI-independent way  | 
  cadabra_osx |  | 
   NotebookWindow | Objective-C++ class implementing DocumentThread and providing an OS-X notebook interface  | 
  combin |  | 
   combinations_base |  | 
   combinations |  | 
   symmetriser |  | 
   symm_helper |  | 
   symm_val_helper |  | 
  echokernel |  | 
   EchoKernel |  | 
  snoop |  | 
   Flush |  | 
   Snoop | Logging class with functionality to send log information to a remote server using a websocket connection  | 
    AppEntry | C++ representation of an run entry  | 
    LogEntry | C++ representation of a log entry  | 
   SnoopImpl |  | 
  sympy |  | 
  yngtab | Generic Young tableaux routines  | 
   tableau_base |  | 
   tableau |  | 
   tableaux |  | 
   filled_tableau |  | 
    in_column_iterator | An iterator which stays inside a given column of a tableau  | 
    iterator | An iterator over all boxes of a tableau, left to right, top to bottom  | 
    iterator_base |  | 
  AppDelegate |  | 
  AppDelegate() |  | 
  ArgumentException | Exception thrown when arguments to an algorithm or property are not correct  | 
  BaseProperty | Helper class to ensure that all Python property objects derive from the same base class  | 
  Cadabra | The Cadabra notebook application  | 
  CadabraException |  | 
  component |  | 
  ConsistencyException |  | 
  exec_stream_t |  | 
   error_t |  | 
   next_arg_impl_t |  | 
   next_arg_t |  | 
  Images |  | 
  Integral |  | 
  InternalError | Exception thrown when there the Cadabra code detects an internal inconsistency; this should never happen, but is better than bailing out with an assert  | 
  InterruptionException |  | 
  iterable_converter |  | 
  MMA |  | 
  MultiIndex | A class to help iterating over all values of multiple objects  | 
  MyClient |  | 
  NonScalarException | Exception thrown when something requires that an expression is a pure scalar (i.e  | 
  NotebookController |  | 
  NotebookController() |  | 
  NotYetImplemented | Exception thrown when there the Cadabra code detects an internal inconsistency; this should never happen, but is better than bailing out with an assert  | 
  ParseException |  | 
  Perm |  | 
  PermutationException | Generic permutation group material  | 
  PreferencesWindow |  | 
  preprocessor | Preprocessing class which takes infix mathematical notation with all sorts of maths shortcuts and transforms it into a string which is properly formatted in prefix notation  | 
   accu_t |  | 
  ProgressMonitor |  | 
   Block |  | 
   Total |  | 
  Property | Property is a templated wrapper around a C++ property object  | 
  rename_dummies |  | 
  RuntimeException | Exception thrown when an algorithm cannot complete, e.g  | 
  Server | Object representing a Cadabra server, capable of receiving messages on a websocket, running Python code, and sending output back to the client  | 
   Block |  | 
   CatchOutput | Python output catching  | 
   Connection |  | 
  ServerWrapper | A class which enables access to a Python-side defined Server object with ProgressMonitor interface  | 
  split | Split an expression into terms or factors  | 
  Stopwatch |  | 
  UI |  | 
  X | Mockup types  | 
  Y |  | 
  Z |  |