DsixTools 2.0: The Effective Field Theory Toolkit

$\tt DsixTools$ is a Mathematica package for the handling of the Standard Model Effective Field Theory (SMEFT) and the Low-energy Effective Field Theory (LEFT) with operators up to dimension six, both at the algebraic and numerical level. $\tt DsixTools$ contains a visually accessible and operationally convenient repository of all operators and parameters of the SMEFT and the LEFT. This repository also provides information concerning symmetry categories and number of degrees of freedom, and routines that allow to implement this information on global expressions (such as decay amplitudes and cross-sections). $\tt DsixTools$ also performs weak basis transformations, and implements the full one-loop Renormalization Group Evolution in both EFTs (with SM beta functions up to five loops in QCD), and the full one-loop SMEFT-LEFT matching at the electroweak scale.

The Mathematica 1 package DsixTools [22] was developed as a tool to implement such automated calculations. Since the first release of DsixTools in 2017, further development of the package has occurred in two directions: 1) implementation of new theory results (such as moving from the WET [35] to the LEFT, and the implementation of higher-order effects), and 2) improvements and refinements at the front-end and operational levels (new routines, input, documentation, faster methods for RG evolution, and notation). The result of these developments is the new release DsixTools 2.0, which is available at https://dsixtools.github.io This paper presents a description of the program and its new features.

Overview of DsixTools 2.0
DsixTools is a Mathematica package for analytical and numerical computations within the SMEFT and the LEFT. It features routines devoted to RGE running (in the SMEFT and in the LEFT), matching between the two theories, basis transformation, input reading (with consistency checks) and output generation. DsixTools also contains a comprehensive and pedagogical repository with routines that allow the user to display lists of operators with certain properties, and information on WCs in the SMEFT and the LEFT.
Regarding the SMEFT-LEFT matching, DsixTools implements: 1 Mathematica is a product from Wolfram Research, Inc.
[34]. 2 The one-and two-loop SM RGEs were computed in [43][44][45] and [46], respectively. 3 We have taken into account the errata published in http://einstein.ucsd.edu/smeft/. • The tree-level matching of the SMEFT Warsaw basis to the LEFT San Diego basis at the electroweak scale, using the results of Ref. [2]. We have independently derived the matching relations (in two different ways), finding full agreement.
• The complete one-loop matching of the SMEFT Warsaw basis to the LEFT San Diego basis at the electroweak scale, using the results of Ref. [9].
Finally, DsixTools also implements several results related to the RGE running in the LEFT: • Four-loop QCD corrections to the strong coupling beta function and quark mass anomalous dimensions from Ref. [48].
• One-loop RGEs for all LEFT operators up to dimension six in the San Diego basis from Ref. [8].
The structure of DsixTools is illustrated in Fig. 1, where one can also see how they relate to the different energy ranges and effective theories. Relevant details of the SMEFT and LEFT implementations are given in Appendices A-C, where our conventions are also presented.

Differences with DsixTools 1.0
The list of improvements and changes that features the new version with respect to the original version published in 2017 is substantial, and programs written with DsixTools 1.0 will most likely not work with DsixTools 2.0. Thus we collect here a summary of the most relevant changes: • DsixTools 2.0 is now very easy to install, directly within Mathematica. See Section 3.
• The notation for WCs has changed such that now they are dimensionful. For example the SMEFT Lagrangian is given by: with C (5) k ∼ Λ −1 UV and C (6) k ∼ Λ −2 UV . Same principle applies also to the LEFT WCs.
• The WET [35] basis has been superseded by the LEFT, in order to implement all the new results derived within the latter.
• Nomenclature for operators and Wilson coefficients has been modified, mainly for global convenience and consistency, and in part to make it closer to more common standards (e.g. WCxf [49] or FeynRules [25]).
• Besides the two options to solve the RGEs avaliable in DsixTools 1.0 (exact numerical solution and leading logarithm), DsixTools 2.0 includes a third method, as the default setting. This method employs the Evolution Matrix approach, described in Appendix D. This method is numerically very precise and it is computationally faster than solving the RGEs exactly.
• Many of the routines inherited from DsixTools 1.0 have changed names. For example, all routines related to the SMEFT now start with SMEFT... and similarly for the LEFT (e.g. SMEFTRunEGEs and LEFTRunRGEs), which makes it easier to use Mathematica's autocompletion feature. In addition, some routines in DsixTools 1.0 have been eliminated (or replaced by improved ones), and new routines have been implemented. See Section 4.2 for the complete list of routines in DsixTools 2.0. • DsixTools 2.0 includes higher order corrections to matching coefficients and RG coefficients as compared to DsixTools 1.0. In particular it includes SM beta functions up to five loops, and LEFT matching conditions in the SMEFT at one loop.

Downloading, installing and loading DsixTools
DsixTools is free software under the copyright of the GNU General Public License. There are two ways to download the package and install it:

Automatic installation
The simplest way to download and install DsixTools is to run the following command in a Mathematica session: before loading DsixTools. This will reduce the loading time to under a second. If running or matching is required after loading DsixTools in this mode, the corresponding files can be loaded by the user a posteriori, there is no need to reload DsixTools.

Using DsixTools
In this Section we describe how to use DsixTools in detail. After summarizing the DsixTools routines and functions, the main features of the package will be explained with specific examples of use.

A DsixTools program
The following is a simple but complete DsixTools program which takes input from the user for the SMEFT Lagrangian at the UV scale Λ UV = HIGHSCALE and calculates the LEFT WCs at the IR scale Λ IR = LOWSCALE, printing out one specific WC for illustration: In DsixTools all scales are given in GeV. The third line defines the input values by means of the NewInput DsixTools routine. In this case the user is implicitly specifying that the input WCs correspond to the SMEFT, and these take the values at the new physics scale Λ UV = 10 TeV, with all the other WCs set to zero. We note that [C (1) q ] 1112 = [C (1) q ] 1121 follows from the hermiticity of the Lagrangian, which implies the general relation [C (1) q ] aabc = [C (1) q ] * aacb . If this condition were not respected by the arguments of the NewInput routine, a message would be issued by DsixTools and a modification of the input values in order to restore consistency would be applied (see Section 4.3). In the next line, the program makes use of the RunDsixTools routine. This can be regarded as the master DsixTools routine, since it performs the three main tasks this package is designed for: it runs the SMEFT parameters from Λ UV = HIGHSCALE to Λ EW = EWSCALE, matches to the LEFT, and finally runs the LEFT parameters from Λ EW = EWSCALE to Λ IR = LOWSCALE. The variable LOWSCALE takes the default value LOWSCALE = 5 GeV. After evaluating RunDsixTools, the D6run function becomes available. The last line of the program precisely reads these results by printing the value of the LEFT WC [L V,LL eu ] 2211 at µ = Λ IR = 5 GeV, obtaining a numerical result The general flowchart of this minimal program can be seen in Fig. 2. It clearly involves most of the main routines of DsixTools and serves as an example of use in a practical scenario. However, some of the functionalities used in this program offer alternative possibilities and methods of application. For this reason, in the rest of the paper we explain in greater detail how to take full advantage of DsixTools.

Summary of DsixTools routines
Once the package has been loaded, the user can already execute all DsixTools functions and routines. Several DsixTools global variables are also introduced at this stage. Here we summarize the DsixTools routines available to the user.

General variables and routines
• DsixToolsVersion: Returns the loaded version of DsixTools.
• DsixToolsDir: Returns the directory holding the loaded version of DsixTools.
• HIGHSCALE: UV scale (in units of GeV) at which the SMEFT input is set and where the running in the SMEFT starts.
• EWSCALE: Electroweak scale (in units of GeV). This is the scale at which the LEFT input is set (either directly or through matching with the SMEFT), and where the running in the LEFT starts. By default EWSCALE = 91.1876 GeV, but it can be modified by means of NewScale or NewInput.
• LOWSCALE: IR scale (in units of GeV) which sets the lower limit beyond which the solution of the LEFT RGEs are only extrapolations. Since the LEFT in DsixTools 2.0 is the five-flavor theory, the default DsixTools value is LOWSCALE = 5.
• RunDsixTools: Master DsixTools routine. It runs the SMEFT parameters from Λ UV = HIGHSCALE to Λ EW = EWSCALE, matches to the LEFT, and then runs the LEFT parameters from Λ EW to Λ IR = LOWSCALE.

Reference
• SMEFTObjectList and LEFTObjectList: List of SMEFT and LEFT objects, where an object is defined as a list of properties of a SMEFT or LEFT operator and its Wilson coefficients.
• SMEFTOperators and LEFTOperators: List of all SMEFT and LEFT operators in DsixTools notation.
• SMEFTParametersTotal and LEFTParametersTotal: List of all SMEFT and LEFT parameters (i.e. couplings, mass parameters and WCs) in DsixTools notation.
• NonHermitianErrorsTotal: List containing the accumulated set of errors fixed by NewInput, ChangeInput or ReadInputFiles due to input not consistent with hermiticity of the Lagrangian. • NIndependent[parameter]: Returns the number of independent real parameters in parameter: 2 for a general complex parameter, 1 for a real parameter, and 0 for a redundant WC.

Operations with Wilson coefficients
• ToSymmetric[X,cat]: Returns X in the symmetric basis, where X is an object of category cat in array form.
• ToSymmetricSingle[parameter]: Returns the form of the SMEFT or LEFT parameter in the symmetric basis.
• ToIndependent[X,cat]: Returns X in the independent basis, where X is an object of category cat in array form.
• ToIndependentSingle[parameter]: Returns the form of the SMEFT or LEFT parameter in the independent basis.
• CheckAndSymmetrize[X,cat]: Returns X in the symmetric basis, where X is an object of category cat in array form, after checking that all hermiticity and antisymmetry conditions are respected. If any of the conditions are violated, some entries of X are modified.

SMEFT and LEFT running
• RGEsMethod: Indicates the method that DsixTools is going to use to solve the RGEs. It is either 1 (exact numerical solution), 2 (first leading log) or 3 (via the evolution matrix formalism). This variable is protected.
• SMEFTLoopOrder: Indicates the order that DsixTools is going to use for the SM beta functions when running in the SMEFT. The maximum (and default) in DsixTools 2.0 is SMEFTLoopOrder = 5. This variable is protected.
• LEFTLoopOrder: Indicates the order in QCD that DsixTools is going to use for the strong coupling beta function and quark-mass anomalous dimensions when running in the LEFT. The maximum (and default) in DsixTools 2.0 is LEFTLoopOrder = 4. This variable is protected.
• SetSMEFTLoopOrder[n] and SetLEFTLoopOrder[n]: Set the values of SMEFTLoopOrder and LEFTLoopOrder • UseRGEsSM: If UseRGEsSM = 1, DsixTools will use the pure SM RGEs to run the SM parameters to the initial scale HIGHSCALE.
• β[parameter]: Gives the beta function of the SMEFT or LEFT parameter.
• βSM[parameter]: Gives the SM beta function of the SM parameter.
• SMEFTRunRGEs and LEFTRunRGEs: Solve the SMEFT and LEFT RGEs in each case.
• D6run[parameter,<"log10">]: Gives the SMEFT or LEFT parameter as a function of the renormalization scale µ. Including the optional argument "log10" gives the function in terms of t = log 10 (µ/ GeV).
• LEFTEvolve[parameter,final,initial,<"log10">]: Returns the LEFT parameter at µ = final in terms of the LEFT parameters at µ = initial using the evolution matrix method.
• SMEFTrunnerExport[<format>,<name>]: Exports the numerical values of the SMEFT parameters at the scale Λ EW = EWSCALE (after running). If no argument is given, SMEFTrunnerExport generates a default output file named Output_SMEFTrunner.dat. This routine can also export the output to file with a name (without extension) and format chosen by the user (both arguments are required). The available formats are "SLHA" (default DsixTools format), "JSON" and "YAML".
• LEFTrunnerExport[<format>,<name>]: Exports the numerical values of the LEFT parameters at the scale Λ IR = LOWSCALE (after running). If no argument is given, LEFTrunnerExport generates a default output file named Output_LEFTrunner.dat. This routine can also export the output to file with a name (without extension) and format chosen by the user (both arguments are required). The available formats are "SLHA" (default DsixTools format), "JSON" and "YAML".

