HomotopyContinuation.jl icon indicating copy to clipboard operation
HomotopyContinuation.jl copied to clipboard

Issues dealing with BigFloat coefficients

Open luanborelli opened this issue 1 year ago • 6 comments

I have a system where the coefficients of the polynomials are huge integers. When declaring these polynomials, their coefficients are stored as BigFloat. When trying to solve the system, the package seems to be unable to handle such coefficients.

solution = solve(F)

F is a System whose polynomials coefficients have BigFloat type. Output:

ERROR: MethodError: no method matching HomotopyContinuation.ToricHomotopy(::MixedSystem{Int32, (0x436dfc9bd00f36be, 1)}, ::Vector{Vector{Complex{BigFloat}}})
Closest candidates are:
  HomotopyContinuation.ToricHomotopy(::AbstractSystem, ::Vector{Vector{ComplexF64}}) at D:\Users\b46525\.julia\packages\HomotopyContinuation\I1faM\src\homotopies\toric_homotopy.jl:37
  HomotopyContinuation.ToricHomotopy(::S, ::Vector{ComplexF64}, ::Vector{Float64}, ::Vector{Float64}, ::StructArrays.StructVector{ComplexF64, NamedTuple{(:re, :im), Tuple{Vector{Float64}, Vector{Float64}}}, Int64}, ::Vector{ComplexF64}, ::Vector{ComplexF64}, ::Vector{ComplexF64}, ::Base.RefValue{ComplexF64}, ::Base.RefValue{ComplexF64}, ::TaylorVector{5, ComplexF64}, ::TaylorVector{4, ComplexF64}, ::TaylorVector{3, ComplexF64}) where S<:AbstractSystem at D:\Users\b46525\.julia\packages\HomotopyContinuation\I1faM\src\homotopies\toric_homotopy.jl:16
Stacktrace:
 [1] polyhedral(support::Vector{Matrix{Int32}}, start_coeffs::Vector{Vector{Complex{BigFloat}}}, target_coeffs::Vector{Vector{BigFloat}}; endgame_options::EndgameOptions, tracker_options::TrackerOptions, only_torus::Bool, only_non_zero::Bool, compile::Symbol, kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
   @ HomotopyContinuation D:\Users\b46525\.julia\packages\HomotopyContinuation\I1faM\src\polyhedral.jl:320
 [2] #polyhedral#226
   @ D:\Users\b46525\.julia\packages\HomotopyContinuation\I1faM\src\polyhedral.jl:268 [inlined]
 [3] polyhedral(f::System; compile::Symbol, target_parameters::Nothing, kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
   @ HomotopyContinuation D:\Users\b46525\.julia\packages\HomotopyContinuation\I1faM\src\polyhedral.jl:201
 [4] solver_startsolutions(F::System, starts::Nothing; seed::UInt32, start_system::Symbol, generic_parameters::Nothing, p₁::Nothing, start_parameters::Nothing, p₀::Nothing, target_parameters::Nothing, compile::Symbol, start_subspace::Nothing, target_subspace::Nothing, intrinsic::Nothing, kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
   @ HomotopyContinuation D:\Users\b46525\.julia\packages\HomotopyContinuation\I1faM\src\solve.jl:160
 [5] solver_startsolutions (repeats 2 times)
   @ D:\Users\b46525\.julia\packages\HomotopyContinuation\I1faM\src\solve.jl:115 [inlined]
 [6] solve(args::System; show_progress::Bool, threading::Bool, catch_interrupt::Bool, target_parameters::Nothing, stop_early_cb::Function, transform_result::Nothing, transform_parameters::typeof(identity), flatten::Nothing, target_subspaces::Nothing, kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
   @ HomotopyContinuation D:\Users\b46525\.julia\packages\HomotopyContinuation\I1faM\src\solve.jl:472
 [7] solve(args::System)
   @ HomotopyContinuation D:\Users\b46525\.julia\packages\HomotopyContinuation\I1faM\src\solve.jl:432
 [8] top-level scope
   @ Untitled-1:83

luanborelli avatar Feb 28 '23 22:02 luanborelli