The complicated nature of calculations in general relativity was one of the driving forces in the early development of computer algebra (CA). CA has become widely used in gravity research (GR) and its use can be expected to grow further. Here the general nature of computer algebra is discussed, along with some aspects of CA system design; features particular to GR’s requirements are considered; information on packages for CA in GR is provided, both for those packages currently available and for their predecessors; and applications of CA in GR are outlined. The term “computer algebra” (CA) covers the theory and implementation of computer programs to perform the symbolic manipulations and calculations usual in mathematics, in particular those arising in algebra and calculus. Fuller descriptions are given in texts cited below. This review deals with the use of computer algebra in gravity research (GR) in the period 1980 onwards: work before that date is described in cited earlier reviews. Because of the complicated nature of calculations in GR, CA methods have proved very useful in many aspects of GR research.In the following sections, I discuss the nature of CA, the requirements of its use in GR, and the available programs. Finally a (hopefully representative) selection of specific applications, from the many made, is described. A fuller description of the contents of the main sections below is given in the next subsection and Sect. This would be a very long review if it attempted to cover all aspects of the design, implementation and features of computer algebra (CA) systems and their history, and then similar details for all packages for application in gravity research . Moreover there are now good textbooks which describe algorithms and general design features of CA systems,CA itself is part of the wider field of symbolic computation. Current developments are discussed in the specialist journals “ACM Communications in Computer Algebra” (and its predecessor the “ACM SIGSAM Bulletin”), published by the Association of Computing Machinery (ACM) Special Interest Group on Symbolic and Algebraic Computation (SIGSAM), “Applicable Algebra in Engineering, Communication and Computing”, and “Journal of Symbolic Computation”. The ACM journal also provides news of activities in the CA research community. There are specialist conferences, listed at [C69], notably ACM SIGSAM’s annual ISSAC , whose proceedings contain many important papers; papers on CA are also spread widely throughout the mathematical and computer science literature.As well as journals and conferences, there are a considerable number of books and papers devoted to specific systems or applications or both: I shall mention some of those which describe systems widely used in GR, or describe particular GR uses, later, and give pointers to the more extensive online bibliographies available. Where it may be of interest or help to the reader but is not mentioned directly in the text I have appended to a citation the name of the CA package used, in, e.g., the following form , and most frequently cited as the starting point, was work by Kahrimanian  and NolaThe first more complete system was FORMAC  are speed and accuracy, the ability to handle more complicated calculations than can be done by hand, and relief from the boredom of repetitive tasks. These all apply to applications in GR, so much so that GR, celestial mechanics and quantum electrodynamics supplied much of the early motivation for developers  in 18 s  by Deprit et al. . An examRepetitive tasks. CA removes the tediousness of almost identical repeated calculations, for example calculations of curvature for similar metrics.Calculations infeasible by hand. The power of the systems opens up projects which would be unthinkable by hand, sometimes with unexpected results. For example, a brute force calculation may lead to a simple answer which prompts new insight, revealing deeper principles and enabling the answer to be derived more elegantly , but combinatorial explosions quickly outrun the capacity of any system. It remains quite easy to set up calculations which completely fill available memory. n, and most general purpose algebra systems on an average machine become unable to cope at about For instance, the number of terms in the determinant of an Advanced algorithms can prove hard to implement in an efficient manner, and some CA algorithms have long running times, so time, as well as the memory requirements of large expressions, can still be a limiting factor. Good complexity estimates would help in estimating requirements, but in practice one often just has to try things out. Both for timing comparisons and absolute values of timings, the information in past papers is likely to be long outdated due to changes in hardware, systems software and CA systems. Comparative data are still of interest but an up-to-date experiment to check them might be wise.against using CA include the cost, in time and effort, of learning one or more systems and the possibility of encountering bugs. But perhaps the worst hurdle for many users is the need to develop a sufficient understanding of the underlying mathematics to be able to anticipate where the system might give no answer or a wrong answer: it has been recognized for a long time that not only designers and implementers need this understanding , The procedure used by Stensor . Even 30 years ago, it was said that to write a passable general-purpose system required at least 50 person-years of effort. To match existing systems now would impose a much higher requirement, despite the help provided by the books and articles now available which describe efficient implementations of CA algorithms, because the systems have been extended substantially both by their user communities and, for the proprietary systems, by the companies that own them. For all the larger systems, the total number of contributors is large.When writing a package specifically for use in GR there is a considerable added risk of “reinventing the wheel”, given the number of packages there have been (failure to re-invent the wheel can of course be costly in a different way). There are about 100 packages listed in the table in Appendix Gravity research covers a wide area and CA may be useful not only to theorists but also to researchers whose primary interests are experimental or numerical. In principle it of course includes Newtonian gravitational calculations, e.g. in astronomy, and Newtonian and relativistic celestial mechanics, but I have not attempted to survey those applications. Predicting the paths of spacecraft is an important engineering application of general relativity. Thus relativistic celestial mechanics programs can have practical as well as astronomical uses. Accurate numerical values for orbits, however, generally come from numerical rather than algebraic programs. For some developments of CA in celestial mechanics later than those mentioned above see Brumberg et al. , Deprit Because of the close connection between GR and differential geometry, I shall include mention of CA systems and packages for differential geometry, as these can easily be specialized to, for example, spacetimes in general relativity. However, I shall not cover packages designed mainly for three-dimensional vector calculus in curvilinear coordinates or for the geometry of surfaces in three-dimensional space, for studying or solving systems of differential equations , or Lisp (for Macsyma and Reduce), or in assembler or native languages for particular machines which are now only available in museums. Examples of machine-specific systems were ALAM for Atlas .Even those packages that have been maintained may accrete code from several different stages of evolution of the underlying systems and thus end up with parts in different styles or requiring different facilities, potentially giving rise to problems. , look for one such rather than seek a “best” one. In the final section of this review I say a little more on this issue, despite the cautionary remarks that follow.Before any discussion of CA’s nature, designs, and capabilities, or its applications in GR, I want to state firmly that In particular, do not believe anyone, including me, who purports to draw objective comparisons, without making your own independent check. Users accustomed to particular systems often offer comparisons based on incomplete knowledge either of the other available systems or of the underlying mathematics and computer science. They tend to focus on the good points of the systems they know well, and criticise other systems which do the same things less well or not at all, while disregarding the strong points of those other systems.  One can hence find examples where system A was better than system B in one comparison and B surpassed A in another. Moreover, all such comparisons go out of date very fast.That warning should be followed by a “full disclosure” or “disclaimer” to help the reader to discount any bias that may be present in the following review. The systems with which I am most familiar are Reduce  computation techniques in relativity need to be defined. To avoid writing a whole new textbook explaining these I shall usually refer to the relevant chapter or section of Part I of Stephani et al. , but gooSystems can be classified in various ways, for example by their approach to simplification Moses  or by thCA systems differ significantly from numerical programs in their structures and strategies. The most basic difference between algebraic and numerical calculations by machine lies in the storage requirements. This leads on to the need for large total memory, problems of intermediate expression swell, issues in the choice of implementation languages, the demand for good simplification routines, and the strong data dependence of execution times.  for fuller information about MATHML and its variants), which is concerned with visual rendering, but may be met by the MathML variants which cover semantics.Such intercommunication can be achieved for specific cases by do-it-yourself methods, for example by using perl scripts, but that is clearly of limited utility. In principle OpenMath [C78], which aims to capture semantics as well, offers considerable prospects but it has not developed far enough yet to provide a universal solution to the difficulty; however, proof of concept work has succeeded  I do not know which are currently available for smartphones and other devices , and TI later developed their own specialized system; currently Xcas [C16] is available on some devices). Some systems provided online versions usable remotely, i.e. where the actual calculation is done at a remote host site  funded by DARPA . It has been implemented then and since in a considerable number of different Lisp systems. The MIT team included many pioneers in the field and developed many of the fundamental algorithms of CA, so the impact of the work done then is still substantial. For a history of that period and later developments see Moses .Macsyma’s ownership history is rather convoluted. . The rights to MIT’s Macsyma passed in 1982 to Symbolics Inc, a company making Lisp machines, hardware first developed in the early 1970s that was specially designed to run Lisp programs. Macsyma was further developed by Symbolics and by Macsyma Inc, which purchased the rights from Symbolics Inc in 1992; its capabilities were very competitive with other systems at that time. In 1985 there were 415 papers listed in the Macsyma bibliography maintained by Symbolics. However, commercial pressures and the unwillingness of investors to put in necessary capital eventually led to the sale of Macsyma Inc to the same company that had bought Symbolics Inc. The rights to this version remain with Symbolics, now a private company: its website [C1] still lists Macsyma 2.4 as available for Windows PCs with operating system versions up to the now discontinued XP. Some later promising attempts towards reviving this version of Macsyma came to naught in competition with funding for more abstract pure mathematics .Franz Lisp (later Allegro CL). At one time this version was referred to as Vaxima, because it was available in particular for DEC VAX machines.Because the MAC project had received US Government funds, the rules governing US public funding meant that the US Department of Energy retained the rights to a version, DoE-Macsyma . It does not have all the facilities that were added after Macsyma and DOE-Macsyma started to develop separately, but is under active development. It has a number of extensions and interfaces with other systems and is available for the main operating systems. It is written (now) in Common Lisp; the website lists the GNU Clisp implementation as a preferred base. Maxima is a component of Sage, which provides as the Lisp base ECL (Embeddable Common Lisp).aljabr from Fort Pond Research, and paramacs from Paradigm Associates) both being licensed from DoE-Macsyma.For completeness, as papers may reference them, I note that there were earlier versions of Macsyma for Macintosh computers . Maple has undergone substantial development in its interfaces and libraries, and has also changed ownership. The graphical user interface was first released with Maple V. Versions continued to be numbered up to Maple 18, and then changed to an annual label: the current version is Maple 2017. Maple ’s small kernel and its large library, with good interfaces, have led to its wide use, especially in research and higher-level education.As use of Maple grew, a spin-off company, Waterloo Maple, was formed, and the rights are now with Maplesoft (see [C3]). Early versions distributed the commented sources of the library code (though not the kernel C code); that has long since ceased to be the case, although one can see the uncommented code for a function by using the help function within Maple.There are many books on Maple, for example Wright  and HeckStephen Wolfram’s MathematicaOn its first release in 1988, it was the only system offering a comprehensive computational environment integrating numerical and graphical facilities with algebraic ones, and had a unique user interface, with “notebooks”: it was (and is) thus not only a CA system but a more general system for mathematics. In these respects it outpaced other systems, whose progress in those areas, while not non-existent, had been up to then been leisurely.  MathematicaMathematicaThe standard source on Mathematica Wolfram , but rat Wolfram , but do The Wolfram Language, which “grew out of Mathematica” is the implementation language of Wolfram|Alpha [C5], which provides an online service “doing dynamic computations based on a vast collection of built-in data, algorithms and methods”. It aims “to make all systematic knowledge immediately computable and accessible to everyone”.Reduce is a highly portable system available on a wide range of machines and was probably at one time the most widely used in a geographical sense. It was initially written by A.C. (Tony) Hearn for use in scattering problems in quantum theory. It is written in Rlisp Marti , itself Reduce was for a while a commercial product of the Rand Corporation, but it is now available free and can be downloaded via its website [C6]. The Reduce distribution offers two Standard Lisps, PSL (Portable Standard Lisp) and CSL (Codemist Standard Lisp) and users may build from either (or both) depending on their hardware and operating system. The last release with a version number was Reduce 3.8 but the system has been developed since. The present sources are organized under the subversion program svn and change frequently . Unusually, the source code repository provides, alongside the current “trunk” version, a “historical” archive of some preceding versions’ source code (not necessarily possible to rebuild from).Being free, like Maxima, Reduce lacks the salespeople and glossy brochures of the main commercial systems, but it is an extensive system still under active development which distributes its complete source code . For that reason it has been especially popular with algorithm developers, so that Reduce still has in some areas (in my view) the best current auxiliary packages. That may also be why a number of CA packages for GR were or are built on Reduce.The introduction to Reduce of which I was a co-author  and renamed Axiom. Axiom compiler, Aldor, conceived as an extension language for Axiom and originally named A#, which can accept and output several formats and has libraries embodying the Axiom domain and inheritance properties  algebra, Levi-Civita simplifications and tools for one-loop calculations in quantum field theory. Redberry is written in Java 7 and provides convenient Groovy-based user interface inside the high-level general purpose programming language environment.” From this description it may deserve to be placed with standalone GR packages rather than general purpose systems. Redberry is available at [C14].Redberry is described in Bolotin and Poslavsky  as “an oSage [C7] is a very extensive system for mathematical work which combines fresh code with a number of pre-existing packages. The current list of included packages has 90 entries, among them Maxima (see above), Xcas (see below), the statistical package R, NumPy, SciPy and Sympy , and important packages for pure mathematics. Its main implementation language is Python, and its user interface language is similar in character. For speed it also uses the superset of Python, Cython [C70], which can produce compiled C and link with C++.As already mentioned, it has the commendable feature that the distribution set of Linux sources includes all the packages on which it depends, so that it is entirely self-contained.There is a differential geometric package for Sage, distributed with the system. It is called SageManifolds and has been developed by a number of authors led by Eric Gourgoulhon  and pocket systems. It has compatibility modes with Maple and MuPAD, interfaces with a number of well-known libraries, can be used from LaTeX, and there is or was an OpenOffice (now LibreOffice) plugin enabling its use within spreadsheets etc. A version is included with Sage  preceded Mathematica Wolfram  were con Wolfram . Experiedefines the object on the right, and similarly for There are two main types of algebraic calculation in GR. One is the calculation of general expressions in indexed objects such as the equations defining the Levi-Civita connection and Riemann tensor in coordinate components for a spacetime in general relativity, i.e.In indicial calculations, the indices are in effect “abstract indices” Penrose : the setThere are two very useful crossovers between indicial and component calculations which CA packages may provide: (i) a package may provide a facility for generating code for evaluation of components from the indicial form, such as the “tensor compiler”  calculation a more convenient method than directly using  is to noTo go from  to 10)  10) an eOne may choose a more general basis of vectors than the coordinate one. Such a choice may be made because components in the new basis are more readily interpretable physically, for example the energy-momentum of a fluid in an orthonormal basis whose timelike unit vector is aligned with an observer’s motion has components interpretable as the energy, fluxes, pressure and stresses the observer would measure. Or it may be that the choice simplifies calculations or facilitates study of conditions applied to the problem, for example in studying algebraically special solutions of the Einstein equations  is called a tetrad or vierbein. Tetrads used are typically chosen to have fixed scalar products between their basis vectors, but this is not always the case. For fixed scalar products the principal choices are orthonormal or Lorentz tetrads and complex null or Newman and Penrose  tetrads.An orthonormal tetrad to Ellis , 1967 asto Ellis . Variantto Ellis .A complex null or Newman–Penrose tetrad f. For any basis The commutator t}dxc in  and 14)\document; Pirani , Penrose; Pirani , Stewart; Pirani ; and Cha; Pirani .  spinors with components A range over 1 and 2, or, commonly, 0 and 1.The references for the NP formalism cover the closely related two-component spinor formalism, also named NP, which provides a very compact and elegant framework for numerous calculations in general relativity. The underlying mathematical fact is that the (connected) group The groups There is considerable flexibility in the relation between vectors and their corresponding two-index spinors The advantages of the NP spinor formalism are (i) a the spinor equivalent of a real null vector R is the usual Ricci scalar, J and K run from 0 to 2 and count the number of For example the spinor equivalent of the curvature tensor Those coordinate, orthonormal tetrad, and NP formalisms, vector and spinor, are quite commonly used. Tetrads with variable scalar products are less common but sometimes useful , each term having the same free indices (since otherwise the expression is not well-formed). We can think of the terms as monomials in the indexed objects. There are two main issues.The first is to deal with re-ordering or renaming of indices on each monomial: given a monomial one wishes to pick a canonical representative of the class of expressions equivalent to it under the relevant permutations of indices. After transforming each given monomial to canonical form, like terms can readily be collected. In hand calculations the numbers of terms, and of indices on them, are small enough to allow the researcher to manage the issue quite readily, but this will not be true when, for example, looking for relations between scalar polynomial invariants of high order in the Riemann tensor.The second issue is to deal with simplifications of the sum of terms other than simple collection of like terms: in particular, sum-substitutions may allow combination of monomials or other simplifications. Generalizing the naming by Balfagón and Jaén  and Li eNot all indicial tensor packages state their methods in detail, so the following is an incomplete account.The earliest indicial package to be released, ITMS . The basis vectors of that space are the set given by writing the relevant tensors with all possible orders of indices. The algorithm then maps any expression to its components in the orthogonal complement of the space spanned by the relations implied by the tensors’ symmetries and the identities arising from dummy index permutations. It uses a ‘triangle’ method of changes of vectors starting with the left sides of identities implied by the symmetries, exchanges of dummies and linear identities.Ilyin et al.  and IlyiPortugal’s method , like hin et al. .I have not yet seen a description of an algorithm for non-linear identities such as that arising from the Ricci identity for the curvature:As mentioned earlier, the procedures used in Stensor . The more fully-featured systems offer user-friendly facilities for extending both the set of objects and the operations on them. For GR, one may need to go beyond general facilities for tensor algebra, both in component and in indicial calculations, as I now discuss  tensor in general relativity into Petrov types, and functional differentiation of Lagrangians. Algorithm choice can markedly affect efficiency 10) for cHartley . There ah, Allen et al. obtainedA second example is provided by the discussion in Allen et al. . A textbThe efficiency of algorithms is important, but a user who does not have heavy and/or repeated calculations to make may choose to meet the need for the user to understand the mathematics by preferring one of the less sophisticated programs listed below, which may thus still be of value. In particular, such a user might prefer one of the packages which more or less directly implements textbook formulae. To achieve input notation mirroring standard formulae, one usually has to define operators as “infix” rather than “prefix” and use textbook tokens for their names, so that one can write (e.g.) aFor indicial tensor calculus, the most critical aspect is the handling of dummy indices and symmetries, discussed in Sect. Here I shall briefly outline the available packages for GR and/or differential geometry within each of the main general purpose CA languages . To the best of my knowledge there is no GR package for Axiom or MuPAD, or for Sage other than SageManifolds  and I have given these separate subsubsections of their own. The selection of these is of course entirely subjective.atensor For algebraic tensor manipulation in the sense of objects in, for example, a Clifford, Grassmannian or symplectic algebra. “The essence of atensor is a set of simplification rules for the noncommutative (dot) product operator (“.”).”cartan This, which is described under “Functions for differentiation” in the manual, implements the exterior product and Lie and exterior differentiation for differential forms. It was originally written by Frank B. Estabrook and Hugo D. Wahlquist.ctensor For component calculations in coordinates or frames. It was extensively rewritten in 2004. It can Taylor expand tensors, compute Petrov type  tensor manipulation. In itensor a tensor is represented as an “indexed object”, a function of 3 groups of indices which define the covariant, contravariant and derivative indices.Maxima  comes with four relevant packages. Of these, ctensor and itensor were inherited from DoE-Macsyma, but “in various stages of disrepair” Toth . A new mGEOCALC  includes a physics package which is said to be better integrated with other Maple facilities, such as the DifferentialGeometry package, than past packages: it was presented in a “webinar” [C17] and the worksheet shown in that webinar is also available [C18]. The physics package is an in-house product, with work led, I believe, by Edgardo Cheb-Terrab.Atlas 2: This is a commercial product for MathematicaCanon:  GR calculations. “For example, the computation of the curvature of the Schwarschild metric in a moving frame, coordinate frame and a null tetrad”.Finsler: This package for calculations in Finsler geometries was developed from a package in Riemann (see below) and written by Rutz and Portugal . It provides component calculations, NP calculations, and calculations for hypersurfaces and junction conditions. The authors of this and its predecessor are Kayll Lake, Peter Musgrave and Denis Pollney. It can now export a metric formatted for DifferentialGeometry (see above).Riemann:  could still be included in this list although it has been superseded by GRTensorIII.bianchi: This module was part of the Maple V library and enabled classification of three-dimensional Lie algebras into Bianchi types, important in exact solutions especially for cosmology.Cartan: This package provided general tetrad calculations  formalism  conversion between orthonormal and null tetrads; (ii) an implementation of the full Lorentz group action; and (iii) the Petrov–Plebanski method of classifying the Ricci tensor  , approximations to Calabi–Yau manifolds and so on.EDC/super EDC: “Exterior Differential Calculus” [C28] is a differential forms package offering quite extensive facilities.EFTofPNG: This is a code for high precision Feynman computation in the Effective Field Theory of Post-Newtonian Gravity , written by the same authors.GRworkbench is of rather different character from all the other CA in GR packages. Thus a fuller description appears in Sect. Kranc is a module for “turning a tensorial description of a time dependent partial differential equation into a module for the Cactus computational toolkit”, used in numerical general relativity. It can output parallelized C or Fortran code, performing some optimizations  for calculations in arbitrary frames.Ricci, [C33], is intended “for doing symbolic tensor computations that arise in differential geometry”. From its website’s description it appears to be a rather fully-featured indicial tensor manipulator, which recommends MathTensor for component calculations. The latest Mathematica version for which its website, updated in 2016, says it has been tested was 5.Ricci (another one!) written by Juan M. Aguirregabiria [C37] provides coordinate component calculations. It is a partner of Tetrad (see below).TensoriaCalc [C36] by Yi-zen Chu “tackles (semi-)Riemannian tensor calculus problems encountered in general relativity, cosmology, and field theory. Currently, it calculates geometric objects—Christoffel symbols, the Riemann curvature tensor, Ricci tensor and scalar, etc.—given a metric and the relevant coordinates; and performs basic operations such as covariant derivatives of tensors”. It was updated to Mathematica 10.Tetrad written, like the second “Ricci” above, by Aguirregabiria [C37] provides tetrad component calculations.xAct: “Efficient Tensor Computer Algebra for Mathematica” is a collection of packages for fast manipulation of tensor expressions [C38], providing both indicial and component calculations. The basic ideas are said to have been taken from the abstract index approach , on which it was based, GREAT [C42] calculated curvature from a metric matrix. It was written by Tristan Hubsch: the quoted URL gives a revision date of 2003.grt: The facilities of grt [C44] were modelled on GRtensor. The author, Pascal Vaudrevange, left academia in 2012.Tensorial was “a general purpose tensor calculus package for Mathematica” written by Renan Cabrera, David Park, and Jean-François Gouyet, with indicial and component capabilities. I have been unable to download a copy, though there is a webpage [C45], with a latest date 2007, stating it was updated to Mathematica 6.0.Tensors: This provided tensor facilities based on multilinear algebra and matrix methods , there are a body of other developers still involved, and the package has attracted a considerable body of users, as shown by the extensive bibliography of articles using the package [C66], so it seems likely to be maintained in future. It certainly seems to be one of the most up-to-date and fully featured packages at present. Its website lists over 300 applications papers: a number of its recent applications are mentioned below.atensor: An indicial tensor package  to canonical form  is an indicial tensor package . Details can be found at [C6]. In brief the 5 are:It should be noted that because one can build combined Reduce/Sheep systems, Sheep Sect.  could noCANTENS: This is available in the packages/assist subdirectory of the main Reduce distribution [C6], but it appears not to have been maintained recently. Written by Hubert Caprasse, it uses the assist and dummy packages, provides indicial and component calculations, and can handle more than one space simultaneously.GENRE: This was an overall name for a suite of programs in Reduce 2 which supplied coordinate and NP component calculations, perturbation methods, and some unusual facilities like null hypersurface geometry . A coframe and metric can be defined together by (e.g.)The package knows the duality of natural basis elements such as coframe e r=d r, e(ph)=r*d ph with metric g=e(r)*e(r)+e(ph)*e(ph); and so on.n-form, EXCALC can compute variational derivatives, including specification of boundary conditions, and calculate conserved quantities induced by symmetry operators. Coordinate or tetrad calculations are defined via specification of basis one-forms as in the example above.The differential forms can themselves bear indices, as in Eqs.  and 14)14). GiveAs well as packages built on general purpose CA systems there are special purpose systems. Some were of limited availability or applicability . There have also been announcements of potentially useful packages, e.g. Dreitlein and Sauer , which IFrom the website [C56]:“Cadabra is a symbolic computer algebra system (CAS) designed specifically for the solution of problems encountered in field theory. It has extensive functionality for tensor computer algebra, tensor polynomial simplification including multi-term symmetries, fermions and anti-commuting variables, Clifford algebras and Fierz transformations, component computations, implicit coordinate dependence, multiple index types and many more. The input format is a subset of TeX. Both a commandline and a graphical interface are available.”This overview shows that Cadabra ranks with other fully-featured programs for CA in GR. The original version is still available but has been superseded by cadabra2. It is written by Kasper Peeters and makes use of sympy and the xPerm module of xAct  [C59]. As far as I know the package does not have an overall name. The programs were originally based on elisp, the Lisp underlying the well-known GNU emacs editor program, but are also now available in Common Lisp. The principal application was intended to be work on causal sets, an approach to quantum gravity initiated by Sorkin Sorkin .Ortocartan  underwent active development over a considerable period: see for example Krasiński and Perkowski , b and KSheep’s name is a joke, since it grew out of Ray d’Inverno’s LAM (“lamb”), mentioned in Sect. Sheep’s first version was written by Frick  with conThere are two major extensions of the basic Sheep package: Classi, whose principal author is Jan Åman, and Stensor (formerly STENSR) with principal author Lars Hörnfeldt. Classi is a component calculator, with extensive facilities implementing the classification of exact solutions as applied in the “equivalence problem”  splits of spacetime and internal manifolds of a fibre bundle. Sheep is interactive and has good facilities for making targeted substitutions. For instance one can specify a substitution to be used only when “printing” (to the screen) so that one can try different substitutions without affecting the stored values.The main hurdle for new users learning Sheep is that the interface language, although it is reasonably easy to learn, is in the usual Lisp format, rather than the type of interface language used for the other CA systems and packages described above. Formulae are input in a typical Fortran-like style, and the output can be viewed either in the same manner, or like the example in Sect. Sheep has been used not only in general relativity, but also in elasticity theory Mouton , gauge tPOLYNOM  use the rule relating the Weyl and Riemann tensors to pass from one to the other. Its interface enabled use of a cursor to choose where an operation should be performed. It is still available from the author (at andersh@lysator.liu.se), although he now works in another field.One could add SCHOONSCHIP . The applications mentioned are thus necessarily a personal selection.  Trying to cover a wide field necessitates rather brief descriptions of papers. Cross-references to packages used are shown as described in Sect. In theoretical physics the highest level of endeavour, but the least frequently achieved, is to invent a widely-accepted new theory.Within an established theory one can try to prove a general result (like the famous singularity theorems), or obtain results by approximation techniques , which is one of the main activities of applied mathematicians, or seek exact solutions. Justifying approximations in nonlinear theories can be difficult: one can seek to prove correctness either by a priori justification through, for example, error estimates, or by comparison of the results with expectations on other grounds.Finding exact solutions is also non-trivial in highly nonlinear theories like those of relativistic gravity, and can only be done in special cases, but can be useful in several ways: the solutions may be good approximations to physically important situations, they may assist in studies of the general properties of the theory, and they can be used as tests of numerical schemes.All those activities can be supported by CA methods. One can use CA in obtaining general theorems e.g. for differential identities  formalism for the Cauchy problem based on a Calculating the Lanczos potential for the Weyl tensor is quite complicated and so is another natural area for CA’s use: see Dolan and Muratori , 1998 and’Inverno  reporteda et al. .Torre  {DiffereGalaev  {DiffereIndicial tensor calculus is used in many theoretical investigations.One problem which involves both the issues for indicial tensor calculus mentioned in Sect. The work of Fulling et al. , aimed aMany of the indicial calculation packages mentioned in Sect. In Invar, a list of scalar polynomial invariants (SPIs) of the Riemann tensor was first generated and then the relations between them following from , the secAn algorithmic method of expressing SPIs in terms of a basis, and more generally of writing multiterm expressions in terms of a basis, is described in Green et al. , AppendiBalfagón and Jaén  used theIn a series of papers, (Lie) symmetries and related concepts for wave equations of various spins have been studied, in particular on vacuum Petrov type D backgrounds, using xAct. Andersson et al.  treated Cadabra is cited in ten or more papers per year, many in areas related to quantum gravity: examples are given by Buchel et al.  and ButtAn early use of CA in GR was to analyse alternative classical gravity theories, e.g. Pavelle  {MacsymaA number of authors have used CA in studying theories with torsion and/or nonmetricity. Petti  {MacsymaMagnano et al.  {StensorA number of modern systems  allow the user to set the dimension, which could be more or less than 4, and may also go beyond Riemannian spacetimes of higher dimension by enabling calculations on the auxiliary fields arising in alternative theories of gravity  or unified theories. Some of the systems enable Kaluza–Klein splitting or can handle quantum gravity in higher dimensions.For examples of work in 3 . Recent examples are given by Bernard et al.  where thPoisson and Douçot  studied In general relativity and other GR research, the asymptotic behaviour of spacetime at large distances may be of physical importance (e.g. in studying energy loss by radiation). Expansion in multipole moments for stationary axisymmetric metrics was studied in several papers . CA has been applied to studying pulsations and their stability from a very early stage. Frick  reportedThe xPert and Harmonics modules of xAct, still then in development, were used in Brizuela et al.  to studyAnother recent example of CA for perturbation theory is given by Fodor et al.  {Maple, Rostworowski used Mathematica to study nonlinear gravitational waves arising in a Regge–Wheeler perturbation expansion of the Einstein equations around some symmetric exact solution  or grid generation. Exact solutions of problems to be tackled numerically can be important in testing codes.Algebraic analysis of numerical schemes can tackle various aspects. It can enable one to discover instabilities  by use of intermediate expressions and common sub-expression searches. Finally, good programs can come close to real code generation including automatic type declarations, selection of numerical algorithms Dewar  and the CA systems and packages, particularly the ones of component calculus type, have perhaps most frequently been used in gravity theory for exact solutions, not only for checking them, but also finding them, and giving unique characterizations.The simplest and perhaps most common use of CA for exact solutions is to check correctness, not only for vacuum solutions but for non-vacua where the matter field equations and their properties come into play. To do so one might need facilities to implement coordinate or tetrad changes or for changing the sign conventions. This use of CA in GR is very common but frequently not acknowledged. Some early examples appear in d’Inverno and Russell-Clark  and GibbOne interesting development in this area is the advent of online databases of solutions. Databases of the solutions in the first edition of Stephani et al. , aimed aAlthough some packages described above offer little more than the basic calculation of the curvature from the metric in a coordinate basis, the “metric application” , which was written to handle over-determined systems of partial differential equations, can be used to investigate the existence of symmetries and various other problems giving similar systems of equations . Prince and Sherring constructed Reduce and EXCALC programs to investigate the symmetries of geodesics and of the tangent bundles in Lagrangian mechanics Prince , b.Using invariants calculated by CA to locate and characterize singularities and horizons has been discussed quite often. Gibbons and Russell-Clark  found a These techniques also apply to manifolds of other dimensions or signatures. For examples see the work of Birkandan  in EucliGHP was used : see Karlhede and Lindström  and BradIn a series of papers Hennig found new solutions in the Gowdy-symmetric class by applying Sibgatullin’s generation method, e.g. Beyer and Hennig  and HennFinding solutions with given symmetries provides another class of applications. Bona  {SMP} foCA in GR has been used extensively in finding invariant characterizations of metrics. For example, Wainwright  and SzafThe equivalence problem is that of identifying (regions of) two geometries that are locally isometric but expressed in different coordinates. Its resolution has been a driver for CA in GR from early on. We now have a well-defined procedure which (for suitably smooth regions) can be used to study the problem by computing a set of quantities uniquely characterizing the manifold  and then comparing characterizations. However, because the comparison step of that procedure would require determination of the compatibility of sets of equations, it remains formally undecidable as a result of the no-go theorems on simplification . If I were to embark on such an effort myself, I would try to work either by adding to an existing package, preferably a free one, which has a reasonable size user community so that there is some resilience if bugs or other difficulties are encountered, or, if I needed to write a more extensive and independent package, to do so within an existing free general purpose system (so that as wide a community as possible could use my work). Axiom or Sage could be suitable, for example.