Matching at the EW scale
• MatchingLoopOrder: Indicates if the SMEFT-LEFT matching will be done at treelevel (MatchingLoopOrder = 0) or at one-loop (MatchingLoopOrder = 1). This variable is protected.
• SetMatchingLoopOrder[n]: Sets the value of MatchingLoopOrder to n.
• Match: Dispatch that replaces all LEFT parameters by their numerical values at the matching scale, obtained after matching to the SMEFT.
• MatchEW[parameter]: Returns the matching condition of the LEFT parameter in terms of SMEFT parameters at the EW scale, in analytical form.
• MatchAnalytical: Dispatch that replaces all LEFT parameters by their analytical matching conditions, in terms of SMEFT parameters.
• SMEFTLEFTMatch: Perfoms the matching between the SMEFT and the LEFT, at the order especified by MatchingLoopOrder.
• SMEFTRotateParameters[scale]: Returns a list containing two dispatches that transform the SMEFT parameters to the "up" and "down" bases at µ = scale.
• LEFTToNewBasis[scale]: Dispatch that transforms the LEFT parameters to the mass basis at µ = scale.
• EWmatcherExport[<format>,<name>]: Exports the numerical values of the LEFT parameters at the scale Λ EW obtained after matching to the SMEFT. If no argument is given, EWmatcherExport generates a default output file named Output_EWmatcher.dat. This routine can also export the output to file with a name (without extension) and format chosen by the user (both arguments are required). The available formats are "SLHA" (default DsixTools format), "JSON" and "YAML".

Other variables and routines
• Biunitary[matrix]: Applies a biunitary transformation diagonalizing the square matrix, and provides the rotation matrices and the eigenvalues.
• LoopParameter: Appears in analytical expressions such as beta functions and matching conditions, separating different loop orders. An n-loop term is proportional to (LoopParameter) n (except for n = 1 in the beta functions). This variable is protected.

Input values in DsixTools
One of the first steps in every DsixTools program is to define the input. This includes the numerical values of the SMEFT or LEFT parameters at the input scale, the relevant scales for matching and RGE running (Λ UV = HIGHSCALE, Λ EW = EWSCALE and Λ IR = LOWSCALE), and some DsixTools options. The input values for the SM parameters, which are used by default and in the evolution matrix method, are given in Table 1.
There are two ways of defining an input. The first way, which we call notebook input, is to introduce the input values directly in the Mathematica notebook. This is the method used in the example program shown in Section 4.1. Alternatively, the user can also set the input by reading external files containing the input values. We will refer to this approach as external files input. We now explain these two approaches and how to use them. For definiteness, we will concentrate on the SMEFT. For setting input in the LEFT, the steps and routines are completely analogous.

Notebook input
The simplest way of setting the input in DsixTools is to introduce the values directly in the Mathematica notebook. The DsixTools options and the relevant scales for the RGE running can be introduced easily. For instance, would set the UseRGEsSM option to 0 and the high-energy scale Λ UV = 10 TeV. The SMEFT or LEFT parameters (including the SM or QCD & QED inputs) can be introduced by means of the NewInput routine. This routine resets the input so that the WCs take their default values and then applies the changes indicated by the user. 5 For instance, the program of Sec. 4.1 includes the line which, as discussed already, sets [C if the new physics scale Λ UV is previously set to 10 TeV. We note that only the non-vanishing WCs must be given and the rest are assumed to be zero.
As explained in Appendix C, some of the 2-and 4-fermion operators in the SMEFT and the LEFT possess specific symmetries under the exchange of flavor indices. In particular, these symmetries imply conditions to be enforced in the input WCs in order to avoid two types of inconsistencies: 1. Hermiticity: The hermiticity of the Lagrangian imposes certain conditions on some WCs, and these must be respected by the input provided by the user. For instance, q ] * 1121 would be inconsistent.
2. Antisymmetry: Some LEFT operators are antisymmetric under the exchange of two flavor indices and thus vanish. For practical reasons, we have not excluded these operators from the WC input list, but rather require that the corresponding WCs vanishes. For instance, an input with [L νγ ] 11 = 0 would be inconsistent.
In order to avoid potential issues associated to inconsistent inputs, DsixTools includes user-friendly input routines that simplify the user's task. DsixTools accepts input values for the WCs of any set of operators (belonging to the Warsaw or San Diego bases) and then checks for possible consistency problems. When the user's input is not consistent, a warning is issued and DsixTools corrects the input by replacing it by a new one that ensures a complete consistency of the Lagrangian. For instance, this would be case if the user initializes HIGHSCALE and then runs q ] * 1112 . The list of invalid input values can be seen by clicking on a button named Input errors that appears after running NewInput. DsixTools fixes this inconsistency by defining L = 1 2 (L in + L * in ), where L in is the input Lagrangian containing the inconsistency. 6 The resulting input values after this correction are [C (1) q ] * 1112 . The hermiticity correction only needs to be applied to those operators for which we do not need to add explicitly its hermitian conjugates in the Lagrangian because they are already included among their flavor components. We finally note that in some cases other Wilson coefficients, related to these by the two reasons given above, are also modified. The user should therefore pay attention to these messages to make sure that the input has been correctly introduced.
Furthermore, DsixTools transforms all WCs to the symmetric basis, defined as the basis in which the WCs follow the same symmetry conditions as the associated operators. We refer to Appendix C.3 for more information about this basis. For example, in the symmetric basis 2211 . This is the basis used internally by DsixTools. Nevertheless, the user needs not to worry about this, since the input is always unambiguous. In fact, this is one of the virtues of the input system in DsixTools 2.0: the user introduces directly a Lagrangian, which as such is basis-independent, e.g., sets the input SMEFT Lagrangian  Finally, once the input values have been set, the user can change them individually at any moment in the notebook. This is done with the ChangeInput routine. In contrast to NewInput, this routine does not reset the input to default values, but just applies the changes demanded by the user. For instance, would change the value of C ϕG to 10 −6 GeV −2 in the current InputValues dispatch, without altering the values of the other SMEFT parameters. Exactly as NewInput, the ChangeInput routine also checks the consistency of the input Lagrangian provided by the user and then translates the 2-and 4-fermion WCs to the symmetric basis.

External files input
Alternatively, the user can set the program options and provide input values from external files. This is done with the ReadInputFiles routine. For instance, applies the content of three SMEFT input files. 7 The file Options.dat contains the option values to be used in the program, the file WCsInput.dat contains the input values for the SMEFT WCs at µ = Λ UV , and the file SMInput.dat contains the input values for the SM parameters. Examples for all of these files (and the corresponding ones for the LEFT) can be found in the IO folder of DsixTools. Each of the entries in these files are accompanied by comments that make them self-explanatory. Similarly to the case of notebook input, the InputValues dispatch gets initialized and can be used after using ReadInputFiles.
The default DsixTools input and output format is inspired by the Supersymmetry Les Houches Accord (SLHA) [51,52]. Input files are distributed in blocks, each devoted to a set of parameters. Any complex parameter is given in two blocks, so that real and imaginary parts should be provided separately. Furthermore, WCs carrying flavor indices should be provided individually for each flavor combination. Analogously to the notebook input case, all WCs are assumed to vanish by default. Therefore, it suffices to include the non-zero WCs (and only these) in the input card. Furthermore, the routine ReadInputFiles will also check that the set of input values provided by the user is consistent. If any of the hermiticity or antisymmetry conditions on the WCs are not satisfied, a message will be issued and the corresponding input values modified in order to restore consistency.
Additionally, DsixTools can also read WCs input files in WCxf format [49], a standard data exchange format for numerical values of Wilson coefficients. In this case, the WCs input card can be a JSON or YAML file. Note however that reading YAML input files requires previous installation of a YAML importer for Mathematica [53]. For more details about the WCxf format, such as the specific fermion basis that is implicitly assumed, we refer to [49].

RGE running
Once the initial conditions at some energy scale Λ start are defined, the user can apply the RGEs to obtain the resulting Lagrangian parameters at the different energy scale Λ end . The SMEFT running between Λ UV = HIGHSCALE and Λ EW = EWSCALE is performed with the SMEFTRunRGEs routine, while the LEFT running between Λ EW = EWSCALE and Λ IR = LOWSCALE is performed with the LEFTRunRGEs routine. Alternatively, the user can also perform the full RGE evolution from Λ UV > Λ EW down to Λ IR < Λ EW by means of the RunDsixTools master routine, which internally makes use of SMEFTRunRGEs and LEFTRunRGEs and also applies the SMEFT-LEFT matching at Λ EW with SMEFTLEFTMatch.
DsixTools has three different methods for the resolution of the RGEs, which the user can choose by setting the flag RGEsMethod: • "Exact" (RGEsMethod = 1): This method applies the Mathematica internal command NDSolve for the numerical resolution of the differential equations. Given the large number of differential equations involved in this case (several thousands), this might be time consuming, with each evaluation requiring a few (< 10) seconds, the exact number depending on the particular case and computer.
• "First leading log" (RGEsMethod = 2): This approximate method might be sufficient for many phenomenological studies, in particular when the initial and final scales are not too far from each other. The solution of the RGEs is obtained as where C i is any of the running parameters, µ is the renormalization scale and β i is the beta function for the C i parameter evaluated at µ = Λ start . This method is much faster but neglects leading log resummation.
• "Evolution matrix" (RGEsMethod = 3): This method uses an evolution matrix formalism, explained in detail in Appendix D.
By default, the SM parameters are assumed to be given at the electroweak scale Λ EW = M Z = 91.1876 GeV. Therefore, before running down from Λ UV to Λ EW they must be computed at Λ UV . In case the user chooses to solve the RGEs with RGEsMethod=1 (NDSolve) or RGEsMethod=2 (leading log), this can be done by running up from the electroweak scale using pure SM RGEs, hence neglecting possible deviations caused by non-zero SMEFT WCs. 8 However, in case the user prefers to give the SM parameters directly at the highenergy scale Λ UV , this can be done by setting the UseRGEsSM option to 0. This choice is recommended when the user wants to use the First leading log method to solve the RGEs. In the case the user chooses RGEsMethod=3 (DsixTools default) for the resolution of the RGEs (the evolution matrix method), this is implicitly taken into account. Our derivation of the evolution matrix already enforces the SM parameters to be fixed to their measured values at the EW scale.
The user chooses between these three methods by setting the global option RGEsMethod to 1 (for the "Exact" method), to 2 (for the "First leading log" method) or to 3 (for the "Evolution matrix" method), via the routine SetRGEsMethod. After running, the results are saved in the function D6run, such that D6run[parameter] returns the parameter parameter after RGE running as a function of the renormalization scale µ. Therefore, the user can easily read the results by running commands such as The results obtained after running can be also exported to a text file. This is done with the routines SMEFTrunnerExport[] and LEFTrunnerExport[], which generates the files Output_SMEFTrunner.dat or Output_LEFTrunner.dat in each case, with SLHA format (completely analogous to the WCs input card in this format). Alternatively, the user can export the results into text files following the WCxf convention [49] by adding an argument to the previous routines: SMEFTrunnerExport [format] and LEFTrunnerExportWCXF[format], with format being JSON or YAML.
The evolution matrix method is also used internally by default when evaluating the routines SMEFTEvolve and LEFTEvolve. These routines provide a semi-analytical solution of the RGEs. For example, EvolveSMEFT [ CdG [2 ,2] , EWSCALE , HIGHSCALE ] returns an analytical expression for the SMEFT WC [C dG ] 22 at µ = Λ EW as a function of the SMEFT parameters at µ = Λ UV , with numerical coefficients. This easily allows the user to identify the most relevant contributions to the running, as well as running fast numerical scans of the EFT parameter space.
Finally, we point out that DsixTools can also be used for analytical calculations involving the SMEFT or LEFT beta functions, since these are available to the user right after loading the package.

