a field theory motivated approach to computer algebra

# Manual pages

Every algorithm and every property has a manual page with examples, which you can view online, or by pressing F1 in the Cadabra notebook interface.

## Algorithms

 A asym Anti-symmetrise or symmetrise an expression in indicated indices or arguments C canonicalise Bring a tensorial expression to canonical form by re-ordering indices. collect_factors Collect identical factors in a product. collect_terms Collect identical terms in a sum. combine Combine two consecutive indexbracket objects complete Complete a set of substitution rules to cover related objects. D decompose_product Decompose a product of tensors by using Young projectors. distribute Distribute factors over sums. drop_weight Drop terms with given weight E eliminate_kronecker Eliminate Kronecker delta symbols. eliminate_metric Eliminate metrics by raising or lowering indices. epsilon_to_delta Replace a product of two epsilon tensors with a generalised delta evaluate Evaluate components of a tensor expression. expand Write out products of objects with implicit indices. expand_delta Expand generalised Kronecker delta symbols expand_diracbar Simplify the Dirac bar of a composite object. expand_power Expand powers into repeated products F factor_in Collect terms in a sum that differ only by given pre-factors. factor_out Isolate common factors in a sum of products fierz Perform a Fierz transformation on a product of four spinors I integrate_by_parts Integrate by parts away from the indicated expression J join_gamma Work out the product of two generalised Dirac gamma matrices. K keep_weight Keep terms with indicated weight L lr_tensor Compute the tensor project of two Young tableaux P product_rule Apply the Leibnitz rule to a derivative of a product R reduce_delta Simplify a self-contracted generalised delta. rename_dummies Rename dummy indices. rewrite_indices Rewrite indices by contracting with vielbein or metric. S sort_product Sort factors in a product sort_spinors Sort Majorana spinor bilinears sort_sum Sort terms in a sum. split_gamma Split a Dirac gamma matrix off a generalised product of gamma matrices. split_index Split the range of an index into two subsets substitute Generic substitution algorithm. U unwrap Move objects out of derivatives or accents. V vary Generic variation algorithm for functional derivatives. Y young_project_product Project all tensors in a product with their Young tableau projector. young_project_tensor Project tensors with their Young projector.

## Properties

 A Accent Turn a symbol into an accent. AntiCommuting Make objects anti-commuting. AntiSymmetric Make an object anti-symmetric in all indices. C Commuting Make components commuting. CommutingAsProduct Makes an object behave as a product when commuting. CommutingAsSum Makes an object behave as a sum when commuting. Coordinate Declare a symbol to be a coordinate label. D DAntiSymmetric Gives object the symmetries of the derivative of a fully antisymmetric tensor. Depends Makes an object implicitly dependent on other objects. Derivative Declare an operator to satisfy the Leibnitz rule. Diagonal Declares a tensor to only have non-zero diagonal entries. DiracBar An accent representing the Dirac conjugation operation. E EpsilonTensor A fully anti-symmetric tensor with constant components. F FilledTableau A Young tableau with labelled boxes. G GammaMatrix A generalised generator of a Clifford algebra. I ImplicitIndex Indicates that an object carries indices which are not written out. Indices Declare names to be used as indices. Integer Indicates that an object takes integer values. InverseMetric Make a two-tensor an inverse metric. K KroneckerDelta Turns an object into a generalised Kronecker delta symbol. L LaTeXForm Changes the way in which symbols are displayed. M Metric Makes a two-tensor a metric. N NonCommuting Makes components non-commuting. P PartialDerivative Makes an object a partial derivative. R RiemannTensor Make an object a Riemann curvature tensor. S SatisfiesBianchi Make an object satisfy the generalised Bianchi identity. SelfAntiCommuting Make components of tensors anti-commute. SelfCommuting Make tensor components commute. SelfNonCommuting Make tensor components non-commuting. SortOrder Set sorting order of objects. Spinor Declares an object to transform as a spinor. Symmetric Make an object symmetric in all indices. T Tableau Make object a Young tableau TableauSymmetry Gives a tensor a generic Young tableau symmetry. W WeightInherit Make object inherit weights from child nodes