Skip to content

Implement ambient space models for G4-flux candidates#4268

Merged
HereAround merged 3 commits intooscar-system:masterfrom
HereAround:CheckTrivialRestrictions
Nov 2, 2024
Merged

Implement ambient space models for G4-flux candidates#4268
HereAround merged 3 commits intooscar-system:masterfrom
HereAround:CheckTrivialRestrictions

Conversation

@HereAround
Copy link
Copy Markdown
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
Copy Markdown
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.

@HereAround HereAround force-pushed the CheckTrivialRestrictions branch from ae37641 to d0f4482 Compare November 2, 2024 11:34
@HereAround HereAround force-pushed the CheckTrivialRestrictions branch from d0f4482 to 99a56d8 Compare November 2, 2024 11:35
@HereAround HereAround force-pushed the CheckTrivialRestrictions branch from 99a56d8 to 94f5ea4 Compare November 2, 2024 11:54
@emikelsons
Copy link
Copy Markdown
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
Copy Markdown
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
Copy Markdown
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.

Copy link
Copy Markdown
Collaborator

@emikelsons emikelsons left a comment

Choose a reason for hiding this comment

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

Looks good!

@HereAround HereAround force-pushed the CheckTrivialRestrictions branch from 9e586c0 to 0f53f2d Compare November 2, 2024 14:58
@HereAround HereAround force-pushed the CheckTrivialRestrictions branch from 0f53f2d to ed02e4e Compare November 2, 2024 15:38
@HereAround HereAround enabled auto-merge (rebase) November 2, 2024 16:10
@codecov
Copy link
Copy Markdown

codecov Bot commented Nov 2, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 84.47%. Comparing base (2814275) to head (ed02e4e).
Report is 284 commits behind head on master.

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #4268   +/-   ##
=======================================
  Coverage   84.47%   84.47%           
=======================================
  Files         641      641           
  Lines       85394    85427   +33     
=======================================
+ Hits        72133    72168   +35     
+ Misses      13261    13259    -2     
Files with missing lines Coverage Δ
...al/FTheoryTools/src/G4Fluxes/special_attributes.jl 97.08% <100.00%> (+4.23%) ⬆️

@HereAround HereAround merged commit aea00d0 into oscar-system:master Nov 2, 2024
@HereAround HereAround deleted the CheckTrivialRestrictions branch November 2, 2024 17:07
@HereAround HereAround changed the title [FTheoryTools] Implement "ambient_space_models_of_g4_fluxes" Implement ambient space models for G4-flux candidates Feb 27, 2025
@HereAround HereAround added the release notes: use title For PRs: the title of this PR is suitable for direct use in the release notes label Feb 27, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request release notes: use title For PRs: the title of this PR is suitable for direct use in the release notes topic: FTheoryTools

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants