Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FTheoryTools] Implement "ambient_space_models_of_g4_fluxes" #4268

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

HereAround
Copy link
Member

@HereAround HereAround commented Nov 2, 2024

See the doc string for more details. Hopefully, this is sufficiently clear.

I have taken the liberty to profile this new function a lot, since we want to showcase this very soon (or so I believe). For the doctest example g4_amb_list = ambient_space_models_of_g4_fluxes(qsm_model, check = false); I found:

  • My first working implementation: About 1.5 * 10^6 allocs.
  • Current implementation: Only about 24,000 allocs.

The main improvement came from a more efficient identification of remaining_vars_list, but there were quite a number of other tricks I employed. Overall, I am very happy with these improvements.

@apturner @emikelsons You may find it entertaining that for "the" big model, I expect that ambient_space_models_of_g4_fluxes completes in no more than 10 minutes on most personal computers. On mine, even only about 5 to 6 minutes. (The first run will of course always be somewhat slower...)

@HereAround HereAround added topic: FTheoryTools enhancement New feature or request labels Nov 2, 2024
@HereAround HereAround force-pushed the CheckTrivialRestrictions branch 2 times, most recently from 39f340f to ae37641 Compare November 2, 2024 11:12
@HereAround
Copy link
Member Author

HereAround commented Nov 2, 2024

A few more numbers for "the" big model @apturner @emikelsons :

  • b_4(X_Sigma) = 815, X_Sigma the toric ambient space of the resolved model. So we have H^(2,2) \cong Q^815, and this would be our "naive" basis for G4-flux candidates.
  • The newly introduced method in this PR identifies 629 basis elements of H^(2,2) which restrict - most likely - non-trivially to Y^4.

For details on what I mean by "most likely", see the changes in g4.md.

@emikelsons
Copy link
Collaborator

emikelsons commented Nov 2, 2024

Calling the new method on the SU(5)xU(1) restricted Tate model leads to an error, the following code reproduces the error:
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!

julia> ambient_space_models_of_g4_fluxes(t, check = false);

@emikelsons
Copy link
Collaborator

I think the problem lies on line 137 of the basis_of_h22 code, where an error occurs, if remaining_relations are empty

@HereAround
Copy link
Member Author

HereAround commented Nov 2, 2024

Calling the new method on the SU(5)xU(1) restricted Tate model leads to an error, the following code reproduces the error: 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!

julia> ambient_space_models_of_g4_fluxes(t, check = false);

Good catch. Thank you!

I think the problem lies on line 137 of the basis_of_h22 code, where an error occurs, if remaining_relations are empty

Indeed, I did not catch the case for which there are no remaining relations. 9e586c0 should fix this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants