Skip to content

Commit

Permalink
Backports for 1.1.0
Browse files Browse the repository at this point in the history
  • Loading branch information
benlorenz authored Jun 21, 2024
2 parents 3a2bfe3 + 7a96c95 commit d0b75de
Show file tree
Hide file tree
Showing 85 changed files with 1,570 additions and 656 deletions.
2 changes: 1 addition & 1 deletion Project.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
name = "Oscar"
uuid = "f1435218-dba5-11e9-1e4d-f1a5fab5fc13"
authors = ["The OSCAR Team <oscar@oscar-system.org>"]
version = "1.1.0-DEV"
version = "1.1.0"

[deps]
AbstractAlgebra = "c3fe647b-3220-5bb0-a1ea-a7954cac585d"
Expand Down
7 changes: 3 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,8 +37,7 @@ julia> using Oscar
/ _ \ / ___| / ___| / \ | _ \ | Combining ANTIC, GAP, Polymake, Singular
| | | |\___ \| | / _ \ | |_) | | Type "?Oscar" for more information
| |_| | ___) | |___ / ___ \| _ < | Manual: https://docs.oscar-system.org
\___/ |____/ \____/_/ \_\_| \_\ | Version 1.1.0-DEV
\___/ |____/ \____/_/ \_\_| \_\ | Version 1.1.0
julia> k, a = quadratic_field(-5)
(Imaginary quadratic field defined by x^2 + 5, sqrt(-5))
Expand Down Expand Up @@ -120,7 +119,7 @@ pm::Array<topaz::HomologyGroup<pm::Integer> >
If you have used OSCAR in the preparation of a paper please cite it as described below:

[OSCAR]
OSCAR -- Open Source Computer Algebra Research system, Version 1.0.0,
OSCAR -- Open Source Computer Algebra Research system, Version 1.1.0,
The OSCAR Team, 2024. (https://www.oscar-system.org)
[OSCAR-book]
Wolfram Decker, Christian Eder, Claus Fieker, Max Horn, Michael Joswig, eds.
Expand All @@ -133,7 +132,7 @@ If you are using BibTeX, you can use the following BibTeX entries:
key = {OSCAR},
organization = {The OSCAR Team},
title = {OSCAR -- Open Source Computer Algebra Research system,
Version 1.0.0},
Version 1.1.0},
year = {2024},
url = {https://www.oscar-system.org},
}
Expand Down
57 changes: 57 additions & 0 deletions docs/oscar_references.bib
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,21 @@ @Article{BBS02
doi = {10.1007/s00454-001-0051-x}
}

