CertifiedHomotopyTracking.jl

CertifiedHomotopyTracking.jl provides interval-certified tools for tracking homotopy paths and relevant computations (e.g., computing monodromy actions and certified local approximations of algebraic varieties). It pairs Symbolics/Nemo-style model construction with ACB interval arithmetic, with interactions to HomotopyContinuation.jl and GAP.

Main functionalities are like below:

There are relevant constructions and helpers for each task:

Quick Start

julia> @variables x y t;
julia> gamma = 1 + im;
julia> compiled = compile_homotopy([(1 - t) * gamma * (x^3 - 1) + t * (x^3 + 2y - 2), (1 - t) * gamma * (y^2 - 1) + t * (y^2 + x - 2)], [x, y], t);Compiling Direct Homotopy System... Compilation Done.
julia> CC = AcbField(256);
julia> res = track_path(compiled, [CC(1), CC(1)])TrackResult(success, status=success, iterations=23, accepted=23, rejected=23, final_radius=0.00524288, precision=53->53, final_krawczyk_norm=0.3743120892904699, approx=ComplexF64[0.62608106 + 0.58366471im, 1.19722054 - 0.24375823im])
julia> success(res)true
julia> solution(res)2-element Vector{ComplexF64}: 0.6260810620260073 + 0.5836647073117808im 1.1972205355035728 - 0.24375822582523698im

See the sidebar for the currently documented public interface.