SMEFT-LEFT matching at the electroweak scale
In the first step of the matching process, DsixTools transforms all the SMEFT parameters at the EW scale to the up basis, applying the required biunitary transformations to the fermion mass matrices (which include contributions from dimension-six operators). The up basis, defined in Appendix A, allows one to properly identify the top quark, one of the fields that decouples in the matching. After this transformation, the LEFT parameters at the electroweak scale are computed, using either the full tree-level matching [2] 9 (if MatchingLoopOrder = 0) or the full one-loop matching [9] (if MatchingLoopOrder = 1). In order to set the value of MatchingLoopOrder prior to the matching procedure, the user can use the routine SetMatchingLoopOrder. The result of the matching of the LEFT coefficients at the EW scale is given in the tree-level mass basis. The SMEFT-LEFT matching is performed by evaluating

SMEFTLEFTMatch ;
This routine (re)initializes the Match dispatch, which can be used to obtain the numerical values of the LEFT parameters after the matching at the electroweak scale. Therefore Since the LEFT is more general than the SMEFT low-energy limit, not all the LEFT operators are generated from a matching to the SMEFT. For instance, applying the command MLνγ /.MatchAnalytical would return a 3×3 matrix full of zeros, since the LEFT operator O νγ is not present in the SMEFT.
Furthermore, as explained, the first step of the routine MatchSMEFTLEFT is to rotate all SMEFT parameters to the fermion up basis. These rotations can be readily obtained by means of the SMEFTRotateParameters routine by evaluating e.g.,

{ ToUpBasis , ToDownBasis } = SMEFTRotateParameters [ EWSCALE ];
This will create the dispatches ToUpBasis and ToDownBasis, which can be used to obtain any SMEFT parameter in the up and down bases at the electroweak scale. For instance, would only create the ToUpBasis dispatch.
All these results can be exported to external text files with the routine EWmatcherExport. This generates the file Output_EWmatcher.dat, in SLHA format. The results can also be exported in WCxf convention by adding two arguments (format and name) to the previous routine: EWmatcherExport[format,name], with format being "JSON" or "YAML". The resulting file will always be in the up basis, denoted as Warsaw Up basis in the WCxf exchange format documentation [49].

Reference guide and tools in DsixTools
DsixTools aims at a simple and visual experience. This is accomplished via a variety of routines, some of which grant the user simple access to the most basic, useful and comprehensive information about the LEFT and the SMEFT, while others implement practical operations on the Wilson coefficients.
The first repository of information available is contained in the variables SMEFTObjectList and LEFTObjectList, which are lists of certain objects, one for each operator of the EFT (75 for the SMEFT, 103 for the LEFT, up to dimension six). Each object is itself a list containing: the flavor matrix of WCs, the name of the (head of) the WCs, the name of the operator, the symmetry category, the flavor dimension, the canonical dimension, the EFT, the operator class, the broken symmetry (if any), and the L A T E X form for both the operator and its definition. A flattened list of all the parameters appearing in the first position of the objects in SMEFTObjectList and LEFTObjectList is given in SMEFTParametersTotal and LEFTParametersTotal: which are all the parameters that might receive input values or output results. However, not all these parameters are independent, and not all are complex-valued. The function NIndependnet[parameter] returns the number of independent real parameters in a given parameter: 2 for a general complex parameter, 1 for a real parameter and 0 for a redundant one (as chosen by DsixTools convention).   displays a menu with information about the SMEFT WC C ϕu , including the EFT to which it belongs, the name of the associated WC, the dimension (2, 3, 4, 5 or 6) and type (0F, 2F or 4F), whether it corresponds to an Hermitian operator or not, the number of independent real parameters, the number of flavor indices and the list of elements, as shown in Fig. 3. A clickable menu with information about the SMEFT and LEFT parameters can be loaded with SMEFTOperatorsMenu, LEFTOperatorsMenu and TotalOperatorsMenu, while grid menus with all the SMEFT or LEFT parameters can be generated with SMEFTOperatorsGrid and LEFTOperatorsGrid. These grids are interactive, and the definition of any operator appears o screen when dragging the mouse pointer on top (see Fig. 4). In addition, clicking on the corresponding operator creates a pop-up window with the same chart created by ObjectInfo. The Mathematica notebook OperatorsGrid.nb can be found in the main DsixTools folder. This notebook already contains the result of using OperatorsGridSMEFT and OperatorsGridLEFT, and the two grid menus can be used right after opening the notebook, without any need to load DsixTools. This can be useful as an out of the box visual reference on the SMEFT and the LEFT.
Concerning handy routines for handling WCs and expressions with WCs (such as amplitudes or cross-sections), we highlight D6Simplify. This routine is used to simplify expressions involving SMEFT or LEFT parameters, by replacing all redundant WCs in terms of non-redundant ones and eliminating complex conjugates on real parameters. For instance,  ϕq has been used in order to express the result in terms of the independent parameter [C (1) ϕq ] 23 . As already mentioned, the function NIndependnet returns the number of independent real parameters in a given parameter. Finally, the routines ToSymmetric, ToSymmetricSingle, ToIndependent and ToIndependentSingle can be used to transform WCs to the symmetric and independent bases (see Appendix C.3 for the definition of these bases). The routine CheckAndSymmetrize also checks whether all hermiticity and antisymmetry conditions are satisfied in a given argument.