@Article{BCL21,
author = {Bies, Martin and Cveti\v{c}, Mirjam and Liu, Muyang},
title = {Statistics of limit root bundles relevant for exact matter spectra of F-theory MSSMs},
journal = {Phys. Rev. D},
volume = {104},
publisher = {American Physical Society},
pages = {L061903},
year = {2021},
month = {Sep},
doi = {10.1103/PhysRevD.104.L061903},
url = {https://link.aps.org/doi/10.1103/PhysRevD.104.L061903},
issue = {6},
numpages = {8}
}

@Article{BDEPS04,
author = {Berry, Neil and Dubickas, Artūras and Elkies, Noam D. and Poonen, Bjorn and Smyth, Chris},
title = {The conjugate dimension of algebraic numbers},
Expand Down Expand Up @@ -346,6 +361,19 @@ @PhDThesis{Bie18
school = {Heidelberg U.}
}

@Article{Bie24,
author = {Bies, Martin},
title = {{Root bundles: Applications to F-theory Standard Models}},
journal = {Proc. Symp. Pure Math.},
volume = {107},
pages = {17--44},
year = {2024},
doi = {10.1090/pspum/107},
eprint = {2303.08144},
archiveprefix = {arXiv},
primaryclass = {hep-th}
}

@Article{Bis96,
author = {Bisztriczky, T.},
title = {On a class of generalized simplices},
Expand Down Expand Up @@ -388,6 +416,21 @@ @Book{CCNPW85
year = {1985}
}

@Article{CHLLT19,
author = {Cveti\v{c}, Mirjam and Halverson, James and Lin, Ling and Liu, Muyang and Tian, Jiahua},
title = {{Quadrillion $F$-Theory Compactifications with the Exact Chiral Spectrum of the Standard Model}},
journal = {Phys. Rev. Lett.},
volume = {123},
number = {10},
pages = {101601},
year = {2019},
doi = {10.1103/PhysRevLett.123.101601},
eprint = {1903.00009},
archiveprefix = {arXiv},
primaryclass = {hep-th},
reportnumber = {UPR-1297-T}
}

@Article{CHM98,
author = {Conway, John H. and Hulpke, Alexander and McKay, John},
title = {On transitive permutation groups},
Expand Down Expand Up @@ -1109,6 +1152,20 @@ @Misc{HRR23
url = {https://gap-packages.github.io/primgrp/}
}

@Article{HT17,
author = {Halverson, James and Tian, Jiahua},
title = {{Cost of seven-brane gauge symmetry in a quadrillion F-theory compactifications}},
journal = {Phys. Rev. D},
volume = {95},
number = {2},
pages = {026005},
year = {2017},
doi = {10.1103/PhysRevD.95.026005},
eprint = {1610.08864},
archiveprefix = {arXiv},
primaryclass = {hep-th}
}

@Book{Har77,
author = {Hartshorne, Robin},
title = {Algebraic Geometry},
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Schur polynomials

Given a partition $\lambda$ of $n$, the **Schur polynomial** is defined to be
Given a partition $\lambda$ with $n$ parts, the **Schur polynomial** is defined to be
the polynomial

$$s_\lambda := \sum x_1^{m_1}\dots x_n^{m_n}$$
Expand Down
20 changes: 10 additions & 10 deletions examples/Idel.jl → examples/Idele.jl
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
module Idel
module Idele

using Oscar

mutable struct IdelParent
mutable struct IdeleParent
k::AbsSimpleNumField
mG::Map # AutGrp -> Automorohisms
S::Vector{AbsNumFieldOrderIdeal} # for each prime number ONE ideal above
Expand All @@ -20,35 +20,35 @@ mutable struct IdelParent
mU::Map #S-unit group map
M::FinGenAbGroup # the big module

function IdelParent()
function IdeleParent()
return new()
end
end

mutable struct Idel
parent::IdelParent
mutable struct Idele
parent::IdeleParent
m::FinGenAbGroupElem #in parent.M
end

function support(a::Idel)
function support(a::Idele)
#the full galois orbit of parent.S
end

function getindex(a::Idel, P::AbsNumFieldOrderIdeal)
function getindex(a::Idele, P::AbsNumFieldOrderIdeal)
#element at place P as an element in the completion
#needs to find the "correct" P in parent.S, the (index) of the coset
#and return the component of the induced module
end

function getindex(a::Idel, p) #real embedding
function getindex(a::Idele, p) #real embedding
# the unit representing this: find the correct component...
end

function getindex(a::Idel, p) #complex embedding
function getindex(a::Idele, p) #complex embedding
# the unit representing this + a vector with the lambda exponents
end

function disc_exp(a::Idel)
function disc_exp(a::Idele)
# a dict mapping primes/places to s.th. in the number field?
end

Expand Down
2 changes: 2 additions & 0 deletions experimental/FTheoryTools/docs/src/generalities.md
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,8 @@ explicit_model_sections(m::AbstractFTheoryModel)
defining_section_parametrization(m::AbstractFTheoryModel)
classes_of_model_sections(m::AbstractFTheoryModel)
defining_classes(m::AbstractFTheoryModel)
gauge_algebra(m::AbstractFTheoryModel)
global_gauge_quotients(m::AbstractFTheoryModel)
```


Expand Down
81 changes: 80 additions & 1 deletion experimental/FTheoryTools/docs/src/literature.md
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,9 @@ following methods:
* `has_weighted_resolutions(m::AbstractFTheoryModel)`,
* `has_weighted_resolution_generating_sections(m::AbstractFTheoryModel)`,
* `has_weighted_resolution_zero_sections(m::AbstractFTheoryModel)`,
* `has_zero_section(m::AbstractFTheoryModel)`.
* `has_zero_section(m::AbstractFTheoryModel)`,
* `has_gauge_algebra(m::AbstractFTheoryModel)`,
* `has_global_gauge_quotients(m::AbstractFTheoryModel)`.


## Methods
Expand All @@ -118,3 +120,80 @@ Provided that a resolution for a model is known, we can (attempt to) resolve the
```@docs
resolve(m::AbstractFTheoryModel, index::Int)
```


## The Quadrillion F-Theory Standard Models

A yet more special instance of literature models are the Quadrillion F-theory Standard Models
(F-theory QSMs) [CHLLT19](@cite). Those hypersurface models come in 708 different families.

The base geometry of an F-theory QSM is obtained from triangulating one of 708 reflexive 3-dimensional
polytopes. The models, whose bases are obtained from triangulations of the same polytope form a family.
The following information on the polytope in question and its triangulations is available within our database:
```@docs
vertices(m::AbstractFTheoryModel)
polytope_index(m::AbstractFTheoryModel)
has_quick_triangulation(m::AbstractFTheoryModel)
max_lattice_pts_in_facet(m::AbstractFTheoryModel)
estimated_number_of_triangulations(m::AbstractFTheoryModel)
```

Beyond the polytope and its triangulations, a number of other integers are of key importance. The following
are supported in our database.
```@docs
kbar3(m::AbstractFTheoryModel)
hodge_h11(m::AbstractFTheoryModel)
hodge_h12(m::AbstractFTheoryModel)
hodge_h13(m::AbstractFTheoryModel)
hodge_h22(m::AbstractFTheoryModel)
```

More recently, a research program estimated the exact massless spectra of the F-theory QSMs
(cf. [Bie24](@cite)). These studies require yet more information about the F-theory QSM geometries,
which are supported by our database.

First, recall that (currently), the base of an F-theory QSM is a 3-dimensional toric variety B3.
Let s in H^0(B3, Kbar_B3), then V(s) is a K3-surface. Moreover, let xi be the coordinates
of the Cox ring of B3. Then V(xi) is a divisor in B3. Consequently, Ci = V(xi) cap V(s)
is a divisor in the K3-surface V(s). For the root bundle counting program, these curves Ci are
of ample importance (cf. [Bie24](@cite)). We support the following information on these curves:
```@docs
genera_of_ci_curves(m::AbstractFTheoryModel)
degrees_of_kbar_restrictions_to_ci_curves(m::AbstractFTheoryModel)
topological_intersection_numbers_among_ci_curves(m::AbstractFTheoryModel)
indices_of_trivial_ci_curves(m::AbstractFTheoryModel)
topological_intersection_numbers_among_nontrivial_ci_curves(m::AbstractFTheoryModel)
```

The collection of the Ci-curves form a nodal curve. To every nodal curve one can associate a
(dual) graph. In this graph, every irreducible component of the nodal curve becomes a node/vertex
of the dual graph, and every nodal singularity of the nodal curve turns into an edge of the dual
graph. In the case at hand, this is rather simple.

The Ci-curves turn into the irreducible components of the nodel curve. Certainly, we only need
to focus on the non-trivial Ci-curves. A non-trivial Ci-curve can split into multiple irreducible
components. This is taken into acccount when the nodes/vertices of the dual graph are constructed.

The topological intersection numbers among the Ci-curves (or rather, their irreducible components)
tells us how many nodal singularities link the Ci-curves (or rather, their irreducible components)
in question. Hence, if the topological intersection numbers is zero, there is no edge between the
corresponding nodes. Otherwise, if the topological intersection number is positive - say n -, then
there are exactly n edges between the nodes in question.

The following functions access/create the so-obtained dual graph:
```@docs
dual_graph(m::AbstractFTheoryModel)
components_of_dual_graph(m::AbstractFTheoryModel)
degrees_of_kbar_restrictions_to_components_of_dual_graph(m::AbstractFTheoryModel)
genera_of_components_of_dual_graph(m::AbstractFTheoryModel)
```

The dual graph is essential in counting root bundles (cf. [BCL21](@cite)). It turns out, that one
can simplify this graph so that the computations at hand can be conducted on a simpler graph
instead. The following functionality exists to access this simplified dual graph.
```@docs
simplified_dual_graph(m::AbstractFTheoryModel)
components_of_simplified_dual_graph(m::AbstractFTheoryModel)
degrees_of_kbar_restrictions_to_components_of_simplified_dual_graph(m::AbstractFTheoryModel)
genera_of_components_of_simplified_dual_graph(m::AbstractFTheoryModel)
```
Loading

2 comments on commit d0b75de

@benlorenz
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@JuliaRegistrator register()

@JuliaRegistrator
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Registration pull request created: JuliaRegistries/General/109485

Tip: Release Notes

Did you know you can add release notes too? Just add markdown formatted text underneath the comment after the text
"Release notes:" and it will be added to the registry PR, and if TagBot is installed it will also be added to the
release that TagBot creates. i.e.

@JuliaRegistrator register

Release notes:

## Breaking changes

- blah

To add them here just re-invoke and the PR will be updated.

Tagging

After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.

This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:

git tag -a v1.1.0 -m "<description of version>" d0b75de9896407260bfe7549e0b7bc6b7c4a67af
git push origin v1.1.0

Please sign in to comment.