Modern genomic breeding methods rely heavily on very large amounts of phenotyping and genotyping data, presenting new challenges in effective data management and integration. Recently, the size and complexity of datasets have increased significantly, with the result that data are often stored on multiple systems. As analyses of interest increasingly require aggregation of datasets from diverse sources, data exchange between disparate systems becomes a challenge.To facilitate interoperability among breeding applications, we present the public plant Breeding Application Programming Interface (BrAPI). BrAPI is a standardized web service API specification. The development of BrAPI is a collaborative, community-based initiative involving a growing global community of over a hundred participants representing several dozen institutions and companies. Development of such a standard is recognized as critical to a number of important large breeding system initiatives as a foundational technology. The focus of the first version of the API is on providing services for connecting systems and retrieving basic breeding data including germplasm, study, observation, and marker data. A number of BrAPI-enabled applications, termed BrAPPs, have been written, that take advantage of the emerging support of BrAPI by many databases.https://brapi.org/. The BrAPI specification and the developer tools are provided as free and open source.More information on BrAPI, including links to the specification, test suites, BrAPPs, and sample implementations is available at  To meet this demand, it is necessary to breed new varieties that maintain high productivity with reduced inputs and are adapted to new eco-agricultural environments resulting from climate change. Plant breeding is a complex undertaking that necessarily integrates many interrelated disciplines, each with their own conventions for data structure and storage, and increasingly large, multi-faceted datasets.Plant breeding is widely recognized as crucial to feeding a rapidly growing population, especially in developing countries ,  for breeding data , and thehttps://tools.ietf.org/html/rfc7231). In a RESTful API, HTTP is the communication protocol and the available services are defined as Unified Resource Locators (URLs). Typically, the inputs are defined by constructing a URL with query parameters defined by the API (or HTTP request body objects for more complex inputs), the output data are usually returned in a defined structure. For the output, historically, XML was used, but newer APIs typically prefer the Javascript Object Notation (JSON) format.Most of the modern web service infrastructure follows the REST standards . REST stData exchange requires solutions on many levels, including the semantic level and the syntactic level (https://brapi.org/).Here, we report on the design and implementation of a standard RESTful Breeding API (BrAPI), as a specification with a focus on common plant breeding data requirements. The interface was designed by members of the BrAPI consortium. A complete list of contributors is given in the consortium description and a continuously updated list can be found on the BrAPI website  data repositories , with all changes to the definition managed using GitHub’s ‘issues’, ‘projects’ and ‘pull requests’ facilities.The BrAPI definition is kept in the ‘API’ repository of the ‘plantbreeding’ organization on GitHub  followed by ‘/brapi/’ and the major version number. Next, the call name appears with optional object ids and other parameters. Most calls use the HTTP request method ‘GET’, but some require ‘POST’ and ‘PUT’, as specified in the documentation. For security, the use of SSL (HTTPS) is highly recommended for all BrAPI endpoints.Examples:https://example.com/brapi/v1/locationshttps://example.com/brapi/v1/trials? programDbId=abc123https://example.com/maize-db-01/brapi/v1/studies-searchWe have defined a standard JSON formatted response structure that is common across all calls. The standard response consists of a JSON object with a ‘metadata’ key and a ‘result’ key. The ‘metadata’ key provides the pagination information, an array of status information, and an array of data files. If the response data contain an array of entities which could possibly grow large, the ‘pagination’ object will be populated with the keys ‘pageSize’, ‘currentPage’, ‘totalCount’, ‘totalPages’ containing the appropriate values. If the response is a single entity that does not require pagination, then the ‘pagination’ object still must be returned, but all data elements within it should be set to zero. All pages are zero indexed, so the first page will always be page zero. The ‘status’ array contains a list of objects with the keys ‘code’ and ‘message’. These status objects should be used to provide additional status or log information about the call. If the call was completed successfully and there are no status objects reported, an empty array should be returned. The ‘datafiles’ array contains a list of URLs to any extra data files generated by the call. For example, this could be images related to the data returned, or large data extract files which contain more data than that returned in the response payload, see The data payload ‘result’ contains the specific model object for the given call response. There are three basic patterns that response objects follow. The ‘master’ pattern is used for returning all the data associated with a single entity. The ‘details’ pattern is used to return an array of entities. In the ‘details’ pattern, the ‘result’ object always contains a single array called ‘data’ and no other fields. The ‘master/details’ pattern is a combination of the ‘master’ and ‘details’ patterns. It is used to represent a parent object which has an array of child entities. The ‘result’ object contains some data associated with the parent as well as the ‘data’ array with all the child entities. Whenever the ‘data’ array is present, the response is assumed to be paginated. This means the size of the ‘data’ array is always limited by the ‘pagination’ object in the ‘metadata’.In most cases, all the data will be contained within the JSON response. For large ‘data’ arrays, several requests might need to be made to retrieve every page of the array. In the event that the size of the data package exceeds what could reasonably be handled using the HTTPS protocol and the client, the service provider can place the data in a file and provide a link in the ‘datafiles’ array, to be downloaded later.A user or system may have to authenticate to a server to access protected data. BrAPI is a data communication specification, so the authentication scheme used to protect that data is considered outside the scope of the BrAPI specification. However, authentication and authorization are important topics to address whenever any kind of data is moved or presented. In order to facilitate communication of data between tools in a standardized way, the BrAPI community has developed a set of best practices using the OAuth2 architecture for implementing proper authentication with any BrAPI enabled tools and databases. In its most basic form, the OAuth2 architecture is a sessionless, token based architecture. OAuth2 allows users to sign in with user credentials they already have, and provides a token. This token can then be used to authenticate that user within different tools and databases. The token should be added as a header in every BrAPI request.All software projects need the ability to evolve to reflect changing requirements, to cover new use cases, and to incorporate user feedback. A well defined and rigorous versioning scheme is essential for BrAPI to ensure that client and server communication is well defined and the community can keep track of the changes. In BrAPI, there are major versions and minor versions. The major version is currently ‘v1’, which is reflected in the URL scheme. Minor versions are incremented about every three months, reflecting changes in the API that have been accepted by the BrAPI community and reviewed by the BrAPI coordinator. To help maintain consistency, all changes in minor versions are backward compatible with earlier minor versions within the same major version. The ‘calls’ call provides meta-information about each BrAPI call available on a given server. The response of the ‘calls’ call includes all the supported version numbers for each call, so external clients can easily check for compatibility with that server.For a communication standard like BrAPI to be successful, there must be people and organizations willing to contribute and use it. Early on in the development of BrAPI, we recognized the need to foster and develop a strong community of users. This community has grown rapidly over the past few years and it now has representatives from several dozen different organizations from around the world.The development of BrAPI is a community effort. Work on the API is mainly organized around regular ‘hackathons’, where BrAPI contributors gather for a week of discussions and API design work. BrAPI community institutions take turns organizing and hosting the hackathons. This has proven very effective for collaborative development and capacity building (https://brapi.org) was created as a nexus of all BrAPI related tools and information. It provides the official documentation for the API as well as information on meetings, hackathons, community news, testing tools, development libraries, BrAPPs, and a community forum.To serve the developer community, a website , Catalyst (Perl), Java Spring (Java), NodeJS (JavaScript), Django (Python) whereas databases and data query systems include Postgres, MongoDB, Elasticsearch, HDF5, and MySQL. Many of these systems are open source, so their code may be adapted for other systems with similar implementation parameters. A list of current BrAPI server implementations is given in https://github.com/imilne/jhi-brapi), the BrAPI R package (https://github.com/CIP-RIU/brapi), Brapi Drupal for PHP, and brapi.js for Javascript (https://github.com/solgenomics/BrAPI-js). A non-exhaustive list of current client applications is given in https://brapi.org/brapps.php). BrAPI client code libraries have been created in several languages, such as Java (Comprehensive testing is very important for any software project. Testing tools are available for both BrAPI server implementations and BrAPI enabled clients.https://test-server.brapi.org/brapi/v1). The BrAPI Test Server has a complete implementation of the BrAPI specification and returns a consistent sample set of data. This allows developers of clients to build tests which are appropriate for their tool, while calling a live BrAPI server implementation. The sample data reported by the test server are completely fabricated, and can be updated at any time upon request.For testing BrAPI enabled clients, a BrAPI test server is available at the brapi.org site . Available as a web frontend, BRAVA enables developers to check the compliance of their BrAPI endpoints against the specification and the referential integrity of input and output parameters of dependent endpoints. The frontend, as shown in For testing server implementations, the BRAVA test client is available for testing compliance with the BrAPI specification (A given endpoint might be tested multiple times with different inputs or HTTP methods. Each test checks the HTTP status code, content type, validity of response body, and response data types. Each test will also compare the response to the expected JSON schema which defines the structure of a JSON object and acceptable types. Some tests check the compatibility of response data to a corresponding parameter. For example, a test will call ‘/germplasm-search’ and will use the first ‘germplasmDbId’ from the response to make the call ‘/germplasm/{germplasmDbId}’. Some tests will compare a response value to a previously stored value. For example, an entity accessed by calling ‘/germplasm/1’ must have a ‘germplasmDbId’ of ‘1’.When a test run is complete, the test suite result is sent to the web client and a report is generated. The report can be inspected in the client and has a tree-like structure to analyse results for individual calls. The scheduled and public resource test reports are stored for future assessment.We have defined a first version of a plant breeding API that defines the key calls needed to exchange information about germplasm, phenotypes, experiments, studies, geographic locations, samples, and genetic markers. This opens the door to a rich set of possibilities for building client applications that can work with any BrAPI-compliant data provider.Since 2015, a diverse group of data providers and client application programmers have been building BrAPI into their software. Client applications can rely on the standard interface to enable integration with any BrAPI data source. Building software using standard interfaces is an efficient and sustainable coding practice which enables the reuse of software components. As the public plant breeding software community is relatively small, this will be essential for creating a feature-rich breeding software ecosystem. A good example of the efficient reuse of components can be seen in the community developed BrAPPs, which are tools that make extensive use of BrAPI and can be widely shared and deployed on different BrAPI enabled systems. This framework is useful to commercial plant breeding software development efforts and we welcome more engagement with that community.We are continuing our efforts and have initiated work on improved versions of the API. We recognize that the types of data relevant to plant breeding are expanding, and BrAPI will continue to evolve in response.One aspect of the API that we would like to enhance is the ability to handle linked data (Beyond breeding applications, BrAPI has also found a niche in gene bank applications, such as MGIS . EfficieAs the needs and technologies of our community continue to evolve, we expect BrAPI to grow to meet those needs.https://brapi.org/ to learn more, contact the BrAPI coordinator at brapicoordinatorselby@gmail.com to join the mailing list, Slack channel, and community forum.We invite the reader to join our community and contribute to the future of BrAPI. To start, please visit


