G4-Fluxes
\[G_4\]
-fluxes are at the heart of F-theory model building.
Constructors
We currently support the following constructor:
g4_flux
— Methodg4_flux(model::AbstractFTheoryModel, class::CohomologyClass)
Construct a G4-flux candidate on an F-theory model. This functionality is currently limited to
- Weierstrass models,
- global Tate models,
- hypersurface models.
Furthermore, our functionality requires a concrete geometry. That is, the base space as well as the ambient space must be toric varieties. In the toric ambient space $X_\Sigma$, the elliptically fibered space $Y$ that defines the F-theory model, is given by a hypersurface (cut out by the Weierstrass, Tate or hypersurface polynomial, respectively).
In this setting, we assume that a $G_4$-flux candidate is represented by a cohomology class $h$ in $H^{(2,2)} (X_\Sigma)$. The actual $G_4$-flux candidate is then obtained by restricting $h$ to $Y$.
It is worth recalling that the $G_4$-flux candidate is subject to the quantization condition $G_4 + \frac{1}{2} c_2(Y) \in H^{/2,2)}( Y_, \mathbb{Z})$ (see [Wit97]). This condition is very hard to verify. However, it is relatively easy to gather evidence for this condition to be satisfied/show that it is violated. To this end, let $D_1$, $D_2$ be two toric divisors in $X_\Sigma$, then the topological intersection number $\left[ h|_Y \right] \cdot \left[ P \right] \cdot \left[ D_1 \right] \cdot \left[ D_2 \right]$ must be an integer. Even this rather elementary check can be computationally expensive. Users can therefore decide to skip this check upon construction by setting the parameter check
to the value false
.
Another bottleneck can be the computation of the cohomology ring, which is necessary to work with cohomology classes on the toric ambient space, which in turn define the G4-flux, as explained above. The reason for this is, that by employing the theory explained in [CLS11], we can only work out the cohomology ring of simpicial and complete (i.e. compact) toric varieties. However, checking if a toric variety is complete (i.e. compact) can take a long time. If the geometry in question is involved and you already know that the variety is simplicial and complete, then we recommend to trigger the computation of the cohomology ring with check = false
. This will avoid this time consuming test.
An example is in order.
Examples
julia> qsm_model = literature_model(arxiv_id = "1903.00009", model_parameters = Dict("k" => 4))
Hypersurface model over a concrete base
julia> cohomology_ring(ambient_space(qsm_model), check = false);
julia> g4_class = cohomology_class(anticanonical_divisor_class(ambient_space(qsm_model)))^2;
julia> g4f = g4_flux(qsm_model, g4_class)
G4-flux candidate
julia> g4f2 = g4_flux(qsm_model, g4_class, check = false)
G4-flux candidate lacking elementary quantization checks
This function is part of the experimental code in Oscar. Please read here for more details.
Attributes
We currently support the following attributes:
model
— Methodmodel(gf::G4Flux)
Return the F-theory model for which this $G_4$-flux candidate is defined.
julia> qsm_model = literature_model(arxiv_id = "1903.00009", model_parameters = Dict("k" => 4))
Hypersurface model over a concrete base
julia> cohomology_ring(ambient_space(qsm_model), check = false);
julia> g4_class = cohomology_class(anticanonical_divisor_class(ambient_space(qsm_model)))^2;
julia> g4f = g4_flux(qsm_model, g4_class, check = false)
G4-flux candidate lacking elementary quantization checks
julia> model(g4f)
Hypersurface model over a concrete base
This function is part of the experimental code in Oscar. Please read here for more details.
cohomology_class
— Methodcohomology_class(gf::G4Flux)
Return the cohomology class which defines the $G_4$-flux candidate.
julia> qsm_model = literature_model(arxiv_id = "1903.00009", model_parameters = Dict("k" => 4))
Hypersurface model over a concrete base
julia> cohomology_ring(ambient_space(qsm_model), check = false);
julia> g4_class = cohomology_class(anticanonical_divisor_class(ambient_space(qsm_model)))^2;
julia> g4f = g4_flux(qsm_model, g4_class, check = false)
G4-flux candidate lacking elementary quantization checks
julia> cohomology_class(g4f) == g4_class
true
This function is part of the experimental code in Oscar. Please read here for more details.
Properties
We currently support the following properties:
passes_elementary_quantization_checks
— Methodpasses_elementary_quantization_checks(gf::G4Flux)
G4-fluxes are subject to the quantization condition [Wit97] $G_4 + \frac{1}{2} c_2(Y) \in H^{(2,2)}(Y, \mathbb{Z})$. It is hard to verify that this condition is met. However, we can execute a number of simple consistency checks, by verifying that $\int_{Y}{G_4 \wedge [D_1] \wedge [D_2]} \in \mathbb{Z}$ for any two toric divisors $D_1$, $D_2$. If all of these simple consistency checks are met, this method will return true
and otherwise false
.
It is worth mentioning that currently (August 2024), we only support this check for $G_4$-fluxes defined on Weierstrass, global Tate and hypersurface models. If this condition is not met, this method will return an error.
julia> qsm_model = literature_model(arxiv_id = "1903.00009", model_parameters = Dict("k" => 4))
Hypersurface model over a concrete base
julia> cohomology_ring(ambient_space(qsm_model), check = false);
julia> g4_class = cohomology_class(anticanonical_divisor_class(ambient_space(qsm_model)))^2;
julia> g4 = g4_flux(qsm_model, g4_class, check = false)
G4-flux candidate lacking elementary quantization checks
julia> passes_elementary_quantization_checks(g4)
true
This function is part of the experimental code in Oscar. Please read here for more details.
Ambient Space Models for G4-Fluxes
Focus on 4-dimensional F-theory models $m$, such that the resolution $\widehat{Y}_4$ of the defining singular elliptically fibered CY 4-fold $\Y_4 \twoheadrightarrow B_3$ is defined as hypersurface in a complete and simplicial toric variety $X_\Sigma$. In such a setup, it is convenient to focus on $G_4$-fluxes modelled from the restriction of elements of $H^{(2,2)}( X_\Sigma, \mathbb{Q})$ to $\widehat{Y}_4$. This method identifies a basis of $H^{(2,2)}( X_\Sigma, \mathbb{Q})$ and filters out elements, whose restricton to $\widehat{Y}_4$ is obviously trivial.
It is important to elaborate a bit more on the meaning of "obviously". To this end, fix a basis element of $H^{(2,2)}( X_\Sigma, \mathbb{Q})$. Let us denote a corresponding algebraic cycle by $A = \mathbb{V}(x_i, x_j) \subset X_\Sigma$, where $x_i$, $x_j$ are suitable homogeneous coordinates. Furthermore, let $\widehat{Y}_4 = \mathbb{V}( p ) \subset X_\Sigma$. Then of course, we can look at the set-theoretic intersection $\mathbb{V}( p, x_i, x_j)$. Provided that $p(x_i = 0, x_j = 0)$ is a non-zero constant, this set-theoretic intersection is trivial. This is exactly the check conducted by the method ambient_space_models_of_g4_fluxes
below. However, for reasons of simplicity, this approach is avoid a number of sutleties.
Namely, we really have to work out the intersection in the Chow ring, that is we should consider the rational equivalence class of the algebraic cycle $A$ and intersect this class with the rational equivalence class of the algebraic cycle $\mathbb{V}( p )$. In particular, for "unlucky" choices of $i, j$, the algebraic cycles $\mathbb{V}( p )$ and $\mathbb{V}(x_i, x_j)$ may not intersect transversely. This is for instance the case if $i = j$. Such phenomena are addressed in theory by "moving the algebraic cycles into general position", but in practice this somewhat tricky. Instances include the following:
\[i = j\]
: Then apparently, a self-intersection of $\mathbb{V}(x_i)$ is involved.\[p(x_i, x_j) \equiv 0\]
: This is unexpected for dimensional reasons, and indicates a
non-transverse intersection.
In both instances, one makes use of the linear relations of $X_\Sigma$ to replace the cycle $\mathbb{V}(x_i)$ (and/or $\mathbb{V}(x_j)$) with a rational combination of algebraic cycles $R = \sum_{k = 1}^{N}{c_k \cdot A_k}$, such that $R$ is rationally equivalent to $\mathbb{V}(x_i)$. From experience, it is then rather common that $R$ and $\mathbb{V}(x_i)$ intersect transversely. And if not, then modify the non-transverse intersections by using the linear relations again to replace an involved algebraic cycle.
ambient_space_models_of_g4_fluxes
— Methodambient_space_models_of_g4_fluxes(m::AbstractFTheoryModel; check::Bool = true)::Vector{CohomologyClass}
Given an F-theory model $m$ defined as hypersurface in a simplicial and complete toric base, we this method first computes a basis of $H^(2,2)(X, \mathbb{Q})$ (by use of the method basis_of_h22
below) and then filters out "some" basis elements whose restriction to the hypersurface in question is trivial. The exact meaning of "some" is explained above this method.
Note that it can be computationally very demanding to check if a toric variety $X$ is complete (and simplicial). The optional argument check
can be set to false
to skip these tests.
Examples
julia> B3 = projective_space(NormalToricVariety, 3)
Normal toric variety
julia> Kbar = anticanonical_divisor_class(B3)
Divisor class on a normal toric variety
julia> t = literature_model(arxiv_id = "1109.3454", equation = "3.1", base_space = B3, defining_classes = Dict("w"=>Kbar))
Construction over concrete base may lead to singularity enhancement. Consider computing singular_loci. However, this may take time!
Global Tate model over a concrete base -- SU(5)xU(1) restricted Tate model based on arXiv paper 1109.3454 Eq. (3.1)
julia> g4_amb_list = ambient_space_models_of_g4_fluxes(t)
2-element Vector{CohomologyClass}:
Cohomology class on a normal toric variety given by z^2
Cohomology class on a normal toric variety given by y^2
julia> qsm_model = literature_model(arxiv_id = "1903.00009", model_parameters = Dict("k" => 8))
Hypersurface model over a concrete base
julia> g4_amb_list = ambient_space_models_of_g4_fluxes(qsm_model, check = false);
julia> length(g4_amb_list) == 172
true
This function is part of the experimental code in Oscar. Please read here for more details.
basis_of_h22
— Methodbasis_of_h22(v::NormalToricVariety; check::Bool = true)::Vector{CohomologyClass}
By virtue of Theorem 12.4.1 in [CLS11], one can compute a monomial basis of $H^4(X, \mathbb{Q})$ for a simplicial, complete toric variety $X$ by truncating its cohomology ring to degree $2$. Inspired by this, this method identifies a basis of $H^{(2,2)}(X, \mathbb{Q})$ by multiplying pairs of cohomology classes associated with toric coordinates.
By definition, $H^{(2,2)}(X, \mathbb{Q})$ is a subset of $H^{4}(X, \mathbb{Q})$. However, by Theorem 9.3.2 in [CLS11], for complete and simplicial toric varieties and $p \neq q$ it holds $H^{(p,q)}(X, \mathbb{Q}) = 0$. It follows that for such varieties $H^{(2,2)}(X, \mathbb{Q}) = H^4(X, \mathbb{Q})$ and the vector space dimension of those spaces agrees with the Betti number $b_4(X)$.
Note that it can be computationally very demanding to check if a toric variety $X$ is complete (and simplicial). The optional argument check
can be set to false
to skip these tests.
Examples
julia> Y1 = hirzebruch_surface(NormalToricVariety, 2)
Normal toric variety
julia> Y2 = hirzebruch_surface(NormalToricVariety, 2)
Normal toric variety
julia> Y = Y1 * Y2
Normal toric variety
julia> h22_basis = basis_of_h22(Y, check = false)
6-element Vector{CohomologyClass}:
Cohomology class on a normal toric variety given by xx2*yx2
Cohomology class on a normal toric variety given by xt2*yt2
Cohomology class on a normal toric variety given by xx2*yt2
Cohomology class on a normal toric variety given by xt2*yx2
Cohomology class on a normal toric variety given by yx2^2
Cohomology class on a normal toric variety given by xx2^2
julia> betti_number(Y, 4) == length(h22_basis)
true
This function is part of the experimental code in Oscar. Please read here for more details.