Summary
DsixTools is a Mathematica package for simbolic and numerical operations within the SMEFT and the LEFT, facilitating the treatment of these two effective theories in a systematic and complete manner.
Here we have presented DsixTools 2.0, a new and improved version of DsixTools. This version features the complete one-loop evolution from a high-energy scale Λ UV > Λ EW (where the physics is described by the SMEFT) down to a low-energy scale Λ IR < Λ EW (where the physics is described by the LEFT). This includes complete one-loop RGE evolution and complete one-loop matching at the EW scale. In addition, the new version contains a large number of improvements regarding notation and utilities, operational efficiency and simplicity, user interface, input and output, a set of reference tools for the SMEFT and the LEFT, and a complete Mathematica documentation system.
DsixTools is a project that can be extended with future improvements, including additional tools and functionalities. The final outcome of this endeavour will be a complete and powerful framework for the systematic exploration of new physics models using the language of Effective Field Theories.

A Standard Model Effective Field Theory
The SMEFT is the EFT obtained after extending the SM Lagrangian with all operators invariant under the SU (3) c × SU (2) L × U (1) Y gauge group up to an arbitrary dimension. The Lagrangian for the SMEFT can be written as (A.1) The dimensionful Wilson coefficients C (5) k and C (6) k are implicitly suppressed by 1/Λ UV and 1/Λ 2 UV , respectively, where Λ UV is the EFT cutoff scale, assumed to be much larger than the electroweak scale. The implementation of the SMEFT in DsixTools mainly follows the conventions used in Ref. [3]. 10 The SM Lagrangian is given by Here G A µν (A = 1 . . . 8), W I µν (I = 1 . . . 3) and B µν denote, respectively, the SU (3) c , SU (2) L and U (1) Y field-strength tensors. The fields and q correspond to the lepton and quark SU (2) L doublets of the SM, while e, u, d are the SM right-handed fields. The Higgs SU (2) L doublet is denoted by ϕ. The Yukawa couplings Γ e,u,d are 3×3 matrices in flavor space. Using appropriate field redefinitions, and without loss of generality, one can choose a particular flavor basis where Γ e and Γ d are diagonal and Γ u = V CKMΓu , withΓ u diagonal and V CKM denoting the CKM matrix. This is the so-called down basis, and it is the default basis choice for DsixTools. Another basis choice that is also useful is the up basis, where Γ e and Γ u are diagonal and Γ d = V † CKMΓ d withΓ d diagonal. Note, however, that these bases are not stable under RGE evolution. The covariant derivative is defined as where {g s , g, g } and {G, W, B} are, respectively, the SU (3) c , SU (2) L and U (1) Y gauge couplings and gauge fields, and T A and T I are the corresponding gauge group generators in the appropriate representations. The hypercharge assignments for the matter fields are given in Table 2. The θ terms are given by The reader should keep in mind that these conventions differ from those used in [4][5][6]. The differences appear in the normalization of λ and m, the definition of the Yukawa matrices and the name of the gauge couplings. However, DsixTools 2.0 adopts the convention of [4][5][6] of introducing the EFT cutoff scale into the definition of the WCs.
with the dual tensors defined as X = 1 2 µνρσ X ρσ (with 0123 = +1). There is only one operator of dimension five, the so-called Weinberg operator, with C denoting the Dirac charge conjugation matrix. This operator gives a Majorana mass term for the neutrinos after spontaneous symmetry breaking [54]. A non-redundant basis of dimension-six operators was defined in [3], the so called Warsaw basis. Table 3 classifies the SMEFT operators in the Warsaw basis indicating the number of independent operators in each category. We list the Baryon-number-conserving operators in Tables 4, 5 and 6. Barring flavor structure, these constitute a total of 59 operators, some of which are non-Hermitian, yielding in total 76 real coefficients. Taking into account flavor indices, the Baryon-numberconserving dimension-six Lagrangian contains 1350 CP-even and 1149 CP-odd operators, for a total of 2499 Hermitian operators [6]. The complete set of independent dimension-six Baryon number violating operators were identified in [55]. Barring flavor structure, there are only 4 Baryon-number-violating operators. These are listed in Table 7. The beta functions for the SMEFT WCs C i are defined as Here µ is the renormalization scale, and β i are the individual beta functions of each WC. The complete set of one-loop beta functions for the SM and dimension-six WCs were computed in [4][5][6][7]. The beta functions in these references neglect the contributions to the running of the dimension-six WCs from two insertions of the dimension-five Weinberg operator. Given the smallness of neutrino masses, it is natural to expect that the scale suppressing this operator is much larger than the one of the dimension-six operators, which justifies having neglected these contributions. The beta function for the Weinberg operator can be found in [47]. The complete set of one-loop SMEFT beta functions can be read off directly from DsixTools with the command β[parameter].

B Low-Energy Effective Field Theory
The LEFT is the EFT below the electroweak scale after integrating out the Higgs boson, the massive W ± and Z gauge bosons and the top quark from the SM particle content, Baryon-number-violating 4 ∆B = ∆L = 1 ¯ j σ µν e jk q k σ µν u Baryon-number-violating as well as any BSM degrees of freedom at or above the EW scale. The resulting theory is invariant under the SU (3) c ×U (1) Q gauge group and contains n u = 2 up-type quarks, n d = 3 down-type quarks, n e = 3 charged leptons and n ν = 3 left-handed neutrinos. The LEFT Lagrangian is given by (B.1) The dimensionful Wilson coefficients L (5) k and L (6) k are implicitly suppressed by 1/Λ EW and 1/Λ 2 EW , respectively, where Λ EW is the electroweak scale. A non-redundant basis of dimension-three, -five and -six operators was introduced in [2], and this will be known in the following as the San Diego basis. Table 8 classifies the LEFT operators in the San Diego basis indicating the number of independent operators in each category. Barring flavor structure and Hermitian conjugation there are 96 independent operators. It can be shown that no linear combination of these operators vanish after the application of the equations of motion, which makes them completely independent operators. We list these operators in Tables 9 -13, omitting flavor (and SU (3) c indices in the last tables) to simplify the notation. The only operator present at dimension 3 is a Majorana mass term for the left-handed neutrinos, shown in Table 9. There are two categories of dimension-five operators, (νν) X and L R X, both listed in Table 10. While the former violates Lepton number in two units, the latter preserves both lepton and Baryon numbers. All the dimension-five LEFT operators are dipole operators. The remaining 89 independent operators arise at dimension 6. There are 2 purely gluonic operators, shown in Table 11, 56 4-fermion operators that conserve both Baryon and Lepton numbers, shown in Table 12, and 31 4-fermion operators that violate Baryon and/or Lepton numbers, shown in Table 13. Assuming that the SMEFT is the correct theory above the EW scale, all parameters of the LEFT can be fixed though a matching calculation at the EW scale. The complete set of matching conditions in the Warsaw and San Diego bases are known at tree-level [8] and one-loop [9] orders. They can be can be read off directly from DsixTools with the command MatchEW[parameter].
The implementation of the LEFT in DsixTools follows the same (or analogous) conventions as for the SMEFT. 11 The QCD and QED Lagrangian is given by The Dirac mass matrices M u and M e,d are, respectively, 2 × 2 and 3 × 3 matrices in flavor space and we will omit flavor indices whenever possible. The absence of a Dirac mass matrix 11 The reader should keep in mind that these conventions differ from those used in [2,8]. The differences appear in the definition of the fermion mass matrices and the name of the strong gauge coupling.
for the neutrinos is due to the fact that right-handed neutrinos are not included in the LEFT. The covariant derivative is defined as where g s and e are the SU (3) c and U (1) Q gauge couplings, respectively, and T A (A = 1 . . . 8) are the Gell-Mann matrices. The gauge field tensors are defined as usual, with covariant derivatives Finally, dual tensors are defined as X = 1 2 µνρσ X ρσ (with 0123 = +1). The RGEs governing the renormalization scale evolution of the LEFT Wilson coefficients L i are given by which define the LEFT beta functions β i . We use a notation completely analogous to that in the SMEFT. The complete set of one-loop beta functions for the LEFT has been computed in Ref. [8]. They can be read off directly from DsixTools with the command β[parameter].

C SMEFT and LEFT parameters
In this Appendix we provide additional details about the variables used in DsixTools. These can be useful to properly read and write some variables or apply some global dispatches and substitution rules in a Mathematica session using DsixTools. We also introduce the notation used in DsixTools for the SMEFT and LEFT parameters. It is well known that some of the 2-and 4-fermion operators in the SMEFT and the LEFT posess specific symmetries under the exchange of flavor indices. For instance, the flavour components of the SMEFT operator Q ϕe form a Hermitian matrix, hence following the symmetry relation [Q ϕe ] ij = [Q ϕe ] * ji , while the LEFT operator components of O νγ form an antisymmetric matrix, hence following the symmetry relation More complicated index symmetries exist for some of the 4-fermion operators. In all these cases, the number of independent operator components gets reduced, and thus the number of independent WCs. For example, the C ee 4-fermion WC does not contain 81 (= 3 4 ) independent complex WCs, but just 21 real and 15 imaginary independent components. It is convenient to restrict the number of parameters considered in SMEFT or LEFT calculations to just the independent ones. In DsixTools we have followed this approach, dropping     Table 11: LEFT purely gluonic operators. Table 12: LEFT Baryon and Lepton number conserving dimension-six operators. Table 13: LEFT Baryon and/or Lepton number violating dimension-six operators. We use C to denote the Dirac charge conjugation matrix. redundant WCs in all internal calculations by transforming the user input into two minimal bases of operators: the independent basis and the symmetric basis. These bases, which are described in Appendix C.3, have the same set of independent WCs, although with different numerical values. Since the number of independent WCs depends on the symmetry of the operators involved, it is sufficient to know the independent WCs for each index symmetry category of the operators in the SMEFT and LEFT. The different categories are given in Table 14. We see that, apart from the operators belonging to categories 0, 1 and 5, all other operators have index symmetries. Furthermore, there are two dimension-six operators with special symmetries, not shared by any other operator, Q qqql and O S,LL νν , and two operators as only representatives of the last index symmetry category, O S,LL ddd and O S,RR ddd . Similarly, the dimension-five SMEFT operator Q ϕϕ and the dimension-three LEFT neutrino mass matrix M ν are the only symmetric matrices, while the dimension-five LEFT operator O νγ is the only antisymmetric matrix.
In Tables 15 and 16 we list the independent WCs contained in each category. This, combined with Tables 17 and 18, completely allows the user to determine the position of a given parameter in the ParametersSMEFT and ParametersLEFT arrays. In any case, we remind the reader that the functions FindParametersSMEFT and FindParametersLEFT can also be used for this purpose.   Table 17 provides a complete list of the SMEFT parameters used in DsixTools. In addition to the SMEFT WCs, this includes the SM parameters (gauge couplings, Yukawa matrices and scalar and θ parameters). This table is particularly useful to identify the names given to the elements of 2-and 4-fermion WCs, as well as the corresponding beta functions, which can be readily obtained by evaluating β [parameter]. For instance, the beta function for the g s gauge coupling is obtained by evaluating β[gs] and the beta function for the [C (1) q ] 2233 WC is obtained with β[Clq1 [2,2,3,3]].

C.3 The symmetric and independent bases
DsixTools allows the user to introduce an arbitrary input for the WCs of the SMEFT in the Warsaw basis, and of the LEFT in the San Diego basis. In order to work only with independent parameters two different operator bases are used in DsixTools that drop all redundant WCs, and the user input and the results obtained from it can be expressed in terms of any of them. The first non-redundant basis, the independent basis, contains only the WCs with the flavour indices as listed in Tables 15 and 16 for each symmetry category, all other WCs being set to zero. In the second minimal basis, the symmetric basis, the redundancies in the WCs are removed by imposing that the latter follow the same symmetry relations as the corresponding operators. This is a convenient choice since the index symmetry of the operators is translated to the corresponding WCs. In order to simplify intermediate calculations done in this basis (e.g. in the RGEs) only the independent WCs listed for each category in Tables 15 and 16 Table 14, prst C prst Q prst , (C.1) its WCs in the symmetric basis fulfill the relations C stpr = C prst (because the two flavour currents are identical), C rpts = C prst (due to hermiticity), and C ptsr = C prst (as a consequence of the Fierz identity satisfied by the flavour components of the operator). Note that the sum in (C.1) runs over all possible values of the fermion flavour indices (p, r, s, t). The same operator in the independent basis reads, however, where now the sums comprise only the 21 (6 real and 15 complex) independent components listed under category 8 of Table 16, and all other C prst vanish.
It is straightforward to relate the WCs in the symmetric basis to those of the independent basis by using the symmetry relations satisfied by the operators. Let us provide an explicit example for illustration. Consider the contribution to the Lagrangian of the operator O S,LL νν,prst = ν T L,p Cν L,r ν T L,s Cν L,t of the LEFT, which belongs to the symmetry category 12. where the C prst inherit the same index symmetries as those of the operator. Using those we can relate the 81 flavour components to the six independent ones chosen for category 12 (see Table 16). In this way, (C.3) reduces to dC (4) i (t) dt = 1 16π 2 γ (4) ij (C (4) k , C (6) k ) C (4) j (t) , (D.1) dC (6) i (t) dt = 1 16π 2 γ (6) ij (C (4) k ) C (6) j (t) , (D.2) where i, j, k span the number of EFT operators, t ≡ ln µ, and γ is the anomalous dimension matrix (ADM). The superindices (4) and (6) denote, respectively, quantities associated to dimension four and six operators, and we have neglected contributions from C (6) k in γ (6) , since these correspond to higher orders in the EFT expansion. An analytical to solution to this system of coupled differential equations is not known, and one is generally forced to solve it numerically. Given the large number of equations involved, such numerical solution can be relatively slow. However, it is important to note that (D.2) still contains contributions that are higher order in the EFT expansion. Indeed, by noting that C (6) k ∼ O(1/Λ 2 ), we can rewrite (D.1) as dC (4) i (t) dt = 1 16π 2 γ (4) ij (C (4) k ) C with γ (4) ij (C (4) k ) ≡ γ (4) ij (C (4) k , 0). These equations correspond to the SM (or QCD and QED) RGE equations, and γ (4) ij (C (4) k ) is known up to three loops [36][37][38][39] and even up to five loops in QCD for the quark masses and QCD coupling [40][41][42]. The numerical solution of this system of equations is much faster, given the reduced number of C (4) k coefficients, and only needs to be performed once for a given set of experimental inputs. As a result, we get C (4) k (t) =Ĉ withĈ (4) k (t) being interpolating functions obtained from the numerical solution of (D.3). Using this solution, we can rewrite (D.2) as dC (6) i (t) dt = 1 16π 2 γ (6) ij (Ĉ (4) k ) C (6) j (t) + O(1/Λ 4 ) ≡γ (6) ij (t) C such that, up to corrections that are higher order in the EFT expansion, the ADM is just a function of t, completely fixed in terms of the interpolating functionsĈ (4) k (t). Neglecting terms of O(1/Λ 2 ), the system of differential equations in (D.5) is solved by C (6) i (t) = U (6) ij (t, t 0 ) C (6) j (t 0 ) , (D. 6) where t 0 ≡ ln µ 0 , with µ 0 being the input scale of the dimension-six WCs, and U (6) is an evolution matrix that is given in terms ofγ (6) (t) by 12 t 0γ (6) (ω 1 ) . . .γ (6) (ω n ) dω 1 . . . dω n .

(D.7)
Obtaining the evolution matrix is computationally expensive. However, since it is independent of the dimension-six input, it only needs to be determined once (for a given set of SM inputs). DsixTools 2.0 already contains a pre-computed evolution matrix for the inputs given in Table 1. Once the evolution matrix is known, the evaluation of (D.6) is very fast.
The solution for C (6) i (t) in (D.6) can then be plugged into the equations for the dimensionfour WCs in (D.1). These equations need to be solved numerically, but given the small number of equations, obtaining this numerical solution is considerably faster than solving the whole system.
Finally, we comment on the inclusion of dimension five operators, since these can potentially modify the method discussed here. The only dimension five operator in the SMEFT is the Weinberg operator. Since its WC is expected to be very small, given the smallness of the neutrino masses, we neglect its mixing to dimension-six SMEFT operators, which requires a double insertion of this operator. Once this contribution is neglected, the evolution matrix formalism can be trivially extended to include also the Weinberg operator. In the case of the LEFT, the presence of dimension-five dipole could be addressed by extending the above procedure order-by-order. The end result would be a numerical evolution matrix which takes into account the effect of double dipole insertions in the running of C (6) . What we do is to produce the numerical evolution matrix neglecting double dipole insertions in the beta functions, and test the results of running with this evolution matrix against the exact results. We find that the agreement is numerically very accurate for all practical cases. However, the user should keep this in mind when considering applications with large contributions to dipole operators. In such situations it might be wise to compare the results of RGEsMethod=3 with those obtained with RGEsMethod=1 in a few cases. If significant effects from double dipole insertions are found, then running with RGEsMethod=1 would be advised.