Emotional sensitivity is a construct found in major developmental models of borderline personality disorder. However, the construct remains nebulous. The patient perspective is crucially important in helping to define and conceptualize any psychological construct – especially one that plays such a large role in the developmental theories of a given disorder. The aim of the current study was to explore the meaning of emotional sensitivity from the perspective of those who identify as being emotionally sensitive.Mage = 32.05, range: 21–59) who responded to an advertisement for a study of emotional sensitivity. Participants completed surveys related to personality pathology and a semi-structured interview about emotional sensitivity. Emotional sensitivity interviews were independently coded by two research assistants trained in qualitative analyses for content and process. Coders were blind to the personality pathology status of participants.Participants were from a community sample of adults  only by those who have high levels of borderline personality pathology.The implications of these results for the conceptualization and utility of emotional sensitivity in borderline personality disorder are discussed. The phrase “emotionally sensitive” and other variants are utilized frequently in colloquial settings to identify individuals whom others may describe as sensitive, dramatic and over-reactive. Clinically, emotionally sensitive people have been described as “those who experience intense emotions more frequently and for longer periods of time” . EmotionMarsha Linehan’s biosocial theory of borderline personality disorder (BPD) posits that ES is one component of a biologically-based vulnerable temperament which interacts with an invalidating emotional environment, contributing to the development of BPD , 3. IndiDespite its inclusion in the biosocial theory of BPD and models of emotion dysregulation, ES remains vaguely defined and has no standardized or universally accepted measure or measurement technique . This isThis work has primarily aimed to identify differences in ES between borderline and healthy populations and due to differences in measurement and design, literature is mixed on whether individuals with BPD show heightened or reduced ES. For example, Jovev and colleagues found that youth with elevated borderline features did not demonstrate earlier, accurate identification of emotions when compared to community participants on a face morph task . In a laHowever, it also remains unclear what is really meant with the term “emotional sensitivity”. Based on the above experimental approaches, the phrase “emotional sensitivity” may be used to refer to emotional reactivity speed or likelihood, emotion recognition or identification accuracy, bias for experiencing affect as negative or general emotional hypervigilance. While all may potentially measure ES or components of ES, lacking in the literature to date is the perspective of individuals who regard themselves as emotionally sensitive. The patient perspective is crucially important in helping to define and conceptualize any psychological construct – especially one that plays such a large role in the developmental theories of a given disorder. Without it, any attempt to operationalize or measure the construct is based solely on theory and lacks the valuable insight of subjective experience. In the case of ES, the patient perspective may illuminate whether individuals with and without borderline features differ and which measurement techniques or conceptualizations capture the experiential reality of the construct.Against this background, the aim of the current study was to use qualitative methodology to explore the meaning and experience of ES among those who self-identify as emotionally sensitive. Given the centrality of ES in models of BPD, we also included two measures of borderline pathology in the study to explore group differences between those with high and low levels of borderline features. Although prior work has demonstrated mixed findings in this regard, we expected that content and process differences would emerge between those with high and low levels of borderline traits, when speaking about ES.Participants were recruited via two sources. The first source was an online posting to a blog about ES, written by the director of a Dialectical Behavior Therapy  clinic.The MSI-BPD is a ten-item instrument intended to screen for BPD. Each item is presented in the form of a question  and requires a “yes” or “no” response, where “yes” signifies the presence of BPD symptoms. Responses are summed  for a total score out of ten. In the current study, an elevated score of five was utilized to distinguish a participant as a member of the group with high borderline features.The PAI-BOR is a twenty-four item self-report, dimensional measure of borderline personality disorder. The PAI-BOR contains four subscales with six items each, organized around the four symptom areas of BPD: affective instability, identity problems, negative relationships and self-harm. Reponses are made on a four-point scale  and summed for a continuous total score, with higher scores indicating greater borderline features. The PAI manual  suggestsThe ES interview aimed at further clarifying the meaning and experience of ES from a subjective point of view. Each question was left open-ended with minimal interviewer prompting. The questions were as follows: 1) What does emotional sensitivity mean to you? 2) Do you consider yourself an emotionally sensitive person? Have you always been an emotionally sensitive person? 3) How do you think your family environment reacted to your emotional sensitivity when you were growing up? How do your family/friends react to your emotional sensitivity now? 4) When you struggled emotionally as a child, how would your family react? 5) Do you think your emotional sensitivity has caused problems for you? 6) How has emotional sensitivity been beneficial to you? Have you ever wanted to change it?Participants were assigned to one of two groups, based on whether they displayed high or low levels of borderline traits on the MSI-BPD ; score >. Each grEmotional sensitivity interviews were audio-recorded and transcribed. They were then independently analyzed by two research assistants, both blind to level of personality pathology, for qualitative content and processes using a modified contextualized content analysis approach . QualitaSample characteristics for each group are presented in Table Four broad, interrelated themes emerged from the qualitative analyses of the emotional sensitivity interview. These included an overall negative experience of ES, confusion about internal states, experiences of invalidation of emotional responses, and preoccupation with the origin of ES, in the group with elevated borderline traits. In addition, differences in the process by which individuals talked about ES emerged.All participants above clinical cut-off for BPD considered themselves to be emotionally sensitive since childhood. Each recognized both the benefits and problems caused by their ES, but 9 out of 10 wished to change it at least in part, recognizing that their sensitivity was problematic. Nine out of ten participants high in borderline features predominantly defined ES as heightened emotional reactivity (i.e. “more likely to feel [emotions]”) and a tendency to have emotional reactions to even low-impact or non-emotional stimuli ; that is, they were often emotional , quick to become emotional (i.e. “I’m very quick to snap on certain things”), felt a range of emotions  and felt these emotions intensely . The remaining participant defined ES as a mixed or balanced experience; that is, as heightened reactivity and a tendency to respond emotionally to their surroundings, but also as the improved ability to understand the emotions of others.Comparably, participants with lower levels of borderline features considered themselves to be emotionally sensitive, but did not phrase this in as certain terms. For instance, 3 participants considered themselves to be only somewhat emotionally sensitive and 2 were decidedly “not” emotionally sensitive, although each was able to reflect upon certain situations in childhood and/or adulthood in which they were emotionally sensitive. Of the 8, at least partially emotionally sensitive participants, 7 recognized both the difficulties and benefits of their sensitivity but only 4 wanted to change it. Finally, only 6 out of 10 participants with lower levels of borderline features defined ES as heightened reactivity  or a tendency to respond emotionally to stimuli . Three presented a mixed or balanced definition, while the remaining participant defined ES solely as the improved ability to understand and relate to others  would dissipate and how they would soon “get over it”. The participant felt their parents “reacted very appropriately and they never said or did anything that discouraged me from um letting them know how I felt in other instances”. Even when participants felt their emotions were ignored, criticized or responded to by close others with “you’re dumb”, “suck it up” and “stop crying”, individuals with low levels of borderline traits did not report subsequent feelings of invalidation or alienation and still felt they benefited from their ES overall.Many participants with high levels of borderline pathology appeared to be preoccupied with their early family life and how that related to their tendencies to be emotionally sensitive. When asked how their families reacted to their ES growing up, participants explained how: they lived in a “rocky household”, with parents in a violent marriage who were emotionally “unavailable”; they were given up for adoption and suffered physical, sexual and verbal abuse; their mother had multiple divorces which “played a role in [their] emotional sensitivity”; their parents both “had BPD traits”, were religious, strict and being disowned was what they believe “eventually took [my] um, being over-overly emotional into um, a disorder of, of BPD”. When asked if she was always emotionally sensitive one participant said “yes. Absolutely” and that she believed her ES was because “from the time she was conceived” her mom was anxious and depressed during the pregnancy, affecting her development.The origin of ES was rarely considered by those with low levels of borderline traits. Many participants suggested their ES (sensitivity/awareness of their emotions and the emotions of others) developed over time - either through interactions with friends, family and the mental health care field or with age. Another suggested ES was simply an inherent trait that would be “hard to develop”.In general, interviews with individuals high in borderline pathology were difficult to follow and can be described as generally low on coherence in terms of their ability to sequence thoughts, convey meaning and respond to the question at hand. The following example was a response to the question “have you always been emotionally sensitive?”: “uh anybody who knows me would tell you that. From the time that I was conceived, I believe, uh, I think that’s got, you know, something to do with it cuz my mother was really anxious and depressed when she was pregnant with me and she cried all the time and was so tense that her arm went numb because her muscles were so tense that she had to get a shot so I’ve heard those stories. I know I came out colicky. I know I had baby sitters refuse to baby sit for me, even from a very, very from an infant age, infancy. And, you know, I was just kicking and screaming from the time I came out”.parents’ ES and insensitivity. They went into detail regarding their fathers’ struggle with depression and their mothers’ lack of understanding towards this. They also briefly mention how their parent’s behavior affected their life, however they did not describe how their family reacted to their own ES.When asked how it feels to be emotionally sensitive, one participant said, “when I went to Kindergarten, or pre-Kindergarten, and children uh, you know, would make fun of my lunch box or my lunch box all of a sudden would have you know like, what seemed like hundreds of ants and nobody else’s did, it was, it, it was just ridiculous. I couldn’t, you know, screen this horrible pain inside, of embarrassment, of just , oh my god, my mother doesn’t love me because the ants”. When asked how their family reacted to their ES as children, a participant instead described their Interviews with participants low in borderline pathology were generally more coherent. Participants largely responded directly and concisely to interview questions, although at times had little to say regarding the negative impact or complications that ES played in their lives. Additionally, even when speaking about emotional distress, no participants with low levels of borderline pathology became emotionally dysregulated. In comparison, the audio of individuals with high levels of borderline pathology often reflected distress in their voices and 2 participants cried during the interview.Emotional sensitivity is a construct of academic interest , 3, 6 anboth individuals with high and low levels of borderline features in the current study. While the defnition of ES largely appeared to be indistinct across groups, the response to being emotionally sensitive and the reported effect ES has on individuals appears to distinguish those with high and low levels of borderline features. In the group with high borderline traits, more participants defined their ES as being completely negative, and although they recognized the benefits of ES, they still wished to reduce it. Emotional sensitivity interviews of the group with high levels of borderline features also conveyed confusion and lack of understanding of emotions, a lack of narrative coherence and a preoccupation with etiological themes.Qualitative results of the ES interview suggest that ES, for those identifying themselves as emotionally sensitive, is a heightened emotional reactivity to stimuli, including the emotions of other individuals,  or a tenmeaning an individual attaches to the trait that may be problematic. Differently, it is not the trait itself that associates with maladaptiveness, but potential social-cognitive mechanisms through which ES may cause distress. As described by Linehan [It is important to note that in the current study ES was not measured quantitatively and it is therefore unclear whether the groups significantly differed in levels of ES. Higher overall levels of ES in the group with high borderline features may account for the greater feelings of distress and more negative perceptions of ES observed in said group. Given that the majority of participants in both groups identified as being ES, however, it is also possible that it is not the trait of ES per se which is maladaptive, but rather the  Linehan , when anAlthough the relations between invalidation, shame, self-invalidation and emotional sensitivity are delineated in etiological models of BPD , 3 to ouDespite the current study’s contribution to the understanding of ES in individuals with high and low levels of borderline traits, it has some limitations. The current study was qualitative, and therefore sought to advance our understanding of the construct of ES from the patient perspective. Even so, the sample size was small, and study results related to group differences in particular should be seen as preliminary.only as sensitivity to stimuli. A few participants included in their definition or discussion feelings of greater emotional intensity than others – the second “step” in models of emotion dysregulation. This suggests the current study may not purely capture the unique experience of ES but of other components in the emotion dysregulation process as well. However, the majority of participants did define ES as, and focus their discussion on, sensitivity to environmental and interpersonal stimuli. This distinction between emotional sensitivity and intensity may be an area in need of future consideration given that some measures of emotion dysregulation have suggested through factor analysis that these constructs may not be distinct in measurement [A second limitation is the study’s qualitative nature itself. As an investigation into the subjective experience of ES, the current study in unable to quantitatively contribute to measurement of the construct. For example, it is not entirely clear that participants conceptualized emotional sensitivity surement . Future surement .The evaluation of substantive relations between the construct of ES and constructs that emerged in this study would also be of value. For example, it may be worthwhile to simultaneously investigate the relations between ES, feelings of interpersonal alienation or integration, shame or self-judgment and borderline features or psychological distress. It is possible that two individuals with similar elevated indications of ES show differing levels of distress, mediated by feelings of alienation. Using longitudinal approaches, such as experience sampling methodology, the “real-time” relation between these constructs may be clarified. Experimental approaches which induce feelings of alienation through exclusion may also be significant for clarifying the relation between ES and subsequent distress.There are also limitations to the current study’s design. Participants did not complete a previously developed measure containing ES such as the Emotion Dysregulation Measure or the Emotion Reactivity Scale , 12. TheA final limitation is the study’s recruitment strategy and subsequent sample. Most participants in the group with high borderline traits were individuals who responded to the ad posted on the blog of the DBT center director. Although not necessarily DBT patients, these individuals may have had increased exposure to terminology and constructs found in DBT. It is possible this influenced their interview responses, however as mentioned, not all participants in the borderline group were recruited via this ad nor were they DBT patients. Additionally, 2 participants did not consider themselves to be ES. This may have affected results, however both participants were in the group with lower levels of borderline features, where expectations of ES were also lower. Additionally, they were both able to define and reflect upon times when they were emotionally sensitive.Notwithstanding the above limitations, the current study contributes to our understanding of the construct of ES through the eyes of those identifying themselves as emotionally sensitive. Those high in borderline traits exhibited feelings of distress, alienation and isolation as a result of their ES. Additionally, themes of familial invalidation permeated the narratives of the group high in borderline features. These results highlight the social cognitive mechanisms through which ES-related distress may be brought about.


Directed cell motion in response to an external chemical gradient occurs in many biological phenomena such as wound healing, angiogenesis, and cancer metastasis. Chemotaxis is often characterized by the accuracy, persistence, and speed of cell motion, but whether any of these quantities is physically constrained by the others is poorly understood. Using a combination of theory, simulations, and 3D chemotaxis assays on single metastatic breast cancer cells, we investigate the links among these different aspects of chemotactic performance. In particular, we observe in both experiments and simulations that the chemotactic accuracy, but not the persistence or speed, increases with the gradient strength. We use a random walk model to explain this result and to propose that cells’ chemotactic accuracy and persistence are mutually constrained. Our results suggest that key aspects of chemotactic performance are inherently limited regardless of how favorable the environmental conditions are. One of the most ubiquitous and important cell behaviors is chemotaxis: the ability to move in the direction of a chemical gradient. Due to its importance, key aspects of chemotaxis have been quantified for a variety of cells, including the accuracy, persistence, and speed of cell motion. However, whether these aspects are mutually constrained is poorly understood. Can a cell be accurate but not persistent, or vice versa? Here we use theory, simulations, and experiments on cancer cells to uncover mutual constraints on the properties of chemotaxis. Our results suggest that accuracy and persistence are mutually constrained. Chemotaxis plays a crucial role in many biological phenomena such as organism development, immune system targeting, and cancer progression –4. SpeciChemotaxis requires sensing, polarization, and motility . A cell’Indeed, most studies of chemotaxis use one or more of these measures to quantify chemotactic performance. Accuracy is usually quantified by the so-called chemotactic index (CI), most often defined in terms of the angle made with the gradient direction –15 Fig ; althougHowever, the relationship among the accuracy, persistence, and speed in chemotaxis, and whether one quantity constrains the others, is not fully understood. Are there cells that are accurate but not very persistent, or persistent but not very accurate ? If not,Here we focus on how a cell’s intrinsic migration mechanism as well as properties of the external environment place constraints on its chemotactic performance. The physics of diffusion places inherent limits on a cell’s ability to sense chemical gradients . These lθ is the angle the cell’s displacement makes with the gradient direction (We measure accuracy using the chemotactic index (CI) –15CI≡⟨cirection , and theWe measure persistence using the directional persistence (DP), defined as the ratio of the magnitude of the cell’s displacement (in any direction) to the total distance traveled –22 Fig ,DP≡⟨|dial names –22, and t′ is the time difference between two points in a trajectory, and the average is taken over all starting times t  = 0. With this expression for b in terms of p, Eqs p and M. Therefore, by varying p, we compute the right black line parametrically.The right black line in S1 Figβ); β gradient condition (left blue triangle), as well as several other experimental conditions. Note that the relationship between (A) Autocorrelation function for all trajectories in control experiment (no TGF-(TIFF)Click here for additional data file.S2 Fig(TIF)Click here for additional data file.S1 Video(GIF)Click here for additional data file.S1 Appendix(XLSX)Click here for additional data file.


Aim: Understanding the effects of psychotherapy is a crucial concern for both research and clinical practice, especially when outcome tends to be negative. Yet, while outcome is predominantly evaluated by means of quantitative pre-post outcome questionnaires, it remains unclear what this actually means for patients in their daily lives. To explore this meaning, it is imperative to combine treatment evaluation with quantitative and qualitative outcome measures. This study investigates the phenomenon of non-improvement in psychotherapy, by complementing quantitative pre-post outcome scores that indicate no reliable change in depression symptoms with a qualitative inquiry of patients' perspectives.Methods: The study took place in the context of a Randomised Controlled Trial evaluating time-limited psychodynamic and cognitive behavioral therapy for major depression. A mixed methods study was conducted including patients' pre-post outcome scores on the BDI-II-NL and post treatment Client Change Interviews. Nineteen patients whose data showed no reliable change in depression symptoms were selected. A grounded theory analysis was conducted on the transcripts of patients' interviews.Findings: From the patients' perspective, non-improvement can be understood as being stuck between knowing versus doing, resulting in a stalemate. Positive changes  were stimulated by therapy offering moments of self-reflection and guidance, the benevolent therapist approach and the context as important motivations. Remaining issues (ambition to change but inability to do so) were attributed to the therapy hitting its limits, patients' resistance and impossibility and the context as a source of distress. “No change” in outcome scores therefore seems to involve a “partial change” when considering the patients' perspectives.Conclusion: The study shows the value of integrating qualitative first-person analyses into standard quantitative outcome evaluation and particularly for understanding the phenomenon of non-improvement. It argues for more multi-method and multi-perspective research to gain a better understanding of (negative) outcome and treatment effects. Implications for both research and practice are discussed. Negative outcome or nonresponse to treatment is undeniably part of clinical practice. It is estimated that 5 to 10% of patients deteriorates in therapy Cooper, , and a pThere is no uniform understanding of negative outcome, nor is there agreement on the definition of treatment failure Lambert, . “NegatiIn outcome research, outcome and treatment effects are typically evaluated using statistical tests of significance that provide an indication of the reliability of the measured change. Statistical significance shows that an outcome difference is larger than could have been expected by mere chance. Clinical significance shows whether such a statistical effect is also clinically meaningful   which potential changes patients have experienced and which factors can help to explain these changes from their perspective; (2) which potential issues remained and which factors can help explain these remaining issues according to patients; (3) how patients' perspective on non-improvement relates to the quantitative outcome evaluation of non-improvement (or no reliable change) in symptom severity. For the purpose of the study, the term “non-improvement” is used to indicate a specific definition of negative or poor outcome in accordance to the widely used statistical concept of a lack of reliable change in outcome scores  is in service of the more dominant qualitative (QUAL) one” , an RCT on the treatment of major depression; the trial has been registered on Open Science Framework (ISRCTN 17130982). For a specific description of the GPS context and methodology, we refer to the pre-registered study protocol  and had 3 to 8 years of relevant clinical experience and training in CBT or PDT. In the study, all therapists received 2 days of training, one patient to practice the treatment manual and the research procedure under supervision, and bi-weekly supervision sessions throughout the study.Treatment consisted of CBT and PDT for major depression, two types of therapy that can be distinguished based on their directive  and exploration  style of interventions. Therapy was provided by one of four therapists in each approach. Both treatments were manualised and time-limited, consisting of 16–20 sessions. Treatment was delivered with an average frequency of one session per week; sessions lasted approximately 45 min. The CBT manual was based on the Cognitive-Behavioral Protocol for Depression by Bockting and Huibers . The PDTThe Beck Depression Inventory , 31.9% (n = 30) of the patients changed clinically significant, 20.2% (n = 19) changed reliably, 23.4% (n = 22) remained unchanged and 3.2% (n = 3) deteriorated in scores on the BDI-II-NL; 21.3% (n = 20) had missing outcome data . All patients were born in Belgium except for 1 patient who was born in the Netherlands; 1 patient had a parent of foreign origin. For the current study, patients showing no reliable change in pre-to-post outcome scores on the BDI-II-NL  and severe depression (n = 9)  and minus (for remaining issues and negative influences) seem to cancel out each other, resulting in a stalemate.“I have learned a lot, I have gained many insights. (…) I am not as despondent anymore, but if I say that ‘not that much has changed' I mean, I still have difficult periods and a few fundamental problems, which I do understand better now, are not really solved yet, or maybe they are not easy to solve. So, I know much more, I have improved on the level of knowing, but not so much on the more practical level.” mental stability and strength (n = 14) and have gained more insight (n = 15). Moreover, these changes seem interconnected, as increased understanding was said to have influenced patients' personal strength. In the model in The overarching experience of being stuck does not imply that patients have not experienced changes at all. Two themes resulted from the analysis showing that throughout the process of therapy, patients have grown “In general, I feel much stronger, mentally. I have gained many insights in therapy. (…) It gave me peace of mind and recognition that okay, my thoughts, experience and things I long for are not that strange.” n = 11) consisted of two subthemes: A more positive state of mind (n = 9) and the ability to accept and let things go (n = 6). Patients had learned to deal with certain situations, they felt less emotionally overwhelmed and believed they could handle challenges better. Patients' personal strength (n = 11) consisted of an increased self-confidence (n = 11) and being more vigorous (n = 9). Patients felt more active, dared to socially interact and felt less anxious and insecure.Increased mental stability .n = 9), understood themselves better (n = 8) and had gained insight into the reasons why they experienced difficulties (n = 8).Increased insight was described on three levels. Patients were able to see things from a different perspective .“I have learned more about myself. I already knew I was stubborn, but we talked about it a lot [in therapy], about how I set my standards very high and I don't accept help from anyone and that, by this, I make life very difficult for myself.” .The facilitating factors contributing to these positive changes according to patients include the role of therapy, the therapist and the patients' social and professional context. As indicated in n = 6) and therapy was seen a as a weekly moment of self-reflection (n = 11). This seemed to have stimulated both patients' insight (cf. self-reflection) and mental stability and strength .Patients in CBT and PDT presented slightly different experiences of therapy. These differences seem in line with the specific nature of both types of therapy, given the explorative and expressive style of PDT and the directive approach in CBT. Especially in the PDT group, weekly therapy sessions were considered important for being able to talk, express feelings and thoughts .n = 4), but therapy was also valued for actively providing patients with insight and practical help (n = 5), making the facilitating role of therapy more guiding than reflective.In the CBT group, similar aspects were mentioned good therapeutic relationship was described by the majority of patients (n = 16) as making it easier for them to talk and open up. More specifically, patients valued that the therapist did not judge but rather encouraged and acknowledged them (n = 10). Secondly, the therapist had the skill to ask the right questions (n = 15) that stimulated reflection and provided patients with a different perspective. The previously discussed themes “insight” and “mental stability” were described as influenced by this approach of the therapist. Although the therapist was mentioned as important in both CBT and PDT, the nature of the experienced role of the therapist's different: In PDT, the therapist was described as stimulating a mental process that was ongoing for the patient, while the CBT therapist was characterised as being an active participant or initiator in the therapy sessions.Patients in both therapy groups ascribed important changes more to the therapist's way of being than to the therapy form as such. Therefore, we explicitly describe therapy and therapist separately, even though the factors are clearly intertwined. This reciprocity is indicated in the conceptual model  by means“His questions, they often appeared so innocent, but when you think about it afterwards you see things from a different perspective. Very subtle because he does not tend to give his own opinion.” .“After a few sessions, my therapist came up with a scheme that summarised my life until now and where my anxiety comes from. I remember I had to cry for the first time. I noticed how good it felt to finally be understood. I still believe he can help me in the process of accepting it [certain life events].” .n = 11). For some patients, it had been important to be at home for a while (with sick leave) and to have the time for themselves in their own space (n = 10). For others (n = 5), work  was an important support mechanism, as it gave them a reason to get up in the morning and structure to their day. The motivating context was therefore considered a facilitating factor for patients' mental stability and personal strength and seemingly a potential stimulus for engaging or continuing treatment.Besides therapy and the therapist, patients mentioned the influence of their social context as a third facilitating factor. Significant others appeared as an important motivation to do something about problems, to find a job or to keep on going .Despite the positive changes in mental stability, personal strength and gained insight, certain issues remained. Feeling stuck was characterised by the wish or ambition to change yet feeling unable to do so. A reciprocal arrow between the categories “Ambition to change” and “Inability to change” represents this equilibrium.n = 13). These aspects implied things they believed they still lacked or they should work on in the near future, such as tackling self-criticism and self-discipline.The majority of the patients experienced an ongoing struggle and carried hopes for further change n = 13). Patients felt as if they were running behind on things, they lacked initiative and could not force themselves to move forward.In spite of and seemingly in conflict with the ambition to change is an overall feeling of inability n = 3). This inability was also reflected in what seemed like an internal conflict (n = 7), for instance, being stuck in the struggle between wanting to spend more time with the kids but at the same time aspiring for a professional career. One patient was highly preoccupied with a long-lost dream, which made it impossible to pursue a new goal in life.Some patients described an inescapable cycle they seemed to repeat over and over again  and/or the therapy mismatched the patient's needs or expectations at some point (n = 17). Noteworthy is the observed difference between the PDT and CBT group. A few patients in PDT were displeased that they had not gained the right tools, were not given any directions (n = 4) or stated therapy had a varying impact  (n = 3).Notwithstanding its positive effects, therapy was described as hitting a limit by all patients. More specifically, advise or learned techniques were considered valuable, yet only up to a certain point. Patients stated that they were unable to use the techniques when feeling really bad, or they did not find the time to do so. For others, therapy had progressed too slowly, had not been valuable every session, or it had worked for some aspects but not for others. Therapy hit a limit in two ways: “I expected her [the therapist] to give me good advice on how to deal with my problems. How I can worry less, how I can improve my breathing, just some tips. I must have imagined therapy the wrong way, she did not give me any tips. I'm kind of disappointed. (…) I still don't understand the purpose of talking about all these things, I often felt worse after the session.” .n = 5).Some patients in the CBT group, on the other hand, stated therapy was too superficial and they needed a more intense form of treatment .n = 11). One third of the patients had no further need or motivation to continue psychotherapy (n = 8). Some of them believed they had dealt with everything or had gotten everything out of therapy that they could, others had lost hope that therapy could help them or were disappointed about the results. Half of the patients indicated they would continue the same therapy, because they felt committed to the process (n = 6) or because they had further specific issues they wished to address (n = 4). Others, however, were interested in pursuing a different kind of therapy (n = 7).Moreover, therapy as hitting its limits seems to have contributed to a rather ambivalent attitude toward possible continuation of therapy (n = 16). For instance, they did not take therapy very seriously, had difficulties with opening up or were reluctant to do certain exercises. Several patients saw therapy as a task or an investment that asked too much from them  (n = 6). This rather ambivalent position in therapy was, for instance, described by patient R:Patients also reflected on their own role and position in therapy. Most patients described feeling a certain resistance toward therapy (“I was afraid to fail in therapy. (…) I typically start things but can't manage to continue them. Maybe because (…) when it hasn't gone well one day, I can't let that go. It is all or nothing often, so I was afraid I would not do very well [in therapy] and also, sometimes I put effort into it, but often I was busy doing other things I thought I should be doing, like work.” .n = 15), sometimes referring to their own personality. Moreover, some patients indicated that therapy of 20 sessions is in general too little to solve more fundamental problems. The patient's resistance and idea of impossibility seem to correspond to the perspective on therapy as hitting a limit. In Secondly, many patients were convinced about the fundamental nature of their problems and the impossibility to change .Despite a mismatch, some patients described they were able to get passed initial resistance and adjusted to therapy, while for others, the limits of therapy, their own resistance or feelings of impossibility lasted throughout the therapy process.“I might have expected therapy to be a bit more practical, but I noticed quite fast that this wasn't the goal of the sessions and I accepted that, I didn't see the talking as a waste of time” .once again I'm nowhere, it did not help, and it only cost me money, a lot of time and energy, and why? For nothing.' (…) Of course, I know I did make progress, but I it's hard for me to see it that way. I just think, ‘it's the umpteenth thing I've tried and what is the use?”' .“So, I think ‘okay, therapy has ended now and n = 16). Several patients, for instance, encountered a conflict with family members (n = 6). These difficulties in relationships were often considered to facilitate or perpetuate certain problems, and consequently they were believed to have influenced the therapy process and patients' progression. Patient F., for instance, described a critical moment in course of therapy:Several contextual factors were mentioned as having a negative influence on patients' wellbeing during and after therapy. Firstly, patients' personal context was mentioned as being highly stressful .n = 9). This subtheme contains patients who experienced high amounts of stress due to school-related deadlines, had difficulties adjusting to a corporate culture  or did not experience any fulfillment at work. Finally, many patients mentioned external factors causing distress, like certain events or circumstances (n = 12), for instance, dealing with unexplainable physical complaints and an ongoing lawsuit. The reciprocal arrow in the conceptual model between the patient's resistance and impossibility and stressful context indicates that both factors are understood as interacting and influencing the therapy and recovery process.Secondly, the professional context appeared as a source of stress or dissatisfaction . None of these factors can be considered the main or only explanatory reason but must be understood as interacting . Nonimproved patients perceived their therapy as “spinning one's wheels”: Therapy was valued for some aspects but disappointing on others and even though some changes occurred, core difficulties remained. The current study investigated nonimproved patients' experiences of outcome and therapy in a broader context of various potential explanatory factors . In that sense, the findings of this study and the study of Werbart et al.  underlying reasons, it may be worthwhile to take this as a particular clinical focus. In light of the increasing use of routine outcome measures in clinical care  of non-improvement relying on a larger group of nonimproved patients. More idiosyncratic information still remains unaddressed and case-study research focusing on individual patients' narratives and outcome scores is warranted Kazdin, . SimilarGiven the controlled context of our study (as data was collected in the context of a broader RCT), it offers a strong level of control for confounds. For instance, the research sample was characterised by a primary disorder of major depression, outcome was systematically evaluated in all patients and treatments were manualised. A potential threat is therefore, however, the external validity of the findings  outcome and treatment effects more general.MDS: main author of the manuscript, contribution to data collection, main investigator responsible for data-analysis and interpretation; RM: conception and development of study design, coordinating contribution to data collection, contribution to data-analysis and interpretation, main reviewer of the manuscript; KV: contribution to data collection, contribution to data-analysis and -interpretation, reviewer of the manuscript; FT: contribution to data collection and reviewer of the manuscript revision; MD: conception and development of study design, coordinating contribution to data collection, reviewer of the manuscript.The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.