This project has been integrated into OSCAR. Future development will therefore happen in the OSCAR repository. More information is available in the latest OSCAR documentation. See here for the documentation of the latest development version. The documentation of the latest stable release is available here.
The package FTheoryTools.jl aims to automate a number of recuring and (at least in part) tedious computations in F-theory model building. Specifically we focus on the following setups:
- 4d F-theory compactifications,
- defined by a global and singular Weierstrass model as codimension 1 locus of a toric ambient space
$Y$ , - which can be crepantly resolved. Some of the techniques/algorithms extend naturally to more general settings. For example, it is not at all necessary to restrict to 4-dimensional settings (or alternatively, base spaces of dimension 3). Indeed, the current implementation does allow for arbitrary base dimension. For more extensions that we might address in the future, please take a look at the section "possibly future extensions" below.
We aim for the following workflow:
- User input:
- Weierstrass polynomial
$P_W$ , - Data defining the toric ambient space
$Y$ (if applicable), - Choice of resolved phase (if applicable),
- Generating sections (for
$U(1)$ symmetries).
- Weierstrass polynomial
- Output:
- Singular loci in codimension 1, 2 and 3.
- Defining data of resolved geometry.
- (Pictures of) fibre diagrams of resolved fibre over the originally singular loci, including intersections of
$U(1)$ -sections. - Gauge group.
- Topological data (e.g. Euler number).
Future extensions include, but are not necessarily limited to, the following:
- Specify a
$G_4$ -flux and work-out the chiral spectra. - Specify a gauge potential and work out (candidates for) the line bundles whose cohomologies encode the vector-like spectra.
- Other singularity types (non-minimal, terminal, etc.)
- Base blowups for singularity resolution.
We base this project on OSCAR for general functionality on toric spaces and (possibly even more importantly) polynomial operations. The latter are based on Singular and Singular.jl, respectively.
- Install
Juliaon your computer. The latest version can be found here. - Download this development version of
FTheoryTools.jl. Those interested in contributing should instead clone this repository:
git clone https://github.com/Julia-meets-String-Theory/FTheoryTools.jl.git
- Place your clone/download in a location outside of the
.juliafolder of your home folder. - Finally, register and build
FTheoryTools.jlas follows:
using Pkg
Pkg.add("Oscar")
Pkg.develop(path="path/to/your/FTheoryTools.jl")
Pkg.build("FTheoryTools")- To use your
FTheoryToolsinstallation, you finally want to invoke
using Oscar, FTheoryToolsNote that due to the modularity of the Julia programing language, access to the Oscar
functionality is not available in the REPL unless you issue using("Oscar") explicitly.
This is the reason for why this command appears in the examples of our documentation.
You can instruct Julia to automatically conduct the above steps upon starting, so that you
immediately have access to FTheoryTools (and Oscar). To this end perform the following steps:
- Navigate to the hidden
juliafolder in your home directory (e.g. viacd .julia/in the terminal). - In this folder, create (if not already existing) the folder
config. - In the
configfolder create (unless existing) the filestartup.jl. - Add the following lines to the file
startup.jl:
using Pkg
using Oscar
Pkg.develop(path="path/to/your/FTheoryTools.jl")
using FTheoryToolsFor detailed information about the implemented functionality, please take a look at the most recent documentation.
If you want to report a bug or request a feature, please do it by raising a github issue.
Contributions are highly appreciated. Please notice that:
- Contributions must be done by opening a pull request.
- Pull requests must pass a number of checks that are automatically conducted by our test suite, before they can be merged. A further approval by a code owner is appreciated.
- Code is expected to be in agreement with the Oscar style guide.
This software is work in progress of
We appreciate insightful discussions with Mirjam Cvetič.
If you are interested in contributing, please feel free to reach out to us for more details.
If FTheoryTools has been used in your research, please use the bibtex below or download it here:
@Misc{FTheoryTools,
author = "Bies, Martin and Turner, Andrew P.",
howpublished = {\url{https://github.com/Julia-meets-String-Theory/FTheoryTools.jl}},
title = {FTheoryTools -- Julia tools for F-Theory compactifications},
year = "2022"
}The work of Martin Bies is supported by SFB-TRR 195 Symbolic Tools in Mathematics and their Application of the German Research Foundation (DFG).
The work of Andrew Turner is supported by DOE (HEP) Award DE-SC001352.